您的位置:首页 > 移动开发 > Cocos引擎

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

2015-10-22 20:53 429 查看
前一篇已经讲了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秒学院学习日志
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: