cocos2d-x lua中2种动画:骨骼动画 和 帧动画

帧动画(下面只是帧动画的一种播放模式,还有其他的模式可使用,参照:http://blog.csdn.net/slow_liao/article/details/45317349

    self.activityLayer = cc.CSLoader:createNode(G_GetPlazaRes("layout/activity/activity_main_bg.csb"))
    self.activityLayer:addTo(self.layerColor)
    local activeAnimation = cc.CSLoader:createTimeline(G_GetPlazaRes("layout/activity/activity_main_bg.csb"))
    self.activityLayer:runAction(activeAnimation)
    
  --动画一(没有帧动画事件的动画)
   --activeAnimation:gotoFrameAndPlay(0, 30, false)--false一次
    activeAnimation:play("animation_name",false)--false一次

  --动画二(有帧动画事件的动画)
  local function doOutAnimation( _callbackfunc )
        --动画二(有帧动画事件的动画)
        --activeAnimation:gotoFrameAndPlay(40, 60, false)--false一次
        activeAnimation:play("form_close", false)--false一次
        activeAnimation:setFrameEventCallFunc(
            function(sender)
                local aniName = sender:getEvent()
                print("aniName = ",aniName)
                if aniName == "form_close" then
                    print("执行了离开动画+++++++++++++++")
                    if _callbackfunc then
                        _callbackfunc()
                    end
                end
            end
        )
    end

    -- 找到“X”按钮
    local backBtn = self.detailBackNode:getChildByName("Panel_Top"):getChildByName("Button_Close")
    backBtn:addTouchEventListener(function ( sender,eventType )
        print("点击了返回到大厅按钮")
        if eventType == ccui.TouchEventType.ended then
            self:playEffectWhenBtnClick()
            --删除弹出的任务layer
            doOutAnimation(function (  )
                --其他代码
                --eg:删除弹出的layer
                --将layer删除后,layer上绑定的子节点、动画等都会删除(此处针对自己公司设置的)
                self.layer:removeFromParent()
                self.layer = nil
            end)
        end
    end)

骨骼动画

--加载动画
                            local awdResultBackSp = Panel_onlineNode:getChildByName("img_effect")
                            self.awdResultAnimation = sp.SkeletonAnimation:create(
                                G_GetPlazaRes("SubHall_animationFiles/dating_lingqujiangli/dating_lingqujiangli.json"), 
                                G_GetPlazaRes("SubHall_animationFiles/dating_lingqujiangli/dating_lingqujiangli.atlas"), 
                                1)--必不可少
                            self.awdResultAnimation:addTo(awdResultBackSp)
                            self.awdResultAnimation:setContentSize(awdResultBackSp:getContentSize())

                            self.awdResultAnimation:setPosition(awdResultBackSp:getContentSize().width / 2, awdResultBackSp:getContentSize().height / 2)
                            ccui.Helper:doLayout(self.awdResultAnimation)--必不可少
                            self.awdResultAnimation:setAnimation(0, "dating_lingqujiangli", false)--必不可少

                            --拿到确定按钮
                            local sureBtn = Panel_onlineNode:getChildByName("Button_close")
                            sureBtn:addTouchEventListener(function ( sender,eventType )
                                if eventType == ccui.TouchEventType.ended then
                                    --删除骨骼动画
                                    local scheduler = cc.Director:getInstance():getScheduler()
                                    local callBackEntry = nil
                                    callBackEntry =
                                        scheduler:scheduleScriptFunc(
                                        function()
                                            scheduler:unscheduleScriptEntry(callBackEntry)
                                            self.awdResultAnimation:removeFromParent()
                                            self.awdResultAnimation = nil
                                            --删除弹框layer
                                            if layer then
                                                layer:removeAllChildren()
                                                layer:removeFromParent()
                                                layer = nil
                                            end
                                        end,
                                        0.01,
                                        false
                                    )
                                end
                            end)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,638评论 25 709
  • 在此特此声明:一下所有链接均来自互联网,在此记录下我的查阅学习历程,感谢各位原创作者的无私奉献 ! 技术一点一点积...
    远航的移动开发历程阅读 11,383评论 12 197
  • 第九章 回到家,小雪在客厅敷面膜,我匆忙的打了个招呼便进了自己的房间。我背靠着房门,心还在乱跳,开始怀疑今晚的一切...
    傻瓜与智者阅读 368评论 0 3
  • 这节书法课老师介绍楷书字体,这也是许冉最喜欢的书法字体。小学时受语文老师的熏陶,她狂恋字帖,后来老师评价她的字是全...
    萩梓阅读 272评论 0 0
  • 接着上集讲.... 曹操被撵的鸡飞狗跳,幸亏夏侯惇拼死相救!与吕布相杀至黄昏,大雨纷纷而来下,只好罢战!陈宫出主意...
    虾聊阅读 1,337评论 0 50