2013-06-02 2 views
0

저는 게임을 쓰고 있는데 generateWave()라는 함수가 있습니다. 그것은 적을 급부상하고 자신에 전화했을 때 완벽하게 기능 만이 사용하여 지연 후 호출 될 때 :libGDX 타이머가 내 메서드로 작동하지 않는 이유는 무엇입니까?

Timer.schedule(new Task(){ 
    @Override 
    public void run() { 
     generateWave(5); 
    } 
}, 1, 5); 

모든 것이라고하지만, 아무것도 화면에 렌더링되지 않습니다. 나는 println 's를 설정하여 코드가 얼마나 잘 돌아가는지 확인했다. 호출 후에는 모든 일이 끝났지 만, 일반적으로 generateWave()를 호출하여 얻은 결과는 어디에도 없다. 스프라이트가 생성되고 배치 되더라도 스프라이트는 렌더링되지 않습니다. 어떤 답변을 https://github.com/Vynlar/HorseInvaders/blob/master/HorseInvaders/src/me/vynlar/HorseInvaders/world/World.java

감사 :

코드가 포함 된 파일입니다.

답변

2

코드를 확인하고 문제를 발견했습니다. 당신은 목록에 원수를 추가하지만 당신은 또한 무대에 추가해야합니다 :이 화면은 현재 될 때

show() 방법 (GameScreen.java, 라인 58)에서 사용자 코드에서입니다
for(Enemy enemy : world.getEnemies()) 
    { 
     stage.addActor(enemy); 
    } 

,이 방법이 "라고합니다 게임을위한 스크린 "을 선택합니다. 적을 적 목록에 추가하면 모두 stage.addActor()으로 전화를 걸어 레벨에 추가해야합니다.

추신. 미안해, 내 영어로. 그게 너를 도왔 으면 좋겠어. :)

+0

와우. 나는 원수가 자신의 렌더링을 처리하는 게임을 작성하는 데 익숙해 졌기 때문에 무대를 잊을 수있었습니다. 정말 고맙습니다. – Vynlar

+0

당신은 완전히 그 대답을 확인해야합니다. – Lestat

관련 문제