Hi my objects are not removing after leaving the scene, i have tried to purging and removing the scene, but the objects will just keep on spawning in a other scene?
local badclout1 = {} local bad1Group = display.newGroup() local function spawnBC1() local badclouts1 = display.newImage("BCloud1.png") badclouts1.x = math.random(0, \_W) physics.addBody( badclouts1, "dynamic", { density=.1, bounce=.1, friction=.2, radius=45 } ) badclouts1.name = "BCloud1" badclouts1.bodyType = "kinematic" badclouts1.isSensor = true badclouts1.y = math.random(-100, -50) badclouts1.index = #badclout1 + 1 bad1Group:insert(badclouts1) badclouts1.rotation = math.random(-10,10) -- Rotate the object badclouts1:setLinearVelocity(0, math.random(speeda1, speedb1)) -- Drop down badclout1[badclouts1.index] = badclouts1 tmrSpawn1 = timer.performWithDelay(math.random(spawna, spawnb), spawnBC1) return badclouts1 end tmrSpawn1 = timer.performWithDelay(math.random(1000, 10000), spawnBC1) local function removeBomb() for i, v in pairs(badclout1) do if badclout1[i].y \>1000 then badclout1[i]:removeSelf() badclout1[i] = nil end end end Runtime:addEventListener("enterFrame", removeBomb)
is there something in my code that keeps it on the screen ?
2013-06-24 19:30:49.824 Corona Simulator[307:707] Runtime error /Users/macuser/Desktop/spawn/game.lua:65: attempt to compare number with nil stack traceback: [C]: ? /Users/macuser/Desktop/spawn/game.lua:65: in function \</Users/macuser/Desktop/spawn/game.lua:63\> ?: in function \<?:218\>
the code:
63 local function removeBomb() 64 for i, v in pairs(backgroundclouts) do 65 if backgroundclouts[i].y \>1000 then 66 backgroundclouts[i]:removeSelf() 67 backgroundclouts[i] = nil 68 end 69 end 70 end 80 Runtime:addEventListener("enterFrame", removeBomb)
oky so that fixes the error now when i use group:insert(backclouts) (<- line 53) i get this error (on collision ):
Attempt to call method 'insert' (a nil value) stack traceback: [C]: in function 'insert' /Users/macuser/Desktop/spawn/game.lua:53: in function '\_listener' ?: in function \<?:141\> ?: in function \<?:218\>
I don’t see you using backclouts anywhere in your code above. Are you talking about backgroundclouts? If so, that’s a table and you have to insert the member into the group, not the whole table:
group:insert(backgroundclouts[i])
or something like that. Perhaps if you posted more of your code, we could do a bit more than speculate.
2013-06-24 19:30:49.824 Corona Simulator[307:707] Runtime error /Users/macuser/Desktop/spawn/game.lua:65: attempt to compare number with nil stack traceback: [C]: ? /Users/macuser/Desktop/spawn/game.lua:65: in function \</Users/macuser/Desktop/spawn/game.lua:63\> ?: in function \<?:218\>
the code:
63 local function removeBomb() 64 for i, v in pairs(backgroundclouts) do 65 if backgroundclouts[i].y \>1000 then 66 backgroundclouts[i]:removeSelf() 67 backgroundclouts[i] = nil 68 end 69 end 70 end 80 Runtime:addEventListener("enterFrame", removeBomb)
oky so that fixes the error now when i use group:insert(backclouts) (<- line 53) i get this error (on collision ):
Attempt to call method 'insert' (a nil value) stack traceback: [C]: in function 'insert' /Users/macuser/Desktop/spawn/game.lua:53: in function '\_listener' ?: in function \<?:141\> ?: in function \<?:218\>
I don’t see you using backclouts anywhere in your code above. Are you talking about backgroundclouts? If so, that’s a table and you have to insert the member into the group, not the whole table:
group:insert(backgroundclouts[i])
or something like that. Perhaps if you posted more of your code, we could do a bit more than speculate.