设置一个值,然后在一秒后更改它

时间:2013-07-25 01:44:51

标签: java game-engine game-physics

现在我正在开发一种太空入侵者风格的游戏。你将角色移动到敌人所在的y坐标,并射击。

玩家将有四个窗口射击。其中一个人总会成为敌人。

以下是代码的工作原理:

enemylocation = 1;
*CHANGE VALUE EVERY X SECONDS
if(enemylocation==1){
enemy.draw(x, y, size);
}
if(enemylocation==2){
enemy.draw(x, y, size);
}
if(enemylocation==3){
enemy.draw(x, y, size);
}
if(enemylocation==4){
enemy.draw(x, y, size);
}

时间码/方法是什么? 感谢

2 个答案:

答案 0 :(得分:0)

你会想要使用这样的东西:

public static void main(String[] args) throws InterruptedException
{
  while(true) //Makes the code run forever
  {
    enemylocation++; // increments 1
    Thread.sleep(1000); // Waits one second
  }
 }

答案 1 :(得分:0)

大多数人会使用Swing计时器在给定的时间间隔内更新代码。我会使用java.Math.Random类将数字更改为1-4。

public class game implements ActionListener{

    Timer enemyUpdate;
    int enemylocation;

    public game(){

    enemyUpdate = new Timer(1000, this); //1000ms = 1s

    enemyUpdate.start();


    }

    public void actionPerformed(){

        //utilize math.random to change enemylocation every second

    }

}