我正在尝试用射手和移动气球进行游戏。
在GameControler中,我有2个带气球和箭头的列表以及我必须在屏幕上绘制的列表。我有一个类GUI,在游戏未运行时绘制JPanel Menu
,在游戏运行时绘制图形游戏。在GameControler课程中,我计算时间并确定帧数/秒。
我不是t know how to paint those 2 list on screen ( with moving objects ).
I tried to extend
JPanel or implements
Canvas`但没有任何帮助,因为我需要在GUI中执行一个函数,在调用时将绘制所有对象。
class GameControler
..........
@Override
public void run() {
double lastTime = System.currentTimeMillis();
while(true)
{
if(frameTime(lastTime) == false)
continue;
Gui.update();
if(Gui.getInGameGui() == true)
{
keyboardListener = new KeyboardListener();
gameState = new GameState(Level, ArrowList, BalloonList);
while(gameState.isLevelRunning() == true)
{
if(frameTime(lastTime) == false)
continue;
gameState.update();
deseneazaObiecteJoc();
}
Gui.setInGameGui(false);
Gui.update();
FinalScore = gameState.getSocre();
}
lastTime = System.currentTimeMillis();
}
}
private boolean frameTime(double lastTime) {
if(System.currentTimeMillis() - lastTime < 20)
{
try {
Thread.sleep(1);
} catch (InterruptedException ex) {
}
return false;
}
return true;
}