使用代码:
function createNewBody(name,mass)
if not world.body[name]==nil then
print("This body has already been created. Maybe you meant to update it's values?\n")
else
world.body[name]={mass=m,x=0,y=0,xAccel=0,yAccel=0,xR=0,yR=0,properties={gaseous=false,texture=""}}
world.bodies=world.bodies+1
end
end
此代码显示没有错误,但是当我将createNewBody(月亮,1.622)绑定到某个密钥然后使用它时,它会让我发送密钥而不显示错误消息。
而且,是的,我定义了world.bodies
和world.body
答案 0 :(得分:2)
not world.body[name]==nil
被解析为(not world.body[name])==nil
。由于not
的结果是布尔值,因此它永远不会是nil
。
尝试not(world.body[name]==nil)
或world.body[name]~=nil
。