Como adicionar motor estático SimpleAudio cocos2d ao seu projeto ARC

PREFÁCIO
Eu estava desenvolvendo um jogo simples para meu projeto pessoal de iPad. Durante o desenvolvimento eu mixei áudio com AVAudioPlayer para música de fundo e AudioServices System Sound para SFX. Depois de alguns dias, percebi acidentalmente que havia problemas de volume no iPad. A música de fundo foi afetada com o volume geral e o volume SFX depende do volume que você configurou para os efeitos sonoros do iPad. Por exemplo, se o volume dos seus efeitos sonoros estava em 0, você não ouviu nenhum SFX no jogo, mesmo que o volume estivesse em 100%. De jeito nenhum! Provavelmente também existem outras formas, mas decidi usar SimpleAudioPlayer incluído na biblioteca cocos2d cocosDenshion. OK, vamos lá.

ARC
Quando você tem um projeto usando ARC – você tem duas opções se quiser usar o cocos2D. Fazendo biblioteca estática de cocos2d ou usando bibliotecas preparadas de Kobold2D. Eu escolhi a 2ª opção.

COMO
1) Instale o Kobold2d. A instalação é bastante simples, então vamos direto para a próxima etapa.

2) No Xcode – crie o Workspace (se estiver desenvolvendo do zero) ou simplesmente arraste Kobold2D-Libraries.xcodeproj para o Project Navigator de seu projeto existente. O Xcode solicita a criação de um espaço de trabalho. Crie um e sua tela ficará assim.

Cenário

NOTA: Certifique-se de que Kobold2s seja adicionado como irmão e não como uma criança.

3) No Navegador de Projetos, escolha o projeto em que deseja usar a biblioteca estática. Em Alvos – Fases de construção – Vincular binário às bibliotecas, selecione + e escolha a biblioteca que deseja usar. No meu caso, é libcocosdenshion-ios.a

Cenário

4) Em seguida, você precisará de cabeçalhos. No navegador do projeto, selecione CocosDenshion e arraste-o para o seu projeto. Seu preenchimento automático agora reconhece cabeçalhos Cocosdenshion.

Cenário

5) Abra a pasta CocosDenshion copiada e exclua todos os arquivos .m! Esta é uma etapa muito importante porque, quando perdida, você teria muitos problemas de ARC ao construir. Você vai acabar com isso.

Cenário

6) Adicione as estruturas necessárias: OpenAL, AudioToolbox, AVFoundation

É isso aí! Parecem etapas muito simples, mas levaram quase 3 dias investigando, aprendendo, pesquisando no Google e aumentando a pilha. Aproveitar 🙂