我是Java
的新手,正在为Android
制作游戏。
我的游戏中有一个分数计数器,当计数器达到一定数量时,我想在屏幕上显示一条消息,让玩家知道他们已达到2级等等。
nextLevel
的所有其他元素我已经能够轻松实现,因为这些更新的元素应该在任何给定的级别中保留其更改。但是,当玩家超过相应的分数阈值时,我对如何在几秒钟内绘制这个“2级”图像感到困惑。
我尝试使用像这样的布尔nextLevel
:
if (nextLevel) {
if (levelStart < 70) {
paint5.setAlpha(255 - (levelStart * 4));
paint7.setAlpha(255 - (levelStart * 4));
g.drawString(String.valueOf(scoremult), g.getWidth() / 2, g.getHeight() / 2 - 100,
paint5);
g.drawString("x", (g.getWidth() / 2) - 40, g.getHeight() / 2 - 100, paint7);
levelStart++;
} else {
levelStart = 0;
}
}
但是因为nextLevel
在玩家处于关卡中的整个时间都保持正确,所以消息被抽出并一遍又一遍地消失。我想要的就像一个事件触发器,一旦超过阈值,绘制循环就会一直运行直到完成,无论程序中发生了什么。
以下是第二级的实施方式:
if ((score >= 50) && (score < 125)) {
level = 1.2;
scoremult = 2;
recentinterval = 27;
nextlevel = true;
}
有什么建议吗?