图片不会出现在故事​​板Corona SDK中

时间:2013-09-11 13:44:16

标签: lua storyboard corona corona-storyboard

我正在使用电晕SDK进行游戏,但我遇到了这个小问题。

我有一个带按钮的菜单。如果我按它,它会将我发送到我游戏的第一级。 当我通过最后一级时,游戏会将我返回菜单。 Bur,如果我再次开始播放,我的图像就不会出现了。

图像是球,要通过关卡,你必须消除所有的球。为此,我使用:

球:removeSlef() ball = nil

但是,我不认为这是问题所在,因为我消除了这一点,但它不起作用。 图像在场景中创建:createScene函数,并在组中插入。

我简短了第一级的代码。

local storyboard = require( "storyboard" )
local scene = storyboard.newScene()

local physics = require "physics"
physics.start(); physics.pause()

physics.setGravity( 0, 0 )

local cont = 0
local bur = {}

function eliminar1( event )
        if (cont == 0) and (event.phase == "began") then
                event.target:removeSelf()
                bur[1] = nil
                cont = cont + 1
        end
 end
function eliminar2( event )
        if (cont == 1) and (event.phase == "began") then
                bur[2]:removeSelf()
                bur[2] = nil
                cont = cont + 1
        end
 end
function eliminar3( event )
        if (cont == 2) and (event.phase == "began") then
                bur[3]:removeSelf()
                bur[3] = nil
                storyboard.gotoScene( "levels.1.level2" )
        end
end

function scene:createScene ( event )
        local screenGroup = self.view

        for i = 1,3 do
                bur[i] = display.newImage("irudiak/"..i..".png")
                bur[i]:translate(math.random(0,280), math.random(0,400) )
                physics.addBody( bur[i], {bounce = 0.3 } )
                bur[i]:setLinearVelocity(math.random(-50,50), math.random(-50,50) )
                screenGroup:insert(bur[i])     
        end


        bur[1]:addEventListener("touch", eliminar1)
        bur[2]:addEventListener("touch", eliminar2)
        bur[3]:addEventListener("touch", eliminar3)    
end

function scene:enterScene( event )
        local screenGroup = self.view

        physics.start()

end

function scene:exitScene( event )
        local screenGroup = self.view

        physics.stop()

end

function scene:destroyScene( event )
        local screenGroup = self.view

        package.loaded[physics] = nil
        physics = nil
end

return scene

1 个答案:

答案 0 :(得分:0)

createScene仅在您gotoScene时第一次运行。每次下次只播放willEnterSceneenterScene。要再次玩createScene,您必须将其删除(我猜是storyboard.removeScene())。或者你可以将你需要的东西移到willEnterScene。有关详细信息,您可以观看:http://www.coronalabs.com/blog/2013/08/20/tutorial-reloading-storyboard-scenes/