我正在使用cocos2d-iphone将精灵放置到图层上来设置游戏场。在游戏中的某些点,某些精灵需要根据游戏条件被移除。我想要做的是设置一个Sprite指针数组,但我有两个问题:iPhone和Cocos2d精灵/图层
将Sprite指针放置在数组中的最佳方式是什么?
如何在只有一个指向Sprite的指针的情况下移除cocos2d中的Sprite?我知道如何从它的父层做到这一点,但是对于主游戏循环而言,这对运行时间密集程度太高。
在此先感谢!
我正在使用cocos2d-iphone将精灵放置到图层上来设置游戏场。在游戏中的某些点,某些精灵需要根据游戏条件被移除。我想要做的是设置一个Sprite指针数组,但我有两个问题:iPhone和Cocos2d精灵/图层
将Sprite指针放置在数组中的最佳方式是什么?
如何在只有一个指向Sprite的指针的情况下移除cocos2d中的Sprite?我知道如何从它的父层做到这一点,但是对于主游戏循环而言,这对运行时间密集程度太高。
在此先感谢!
的Sprite
类从CocosNode
继承,所以你应该能够调用spritePointer.parent.remove(spritePointer)
我想通了。如果任何人有兴趣,要做到这一点的方法是声明雪碧指针,如数组:
Sprite * mySprites[10][10]; // assuming a 10x10 playfield where obstacles get placed
然后,你的精灵设置时:
mySprites[0][0] = [Sprite spriteWithFile: @"obstacle.png"];
[myLayer add:mySprites[0][0]];
要取出雪碧:
[myLayer remove:mySprites[0][0]];
还有[mySprite removeFromParentAndCleanup:YES]
。
请随时接受您自己的答案,而不是我的答案。通过事情的声音,你可以使用你的方法使它工作,我不会被冒犯! :) – 2009-10-13 18:45:52