是否可以在Tiled / Sprite Kit中使用重复对象?

时间:2014-02-22 21:13:26

标签: ios sprite-kit tiled

我目前正在使用Xcode,精灵套件和现在平铺的游戏构建游戏。游戏很简单,一个人从一个街区跳到另一个街区,但如果他们到了一边就会游戏结束。现在是他们无论如何通过平铺创建一个块来让人跳起来。并且通过游戏不断重复并让人跳起来,我希望对象有不同的高度和宽度?请帮忙?!

1 个答案:

答案 0 :(得分:0)

您可以使用的是创建重用机制,重用节点而不是创建和销毁它们。一种众所周知的机制,来自UITableViewUICollectionView

您将实现一种方法:

- (SKNode *)dequeueReusableNode;

从某个存储中重用SKNode,比如NSMutableArray(从数组中获取第一个对象,然后从数组中删除它并返回它)。如果array为空,则方法返回nil

然后检查是否有dequeueReusableNode方法中的节点,如果它是nil,则创建节点的新实例。如果不是nil,则使用您的数据对其进行配置。 这适用于应该重用的每个可见节点。

完全离屏的节点被发送到reuseQueue - 所有属性值都返回默认状态,然后节点被添加到NSMutableArray的{​​{1}}末尾}。