1

在花栗鼠/cocos2d 中,我有一个经典的弹跳球演示,可以愉快地运行任意数量的球。我如何判断一个精灵何时停止移动(即球已落到底部并“完成”)?

我尝试在 Layer 类中声明 float prevX, prevY,因此我可以将当​​前 x,y 与 updateShape 中的前一个 x,y 进行比较,但我无法访问精灵的父级。

         ((CustomLayer *)(sprite->parent))->preX = body->p.x;

编译器通知我精灵的父级受到保护。

谢谢。

4

1 回答 1

2

如果您启用了 Chipmunk 的睡眠算法,您只需调用 cpBodyIsSleeping()。

Chipmunk 通过检查它们的动能是否低于某个阈值并增加一个计时器来判断事物何时处于空闲状态。如果计时器达到一定数量,则认为 body 处于空闲状态。

于 2011-06-10T04:59:50.683 回答