Habilite propriedades ausentes em CCBFiles com nós personalizados no SpriteBuilder

SpriteBuilder é uma ótima ferramenta para construir aplicativos multiplataforma para iOS e Android usando o Cocos2D. Um recurso muito útil do SpriteBuilder é a capacidade de encapsular um nó em um CCBFile, que pode ser reutilizado e aninhado em outros CCBFiles. Por padrão, SpriteBuilder permite que você crie os seguintes tipos de CCBFiles: Cena, Nó, Camada, Sprite ou Partículas.

Cenário

Mas e se você quiser um CCBFile do tipo CCButton ou CCScrollView? Você poderia criar um Nó ou uma Camada (uma camada é simplesmente um CCNode que permite especificar um tamanho de conteúdo) e simplesmente definir a “Classe personalizada” para CCButton, no entanto, há uma grande desvantagem nessa abordagem.

Cenário

O painel de propriedades à direita permite que você personalize propriedades para CCNode, mas não para CCButton. Definir a classe personalizada não é suficiente para fazer o SpriteBuilder exibir as propriedades adicionais do CCButton.

No entanto, existe uma solução simples. O arquivo CCB é apenas um arquivo Plist (Lista de Propriedades) e pode ser facilmente modificado com um editor de texto, portanto, abra seu arquivo CCB em seu editor de texto favorito e procure a propriedade “baseClass”.

Cenário

Altere o valor de baseClass (a parte dentro das tags <string> </string> logo abaixo de <key> baseClass </key>) para CCButton ou qualquer outro tipo de nó suportado por SpriteBuilder, como CCScrollView, CCLabelTTF, CCSlider, etc.

Cenário

Salve o arquivo, volte para SpriteBuilder e reabra o arquivo CCB.

Cenário

Viola! Agora todas as propriedades estão expostas no SpriteBuilder e podem ser editadas. Você pode até atribuir uma classe personalizada no SpriteBuilder para obter ainda mais flexibilidade, contanto que sua classe personalizada herde da classe base.

Boa codificação!