[lua]
require “src.players”
local players = require(“src.players”)
local composer = require( “composer” )
local scene = composer.newScene()
local physics = require(“physics”)
physics.start()
physics.setGravity(0,0)
physics.setDrawMode(“normal”)
– LOCALS –
– Variables
local w = display.contentWidth
local h = display.contentHeight
local centerX = display.contentCenterX
local centerY = display.contentCenterY
– Forward Declarations
local onBack
– Useful Localizations
local mAbs = math.abs
local mRand = math.random
local mDeg = math.deg
local mRad = math.rad
local mCos = math.cos
local mSin = math.sin
local mAcos = math.acos
local mAsin = math.asin
local mSqrt = math.sqrt
local mCeil = math.ceil
local mFloor = math.floor
local mAtan2 = math.atan2
local mPi = math.pi
local getInfo = system.getInfo
local getTimer = system.getTimer
local strMatch = string.match
local strFormat = string.format
local pairs = pairs
– Scene Methods
function scene:create( event )
local sceneGroup = self.view
local background = display.newImage(sceneGroup, “background.png”)
background.x = display.contentCenterX
background.y = display.contentCenterY
local arms = display.newImage(sceneGroup, “arms1.png”, true)
arms.x = display.contentWidth - 134
arms.y = display.contentHeight - 290
local nail = display.newCircle(sceneGroup, 124.91, 212, 4)
physics.addBody(nail, “static”,{bounce=0, friction=0.2, radius=4})
local wheel = display.newImage(sceneGroup, “wheel1.png”, true)
wheel.x = display.contentWidth - 195
wheel.y = display.contentHeight - 268
physics.addBody(wheel, “dynamic”,{bounce=0, friction=0.2, radius=1})
wheel.angularDamping = 0.4
local skull = display.newImage(sceneGroup, “skull1.png”, true)
skull.x = display.contentWidth - 190
skull.y = display.contentHeight - 379
local Name = players.GetName(“player1”).text
local label = display.newEmbossedText( sceneGroup, “Presents…”, centerX, 280, “youmurderer”, 40 )
label:setFillColor( 0.8,0.2,0.2 )
local color =
{
highlight = { r=1, g=1, b=1 },
shadow = { r=0.8, g=0.2, b=0.2 }
}
label:setEmbossColor( color )
display.remove(label)
local joint = physics.newJoint(“pivot”, wheel, nail, 124.91, 212)
local push1 = PushButton( sceneGroup, centerX, 370, “Back”, onBack,
{ labelColor = {0.8,0.2,0.2}, labelSize = 28 } )
local spinObject = function(event)
local wheel = event.target
local phase = event.phase
local stage = display.getCurrentStage()
if “began” == phase then
stage:setFocus(wheel, event.id)
wheel.isFocus = true
wheel.tempJoint = physics.newJoint(“touch”, wheel, event.x, event.y)
elseif wheel.isFocus then
if “moved” == phase then
wheel.tempJoint:setTarget(event.x, event.y)
elseif “ended” == phase or “cancelled” == phase then
local CurrentName
local function PutUpRandomName (group)
local name = Name[math.random(#Name)]
display.remove(CurrentName) – in case some name is still showing
CurrentName = display.newText(group, name, display.contentCenterX, display.contentCenterY, native.systemFontBold, 50)
– set color, apply transitions, etc.
end
stage:setFocus(wheel, nil)
wheel.isFocus = false
wheel.tempJoint:removeSelf()
end
end
return true
end
wheel:addEventListener(“touch”, spinObject)
end
----------------------------------------------------------------------
----------------------------------------------------------------------
function scene:willEnter( event )
local sceneGroup = self.view
end
function scene:didEnter( event )
local sceneGroup = self.view
end
function scene:willExit( event )
local sceneGroup = self.view
end
function scene:didExit( event )
local sceneGroup = self.view
end
function scene:destroy( event )
local sceneGroup = self.view
end
----------------------------------------------------------------------
– FUNCTION/CALLBACK DEFINITIONS –
----------------------------------------------------------------------
onBack = function ( self, event )
local options =
{
effect = “fromTop”, – See list here: http://docs.coronalabs.com/daily/api/library/composer/gotoScene.html
time = 500,
params =
{
arg1 = “value”,
arg2 = 0
}
}
composer.gotoScene( “src.mainMenu”, options )
return true
end
---------------------------------------------------------------------------------
– Scene Dispatch Events, Etc. - Generally Do Not Touch Below This Line
---------------------------------------------------------------------------------
function scene:show( event )
local sceneGroup = self.view
local willDid = event.phase
if( willDid == “will” ) then
self:willEnter( event )
elseif( willDid == “did” ) then
physics.start()
self:didEnter( event )
end
end
function scene:hide( event )
local sceneGroup = self.view
local willDid = event.phase
if( willDid == “will” ) then
physics.pause()
self:willExit( event )
elseif( willDid == “did” ) then
self:didExit( event )
end
end
function scene:destroy( event )
local sceneGroup = self.view
physics.stop()
end
scene:addEventListener( “create”, scene )
scene:addEventListener( “show”, scene )
scene:addEventListener( “hide”, scene )
scene:addEventListener( “destroy”, scene )
---------------------------------------------------------------------------------
return scene
[/lua]
This is my game.lua