对不起,以下问题非常具体,但我正在寻找超过一个小时来解决我的问题:精灵更改其颜色每3秒钟一次。我可以检测用户是否点击了正确的颜色,但我无法检测用户是否正在等待下一个颜色得分。我尝试下面的代码:如何检测精灵是否在某个时间间隔内未触及
private float timeSeconds = 0f;
private float period = 3f;
timeSeconds += Gdx.graphics.getRawDeltaTime();
for (int i=0;i<4;i++) {
if (executed == true && !(sprite[zahl[i]].getBoundingRectangle().contains(touchPoint.x,
touchPoint.y))&& timeSeconds==0 && zahl[4] != zahl[i]) {
timeSeconds = 0;
this.dispose();
game.setScreen(new GameOverScreen(game, Integer.parseInt(score)));
return;
}
}
此代码的工作部分是:如果用户doesn't触摸屏,那么GameOverScreen将被显示。但是如果用户点击正确的颜色(=精灵),那么GameOverScreen也会显示。但是,如果用户敲击右侧精灵,我想要游戏继续,并且我想结束游戏,这意味着显示GameOverScreen,如果用户在三秒钟内没有在屏幕上点击任何东西。
我假设有某种计时器,所以当你触及正确的事物时,你有一个布尔值,你设置为true。当计时器结束时,如果它为真,则将其设置为false – Zoe