Pergunta

Eu estou usando Cocoa2Ds fazer um jogo para iOS.Eu sei que é, provavelmente, simples, mas existe uma maneira de mudar um CCFile do sprite imagens por meio de programação?

Eu criei um herói sprite objeto e, em seguida, arrastou-a para a cena principal, utilizando SpriteBuilder.

Finalmente, eu gostaria de mudar o herói sprite objeto para uma outra imagem que é a animação (em movimento) bem.

Foi útil?

Solução

Você perguntou sobre a mudança de um "CCFile" imagem, mas eu suponho que você quis dizer "CCSprite" de imagem.Se assim for, a alteração de uma imagem sprite pode ser feito criando um sprite do quadro e, em seguida, atribuir a sprite:

CCSpriteFrame * frame = [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:@"NameOfFrame"];
[mySprite setDisplayFrame:frame];

Para que isso funcione, a imagem que você está consultando já deve ser carregado na memória, como através de um sprite sheet:

[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"SpriteSheetFileName.plist"];

Você mencionou animação.Se você está tentando animar um sprite, e todas as imagens são carregadas na memória, e têm o mesmo nome, exceto para um número seqüencial anexado a eles, então você pode ter um sprite mover através destas imagens, assim animando-o, como se segue:

NSString * animateCycle = [NSString stringWithFormat:@"ImageName 00%%02d.png"];

Os nomes de imagem seria ao longo das linhas de "ImageName 0001.png", "ImageName 0002.png", e assim por diante.

CCActionInterval * action = [CCAnimate actionWithSpriteSequence:animateCycle numFrames:8 delay:.1 restoreOriginalFrame:YES];
[mySprite runAction:action];

Isto irá percorrer as imagens com base na designado atraso.

Espero que isso ajude.

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