windows phone GameTimerEventArgs reset xna

本文关键字:xna reset GameTimerEventArgs phone windows | 更新日期: 2023-09-27 18:31:53

所以我现在有一个游戏正在运行,它在以下位置使用"e":private void OnUpdate(对象发送器,GameTimerEventArgs e)来保持世界速度更新,但是我不知道如何在重新启动游戏时重置此GameTimerEventArgs(没有实际退出游戏)

这就是我使用它的方式

  worldSpeed = (float)(3 + e.TotalTime.TotalMilliseconds / 10000);

建议?

windows phone GameTimerEventArgs reset xna

查询

GameTimerEventArgs.ElapsedTime每个帧。忽略TotalTime

在变量中累积经过的时间。这样,您可以在重新启动游戏时将变量重置为零。您还可以通过在暂停时不累积时间来实现暂停。

就您而言,随着游戏的进行,您似乎正在增加worldSpeed。因此,与其累积运行时间,不如像这样累积对worldSpeed的更改:

if(!paused)
{
    worldSpeed += (float)(e.ElapsedTime.TotalMilliseconds / 10000f);
}

并在重新启动时将worldSpeed设置为 3。