我们定义一个函数,它的括号里有一个词:target。
这只是一个代号!
函数定义:def check(target): attack(target)
调用 1:check(topEnemy) -> target 变成了 topEnemy
调用 2:check(bottomEnemy) -> target 变成了 bottomEnemy
在函数内部,target 就是你的操作对象。
你可以对它做任何事:判断、攻击、或者忽略。
逻辑示例:
如果 target 存在 -> 攻击 target。
否则 (没有 target) -> 攻击 "Door" 或者 躲起来。
不仅可以传敌人,还可以传**物品 (Item)**!
函数接收物品后,可以访问它的属性,比如坐标:
item.pos.x
item.pos.y
我们要把之前学过的最复杂的战斗逻辑封装起来!
cleaveWhenClose(target):
1. 测距 (distanceTo(target))
2. 如果近 (<5):
a. 有大招 -> 劈
b. 没大招 -> 砍