如题,主角手里拿着一把剑 当主角攻击时 如果剑碰到了敌人 那么敌人掉血 此时主角的身体并没有碰到敌人 所以主角不掉血 反之亦然 敌人攻击到主角则主角掉血 (如果主角和敌人都不攻击 只是身体接触 则都不掉血)
如此一个非常常见的功能 用什么思路实现呢
如题,主角手里拿着一把剑 当主角攻击时 如果剑碰到了敌人 那么敌人掉血 此时主角的身体并没有碰到敌人 所以主角不掉血 反之亦然 敌人攻击到主角则主角掉血 (如果主角和敌人都不攻击 只是身体接触 则都不掉血)
如此一个非常常见的功能 用什么思路实现呢
2d的话可以直接计算距离和角度来实现,最好使用状态机设计
你是想用碰撞吧
哦 你的意思是 攻击的时候 获取一下敌人的位置 计算下距离 如果在攻击范围内 则掉血
对的 应为碰撞有碰撞回调 这样的话能在回调中明确知道 谁该掉血 而且就算有多个敌人 设计也不会变 还是回调的时候就知道 谁该掉血
状态机 应该怎么理解 比如有多个敌人 我要计算距离就要用到循环了