CCPhysics车辆在地上?

时间:2014-08-13 05:47:07

标签: ios objective-c cocos2d-iphone chipmunk

我正在使用CCPhysics(集成的Chipmunk-Physics)在Cocos2d V3.1中进行二维侧视驾驶游戏。

我有我的委托设置,并且回调正在运行,我可以将属性(如_onGround)设置为true,但我无法弄清楚如何将参数初始设置为false

我的车轮将collisionType设置为“wheel”,并使用名为

的方法设置委托
-(void)ccPhysicsCollisionPostSolve:(CCPhysicsCollisionPair )pair wheel:(CCNode )nodeA wildcard:(CCNode *)nodeB {

正在调用委托,但我无法弄清楚如何在每个循环中重置该值。

1 个答案:

答案 0 :(得分:0)

因为一次轮子可以触摸多个地面物体,我会使用计数器而不是标志。每次收到碰撞开始事件时,请递增该值。每次发生碰撞单独事件时,减少它。如果计数为0,那么你就不在地面上。如果它是积极的,那么你就是。无需每帧处理(多个)碰撞事件,也无需重置帧之间的值。