-1

This is one version of the code required for a scene to scene transition in Lua with a timer and without user input, just like a slide-show:

julianLE3
  • 85
  • 7

1 Answers1

1

main.lua:

    display.setStatusBar(display.HiddenStatusBar)
    local composer = require "composer"
    composer.gotoScene("scene1")

This takes you directly to scene1.

scene1:

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

            local function showScene2()
                    local options = {
                            effect = "fade",
                            time = 50,
                    }
            composer.gotoScene( "scene2", options)
            end

-- create scene

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

    function scene:show( event )
    local sceneGroup = self.view
    local phase = event.phase
            if ( phase == "will") then
                    local background = display.newImage("images/picture1.png", 240, 160)
            sceneGroup:insert( background )

            elseif ( phase == "did") then
                    timer.performWithDelay(3000, showScene2)
            end
    end

    function scene:hide( event )
            local sceneGroup = self.view
            local phase = event.phase
    end
    --end
    function scene:destroy( event )
            local sceneGroup = self.view
    end

    scene:addEventListener( "create", scene)
    scene:addEventListener( "show", scene)
    scene:addEventListener( "hide", scene)
    scene:addEventListener( "destroy", scene)

    return scene

scene2 (etc..) is exactly the same except for the next scene's name -

    -- local function showScene3()
    -- composer.gotoScene( "scene3", options)
    -- timer.performWithDelay(3000, showScene3)
hjpotter92
  • 78,589
  • 36
  • 144
  • 183
julianLE3
  • 85
  • 7