我有一个精灵表,其中包含一个人的帧,这些帧对应于许多不同的动作,例如“walk_left”、“walk_right”等......这些动作可能有不同数量的帧,但在每个动作中只会有我想检测与其他对象的碰撞的精灵的某个区域。
有没有办法为这些动作中的每一个设置一个复杂的主体?请记住,“walk_left”的复合体可能包含与“walk_right”不同坐标的复合体
任何帮助和/或示例会有用吗?
如果有帮助,我可以提供代码。
我有一个精灵表,其中包含一个人的帧,这些帧对应于许多不同的动作,例如“walk_left”、“walk_right”等......这些动作可能有不同数量的帧,但在每个动作中只会有我想检测与其他对象的碰撞的精灵的某个区域。
有没有办法为这些动作中的每一个设置一个复杂的主体?请记住,“walk_left”的复合体可能包含与“walk_right”不同坐标的复合体
任何帮助和/或示例会有用吗?
如果有帮助,我可以提供代码。
我在这些情况下所做的实际上是为每个动画创建几个“角色”,然后根据需要动态切换它们......
所以你有一个带有 walk_left 动画的 newSprite 和我想要的碰撞,另一个 walk_right,等等......
请记住,使用 Box2D 您必须一次移动它们(Box2D 不喜欢您突然移动对象)。
如果您不使用 Box2D 并且自己处理碰撞,那么只需在同一个对象上创建多个碰撞,每个动画一个,然后使用 object.getSequence 查看正在播放的动画,并使用您想要的碰撞,可能类似于
local currentCollision = object.collision[object.getSequence]