有沒有辦法檢查我的精靈是否可見?例如,我有一個特定的精靈,我想只出現在這個其他精靈不可見的情況下。示例「您贏」只會在您贏得比賽並且屏幕上沒有「您輸了」精靈時出現。謝謝!LibGDX知名度
-1
A
回答
0
通過擴展Sprite類可以保持sprite的可見性。在擴展的Sprite類中添加數據成員,並在運行時檢查您的Sprite是否可見。
,你也可以通過這個滿足您的要求:
private Sprite win,loose;
private SpriteBatch spriteBatch;
private DialogType dialogType;
@Override
public void create() {
dialogType=DialogType.NONE;
spriteBatch=new SpriteBatch();
win=new Sprite(...);
loose=new Sprite(...);
}
@Override
public void render(float delta) {
Gdx.gl.glClearColor(0, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
spriteBatch.begin();
...
...
if(dialogType==WIN){
win.draw(spriteBatch);
}else if(dialogType==LOOSE){
loose.draw(spriteBatch);
}
spriteBatch.end();
}
public enum DialogType {
NONE,WIN,LOOSE
}
0
似乎是一個壓倒做你正在嘗試做的,就像我在評論說,用一個簡單的boolean win,loose;
你幾乎覆蓋你的榜樣,或像其他評論說,你不應該有一些精靈可視性根據做出枚舉跟蹤遊戲狀態和跟蹤遊戲的狀態,而不是像其他的答案,但伊馬給你解決
使用Image
,而不是...
Image image = new Image(texture);
image.setBounds(0,0,100,100); // set x,y,width,height
stage.add(image); //add to stage
image.setVisible(false); //make it invisible
image.setVisible(true); //make it visible
image.isVisible(); //check if is visible
相關問題
- 1. 知名度
- 2. typedef知名度
- 3. CalendarView知名度
- 4. GroupBox知名度
- 5. 通知欄知名度
- 6. 可變知名度
- 7. 的EditText知名度
- 8. php oops:知名度
- 9. XAML itemscontrol知名度
- 10. 價值知名度
- 11. CSS scollbar知名度
- 12. 知名度菜單
- 13. libgdx optimal高度和寬度
- 14. Libgdx字體高度
- 15. 透明度Libgdx Android
- 16. LibGdx設置速度
- 17. C#範圍和知名度
- 18. 覆蓋CSS知名度
- 19. CSS3背面知名度
- 20. Objective-C++知名度問題
- 21. Maniupating知名度與jQuery
- 22. 切換知名度與jQuery
- 23. 的JavaScript OOP的知名度
- 24. PSR和構造知名度
- 25. 控制視圖知名度
- 26. Java線程的知名度
- 27. magento產品知名度
- 28. 校驗塊的知名度
- 29. Javascript - CSS,知名度onclick
- 30. 的DataTemplate和WrapPanel知名度
爲什麼不使用一個簡單的布爾稱爲win和其他稱爲鬆散? '如果(win &&!鬆動)winSprite.draw(批處理);'或者爲了使它更具可讀性,只需設置'win = false;'和'loose = false;'每次鬆動或贏取時,並繪製if (贏)winSprite.draw(批次);'和鬆散? – centenond
不確定的帽子你想實現:你想檢查可見性(如在測試中)還是你想控制它(像'sprite.setVisibile()')? – Sebastian
在我看來,糟糕的設計嘗試使用各種精靈的可見性來跟蹤遊戲的狀態。這將變得非常複雜。 – Tenfour04