Cocos2dX 动作结束回调应用

版本3.3 项目类型Lua

-- 活动NPC面板点击事件处理
function Home_NPCPanelClick(sender,eventType)
    if eventType == ccui.TouchEventType.ended then
        AudioManager:playButtonEffect()
        local cnt = table.getn(Home.tabNPCActivityBtn)
        Home.PanelNpc:setTouchEnabled(false)
        if Home.superStar then
            for i = 1,cnt do
                for i = 1,cnt do
                    Home.tabNPCActivityBtn[i]:setTouchEnabled(false)
                end
                local actionFadout = cc.FadeOut:create(0.5)
                local moveto = cc.Moveto:create(0.5,cc.p(175,175))
                local function actionCallFunc(sender)
                    if i == cnt then
                        Home.PanelNpc:setTouchEnabled(true)
                    end
                end
                
                Home.tabNPCActivityBtn[i]:runAction(cc.Sequence:create(moveto,actionFadout,cc.CallFunc:create(actionCallFunc)))
                Home.tabNPCActivityBtn[i]:runAction(actionFadout)
            end
            Home.superStar = not(Home.superStar)
        else
            Home.PanelNpc:setTouchEnabled(false)
            for i = 1,cnt do
                local actionFadeIn = cc.FadeIn:create(0.5)
                local moveto = cc.Moveto:create(0.5,Home.tabNPCBtnActivityBtnPos[i])

                local function actionCallFunc(sender)
                    sender:setTouchEnabled(true)
                    if i == cnt then
                        Home.PanelNpc:setTouchEnabled(true)
                    end
                end

                Home.tabNPCActivityBtn[i]:runAction(cc.Sequence:create(moveto,actionFadeIn,cc.CallFunc:create(actionCallFunc))           
            end
            Home.superStar = not(Home.superStar)
        end
        
    end
end

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...