android - Random error occurs every so often: attempt to compare nil with number Corona SDK -


every app throw following error:

gameplay.lua:121: attempt compare nil number

the function moves object right of screen left. when goes 50 pixels offscreen object should remove. here code method:

function moveobject(self,event)          if (self.x)<-50 --this line 121             --remove object             runtime:removeeventlistener("enterframe", event.self)             display.remove(event.target)          else             self.x = self.x-self.speed --move object left @ value speed         end     end 

the error pops when method called , goes restart screen:

------when ball hits object go restart scene------------

    local function oncollision( self,event )          if(event.object2.name == "bonus")then--if hit bonus ball             event.object2:removeself()              --set score             local currentscore =game.returnscore()             game.setscore(currentscore*2)             scoretext.text = game.returnscore()              runtime:removeeventlistener("enterframe", event.object2)          else                              composer.gotoscene("restart")                runtime:removeeventlistener("touch", onobjecttouch)             end     end     ball.collision = oncollision     runtime:addeventlistener( "collision", ball ) 

any ideas happening? quite error occurs, maybe 1 in 15 goes.

i think has event listeners. find corona event listeners still run after scene has changed. i'm guessing ball cleaned (removed) before event listener stopped, , every , listener still being run before listener cleaned up

to fix it, try

  1. removing listener first, ball second
  2. simply adding null check before if check

    if (self ~= null) if (self.x)<-50 --this line 121         --remove object         runtime:removeeventlistener("enterframe", event.self)         display.remove(event.target) 

Comments

Popular posts from this blog

get url and add instance to a model with prefilled foreign key :django admin -

android - Keyboard hides my half of edit-text and button below it even in scroll view -

css - Make div keyboard-scrollable in jQuery Mobile? -