here is the entire scene: i am posting it all because i have no idea what is going wrong…sorry it is so long
[lua]
module(…, package.seeall)
local localGroup
function clean ( event )
--physics.stop()
local ads = require “ads”
ads.init( “inneractive”, “NaBrOStudios_CavemanCrawl_iPhone” )
ads.show( “banner”, { x=0, y=0, interval=60 } )
– Some time later …
ads.hide()
print(“cleaned”)
end
function new()
localGroup = display.newGroup()
local physics = require(“physics”)
physics.start()
–> Set gravity to act “down” (ie towards the bottom of the phone)
physics.setGravity( 0, 9.8 ) – initial gravity points downwards
–physics.setDrawMode(“hybrid”)
– 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 level1.lua scene
director:changeScene( “level1”, “moveFromLeft”)
return true – indicates successful touch
end
local function onCredsBtnRelease(event)
– go to level1.lua scene
director:changeScene( “creds”, “moveFromLeft”)
return true – indicates successful touch
end
–ADS
local ads = require “ads”
local function adListener( event )
if event.isError then
– Failed to receive an ad.
print(“ads failed to load”)
end
end
ads.init( “inneractive”, “myAppId”, adListener )
ads.show( “banner”, { x=0, y=0, interval=60 } )
local leftWall = display.newRect(-64, 0, 1, display.contentHeight)
localGroup:insert(leftWall)
physics.addBody(leftWall, “static”, { bounce = 0.2 } )
–>Add background
background = display.newImage(“building1.png”, 0, 50, true)
background.xScale = 1.3
background.yScale = 1.3
localGroup:insert(background)
background2 = display.newImage(“building2.png”, 1475, 50, true)
background2.xScale = 1.3
background2.yScale = 1.3
localGroup:insert(background2)
background3 = display.newImage(“building3.png”, 2975, 50, true)
background3.xScale = 1.3
background3.yScale = 1.3
localGroup:insert(background3)
background4 = display.newImage(“brickbuilding.png”, 4476, 50, true)
background4.xScale = 1.3
background4.yScale = 1.3
localGroup:insert(background4)
–ADDING BRICKS(FLAMEBALLS)
bricks = {}
local function updateBlocks()
local check = math.random(1000)
local zuzu = graphics.newImageSheet( “fireballwitHit.png”, {width = 512, height= 512, numFrames = 15} )
– play 15 frames every 500 ms
local sequenceData = {
{ name=“regular”, frames={1, 2, 3, 7, 8, 13}, count = 6 , time=400, loopCount = 0 },
{ name = “exploder”, frames ={4, 5, 6, 9, 10, 11, 14, 15}, count =8, time = 1300, loopCount = 1 }
}
brick = display.newSprite( zuzu, sequenceData )
brick.x = check
brick.y = -500
brick.rotation = 90
brick.xScale = 0.6
brick.yScale = 0.6
brick.type = “brick”
localGroup:insert(brick)
brick:setSequence(“regular”)
brick:play()
table.insert(bricks, brick)
transition.to(brick, { time = 7000, y = 1100} )
end
timer.performWithDelay(4000, updateBlocks, -1)
–localGroup:insert(brick)
floor = display.newImage(“sidewalk.png”, -150, 690, true)
floor.xScale = 1.5
localGroup:insert(floor)
floor2 = display.newImage(“sidewalk4.png”, 1150, 690, true)
floor2.xScale = 1.5
localGroup:insert(floor2)
physics.addBody(floor, “static”, {bounce = 0} )
physics.addBody(floor2, “static”, {bounce = 0} )
–FALLING BRICKS–> Make bricks appear at top
brick3 = display.newImage(“1brick.png”, 100, -1200)
brick3.xScale = 0.5
brick3.yScale = 0.5
localGroup:insert(brick3)
brick4 = display.newImage(“1brick.png”, 400, -24000)
brick4.xScale = 0.5
brick4.yScale = 0.5
localGroup:insert(brick4)
brick5 = display.newImage(“1brick.png”, 650, -12000)
brick5.xScale = 0.5
brick5.yScale = 0.5
localGroup:insert(brick5)
brick6 = display.newImage(“1brick.png”, 800, -6000)
brick6.xScale = 0.5
brick6.yScale = 0.5
localGroup:insert(brick6)
brick7 = display.newImage(“1brick.png”, 950, -3000)
brick7.xScale = 0.5
brick7.yScale = 0.5
localGroup:insert(brick7)
–> Add face to stage and position
local hello = graphics.newImageSheet( “caveman.png”, { width=1077, height=1000.75, numFrames=12 } )
local face = display.newSprite( hello, { name=“hi”, frames={1, 3, 6, 7, 10, 8, 11, 9, 12, 4, 2, 5}, count = 12 , time=970, loopCount = 0 } )
face.x = 100
face.y = 0
face:play()
face.xScale = 0.4
face.yScale = 0.4
physics.addBody(face, { radius = 150, bounce = 0, friction = 0} )
face.angularDamping = 100
local w,h = display.contentWidth, display.contentHeight
transition.to( face, { time=5000, x=(w-95)} )
transition.to( face, { time=1500, delay=3500} )
backgroundSpeed = 6
floorSpeed = 8
function updateBackgrounds()
background.x = background.x - backgroundSpeed
if(background.x < -3900) then
background.x = 2050
end
background2.x = background2.x - (backgroundSpeed)
if(background2.x < -3900) then
background2.x = 2050
end
background3.x = background3.x - (backgroundSpeed)
if(background3.x < -3900) then
background3.x = 2050
end
background4.x = background4.x - (backgroundSpeed)
if(background4.x < -3900) then
background4.x = 2050
end
floor.x = floor.x - (floorSpeed)
if(floor.x < -1100) then
floor.x = 1850
end
floor2.x = floor2.x - (floorSpeed)
if(floor2.x < -1100) then
floor2.x = 1850
end
–Bricks
brick3.y = brick3.y + 5
brick3.rotation = brick3.rotation + 3
if(brick3.y > 1000) then
brick3.y = -1000
end
brick4.y = brick4.y + 6
brick4.rotation = brick4.rotation + 2
if(brick4.y > 1200) then
brick4.y = -3000
end
brick5.y = brick5.y + 5
brick5.rotation = brick5.rotation + 5
if(brick5.y > 1000) then
brick5.y = -7000
end
brick6.y = brick6.y + 5
brick6.rotation = brick6.rotation + 3
if(brick6.y > 1000) then
brick6.y = -13000
end
brick7.y = brick7.y + 5
brick7.rotation = brick7.rotation + 3
if(brick7.y > 1000) then
brick7.y = -21000
end
end
timer.performWithDelay(1, updateBackgrounds, -1)
local status = pcall( updateBackgrounds, background )
print( "pcall status is ", status )
local status = pcall( updateBackgrounds, backgroundSpeed )
print( "pcall status is ", status )
–Make player jump over whole(in floor) periodically
local function updateJump(event)
face:applyLinearImpulse( 0, -8, face.x, face.y )
end
timer.performWithDelay(6100, updateJump, -1)
– create a widget button (which will loads level1.lua on release)
playBtn = widget.newButton{
--label=“Play Now”,
--labelColor = { default={255}, over={128} },
default=“CAVE1.png”,
over=“CAVE2.png”,
width=400, height=113,
onRelease = onPlayBtnRelease – event listener function
}
playBtn:setReferencePoint( display.CenterReferencePoint )
playBtn.x = display.contentWidth*0.5
playBtn.y = display.contentHeight - 545
playBtn.xScale = 2.5
playBtn.yScale = 2.5
localGroup:insert(playBtn)
credsBtn = widget.newButton{
default=“CREDS1.png”,
over=“CREDS2.png”,
width=150, height=42,
onRelease = onCredsBtnRelease – event listener function
}
credsBtn:setReferencePoint( display.CenterReferencePoint )
credsBtn.x = display.contentWidth*0.5
credsBtn.y = display.contentHeight - 350
credsBtn.xScale = 2.5
credsBtn.yScale = 2.5
localGroup:insert(credsBtn)
localGroup:insert(face)
local function updateup(event)
playBtn:toFront()
credsBtn:toFront()
floor:toFront()
floor2:toFront()
face:toFront()
end
timer.performWithDelay(4001, updateup, -1)
return localGroup
end
[/lua]
Thanks for all of your help