我是Lua和Corona的完整入门者,我正在尝试自学如何使用它。我现在有以下代码:
local physics = require("physics")
physics.start()
local cX = display.contentCenterX
local cY = display.contentCenterY
local ball = display.newCircle( cX, cY, 50 )
local rock = display.newRect( cX, 1200, 800, 100 )
rock:setFillColor( 0.5, 0.5, 0.5 )
local properties = { density=1.0, friction=0.3, bounce=1 }
physics.addBody( "ball", "dynamic", properties )
physics.addBody( "rock", "static", properties )
physics.setDrawMode( "debug" )
但是,当我运行此命令时,它在将物理物体添加到球的线上给了我这个错误:
ERROR: table expected. If this is a function call, you might have used '.' instead of ':'
我似乎无法弄清楚为什么这会引发错误。任何帮助表示赞赏!
答案 0 :(得分:0)
收听错误消息,它们可能会提供帮助甚至答案,例如这次:If this is a function call, you might have used '.' instead of ':'
改为使用physics:addBody( "ball", "dynamic", properties )
,就像在rock:setFillColor( 0.5, 0.5, 0.5 )
中一样。实际上,a:b(c)
与a.b(a, c)
是等价的,并且在您必须在像这样的对象上调用方法时经常使用。