У меня есть тело, которое я двигаю с помощью кнопки, вот что я делаю:
-(void) step: (ccTime) delta
{
int steps = 2;
CGFloat dt = delta/(CGFloat)steps;
for(int i=0; i<steps; i++){
cpSpaceStep(space, dt);
}
cpSpaceHashEach(space->activeShapes, &eachShape, nil);
cpSpaceHashEach(space->staticShapes, &eachShape, nil);
if(MoveBody)
{
cpFloat movementPadding = 0.1;
cpBodyApplyForce(body,
cpvmult(ccp( 10, 0), movementPadding), cpvzero);
}
else
cpBodyResetForces(body);
}
Я просто хочу остановить движение тела всякий раз, когда условие не выполняется. Я пытаюсь сбросить все силы до 0 с помощью cpBodyResetForces(body)
, но это никогда не работает - оно просто продолжает двигаться.
Как я могу остановить движение тела?