2013-07-12 39 views
0

我即將完成我的比賽,但我遇到了一個錯誤比較爲零:嘗試用數字電暈

attempt to compare nil with number game2.lua 444 

我沒有就如何解決這個線索,我已經嘗試了一切,沒有成功。我認爲功能scrollSpace正在造成這種情況,因爲有時背景會以不可控制的速度滾動。這是我的代碼:

function scrollSpace(self,event) 
    if self.x < -900 then 
     self.x = 800 
    else 
     self.x = self.x - self.speed 
    end 
end 

這控制着東西如何滾動屏幕。如果你們有更多的代碼,只需回覆,我很樂意添加請求的源代碼。最後一兩件事:沒有人知道下面的錯誤方式:

attempt to compare nil with number 

這是我的文件代碼:

coin01 = display.newImage("coin02.png") 
    coin01.y = 100 
    coin01.x = 500 
    coin01.speed = math.random(2,6) 
    coin01.initY = mine1.y 
    coin01.amp = math.random(20,100) 
    coin01.angle = math.random(1,360) 

physics.addBody(coin01, "static", {density=.1,bounce=0.1, friction=.2,radius=12}) 
screenGroup:insert(coin01) 
end -- end of create scene 
**print "passed" 

function scrollSpace(self,event) 
if self.x < -900 then 
    self.x = 800 
else 
self.x = self.x - self.speed 
end 
    end** 
function scene:enterScene(event) 

coin01.enterFrame = coins 
Runtime:addEventListener ("enterFrame",coin01) 
    end 
    function scene:exitScene(event) 
***storyboard . purgeScene ("start") 
story board . purgeScene ("restart")*** 
    Runtime:removeEventListener ("enterFrame",coin01) 

    end 

    function scene:destroyScene(event) 

end 

scene:addEventListener("createScene",scene) 
scene:addEventListener("enterScene",scene) 
scene:addEventListener("exitScene",scene) 
scene:addEventListener("destroyScene",scene) 

return scene 
+0

可能重複[嘗試比較零與數字](http://stackoverflow.com/questions/17625414/attempt-to-compare-nil-with-number) – iagreen

回答

0

Apperantly self.x是一個零值。如果你的地方,然後將其刪除監聽器在同一時間被調用,不會有任何self.x值。

你應該發佈每一行你改變/創建自我對象。也聽衆

+0

嘿傢伙人誰得到這個錯誤使用故事板你只需要把故事板。 purgeScene(「開始」) 故事板。 purgeScene(「重新啓動」)在進入場景事件中希望這有助於人們走出 – SeanDp32