GML 中有等待函数吗?

Is there a wait function in GML?

一段时间以来,我一直在努力让我的代码工作,但我似乎找不到让它工作的方法,具体来说,我找不到让对象等待的方法if 语句或找到一个可行的替代方案。 本质上,我一直在尝试让一个游戏对象向右移动 2 秒,然后在移动完成后返回到它的原始坐标。 我是 GML 的新手,但我想像 x += 2 这样的东西是我在将对象向右移动方面寻找的东西。但是,我找不到让所述对象执行 x +=2 only once only once control button 的方法(因为它一直在滑动向右一按,它不只是向右swift移动),然后原地等待2秒。我试过尽可能复杂地制作 if 语句,但无济于事。 如果有人有任何想法,我很乐意接受。 祝你有个美好的一天。

由于 while 语句,我找到了一种通过创建计时器来快速完成此操作的方法,是的,它们存在;即使它没有写在游戏制作者手册中,这有时是一种解脱,但有时也很难推断它是如何工作的。

while (timer > 0 && timer < numberofframesyouwanttheactiontogoonfor) 
    {
    timer++
    break;
    }

您可能正在寻找一个计时器,让对象在执行操作之前等待。在那种情况下,这个问题可能会有所帮助:

我不推荐您当前的方法(使用 while 循环等待计时器完成),因为这将暂停对象事件中的所有代码和操作,直到 while 函数执行完毕完成。

您还应该查看按钮 'press' 和按钮 'pressed' 之间的区别。

  • 按下时,只要按住按钮,它就会执行操作。
  • 当它被按下时,它只会在按下和释放按钮时执行一次操作。