Zephus 发表于 2023-4-9 16:31

Xlua 使用Unity协程

xlua开启和关闭协程和Untiy中使用一致
协程开启传入函数时候需要使用util=require(“xlua.util”) xlua工具表
lua不能使用yield rerurn
lua的coroutinue.yield(返回值) 和yield return 作用一样
实例:
--xlua工具表
util=require("xlua.util")
Wait=CS.UnityEngine.WaitForSeconds
local obj=CS.UnityEngine.GameObject("Coroutine")local mono=obj:AddComponent(typeof("Unity脚本"));

fun =function()local a=1whiletruedo--lua无法直接使用 C# yield return
                coroutine.yield(Wait(1))-- 等待1秒print(a)
                a=a+1if a>10then
                        mono:StopCoroutine(coro)--关闭endendend--lua使用Untiy协程 开启
coro=mono:StartCoroutine(util.cs_generator(fun))
页: [1]
查看完整版本: Xlua 使用Unity协程