2013-12-12 2 views
0

Я пытаюсь позволить пользователю нажать и удерживать экран, чтобы увеличить силу прыжка (примечание jspeed2). Я использую приведенный ниже код, но он не делает то, что мне нужно.Более высокий прыжок, если игрок удерживает экран

Любые предложения?

case MotionEvent.ACTION_DOWN: { 
    if (x < 600 && jspeed2 < 28) { 
     jspeed2++; 
    } 
} 
case MotionEvent.ACTION_UP: { 
    if (x < 600) { 
     player.jump(); 
    } 
} 
+0

Что он делает, когда он «не работает». Это также помогло бы увидеть больше кода, как и весь элемент switch, где вы объявляете jspeed2 и функцию jump(). – DoubleDouble

+0

Возможный дубликат [Switch without break] (http://stackoverflow.com/questions/8563970/switch-without-break) – CubeJockey

ответ

0
public final boolean onTouchEvent(MotionEvent event) { 
    float x = event.getX(); 
    int maskedAction = event.getActionMasked(); 
    if(GameState==0){ 
    graj=true; 
    } 

    if(GameState==1){ 
     switch (maskedAction) { 

     case MotionEvent.ACTION_UP:{if(x<600){player.jump();} } 

     case MotionEvent.ACTION_DOWN:{if(x<600&&jspeed2<7){jspeed2++;} } 
} 
     return true; 
     } 
    else return true; 
    } 

и вот как выглядит прыжки:

public final void jump() { 
     if (jumped == false) { 
      sy = jspeed-GameView.jspeed2; 
      jumped = true; 
      l=20; 
     } 
+0

Под вашим вопросом есть кнопка «Изменить». Было бы лучше поставить этот код там, чем в собственном ответе. В настоящее время, что он делает, что «не работает»? – DoubleDouble

Смежные вопросы