0

我是新手Java,正在为Android.

我的游戏中有一个分数计数器,当计数器达到某个数字时,我希望屏幕上闪烁一条消息,让玩家知道他们已经达到了 2 级,等等。

I的所有其他元素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;
}

有什么建议么?

4

0 回答 0