Я использую метод AndEngines onSceneTouchEvent для создания эффекта прыжка для спрайта.
Проблема, с которой я столкнулся, заключается в том, что если пользователь, например, касается экрана, трижды нажимает на экран, спрайт будет продолжать прыгать,я хочу, чтобы он получал только один клик и делал один прыжок за одно касание.
Вот то, что я использую, и вызывает эту проблему.Как вы видите, я пытаюсь использовать логическое значение mIsJumping, и когда игрок сталкивается с невидимым прямоугольником, ему снова устанавливается значение false, чтобы можно было снова прыгать.
@Override
public boolean onSceneTouchEvent(Scene pScene, TouchEvent pSceneTouchEvent) {
if(pSceneTouchEvent.isActionUp()){
if(mIsJumping == false){
SequenceEntityModifier jumpModifier = new SequenceEntityModifier(
new MoveYModifier(.6f, player.getY(), player.getY() - 250, EaseQuadOut.getInstance()),
new MoveYModifier(.6f, player.getY() - 250, player.getY(), EaseBounceOut.getInstance()));
player.registerEntityModifier(jumpModifier);
}
}
return false;
}
Из моего описания выше, как я могу только зарегистрироватьсядаже одно касание и прыгать, пока спрайт не столкнется с прямоугольником?