[Unity]记录一个坑...关于Lua调用Spine动画的问题

直奔主题:

Lua里面播放Spine动画且在动画播放完成时加一个回调。

方法简单:

--播放动画
animation.AnimationState:SetAnimation(0, "ani name", loop)
--获取AnimationState
local animationState = animation.AnimationState

--定义Spine回调
local spine_cb=nil
spine_cb=function(trackEntry)
	if cbthen
        --执行目标回调函数
		cb()
        cb=nil
	end
    --回调完成移除Spine回调
	animationState:Complete("-",spine_cb)
	spine_cb=nil
end
--绑定Spine回调
animationState:Complete("+",spine_cb)

要注意的就是,回调完成之后一定得手动移除当前animationState上的回调事件,不然会反复执行当前回调。

猜你喜欢

转载自blog.csdn.net/qq302756113/article/details/117957883