2014-01-18 3 views
0

나는이 프로그램에 약간의 어려움을 겪고 있으며, 어떻게 해결할 지 잘 모르겠습니다.AndEngine : 스프라이트를 이동시키고 동시에 점프합니까?

현재 내 게임에서 캐릭터는 점프하고 왼쪽으로 이동하여 오른쪽으로 이동할 수 있습니다. 그러나 동시에 (전적으로) 아닙니다. 내 캐릭터가 공중에 있고 왼쪽이나 오른쪽으로 움직인다면 그는 그 방향으로 갈 것입니다. 그러나 점프하기 전에 왼쪽이나 오른쪽으로 움직이는다면 아무 일도 일어나지 않을 것입니다. 이것은 현재 상황에 대한 코드입니다 :

final Rectangle jump = new Rectangle(100, 300, 60, 60, vbom) 
    { 
     public boolean onAreaTouched(TouchEvent touchEvent, float X, float Y) 
     { 
      if (touchEvent.isActionDown()) 
      { 
       player.jump(); 
      } 
      return true; 
     }; 
    }; 

    final Rectangle left = new Rectangle(20, 200, 60, 60, vbom) 
    { 
     public boolean onAreaTouched(TouchEvent touchEvent, float X, float Y) 
     { 
      if (touchEvent.isActionUp()) 
      { 

       player.stopRunning(); 

      } 
      else 
      { 

       player.setRunningLeft(); 
      } 
      return true; 
     }; 
    }; 

    final Rectangle right = new Rectangle(100, 200, 60, 60, vbom) 
    { 
     public boolean onAreaTouched(TouchEvent touchEvent, float X, float Y) 
     { 
      if (touchEvent.isActionUp()) 
      { 

       player.stopRunning(); 

      } 
      else 
      { 
       player.setRunningRight(); 

      } 
      return true; 
     }; 
    }; 

사각형 개체는 화면 버튼의 자리 표시 자입니다. 이 코드는 크게 수정 및 추가 기능이 포함 된 http://www.matim-dev.com/ 전체 게임 자습서를 기반으로합니다.

+1

먼저 멀티 터치 설정을 확인하십시오 (제 게임 중 하나에 해당). 둘째, 첫 번째가 원인이 아닌 경우'jump()','stopRunning()','setRunningLeft()'및'setRunningRight()'메소드를 게시하십시오. –

+0

안녕하세요, 고마워요! 멀티 터치 기능은 가져 오지 못했습니다 (나는 그것에 대해 몰랐습니다), 지금 일하고 있습니다. – SerenityTheFool

답변

1

이 버그는 논리 중 하나 때문일 수 있지만 먼저 멀티 터치 설정을 확인하십시오. 그것은 다른 터치 이벤트를 무시할 것이기 때문에 내 게임 중 하나에 일어났습니다.

+0

그것은 단지 멀티 터치 설정이었다 : 어떤 하하도 없었다. 내가 추가하자 마자 게임은 제대로 작동했습니다. – SerenityTheFool

관련 문제