This is my code , i can see some objects but the obs objects are not visible on screen, i can’t figure out what’s wrong with the code :(
--function to deal ob1 group pooling local function getobs() local somerand=math.random( 1,24 ) --calling ob1 from pool for i=1, #obs do if not obs[somerand].isAlive then return obs[somerand] end end return nil end --independent obstacles spawning function local function spobs() local obs\_elem = require("mydata") obs\_elem.new=getobs() if(obs\_elem.new~=nil) then obs\_elem.new.isVisible=true obs\_elem.new.isAlive=true obs\_elem.new.isBodyActive=true obs\_elem.new.x=math.random( 320,380 ) obs\_elem.new.y=252 --adding event listener for each coin obs\_elem.new:setLinearVelocity(-250,0) obs\_elem.new.collision=obscols obs\_elem.new:addEventListener("collision",obs\_elem.new) end end -- --function to decide obstacle spawning local function obdecide(event) if(shut==0) then if (mytime==100) then spobs() elseif (mytime\>100) then mytime=0 end end end --game update loop local function move(event) if(shut==0) then ctimer=ctimer+1 mytime=mytime+1 --setspeed(event) movet(event) obdecide(event) cdecide(event) elseif(shut==1) then ovtimer=ovtimer+1 print(ovtimer) if(ovtimer==200) then allclean(event) elseif(ovtimer\>200) then composer.gotoScene("level1") end end end function scene:create( event ) local sceneGroup=self.view end function scene:show( event ) local sceneGroup=self.view bgtile = display.newImage( "images/bgtile.png",x,y) bbgtile=display.newImage( "images/bgtile.png", x+480 ,y) rtile=display.newImage( "images/rtile.png", x ,y+122 ) rrtile=display.newImage( "images/rtile.png", x+480, y+122 ) player=display.newSprite( psheet, sequenceData) player.x=75 player.y=248 player:setSequence( "run" ) player:play() physics.addBody( player, "dynamic",{ friction=1,density=100 } ) player.myName="hero" bird=display.newSprite(bsheet,bdata ) bird.x=88 bird.y=140 bird:setSequence( "fly" ) bird:play() physics.addBody( bird, "dynamic",{ friction=1 ,bounce=0.0, filter=bfilter,density=100} ) bird.myName="bird" --adding player base to stand on base=display.newImage( "images/base.png", 80,272 ) physics.addBody( base, "static",{ bounce=0.0, friction=1,filter=collisionFilter}) --base.isVisible=false base.myName="base" --adding base to bird bbase=display.newImage("images/bbase.png",80,150) physics.addBody(bbase,"static",{bounce=0.0,friction=1,filter=collisionFilter}) --bbase.isVisible=false bbase.myName="bbase" --adding stopper to destroy out of bound objects stopper=display.newImage( "images/stopper.png", 20,158 ) physics.addBody( stopper, "static", {bounce=0.0,friction=1,gravityScale=0,filter=bfilter} ) stopper.myName="stopper" --stopper.isVisible=false --coins setter lines seta=display.newRect(1,120,1200,1) physics.addBody(seta,"static",{friction=0,bounce=0.0,filter=bfilter}) --seta.isVisible=false setb=display.newRect(1,150,1200,1) physics.addBody(setb,"static",{friction=0,bounce=0.0,filter=bfilter}) --setb.isVisible=false player.collision=colls player:addEventListener("collision",player) --stopper.collision=obscols --stopper:addEventListener( "collision", stopper) --bird.collision=cclean --bird:addEventListener("collision",bird) --tap event listener Runtime:addEventListener( "tap", jump ); Runtime:addEventListener( "enterFrame", move ); end function scene:destroy( event ) local sceneGroup = self.view end scene:addEventListener( "create", scene ) scene:addEventListener( "show", scene ) scene:addEventListener( "destroy", scene ) return scene