小小菜之Cocos2d-x游戏开发旅程——Lua之场景跳转

前一篇已经讲了Lua中如何创建一个空场景,现在来讲讲如何进行场景跳转

首先在mian.lua中,让第一个场景从MenuScene.lua开始

local function main()local scene=require("MenuScene.lua")

    if cc.Director:getInstance():getRunningScene() then
    else

     cc.Director:getInstance():runWithScene(gameScene)

         end



end

②添加初始化函数

function MenuScene:init()
    local layer=cc.Layer:create()

    local spbk=cc.Sprite:create("img_bg_logo.png")
    spbk:setPosition(cc.vertex2F(self.winsize.width/2,self.winsize.height/2))
    layer:addChild(spbk)
    local Logo=cc.Sprite:create("LOGO.png")
    Logo:setPositionX(self.winsize.width/2)
    Logo:runAction(cc.MoveTo:create(1,cc.vertex2F(self.winsize.width/2,self.winsize.height/2+100)))
    layer:addChild(Logo)
    local itemStart=cc.MenuItemImage:create("start.png","start.png")

    local itemHelp=cc.MenuItemImage:create("help.png","help.png")
    itemHelp:setPositionY(itemStart:getPositionY()-100)
    local itemAbout=cc.MenuItemImage:create("about.png","about.png")
    itemAbout:setPositionY(itemHelp:getPositionY()-100)

    local menu=cc.Menu:create()
    menu:addChild(itemStart)
    menu:addChild(itemHelp)
    menu:addChild(itemAbout)
    menu:setPosition(cc.vertex2F(self.winsize.width/2,self.winsize.height/2-100))
    layer:addChild(menu,2)

    local function menucallback(obj)

    ccs.ActionManagerEx:destroyInstance()
        if tonumber(obj)==10 then

            local scene=require("GameScene")
            local gs=scene:create()
            local tgs=cc.TransitionRotoZoom:create(2,gs)
            cc.Director:getInstance():replaceScene(tgs)
        else if tonumber(obj)==11 then

            local scene=require("HelpScene")
            local hs=scene:create()
            local ths=cc.TransitionSlideInT:create(1,hs)
            cc.Director:getInstance():replaceScene(ths)
        else if tonumber(obj)==12 then

            local scene=require("AboutScene")
            local as=scene:create()
            local tms=cc.TransitionJumpZoom:create(1,as)
            cc.Director:getInstance():replaceScene(tms)
        end
            end
        end

    end
    itemStart:setTag(10)
    itemHelp:setTag(11)
    itemAbout:setTag(12)
    itemStart:registerScriptTapHandler(menucallback)
    itemHelp:registerScriptTapHandler(menucallback)
    itemAbout:registerScriptTapHandler(menucallback)

    return layer
end

OK,以上就是Lua中场景跳转的实现了,各位看官有什么不懂的地方可以一起来讨论讨论

未完待续。。。

————————9秒学院学习日志

猜你喜欢

转载自blog.csdn.net/dl15600383645/article/details/49338735
今日推荐