0
저는 LibGDX와 게임 제작을 처음 접했습니다. Keys.UP
을 누르지 않아도 스프라이트가 위쪽으로 계속 이동합니다. Keys.UP
에 대한 응답으로 만 이동하려고 할 때 왜 이런 일이 일어나는지 확실하지 않습니다.언제나 스프라이트가 움직이지 않아야합니다
나는 동일한 것들을 다루는 각 클래스보다는 게임에 대한 모든 입력을 처리 할 자신의 inputprocessor 클래스를 만들고 있습니다. 내 메인 클래스는 render 메소드 덕분에 모든 프레임에서 player.update (델타 시간)를 호출합니다.
Keys.UP
을 누르지 않은 경우에도 왜 계속 올라가고 있습니까? 아래의 조건에서 실패하면 안됩니까?
public void update(float dt){
if (gip.keyDown(Keys.UP)){
this.position.y += this.velocity * dt;
}
GameInputProcessor 클래스 :
public boolean keyDown(int keycode){
switch(keycode){
case Keys.UP:
System.out.println("up being pressed");
return true;
}
return false;
}
내가이 일을했다가되도록 GIP을 수정하려면 코드가
처럼 보이고 싶어하지만, 이것은 내가해야 의미 내 선수 클래스에 넣고 싶지는 않지만 GameInputProcessor 클래스에서 처리하도록하고 싶습니다. 하지만 원래 제작 된 메인 클래스의 플레이어 인스턴스 사본이 있어야합니다. 나는 이것을 GameInputProcessor 클래스에주는 방법을 너무 확신하지 못한다. –
항상 gdx 호출을 감쌀 수 있습니다. 내 편집이 도움이됩니까? – BevynQ
큰 감사드립니다. 객체 지향 설계의 경우, 그렇게하는 것이 좋은 생각인가? 모든 반원들만 학급 특유의 것들만 다루고 있습니까? –