2013-10-16 2 views
0

나는 andengine으로 게임을 개발 중입니다. 내 선수가 한 번만 뛰길 바래. 그래서 나는 연락 담당자를 사용했다. 그러나 항상 작동하지는 않는다. 거의 항상 작동하지만 항상 그런 것은 아니다. 코드를 확인하고 내 오류를 알려주십시오.단일 점프 기능

플레이어 개체와 10 개의 box2d 정적 개체가 있습니다.이 연락처 수신기가 플레이어와이 상자 간의 충돌을 어떻게 감지 할 수 있는지 알 수 없습니다. 나는 다른 상자도 가지고 있기 때문에. 예를 들면 : 선수, 사각 및 원. 왜이 접촉 청취자가 선수와 광장 사이를 감지합니까? 왜 원과 사각형 사이에 있지 않습니까?

private ContactListener contactListener() 
    { 
     ContactListener contactListener = new ContactListener() 
     { 
      @Override 
      public void beginContact(Contact contact) 
      { 
       player.setJumping(false); 
      } 

      @Override 
      public void endContact(Contact contact) 
      { 
       player.setJumping(true); 

      } 
     }; 
     return contactListener; 
    } 
+0

을하는 데 도움이, 당신은 충돌 두기구를 얻을 수 있습니다. 그런 다음 어떤 조명기인지 확인할 수 있습니다. – iforce2d

+0

이 코드는 플레이어와 다른 사람 사이를 확인하십시오. 어떻게 그렇게 될 수 있습니까? – immyth

+0

게시 한 코드가 아무 것도 확인하지 않습니다. 예를 들어 beginContact 함수 내에서 player.setJumping을 호출하기 전에 조명기 중 하나가 플레이어인지 확인해야합니다. 맞습니까? 그렇지 않으면 다른 물건이 닿기 시작하는 경우에도 플레이어 상태가 변경됩니다. – iforce2d

답변

0

는 당신이 아닌 충돌하는 bodies.This link에서 충돌 몸을 분리 할 생각 연락에서 당신에게