在Lua中触发“END”事件,直到用户触摸屏幕。

我希望在用户触摸屏幕之前,能够不断地分派TOUCHES_ENDS事件;然而,当触摸被移除时,它只会被分派一次。例如,当用户没有触摸屏幕时,我希望我的角色能够持续奔跑,并在用户触摸屏幕时执行其他操作。谢谢!

点赞
用户2047576
用户2047576

我不了解 Gideros,但是你可以使用那些事件来存储一个 Lua 变量,表示触摸状态。例如,当触发 TOUCHES_BEGIN 事件时,将一个名为 _touching 的全局变量设为 true。当触发 TOUCHES_END 事件时,你可以将该全局变量设置为 false。

假设代码在循环中运行,当全局 _touching 变量设置为 false 时,玩家就可以行走;当该变量为 true 时,就可以做其他事情。

此外,经过一点谷歌搜索,我还发现了 TOUCHES_MOVE 和 TOUCHES_CANCEL 事件,以及 END 事件称为 TOUCHES_END(对于 Sprite 库),你可能需要对它们进行检查:

希望这可以帮助你前行。

编辑 - 在 Lua 中,全局变量通常被认为是不好的东西,但在这种情况下,它对你非常有帮助。

2014-06-30 15:15:09