그래, 이제 막 자바 (Objective-C로 프로그래밍)를 배우기 시작했습니다. 나의 첫번째 게임은 Pokémon과 비슷한 게임이다. 그러나 훨씬 더 간단 해 보인다 ...스프라이트가 다른 스프라이트를 통해 고스트가되는 것을 막으십시오.
나는 곤경에 빠져서 2 명의 스프라이트가 서로 '고스트 어웨이'하는 것을 막을 수 없다. . 화면에는 테두리 설정 (경계), 플레이어 스프라이트 및 적 스프라이트가 있습니다.
public void playerUpdate(GameContainer gc, int delta) throws SlickException
{
Input input = gc.getInput();
// Right Key Pressed
if (input.isKeyDown(Input.KEY_RIGHT) && (leftKeyPressed == false)
&& (upKeyPressed == false) && (downKeyPressed == false))
{
player = walkRight;
playerX += speed * delta;
rightKeyPressed = true;
if (playerX >= Main.getWindowWidth() - pImageWidth)
{
playerX -= speed * delta;
}
} else if (rightKeyPressed == true)
{
player = standRight;
rightKeyPressed = false;
}
^^ 여기에서 충돌 감지를 구현해야합니다. 충돌 감지를 위해 각 이미지에 직사각형을 추가했습니다. 그러나 사라지게 만드는 방법이 아닙니다. 한 스프라이트가 다른 스프라이트를 통과하는 것을 막을 방법이 필요합니다.
아이디어가 있으십니까?
나는이 선수가 걸리면 구현하고 해제 할 수없는 경우에, 그러나
if (this.playerBoundingBox.intersects(Enemy.getEnemyBoundingBox())
{
playerX += speed * delta;
}
사용하여 시도했다.
고마워
예, 저에게 첫 번째 자바 게임을위한 강렬한 2D 게임을 만들려고하지 않았습니다. 그렇게하시기 바랍니다 :) – Savlon
을 나는를 가정, 다른 사람이 기여 좋아하면 D 을 : 난 그냥 그 디제이에 대한 서로 ... 확인도 환호을 통해 이동이 개 스프라이트를 막을 방법이있을 것이라고 생각 더 직접적인 대답은 Slick2D에서 직접 그렇게 할 수있는 방법이 없다는 것이며, 직접 구현해야 할 것입니다. 행운을 빈다. –