Cocos2d-X 中quick----lua的跳转场景的实现

来源:互联网 发布:ios 软件 目录 编辑:程序博客网 时间:2024/05/22 14:31

(1)main.lua

function __G__TRACKBACK__(errorMessage)
    print("----------------------------------------")
    print("LUA ERROR: " .. tostring(errorMessage) .. "\n")
    print(debug.traceback("", 2))
    print("----------------------------------------")
end
--config   所有必须在require("app.MyApp").new():run()之前执行,否则会出现错误
require("config")
require("framework.init")
require("app.Class.DefineHeader.lua")


require("app.MyApp").new():run()

(2)MyApp .lua

local MyApp = class("MyApp", cc.mvc.AppBase)


function MyApp:ctor()
    MyApp.super.ctor(self)
end


function MyApp:run()
    CCFileUtils:sharedFileUtils():addSearchPath("res/")
    self:enterScene("MainScene")
end


return MyApp

(3)MainScene.lua

local MainScene = class("MainScene", function()
    return display.newScene("MainScene")
end)


function MainScene:ctor()
   --开始按钮
    
    local start_btn = cc.ui.UIPushButton.new({normal = "button/PlayMenu.png"}, {scale9 = true})
    start_btn:setScale(2.0)
    start_btn:setPosition(ccp(display.cx - 200, display.cy + 120))
    self:addChild(start_btn, 0)


    --按钮事件的实现   --函数直接声明后实现  无函数名字
    start_btn:onButtonClicked(function(event)
        local EnterNode=EnterNode.new()
        --CCDirector:sharedDirector():runWithScene(EnterNode)
        print("ugiuegvbvergvergverbgvef")
        CCDirector:sharedDirector():replaceScene(EnterNode)
    end)


    --self:run()




end


function MainScene:onEnter()
end


function MainScene:onExit()
end


return MainScene

(4)EnterNode.lua

local EnterNode=class("EnterNode", function()
return display.newScene("EnterNode")
end)


function EnterNode:ctor()
local  bg = display.newSprite("bg.png")
bg:setPosition(ccp(display.cx, display.cy))
self:addChild(bg,0)
-- body
end


return EnterNode

(5)DefineHeader.lua

MainScene=require("app.scenes.MainScene")
--EnterScene=require("app.scenes.EnterScene")
EnterNode=require("app.scenes.EnterNode")

0 0