在碰撞过程中将event.object返回给另一个函数 - Corona SDK

时间:2016-04-18 13:17:07

标签: lua corona

在我的碰撞中,我正在使用event.object1.name和event.object2.name检测哪个生成器与屏幕底部的城堡对象发生碰撞。这工作正常但我想返回那个特定的spawn(与那个城堡相撞)并在可能的情况下在另一个函数中使用它的event.object。我怎样才能做到这一点?

干杯

我的碰撞如下:

local function onCollision(event)
if event.phase == "began" and gameIsActive == true then

if event.object1 ~= nil and event.object1.name == "Blue" and event.object2 ~= nil and event.object2.name == "arrow" or event.object1 ~= nil and event.object1.name == "arrow" and event.object2 ~= nil and event.object2.name == "Blue" then 
    if event.object2.name == "arrow" then display.remove(event.object2) event.object2 = nil; onHit()


    elseif event.object1.name == "arrow" then display.remove(event.object1) event.object1 = nil; onHit()

    end
end  

1 个答案:

答案 0 :(得分:0)

您只需使用该对象即可将其删除。

display.remove(event.object1)从显示中删除object1。 event.object.1 = nil将其删除

function doSomethingWithTheObject(obj)
  -- do something fancy here
  print(obj.name)
end

然后你删除对象调用你的函数:

doSomethingWithTheObject(event.object1)