我正在尝试用java创建一个俄罗斯方块游戏,我对如何使游戏工作有一个很好的想法,我只是想弄清楚如何让块每隔x毫秒下降一次。这是我在Java游戏中的第一次尝试。
我很早就遇到了Timer类,并开始尝试解决它,但后来又开始考虑键绑定会如何影响它,因为我希望在再次移动块之前重置计时器。
这样想吧...... 块丢弃,.5秒等待,块丢弃,.5秒等待,块丢弃,.25秒等待因为用户点击向下箭头,.5秒等待,阻止丢弃...等等
我目前没有编写代码,因为我只是试图让我的所有逻辑先行。
当前计划:(伪代码)
while(game is not over)
{
if(game is not paused)
{
getNextBlock();
while(current block hasn't hit the bottom)
{
// x amount of time paused (time will decrease as levels increase)
dropBlock();
}
//check for finished lines and award points/levels
}
}
我应该注意什么才能处理按键?或者,使用计时器可能更容易解决这个问题吗?
编辑:我正在使用Swing并且正在查看Swing Timer。游戏将在计算机(而非手机)上运行。