2017-01-02 77 views
1

我开发一个游戏引擎,并希望游戏处理一个lua文件。如何实现LuaJ暂停?

目前,我正在使用我写的自定义脚本语言来将每个命令存储在游戏可以执行的列表中。我的脚本语言在这一点上非常原始,这就是为什么我想切换到Lua,但我不知道如何继续。

这里是什么,我试图做一个例子:

engine.message("Text")  // Pause until player clicks a button 
engine.message("Text2") // Pause until player clicks a button 
chosenValue = engine.choose("Option1|Option2") // Wait for player to choose, then assign value 
if(chosenValue="Option1") then 
    engine.message("One") // Pause until player clicks a button 
else 
    engine.message("Two") // Pause until player clicks a button 
end 
+0

可能是http://stackoverflow.com/questions/27588569的副本/是-IT-可能对执行-A-单LUA语句从 - 一个宿主程序 – clearlight

回答

0

我解决它通过在另一个线程运行的Lua,并使用Semaphore 1许可证脚本启动时即取。当我想暂停时,我向Lua线索请求暂停整个事件的许可证,并且当用户单击按钮时,我释放许可证