Cocos2d不允许将两个相似的对象添加为self
的子级,是否有另一种添加重复项而不在我的DigBackground
类中实现深层复制的方法?并做(DigBackground *)[idObject copy];
顺便说一句!这不是针对双胞胎的种族主义吗?
DigBackground *bgImage = (DigBackground *)idObject;
[self addChild:bgImage z:iterator tag:iterator];
// Add duplicate sprite
DigBackground *bgImage2 = (DigBackground *)idObject;
[self addChild:bgImage z:iterator tag:iterator]; // Not allowed - duplicate child
最佳答案
您无法添加已添加的精灵,在最后一行添加相同的第一个孩子。
但是如果更改不起作用,则可以使用相同的信息创建另一个精灵(我认为DigBackground是CCSprite):
DigBackground *bgImage = (DigBackground *)idObject;
[self addChild:bgImage z:iterator tag:iterator];
// Add duplicate sprite
DigBackground *bgImage2 = [DigBackground spriteWithTexture:[bgImage texture] rect:[bgImage boundingBox]];
[self addChild:bgImage2 z:iterator tag:iterator+1]; //the tag should be unique.