2013-03-12 93 views
0

我是LibGDX的新手,我遇到了問題。 我正在構建一個古典風格的RPG /冒險遊戲,其中我使用TiledMap(-Renderer)來創建地圖。我跟着不同的教程,但不能得到它的工作。 (最後一個是DPG的:完整的工作示例linkTileMap未生成;添加到舞臺?

我需要的是屏幕右側的一列按鈕(通過ImageButtons實現)。其中一個按鈕導致設置類型的屏幕,另一個應導致遊戲地圖。下我已經添加

MapHelper map = new MapHelper(); 

    map.setPackerDirectory("data/packer"); 

    map.loadMap("data/world/level1/level.tmx"); 

    map.prepareCamera((int)stage.getWidth(), (int)stage.getHeight()); 

    map.getCamera().update(); 

    map.render(); 

的MapHelper類的DPK的代碼的按鈕的ClickListener是DPK的的精確拷貝,只改變上面是照相機的寬度和高度的設置。任何建議我在這裏做錯了嗎?

回答

0

我不認爲你想在ClickListener回調中調用map.render()。這意味着地圖只會在您點擊時渲染,然後不會重新渲染(通常每個屏幕上的所有內容都會重新渲染)。

我認爲你需要跟蹤map在你的應用程序類,並在ClickListener回調需要設置標誌或以某種方式「使用」地圖(也許將其設置爲比null其他東西)。然後在應用程序的render()方法中,您可以檢查映射是否應該呈現,如果是,則呈現它。

具體而言,將呼叫移至ClickListener中的prepareCamera,getCamerarender