Help with Levels...

okay so i have two codes of main.lua

so the first 1 is my game, but the other is a level selctor how do i make it so when i click lvl 1 it takes me to lvl 1 instead of the game just waiting till u finish the lvl

this is the code for the game


display.setStatusBar(display.HiddenStatusBar);

– Physics Engine

local physics = require(“physics”)

physics.start()

physics.setGravity(0, 0)

– Load Sounds

local bgMusic = audio.loadStream(“sounds/Calvin.mp3”)

local zombieKill = audio.loadSound(“sounds/ow.mp3”);

– Constants

local _W = display.contentWidth / 2;

local _H = display.contentHeight / 2;

– Variables

local zombies = display.newGroup();

local zombieWidth = 50;

local zombieHeight = 50;

local row;

local column;

local score = 0;

local currentLevel;

local velocityX = 3;

local velocityY = -3;

local gameEvent = “”;

– Menu Screen

local titleScreenGroup;

local titleScreen;

local playBtn;

– Game Screen

local background;

local player;

local zombie;

local bullet;

– Score/Level Text

local zombieKillText;

local zombieKillNum;

local levelText;

local levelNum;

– textBoxGroup

local textBoxGroup;

local textBox;

local conditionDisplay;

local messageText;

– Main Function

function main()

    showTitleScreen();

end

– Show the Title Screen

function showTitleScreen()

    – Place all title elements into 1 group

    titleScreenGroup = display.newGroup()

    titleScreen = display.newImage(“images/titleScreen.png”, 0, 0, true);

    titleScreen.x = _W;

    titleScreen.y = _H;

    – Display play button image

    playBtn = display.newImage(“images/playButton.png”)

    playBtn.x = _W;

    playBtn.y = _H + 50;

    playBtn.name = “playbutton”;

    – Insert backgroudn and button into group

    titleScreenGroup:insert(titleScreen);

    titleScreenGroup:insert(playBtn);

    – Make play button interactive

    playBtn:addEventListener(“tap”, loadGame);

end

– When play button is tapped, start the game

function loadGame(event)

    if event.target.name == “playbutton” then

        audio.play(bgMusic, {loops =- 1});

        audio.setVolume(0.2)

        transition.to(titleScreenGroup,{time = 0, alpha=0, onComplete = initializeGameScreen});

        playBtn:removeEventListener(“tap”, loadGame);

    end

end

– Set up the game space

function initializeGameScreen()

    – Place the player on screen

    player = display.newImage(“images/player.png”);

    player.x = _W;

    player.y = _H + 140;

    player.name = “player”;

    – Place bullet on screen

    bullet = display.newImage(“images/bullet.png”);

    bullet.x = _W;

    bullet.y = player.y - 30;

    bullet.name = “bullet”;

    – Score text

    zombieKillText = display.newText("Blocks Blown: ", 25, 2, “Arial”, 14);

    zombieKillText:setTextColor(255, 255, 255, 255);

    zombieKillNum = display.newText(“0”, 150, 2, “Arial”, 14);

    zombieKillNum:setTextColor(255, 255, 255, 255);

    – Level text

    levelText = display.newText(“Level:”, 360, 2, “Arial”, 14);

    levelText:setTextColor(255, 255, 255, 255);

    levelNum = display.newText(“1”, 400, 2, “Arial”, 14);

    levelNum:setTextColor(255, 255, 255, 255);

    – Run level 1

    changeLevel1();

end

function changeLevel1()

    – Level 1 background image will be Atlanta

    bg1 = display.newImage(“images/atl.png”, 0, 0, true );

    bg1.x = _W;

    bg1.y = _H;

    bg1:toBack();

    – Start

    player:addEventListener(“tap”, startGame)

    – Reset zombies

    gameLevel1();

end

– When the game starts, add physics properties to player and bullet

function startGame()

    physics.addBody(player, “static”, {density = 1, friction = 0, bounce = 0});

    physics.addBody(bullet, “dynamic”, {density = 1, friction = 0, bounce = 0});

    player:removeEventListener(“tap”, startGame);

    gameListeners(“add”);

end

– Bullet properties

function updatebullet()

    – Movement

    bullet.x = bullet.x + velocityX;

    bullet.y = bullet.y + velocityY;

    – If bullet hits the ceiling or left or right wall, bounce off of it

    if bullet.x < 0 or bullet.x + bullet.width > display.contentWidth then

        velocityX = -velocityX;

    end

    if bullet.y < 0  then

        velocityY = -velocityY;

    end

    – If the bullet hits the bottom wall, the player has lost the game

    if bullet.y + bullet.height > player.y + player.height then

        textBoxScreen(“You Lost!”, “Try Again”) gameEvent = “lose”;

    end

end

– Listen for bullet and player collisions and user dragging player

function gameListeners(event)

    if event == “add” then

        Runtime:addEventListener(“enterFrame”, updatebullet);

        player:addEventListener(“touch”, movePlayer);

        player:addEventListener(“collision”, bounce);

        bullet:addEventListener(“collision”, zombieDestroyed);

        – Bookmark A: You’ll be adding some code here later

    – Remove listeners when not needed to free up memory

    elseif event == “remove” then

        Runtime:removeEventListener(“enterFrame”, updatebullet);

        player:removeEventListener(“touch”, movePlayer);

        player:removeEventListener(“collision”, bounce);

        bullet:removeEventListener(“collision”, zombieDestroyed);

        – Bookmark B: You’ll be adding some code here later too

    end

end

function gameLevel1()

    currentLevel = 1;

    – Place the zombies on the top layer

    zombies:toFront();

    – Number of zombies on level 1

    local numOfRows = 2;

    local numOfColumns = 2;

    – Zombie position on screen

    local zombiePlacement = {x = (_W) - (zombieWidth * numOfColumns ) / 2  + 20, y = 70};

    – Create zombies based on the number of columns and rows we declared

    for row = 0, numOfRows - 1 do

        for column = 0, numOfColumns - 1 do

            local zombie = display.newImage(“images/zombie.png”);

            zombie.name = “zombie”;

            zombie.x = zombiePlacement.x + (column * zombieWidth);

            zombie.y = zombiePlacement.y + (row * zombieHeight);

            – Add physics properties to zombies

            physics.addBody(zombie, “static”, {density = 1, friction = 0, bounce = 0});

            zombies.insert(zombies, zombie);

        end

    end

end

– Player movement on user’s drag

function movePlayer(event)

    if event.phase == “began” then

        moveX = event.x - player.x;

    elseif event.phase == “moved” then

        player.x = event.x - moveX;

    end

    if((player.x - player.width * 0.5) < 0) then

        player.x = player.width * 0.5;

    elseif((player.x + player.width * 0.5) > display.contentWidth) then

        player.x = display.contentWidth - player.width * 0.5;

    end

end

– Determines bullet movement by where it hits the player

function bounce()

    velocityY = -3

    if((bullet.x + bullet.width * 0.5) < player.x) then

        velocityX = -velocityX;

    elseif((bullet.x + bullet.width * 0.5) >= player.x) then

        velocityX = velocityX;

    end

end

– Zombies are exterminated, remove them from screen

function zombieDestroyed(event)

    – Where did the bullet hit the zombie?

    if event.other.name == “zombie” and bullet.x + bullet.width * 0.5 < event.other.x + event.other.width * 0.5 then

        velocityX = -velocityX;

    elseif event.other.name == “zombie” and bullet.x + bullet.width * 0.5 >= event.other.x + event.other.width * 0.5 then

        velocityX = velocityX;

    end

    – Ricochet the bullet off the zombie and remove him from the screen

    if event.other.name == “zombie” then

        – Bounce the bullet

        velocityY = velocityY * -1;

        – Zombie says “ow” when hit by a bullet

        audio.play(zombieKill);

        – Remove f instance

        event.other:removeSelf();

        event.other = nil;

        – One less zombie

        zombies.numChildren = zombies.numChildren - 1;

        – Score

        score = score + 1;

        zombieKillNum.text = score;

        zombieKillNum:setReferencePoint(display.CenterLeftReferencePoint);

        zombieKillNum.x = 150;

    end

    – Check if all zombies are destroyed

    if zombies.numChildren < 0 then

        textBoxScreen(“Level: Level Complete”, “Next Level”);

        gameEvent = “win”;

    end

end

– Level 2 zombies

function gameLevel2()

    currentLevel = 2;

    bg1.isVisible = false;

    – This code is the same to gameLevel1(), but you can change the number of zombies on screen.

    zombies:toFront();

    local numOfRows = 2;

    local numOfColumns = 8;

    – Zombie position on screen

    local zombiePlacement = {x = (_W) - (zombieWidth * numOfColumns ) / 2  + 20, y = 100};

    – Create zombies based on the number of columns and rows we declared

    for row = 0, numOfRows - 1 do

        for column = 0, numOfColumns - 1 do

            local zombie = display.newImage(“images/zombie.png”);

            zombie.name = “zombie”;

            zombie.x = zombiePlacement.x + (column * zombieWidth);

            zombie.y = zombiePlacement.y + (row * zombieHeight);

            – Add physics properties to zombies

            physics.addBody(zombie, “static”, {density = 1, friction = 0, bounce = 0});

            zombies.insert(zombies, zombie);

        end

    end

end

function cleanupLevel()

    – Clear old zombies

    zombies:removeSelf();

    zombies.numChildren = 0;

    zombies = display.newGroup();

    – Remove text Box

    textBox:removeEventListener(“tap”, restart);

    textBoxGroup:removeSelf();

    textBoxGroup = nil;

    – Reset bullet and player position

    bullet.x = _W;

    bullet.y = player.y - 30;

    player.x = _W;

    score = 0;

    zombieKillNum.text = “0”;

end

– New York City (Level 2)

function changeLevel2()

    – Display background image and move it to the back

    bg2 = display.newImage(“images/nyc.png”, 0, 0, true);

    bg2.x = _W;

    bg2.y = _H;

    bg2:toBack();

    – Reset zombies

    gameLevel2();

    – Start

    player:addEventListener(“tap”, startGame)

end

function textBoxScreen(title, message)

    gameListeners(“remove”);

    – Display text box with win or lose message

    textBox = display.newImage(“images/textBox.png”);

    textBox.x = 240;

    textBox.y = 160;

    – Win or Lose Text

    conditionDisplay = display.newText(title, 0, 0, “Arial”, 38);

    conditionDisplay:setTextColor(255,255,255,255);

    conditionDisplay.xScale = 0.5;

    conditionDisplay.yScale = 0.5;

    conditionDisplay:setReferencePoint(display.CenterReferencePoint);

    conditionDisplay.x = display.contentCenterX;

    conditionDisplay.y = display.contentCenterY - 15;

    --Try Again or Congrats Text

    messageText = display.newText(message, 0, 0, “Arial”, 24);

    messageText:setTextColor(255,255,255,255);

    messageText.xScale = 0.5;

    messageText.yScale = 0.5;

    messageText:setReferencePoint(display.CenterReferencePoint);

    messageText.x = display.contentCenterX;

    messageText.y = display.contentCenterY + 15;

    – Add all elements into a new group

    textBoxGroup = display.newGroup();

    textBoxGroup:insert(textBox);

    textBoxGroup:insert(conditionDisplay);

    textBoxGroup:insert(messageText);

    – Make text box interactive

    textBox:addEventListener(“tap”, restart);

end

– See if the player won or lost the level

function restart()

    – If the player wins level 1, then go to level 2

    if gameEvent == “win” and currentLevel == 1 then

        currentLevel = currentLevel + 1;

        cleanupLevel();

        changeLevel2();

        levelNum.text = tostring(“Nyc”);

    – If the player wins level 2, tell them they won the game

    elseif gameEvent == “win” and currentLevel == 2 then

        textBoxScreen("  You Win!, More Levels soon!", "  Congratulations!");

        gameEvent = “completed”;

    – If the player loses level 1, then make them retry level 1 and reset score to 0

    elseif gameEvent == “lose” and currentLevel == 1 then

        cleanupLevel();

        changeLevel1();

    – If the player loses level 2, then make them retry level 2 and reset score to 0

    elseif gameEvent == “lose” and currentLevel == 2 then

        cleanupLevel();

        changeLevel2();

    – If the game has been completed, remove the listener of the text box to free up memory

    elseif gameEvent == “completed” then

        textBox:removeEventListener(“tap”, restart);

    end

end

– See if the player won or lost the level

function restart()

    – If the player wins level 1, then go to level 2

    if gameEvent == “win” and currentLevel == 1 then

        currentLevel = currentLevel + 1;

        cleanupLevel();

        changeLevel2();

        levelNum.text = tostring(“Nyc”);

    – If the player wins level 2, tell them they won the game

    elseif gameEvent == “win” and currentLevel == 2 then

        textBoxScreen("  You Win!, More Levels soon!", "  Congratulations!");

        gameEvent = “completed”;

    – If the player loses level 1, then make them retry level 1 and reset score to 0

    elseif gameEvent == “lose” and currentLevel == 1 then

        cleanupLevel();

        changeLevel1();

    – If the player loses level 2, then make them retry level 2 and reset score to 0

    elseif gameEvent == “lose” and currentLevel == 2 then

        cleanupLevel();

        changeLevel2();

    – If the game has been completed, remove the listener of the text box to free up memory

    elseif gameEvent == “completed” then

        textBox:removeEventListener(“tap”, restart);

    end

end

main();

and now this is the code for the level selctor


local storyboard = require (“storyboard”)

storyboard.purgeOnSceneChange = true

–storyboard.level = 0

display.setStatusBar(display.HiddenStatusBar)

centerX = display.contentCenterX

centerY = display.contentCenterY

storyboard.gotoScene ( “menu”, { effect = “slideDown”} )

------------------------------------------ and level 01.main lua

local storyboard = require( “storyboard” )

local scene = storyboard.newScene()

local widget = require (“widget”)

local playfile = require (“play”)

– local forward references should go here –

local completegameBtn

local function buttonHit(event)

    storyboard.gotoScene (  event.target.destination, {effect = “slideUp”} )

    return true

end

– Called when the scene’s view does not exist:

function scene:createScene( event )

    local group = self.view

    – CREATE display objects and add them to ‘group’ here.

    – Example use-case: Restore ‘group’ from previously saved state.

    

    local title = display.newText( “Level 1”, 0, 0, “Helvetica”, 38 )

    title.x = centerX

    title.y = display.screenOriginY + 40

    group:insert(title)

    

    local backBtn = display.newText(  “Back”, 0, 0, “Helvetica”, 25 )

    backBtn.x = display.screenOriginX + 50

    backBtn.y = display.contentHeight - 30 

    backBtn.destination = “play” 

    backBtn:addEventListener(“tap”, buttonHit)

    group:insert(backBtn)

    

    

end

– Called immediately after scene has moved onscreen:

function scene:enterScene( event )

    local group = self.view

    – INSERT code here (e.g. start timers, load audio, start listeners, etc.)

    

    local function btnClicked (event)

    --levelProgress = levelProgress + 1

    levels[1] = 3

    levels[2] = 1

    completegameBtn.destination = “play” 

    completegameBtn:addEventListener(“tap”, buttonHit)

    end

    

    

    completegameBtn = widget.newButton { label = “Complete game”, onRelease=btnClicked}

    completegameBtn.x = centerX

    completegameBtn.y = centerY

    group:insert (completegameBtn)

end

– Called when scene is about to move offscreen:

function scene:exitScene( event )

    local group = self.view

    – INSERT code here (e.g. stop timers, remove listeners, unload sounds, etc.)

    – Remove listeners attached to the Runtime, timers, transitions, audio tracks

end

– Called prior to the removal of scene’s “view” (display group)

function scene:destroyScene( event )

    local group = self.view

    – INSERT code here (e.g. remove listeners, widgets, save state, etc.)

    – Remove listeners attached to the Runtime, timers, transitions, audio tracks

end


– END OF YOUR IMPLEMENTATION


– “createScene” event is dispatched if scene’s view does not exist

scene:addEventListener( “createScene”, scene )

– “enterScene” event is dispatched whenever scene transition has finished

scene:addEventListener( “enterScene”, scene )

– “exitScene” event is dispatched before next scene’s transition begins

scene:addEventListener( “exitScene”, scene )

– “destroyScene” event is dispatched before view is unloaded, which can be

– automatically unloaded in low memory situations, or explicitly via a call to

– storyboard.purgeScene() or storyboard.removeScene().

scene:addEventListener( “destroyScene”, scene )


return scene

----------------------------------------------level 02.lua

local storyboard = require( “storyboard” )

local scene = storyboard.newScene()

local widget = require (“widget”)

– local forward references should go here –

local completegameBtn

local function buttonHit(event)

    storyboard.gotoScene (  event.target.destination, {effect = “slideUp”} )

    return true

end

– Called when the scene’s view does not exist:

function scene:createScene( event )

    local group = self.view

    – CREATE display objects and add them to ‘group’ here.

    – Example use-case: Restore ‘group’ from previously saved state.

    

    local title = display.newText( “Level 2”, 0, 0, “Helvetica”, 38 )

    title.x = centerX

    title.y = display.screenOriginY + 40

    group:insert(title)

    

    local backBtn = display.newText(  “Back”, 0, 0, “Helvetica”, 25 )

    backBtn.x = display.screenOriginX + 50

    backBtn.y = display.contentHeight - 30 

    backBtn.destination = “play” 

    backBtn:addEventListener(“tap”, buttonHit)

    group:insert(backBtn)

end

– Called immediately after scene has moved onscreen:

function scene:enterScene( event )

    local group = self.view

    – INSERT code here (e.g. start timers, load audio, start listeners, etc.)

    

    local function btnClicked (event)

    

    levels[2] = 3

    levels[3] = 1

    completegameBtn.destination = “play” 

    completegameBtn:addEventListener(“tap”, buttonHit)

    end

    

    completegameBtn = widget.newButton { label = “Complete level”, onRelease=btnClicked}

    completegameBtn.x = centerX

    completegameBtn.y = centerY

    group:insert (completegameBtn)

end

– Called when scene is about to move offscreen:

function scene:exitScene( event )

    local group = self.view

    – INSERT code here (e.g. stop timers, remove listeners, unload sounds, etc.)

    – Remove listeners attached to the Runtime, timers, transitions, audio tracks

end

– Called prior to the removal of scene’s “view” (display group)

function scene:destroyScene( event )

    local group = self.view

    – INSERT code here (e.g. remove listeners, widgets, save state, etc.)

    – Remove listeners attached to the Runtime, timers, transitions, audio tracks

end


– END OF YOUR IMPLEMENTATION


– “createScene” event is dispatched if scene’s view does not exist

scene:addEventListener( “createScene”, scene )

– “enterScene” event is dispatched whenever scene transition has finished

scene:addEventListener( “enterScene”, scene )

– “exitScene” event is dispatched before next scene’s transition begins

scene:addEventListener( “exitScene”, scene )

– “destroyScene” event is dispatched before view is unloaded, which can be

– automatically unloaded in low memory situations, or explicitly via a call to

– storyboard.purgeScene() or storyboard.removeScene().

scene:addEventListener( “destroyScene”, scene )


return scene

------------------------------------------- menu.lua

local storyboard = require( “storyboard” )

local scene = storyboard.newScene()

– local forward references should go here –

local function buttonHit(event)

    storyboard.gotoScene (  event.target.destination, {effect = “slideDown”} )

    return true

end

– Called when the scene’s view does not exist:

function scene:createScene( event )

    local group = self.view

    – CREATE display objects and add them to ‘group’ here.

    – Example use-case: Restore ‘group’ from previously saved state.

    

    local title = display.newText( “Welcome to Block Burst”, 0, 0, “Helvetica”, 38 )

    title.x = centerX

    title.y = display.screenOriginY + 40

    group:insert(title)

    

    local playBtn = display.newText(  “Start game”, 0, 0, “Helvetica”, 25 )

    playBtn.x = centerX

    playBtn.y = centerY

    playBtn.destination = “play” 

    playBtn:addEventListener(“tap”, buttonHit)

    group:insert(playBtn)

    

    local creditsBtn = display.newText(  “Credits”, 0, 0, “Helvetica”, 25 )

    creditsBtn.x = centerX

    creditsBtn.y = centerY + 80 

    creditsBtn.destination = “gamecredits” 

    creditsBtn:addEventListener(“tap”, buttonHit)

    group:insert (creditsBtn)

    

end

– Called immediately after scene has moved onscreen:

function scene:enterScene( event )

    local group = self.view

    – INSERT code here (e.g. start timers, load audio, start listeners, etc.)

end

– Called when scene is about to move offscreen:

function scene:exitScene( event )

    local group = self.view

    – INSERT code here (e.g. stop timers, remove listeners, unload sounds, etc.)

    – Remove listeners attached to the Runtime, timers, transitions, audio tracks

end

– Called prior to the removal of scene’s “view” (display group)

function scene:destroyScene( event )

    local group = self.view

    – INSERT code here (e.g. remove listeners, widgets, save state, etc.)

    – Remove listeners attached to the Runtime, timers, transitions, audio tracks

end


– END OF YOUR IMPLEMENTATION


– “createScene” event is dispatched if scene’s view does not exist

scene:addEventListener( “createScene”, scene )

– “enterScene” event is dispatched whenever scene transition has finished

scene:addEventListener( “enterScene”, scene )

– “exitScene” event is dispatched before next scene’s transition begins

scene:addEventListener( “exitScene”, scene )

– “destroyScene” event is dispatched before view is unloaded, which can be

– automatically unloaded in low memory situations, or explicitly via a call to

– storyboard.purgeScene() or storyboard.removeScene().

scene:addEventListener( “destroyScene”, scene )


return scene

---------------------------------------------------gamecredits.lua

local storyboard = require( “storyboard” )

local scene = storyboard.newScene()

– local forward references should go here –

local function buttonHit(event)

    storyboard.gotoScene (  event.target.destination, {effect = “slideUp”} )

    return true

end

– Called when the scene’s view does not exist:

function scene:createScene( event )

    local group = self.view

    – CREATE display objects and add them to ‘group’ here.

    – Example use-case: Restore ‘group’ from previously saved state.

    

    local title = display.newText( “Game Credits”, 0, 0, “Helvetica”, 38 )

    title.x = centerX

    title.y = display.screenOriginY + 40

    group:insert(title)

    

    local backBtn = display.newText(  “Back”, 0, 0, “Helvetica”, 25 )

    backBtn.x = centerX

    backBtn.y = centerY

    backBtn.destination = “menu” 

    backBtn:addEventListener(“tap”, buttonHit)

    group:insert(backBtn)

end

– Called immediately after scene has moved onscreen:

function scene:enterScene( event )

    local group = self.view

    – INSERT code here (e.g. start timers, load audio, start listeners, etc.)

end

– Called when scene is about to move offscreen:

function scene:exitScene( event )

    local group = self.view

    – INSERT code here (e.g. stop timers, remove listeners, unload sounds, etc.)

    – Remove listeners attached to the Runtime, timers, transitions, audio tracks

end

– Called prior to the removal of scene’s “view” (display group)

function scene:destroyScene( event )

    local group = self.view

    – INSERT code here (e.g. remove listeners, widgets, save state, etc.)

    – Remove listeners attached to the Runtime, timers, transitions, audio tracks

end


– END OF YOUR IMPLEMENTATION


– “createScene” event is dispatched if scene’s view does not exist

scene:addEventListener( “createScene”, scene )

– “enterScene” event is dispatched whenever scene transition has finished

scene:addEventListener( “enterScene”, scene )

– “exitScene” event is dispatched before next scene’s transition begins

scene:addEventListener( “exitScene”, scene )

– “destroyScene” event is dispatched before view is unloaded, which can be

– automatically unloaded in low memory situations, or explicitly via a call to

– storyboard.purgeScene() or storyboard.removeScene().

scene:addEventListener( “destroyScene”, scene )


return scene

----------------------------------and play.lua (now after this somone try to help meh c;

local storyboard = require( “storyboard” )

local scene = storyboard.newScene()

– local forward references should go here –

–levelProgress = 0

–levelImg = {}

–allLevels = {}

levels = 

{    

1, 2, 2, 2 , 2,  --1 means level is open to     be played (level.png)

2, 2, 2, 2, 2,   --2 means level is locked (locked.png)

2, 2, 2, 2, 2   – 3 means level is completed (greenchecked.png)

}

    

images ={

    { getFile = “level.png”, types = “play”   },

    { getFile = “lock.png”, types = “locked”},

    { getFile = “greenchecked.png”, types = “done”}

}

local function buttonHit(event)

    storyboard.gotoScene ( event.target.destination, {effect = “slideUp”} )    

    print( event.target.destination)

        return true

end

– Called when the scene’s view does not exist:

function scene:createScene( event )

    local group = self.view

    

    local levelIndex =0

        for i=0,2 do

            for j=1,5 do

                tablePlace =   i*5 + j    

                levelIndex = levelIndex + 1

                    local imagesId = levels[levelIndex] 

                        levelImg = display.newImageRect (images[imagesId].getFile , 45, 45 )

                        levelImg.x = 45 + (j*65)

                        levelImg.y  = 85+ (i*65)

                        group:insert(levelImg)

                        leveltxt = display.newText("Level "…tostring(tablePlace), 0,0, “Helvetica”, 10)

                        leveltxt.x = 45 + (j*65)

                        leveltxt .y = 110+ (i*65)

                        leveltxt:setTextColor (250, 255, 251)

                        group:insert (leveltxt)

                        

                        levelImg.destination = “level0”…tostring(tablePlace)

                        

                        if images[imagesId].types ~= “locked” then

                        levelImg:addEventListener(“tap”, buttonHit)

                        end

 end

    

end

        

    

    – CREATE display objects and add them to ‘group’ here.

    – Example use-case: Restore ‘group’ from previously saved state.

    

    local title = display.newText( “Level Selection”, 0, 0, “Helvetica”, 20 )

    title.x = centerX

    title.y = display.screenOriginY + 40

    group:insert(title)

    

    local backBtn = display.newText(  “Back”, 0, 0, “Helvetica”, 20 )

    backBtn.x = display.screenOriginX + 50

    backBtn.y = display.contentHeight  - 30 

    backBtn.destination = “menu” 

    backBtn:addEventListener(“tap”, buttonHit)

    group:insert(backBtn)

end

– Called immediately after scene has moved onscreen:

function scene:enterScene( event )

    local group = self.view

    – INSERT code here (e.g. start timers, load audio, start listeners, etc.)

end

– Called when scene is about to move offscreen:

function scene:exitScene( event )

    local group = self.view

    – INSERT code here (e.g. stop timers, remove listeners, unload sounds, etc.)

    – Remove listeners attached to the Runtime, timers, transitions, audio tracks

end

– Called prior to the removal of scene’s “view” (display group)

function scene:destroyScene( event )

    local group = self.view

    – INSERT code here (e.g. remove listeners, widgets, save state, etc.)

    – Remove listeners attached to the Runtime, timers, transitions, audio tracks

end


– END OF YOUR IMPLEMENTATION


– “createScene” event is dispatched if scene’s view does not exist

scene:addEventListener( “createScene”, scene )

– “enterScene” event is dispatched whenever scene transition has finished

scene:addEventListener( “enterScene”, scene )

– “exitScene” event is dispatched before next scene’s transition begins

scene:addEventListener( “exitScene”, scene )

– “destroyScene” event is dispatched before view is unloaded, which can be

– automatically unloaded in low memory situations, or explicitly via a call to

– storyboard.purgeScene() or storyboard.removeScene().

scene:addEventListener( “destroyScene”, scene )


return scene

    

Hi,

I think that is a little bit to much code. Please just show us the important parts and insert them into “code” tags. It will be easier for us to help you that way.

Best regards,

Tomas

Hi,

I think that is a little bit to much code. Please just show us the important parts and insert them into “code” tags. It will be easier for us to help you that way.

Best regards,

Tomas