Pergunta

Eu estou usando cocos2d-iphone para Sprites lugar em uma camada de configurar um playfield jogo. Em determinados pontos no jogo, certas Sprites precisam ser removidos com base em condições de jogo. O que eu gostaria de fazer é configurar uma matriz de ponteiros Sprite, mas eu tenho duas perguntas:

Qual é a melhor maneira de colocar ponteiros Sprite em uma matriz?

Como se remover o Sprite em cocos2d com apenas um ponteiro para a Sprite? Eu sei como fazê-lo a partir de sua camada pai, mas que é muito tempo de execução intensivo para o loop do jogo principal.

Agradecemos antecipadamente!

Foi útil?

Solução

Os herda classe Sprite de CocosNode, então você deve ser capaz de chamar spritePointer.parent.remove(spritePointer)

Outras dicas

Eu percebi isso. Se alguém estiver interessado, a maneira de fazê-lo é declarar uma matriz de ponteiros Sprite, tais como:

Sprite * mySprites[10][10]; // assuming a 10x10 playfield where obstacles get placed

Então, quando a criação de seu Sprites:

mySprites[0][0] = [Sprite spriteWithFile: @"obstacle.png"];   
[myLayer add:mySprites[0][0]];  

Para remover o Sprite:

[myLayer remove:mySprites[0][0]];

Há também [mySprite removeFromParentAndCleanup:YES].

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top