Почему физика. AddBody выдает ошибку в таблице? - PullRequest
0 голосов
/ 28 апреля 2019

Я - полный новичок в 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 ':'

Я не могу понять, почему это приведет к ошибке.Любая помощь приветствуется!

1 Ответ

0 голосов
/ 29 апреля 2019

Прослушайте сообщения об ошибках, они могут предоставить помощь или даже ответить, как в этот раз: 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) и используется очень часто, когда вам нужно вызвать метод для объекта, как здесь.

...