嘿所以我正在努力暂停我的游戏。我几乎可以使用它,但是有一些我似乎无法理解的故障。
基本上我有一些代码(下面)暂停帧速率然后恢复帧速率。两个代码片段都可以单独正常工作,但是当放在一起时,如果我按下“p”,它会立即循环遍历两个代码片段,实际上只执行第二个代码片段(我将跟踪放入并显示两个代码都在执行时按“p”一次。)
所以我的第一个主要问题是如何让它工作?我只想在按下“p”按钮暂停游戏时执行一段代码,然后在此之后再次按“p”并执行其他代码片段。
我的第二个问题是......为什么当我追踪帧速率时它会说它是0.01而不是0?发现这种有趣的......无论如何,这是代码。告诉我你是否需要更多的背景,但我认为你不会。
if (stage.frameRate == 30)
{
if (keyboardEvent.keyCode == Keyboard.P)
{
dispatchEvent(new NavigationEvent(NavigationEvent.PAUSEGAME));
stage.frameRate = 0;
checkIfPaused = true;
trace("pause game");
trace(stage.frameRate);
}
}
if (stage.frameRate == 0.01)
{
if (keyboardEvent.keyCode == Keyboard.P)
{
stage.frameRate = 30;
dispatchEvent(new NavigationEvent(NavigationEvent.RESUMEGAME));
checkIfPaused = false;
trace("resume game");
}
}
答案 0 :(得分:0)
没关系,我明白了。我只是添加了else而不是if而不是第二个片段现在它可以工作=),但是如果有人能以一种很好的方式回答我关于帧速率为0.01的问题我会给你答案