1
我试图随机产生朝向可以在屏幕上拖动的球移动的对象。基本上我只想让用户尝试避免这些对象。我正在尝试使箭产生并移向球的位置,然后在一段时间后消失。这里的代码适用于第一个箭头,但是当它试图删除第二个时,它会调用并且错误地说attempt to call method 'remove self' (a nil value)
。在corona lua中删除数组中的特定对象
local function cleararray()
if (object[objectTag]) then
object[objectTag]:removeSelf()
end
end
local function spawnObject()
objectTag = objectTag + 1
local objIdx = mRandom(#objects)
local objName = objects[objIdx]
object[objectTag] = display.newImage("btn_arrow.png")
object[objectTag].x = mRandom(320)
object[objectTag].y = mRandom(480)
object[objectTag].name = objectTag
print(objectTag)
transition.to(object[objectTag], { time=2000, y=myObject.y, x=myObject.x })
timer.performWithDelay(2000,cleararray,1)
end
尝试调用方法'remove self'?你确定你不是指'removeSelf'?它们是有区别的。 –
您的'cleararray'函数正在使用全局objectTag,它始终是您创建的最后一个对象的ID。这不会正常工作。你需要在正在超时的对象的objectTag上运行'cleararray'。 –