luasocket を使用して Irc チャネルに接続し、ゲーム内でメッセージを送受信しようとしています (Wolfenstein Enemy Territory、それが役立つ場合)。
現在、私はそのすべてを行うことができますが、1 つの問題があります。メッセージをリッスンするように設定すると、基本的にロックされます。Irc で stoplisten と入力すると、フォールバック コマンドがあり、スクリプトを停止するだけです。すべてのメッセージを取得したことがわかりますが、メッセージを待っている間、ゲーム自体がロックされます。
ゲームをフリーズせずにこれを行う方法についてのアイデアはありますか? 私は最近コルーチンを少し学んだばかりなので、それらを正しく使用しているかどうかわかりません。また、それが役立つ場合は、ミリ秒ごとに実行される実行フレーム関数にアクセスできることにも注意してください (ただし、通常は次のように行われます: if math.mod(currentTime, 50) ~= 0 then return end)
これが私のコードの一部です:http: //pastebin.com/j1gCqm4R (ここに投稿するためだけにすべてのコードをインデントで編集するつもりはなかったので、pastebinに入れました)