전 방향으로 움직이고 촬영하는 플레이어로 간단한 2D 게임을 만들고 있습니다.Java 2D 게임 다른 방향으로 촬영하기
나는 지금까지 작동하도록 관리했지만 한 가지 문제가 있습니다. 내가 총을 쏘면 총알이 내가 움직이는 방향으로 가고 싶다. 지금까지 내가 쏠 수 있지만 플레이어의 움직임 방향을 변경하면 총알의 방향도 바뀝니다.
내가 움직일 때 총알이 방향을 바꾸지 않도록 내가 도와 줄 수 있습니까?
public static int direction;
public void keyPressed(KeyEvent k) {
int key = k.getKeyCode();
if (key == KeyEvent.VK_RIGHT) {
player.setVelX(5);
direction = 1;
} else if (key == KeyEvent.VK_LEFT) {
player.setVelX(-5);
direction = 2;
} else if (key == KeyEvent.VK_DOWN) {
player.setVelY(5);
direction = 3;
} else if (key == KeyEvent.VK_UP) {
player.setVelY(-5);
direction = 4;
} else if (key == KeyEvent.VK_SPACE) {
controller.addFire(new Fire(player.getX(), player.getY(), this));
}
}
그리고 촬영 클래스 : 여기
는 플레이어의 운동의 조각입니다 나는 당신이 당신의 화재 생성자에서Game.direction
을 확인한다 무엇을해야하는지 생각
public class Fire {
private double x,y;
BufferedImage image;
public Fire(double x, double y, Game game){
this.x = x;
this.y = y;
}
public void tick(){
switch (Game.direction){
case 1:
x += 10;
break;
case 2:
x -= 10;
break;
case 3:
y += 10;
break;
case 4:
y -= 10;
break;
}
}
public void render(Graphics graphics){
graphics.drawImage(image, (int)x, (int)y, null);
}
}
감사합니다! 이것은 잘 작동했습니다. 건배! –
나는 그것을 듣게 행복하다. 내가 당신을 도운다면이 대답을 수락하십시오. – enucar