Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ---------------------------------------------------------------------------------
- --
- -- testscreen1.lua
- --
- ---------------------------------------------------------------------------------
- local storyboard = require( "storyboard" )
- local scene = storyboard.newScene()
- ---------------------------------------------------------------------------------
- -- BEGINNING OF YOUR IMPLEMENTATION
- ---------------------------------------------------------------------------------
- require("physics")
- physics.start()
- physics.pause()
- --physics.setDrawMode("hybrid")
- gameOn = false
- local module = require "module"
- --local lines = module.lines
- --local line_number = module.line_number
- --local line_width = module.line_width
- --local prev_x, prev_y = module.prev_x, module.prev_y
- --local maxLines = 5
- --local maxDist = 400
- --local dist = module.dist
- --local mathSqrt = module.mathSqrt
- local dist = 0
- local maxDist = 400
- local drawLine = module.drawLine
- local gameWin = module.gameWin
- local gameState = module.gameState
- -- Called when the scene's view does not exist:
- function scene:createScene( event )
- local screenGroup = self.view
- local ball = module.spawnBall(30, 50)
- local goal = module.createGoal(100, 300)
- local wall = module.createWall( 0, 150, 450, 14, 1)
- local wall2 = module.createWall( 200, 300, 400, 10)
- local arrow = module.createArrow()
- screenGroup:insert( arrow )
- screenGroup:insert( ball )
- screenGroup:insert( goal )
- screenGroup:insert( wall )
- screenGroup:insert( wall2 )
- local changeGravity = module.changeGravity
- screenGroup[3]:addEventListener("tap", gameState)
- arrow:addEventListener("tap", changeGravity)
- end
- -- Called immediately after scene has moved onscreen:
- function scene:enterScene( event )
- local drawLineWrapper = function(e)
- --if gameOn == false then
- if e.phase == "began" then
- prev_x = e.x
- prev_y = e.y
- elseif e.phase == "moved" then
- if dist < maxDist then
- dist_x = e.x - prev_x
- dist_y = e.y - prev_y
- dist = dist + mathSqrt(dist_x*dist_x + dist_y*dist_y)
- print(dist)
- drawLine(prev_x, prev_y, dist_x, dist_y)
- prev_x = e.x
- prev_y = e.y
- end
- elseif e.phase == "ended" then
- end
- --end
- end
- scene.view.lineDrawer = drawLineWrapper
- Runtime:addEventListener("touch", drawLineWrapper)
- Runtime:addEventListener("collision", gameWin)
- -- remove previous scene's view
- --storyboard.purgeScene( "storyboard.lastScene" )
- --storyboard.lastScene =
- end
- -- Called when scene is about to move offscreen:
- function scene:exitScene( event )
- lines = {}
- -- remove touch listener for image
- -- image:removeEventListener( "touch", image )
- end
- -- Called prior to the removal of scene's "view" (display group)
- function scene:destroyScene( event )
- print( "((destroying scene 1's view))" )
- 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
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement