When i run my app in the simulator i get this error : stack traceback : [c]: in function ‘require’ ?: in function ‘require’ main.lua:1 in main chunk . This is my code :
local storyboard = require "storyboard" storyboard.gotoScene("game")
When i run my app in the simulator i get this error : stack traceback : [c]: in function ‘require’ ?: in function ‘require’ main.lua:1 in main chunk . This is my code :
local storyboard = require "storyboard" storyboard.gotoScene("game")
Are you using the latest build of corona?
If you are then your out of luck. Corona SDK got rid of storyboard and fully started using composer.
Check out this link for composer.
https://docs.coronalabs.com/daily/api/library/composer/index.html
I like it much better than story board anyways.
Good Luck!
It’s still not working
Did you competently change to composer? Whats in your game scene? Please post some code?
Thanks!
game.lua :
-- requires local physics = require "physics" physics.start() local composer = require ("composer") composer.newScene() -- background function scene:createScene(event) local screenGroup = self.view local background = display.newImageRect("bg.png",display.contentWidth,display.contentHeight) background.x = display.contentCenterX background.y = display.contentCenterY local city1 = display.newImage("city1.png") city1.x = 240 city1.y = 210 city1.speed = 2 local city2 = display.newImage("city1.png") city2.x = 240 city2.y = 270 city2.speed = 2 local city3 = display.newImage("city2.png") city3.x = 240 city3.y = 270 city3.speed = 3 local jet = display.newImage("redJet.png") jet.x = 100 jet.y = 100 physics.addBody(jet, "dynamic", {density=.1, bounce=0.1, friction=.2, radius=12}) local city4 = display.newImage("city2.png") city4.x = 240 city4.y = 270 city4.speed = 3 end function scrollCity( self, event ) if self.x \< -200 then self.x = 200 else self.x = self.x - self.speed end end -- jet function activateJets( self, event ) self:applyForce(0, -3.0, self.x, self.y) end function touchScreen( event ) if event.phase == "began" then jet.enterFrame = activateJets Runtime: addEventListener("enterFrame", jet) end if event.phase == "ended" then Runtime: removeEventListener("enterFrame", jet) end end function scene:enterScene(event) city1.enterFrame = scrollCity Runtime:addEventListener("enterFrame", city1) city2.enterFrame = scrollCity Runtime:addEventListener("enterFrame", city2) city3.enterFrame = scrollCity Runtime:addEventListener("enterFrame", city3) city4.enterFrame = scrollCity Runtime:addEventListener("enterFrame", city4) Runtime:addEventListener("touch", touchScreen) end function scene:exitScene(event) end function scene:destroyScene(event) end scene:addEventListener("createScene", scene) scene:addEventListener("enterScene", scene) scene:addEventListener("exitScene", scene) scene:addEventListener("destroyScene", scene) return scene
main.lua
local composer = require( "composer" ) composer.getScene( "game" )
You are using composer wrong … Did you read the docs? Here’s how you need to do it… ( Im not sure if i put your code in wrong but this is the base of it )
game.lua
local composer = require( "composer" ) local scene = composer.newScene() ------------------------------------------------------------------------------------------ system.setIdleTimer( false ) ------------------------------------------------------------------------------------------ local widget = require( "widget" ) ------------------------------------------------------------------------------------------ function scene:create( event ) local sceneGroup = self.view -- put your back ground and stuff you wont need to access as eventlisteners. end function scene:show( event ) local sceneGroup = self.view local phase = event.phase if ( phase == "did" ) then local background = display.newImageRect("bg.png",display.contentWidth,display.contentHeight) background.x = display.contentCenterX background.y = display.contentCenterY local city1 = display.newImage("city1.png") city1.x = 240 city1.y = 210 city1.speed = 2 local city2 = display.newImage("city1.png") city2.x = 240 city2.y = 270 city2.speed = 2 local city3 = display.newImage("city2.png") city3.x = 240 city3.y = 270 city3.speed = 3 local jet = display.newImage("redJet.png") jet.x = 100 jet.y = 100 physics.addBody(jet, "dynamic", {density=.1, bounce=0.1, friction=.2, radius=12}) local city4 = display.newImage("city2.png") city4.x = 240 city4.y = 270 city4.speed = 3 end function scrollCity( self, event ) if self.x \< -200 then self.x = 200 else self.x = self.x - self.speed end end -- jet function activateJets( self, event ) self:applyForce(0, -3.0, self.x, self.y) end function touchScreen( event ) if event.phase == "began" then jet.enterFrame = activateJets Runtime: addEventListener("enterFrame", jet) end if event.phase == "ended" then Runtime: removeEventListener("enterFrame", jet) city1.enterFrame = scrollCity Runtime:addEventListener("enterFrame", city1) city2.enterFrame = scrollCity Runtime:addEventListener("enterFrame", city2) city3.enterFrame = scrollCity Runtime:addEventListener("enterFrame", city3) city4.enterFrame = scrollCity Runtime:addEventListener("enterFrame", city4) Runtime:addEventListener("touch", touchScreen) end end scene:addEventListener( "create", scene ) scene:addEventListener( "show", scene ) return scene
main.lua
local composer = require( "composer" ) composer.gotoScene( "game" )
–SonicX278
You’re better off using composer, but you can still get storyboard here:
https://github.com/coronalabs/framework-storyboard-legacy
And… composer is not a drop in replacement for storyboard. You need to update your scene code a little (tiny changes).
Still doesn’t work. I don’t know what else to do.
Ok try this.
game.lua
local composer = require( "composer" ) local scene = composer.newScene() function scene:create( event ) local sceneGroup = self.view end function scene:show( event ) local sceneGroup = self.view local phase = event.phase if ( phase == "did" ) then local BG = display.newRect( display.contentCenterX, display.contentCenterY, 1080, 1920 ) end end scene:addEventListener( "create", scene ) scene:addEventListener( "show", scene ) return scene
And the latest main.lua.
–SonicX278
i have to replace my whole code with that
Yes, Just to see if its your code or my code. If its my code ( Which it cant be i have tested it. ) then i will give you a composer sample project.
–SonicX278
It just shows me a white screen . I think it works
Yes it works.
–SonicX278
I’m fixing my code now thanks .
Where do i put my event listeners ?
You put all your code into the scene:show.
But make sure your code is clean and scope issues resolved.
–SonicX278
Just as an FYI, I’ve deleted the duplicate post.
Where do i put my functions because when i put it in the scene:show it doesn’t work
How does that help ?