Here is what I have guys.
----------------------------------------------------------------------------------------- -- -- main.lua -- ----------------------------------------------------------------------------------------- local composer = require( "composer" ) local scene = composer.newScene() -- include Corona's "widget" library local widget = require "widget" -------------------------------------------- -- forward declarations and other locals local playBtn -- 'onRelease' event listener for playBtn local function onPlayBtnRelease() -- go to levelSelect.lua scene composer.gotoScene( "levelSelect", "fade", 500 ) return true -- indicates successful touch end function scene:create( event ) local sceneGroup = self.view -- Initialize the scene here. -- Example: add display objects to "sceneGroup", add touch listeners, etc. -- Background local sky = display.newImage ("startScreen/sky.png") sky.x = display.contentWidth/2; sky.y = display.contentHeight/2; -- Picture local preston = display.newImage ("startScreen/PrestonArt.png") preston:scale( 0.4, 0.4 ) preston.x = display.contentWidth/2; preston.y = display.contentHeight/2; -- Labels local learningLabel = display.newImage ("startScreen/Learning.png") learningLabel:scale( 0.3, 0.3 ) learningLabel.x = 506; learningLabel.y = 170; local centerLabel = display.newImage ("startScreen/Center.png") centerLabel:scale( 0.3, 0.3 ) centerLabel.x = 506; centerLabel.y = 600; -- create a widget button (which will loads levelSelect.lua on release) playBtn = widget.newButton{ defaultFile = "startScreen/Play.png", --the "default" image file overFile = "startScreen/Play-Over.png", --the "over" image file width=240, height=120, onRelease = onPlayBtnRelease -- event listener function } playBtn.x = 300; playBtn.y = 695; -- all display objects must be inserted into group sceneGroup:insert( sky ) sceneGroup:insert( preston ) sceneGroup:insert( playBtn ) end function scene:show( event ) local sceneGroup = self.view local phase = event.phase if ( phase == "will" ) then -- Called when the scene is still off screen (but is about to come on screen). elseif ( phase == "did" ) then -- Called when the scene is now on screen. -- Insert code here to make the scene come alive. -- Example: start timers, begin animation, play audio, etc. end end -- "scene:hide()" function scene:hide( event ) local sceneGroup = self.view local phase = event.phase if ( phase == "will" ) then -- Called when the scene is on screen (but is about to go off screen). -- Insert code here to "pause" the scene. -- Example: stop timers, stop animation, stop audio, etc. elseif ( phase == "did" ) then -- Called immediately after scene goes off screen. end end -- "scene:destroy()" function scene:destroy( event ) local sceneGroup = self.view -- Called prior to the removal of scene's view ("sceneGroup"). -- Insert code here to clean up the scene. -- Example: remove display objects, save state, etc. if playBtn then playBtn:removeSelf() -- widgets must be manually removed playBtn = nil end end -- ------------------------------------------------------------------------------- -- Listener setup scene:addEventListener( "create", scene ) scene:addEventListener( "show", scene ) scene:addEventListener( "hide", scene ) scene:addEventListener( "destroy", scene ) -- ------------------------------------------------------------------------------- return scene