我正在製作一個libgdx遊戲作爲練習。它非常簡單,就像「逃避」類遊戲。只需屏幕背景,一些項目和左/右箭頭。輸入 - 在LibGdx中的動作處理
由於libgdx使一切變得簡單,如果有一個簡單的處理操作的方法,我就會遊蕩。現在它只是一堆onClick()方法中的「if else」語句。現在它很好,但有數十個或一系列物品會被混淆,而且點擊時可能會有些滯後。
public void onClick(int scrX, int scrY){
pX = (scrX/viewW)*WORLD_W;
pY = (scrY/viewH)*WORLD_H;
if (pX > 10 && pX < 20 && pY > 10 && pY < 20) {
if (stage.getInfo().getLeft() == true) {
Gdx.app.log("Click", "Left");
stage = new StageGame(stage.getInfo().getLeftStage());
}
}
else if(pX > 80 && pX < 90 && pY > 10 && pY < 20) {
if (stage.getInfo().getRight() == true) {
Gdx.app.log("Click", "Right");
stage = new StageGame(stage.getInfo().getRightStage());
}
}
}
我在考慮切換這裏,但我仍然必須使用一些條件。 其他想法是一個矩陣,可以說100x100。隨着每個階段它將被從文件中讀取。點擊x和y後,可以很容易地轉換爲網格值,並且會發生適當的操作。但是,這隻適用於靜態遊戲,並且不關心內存使用情況以及處理該矩陣。
我很舒服,這是所有錯誤,但我不能找到我不能命名的東西:P 幫助請幫助!
如果您確定您將擁有完全MxN矩陣,則屏幕對象的矩陣不是一個壞主意。其他方式,也許是一個列表,使其更加靈活。實際列表清單。另外,我沒有使用它,但libGDX有一些地圖功能,所以檢查一下 - 也許你可以使用它。 – MilanG 2015-04-01 11:31:01