我正在尝试使用 luasocket 连接到 Irc 频道并在我的游戏中发送和接收消息(Wolfenstein Enemy Territory,如果有帮助的话)。
现在我能够做到这一切,但有一个问题。一旦我将其设置为收听消息,它基本上就会锁定。如果我在 Irc 中键入 stoplisten,我有一个备用命令,它只会停止脚本,我可以看到它收到了所有消息,但游戏本身在等待消息时被锁定。
关于如何在不冻结游戏的情况下做到这一点的任何想法?我最近刚学了一点协程所以我不知道我是否正确使用它们。我还应该注意,如果有帮助,我可以访问每毫秒运行一次的运行帧函数(虽然通常它是这样完成的:if math.mod(currentTime, 50) ~= 0 then return end)
这是我的代码中的一部分:http: //pastebin.com/j1gCqm4R (我不会用缩进编辑我的所有代码只是为了将它发布在这里,所以我只是把它放在pastebin上)