캐릭터의 점프여부는 주로 TouchEvent와 boolean변수로 판단합니다.
우선 2가지의 boolean변수를 준비합니다. ("isLanded", "isJump")
isLanded = true인 상태는 캐릭터가 바닥에 있는 상태, 그 반대의 경우는 점프상태로 판단하고,
isJump = true로 캐릭터를 점프시키고, false면 아래로 하강.
대략적인 코드는 아래와 같습니다.
//캐릭터의 점프처리, 즉 캐릭터가 점프중일 경우 실행
if(isJump == true) {
downSpeed = 2.4f;
player.setY(player.getY() - upSpeed);
upSpeed *= 0.8f;
}else if (isLanded == false) {
upSpeed = 12;
player.setY(player.getY() + downSpeed);
downSpeed *= 1.0f;
if(downSpeed >= 6.5f) {
downSpeed = 6.5f;
}
}else if (isLanded = true) {
downSpeed = 2.0f;
}
//점프 한계치에 도달하면 강제낙하처리
if(player.getY() <= 120) {
isJump = false;
}
/*화면이나 점프 버튼을 클릭하게 되면 점프를 실행합니다. 여기서 플레이어의 Y축을 마이너스로 설정함으로써 위로 점프하며 "upSpeed *= 0.8f; " 로 지정하여 자연스러운 포물선을 그리며 점프하게 합니다.
터치이벤트를 해제하면 else if (isLanded == false) 가 호출되어 아래로 낙하.
'Android & AndEngine' 카테고리의 다른 글
Android app - InstantMemory (0) | 2015.05.28 |
---|---|
AndEngine의 unregisterEntityModifier에 대한 간단 메모 (0) | 2015.03.17 |
Android AndEngine Aiming game (0) | 2014.09.21 |
andEngine(엔드엔진) Android Game "GRIDS RUSH" (0) | 2014.07.28 |
엔드엔진(andEngine)으로 만든Edge of Tron..안드로이드(android)게임오픈 (0) | 2014.06.11 |