1.播放CCB动画
local animationName = parms.animationName
local src = parms.src or self
local controler = parms.controler or src
local proxy = CCBProxy:create()
local animationLayer, ccbReader = CCBuilderReaderLoad(Global.Dir.Effect .. "Effect/" .. animationName .. ".ccbi", proxy, controler)
animationLayer = tolua.cast(animationLayer, "CCLayer")
animationLayer:setZOrder(parms.zOrder or 0)
animationLayer:setContentSize(CCSizeMake(0, 0))
src:addChild(animationLayer)
local animationManager = tolua.cast(ccbReader:getAnimationManager(), "CCBAnimationManager")
animationManager:setAnimationCompletedCallback(function()
end)
--animationManager:runAnimationsForSequenceNamed(animationName)
animationLayer:setPosition(parms.pos or GameDirector.centerPos)
2.播放CCS动画
local animationName = parms.animationName
CCArmatureDataManager:sharedArmatureDataManager():addArmatureFileInfo("Effect/" .. animationName .. "/" .. animationName .. ".ExportJson")
local arm = CCArmature:create(animationName)
arm:setPosition(parms.pos or GameDirector.centerPos)
arm:getAnimation():playWithIndex(0)
arm:setZOrder(parms.zOrder or 0)
local src = parms.src or self
src:addChild(arm)
arm:getAnimation():setMovementEventCallFunc(function()
end)
本文介绍如何使用CCB和CCS两种方式来播放动画。对于CCB动画,通过创建CCBProxy并加载指定的.ccbi文件来实现动画效果;而对于CCS动画,则是通过加载.ExportJson文件并创建CCArmature来实现。两者均设置了动画位置及层级,并提供了动画完成回调的设置。
1万+

被折叠的 条评论
为什么被折叠?



