Lua:删除包含图形对象的表

时间:2014-02-01 23:52:29

标签: lua corona

在我的游戏中,我有一个包含所有其他图形(display.newRect)和非图形对象的游戏场对象(表格)。现在我正在寻找重启游戏的好方法,是否有办法只删除游戏场对象(表格)并导致插入的对象将被删除,图形和非图形一起?或者我应该手动删除图形对象? 谢谢。

3 个答案:

答案 0 :(得分:2)

您需要为表创建一个方法(例如destroy()),该方法将遍历它并从场景中删除对象。

如果您使用的是Lua 5.2.1,您可能希望为gamefield表创建metatable并在__gc metamethod中调用您的方法。如果没有,请明确调用它。

答案 1 :(得分:1)

将所有图形对象放在显示组(display.newGroup)中。 当您删除显示组时,它将删除所有图像,rects等。

您可以向显示组添加其他属性(即将其用作游戏场对象)。

如果你这样做,你只需要删除组(group:removeSelf())并创建一个新组。

答案 2 :(得分:-1)

您需要自己删除它们。