Casa do Código
Sumário
Sumário
1
Introdução ao desenvolvimento de jogos no iOS
1
1.1
O que você encontrará neste livro . . . . . . . . . . . . . . . . . . . . .
3
1.2
Que comece a diversão! . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
2
Protótipo de um jogo
9
2.1
Iniciando o projeto . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.2
Criando a base do jogo . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
2.3
Desenhando o objeto principal
. . . . . . . . . . . . . . . . . . . . . . 20
2.4
Captando os comandos do usuário e movendo objetos . . . . . . . . . 24
2.5
Criando o inimigo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.6
Detectando colisões e mostrando resultados . . . . . . . . . . . . . . .
32
2.7
Adicionando um placar . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.8
Criando botões de interface do usuário . . . . . . . . . . . . . . . . . . 42
2.9
Adicionando mais vida: imagens da nave e do céu . . . . . . . . . . . 46
2.10 Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3
História do jogo
51
3.1
14-bis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
3.2
14-bis VS 100 Meteoros . . . . . . . . . . . . . . . . . . . . . . . . . . .
53
4
Tela inicial: Lidando com Background, logo e botões de menu
57
4.1
Sobre o Cocos2D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59
4.2
Iniciando o projeto . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59
4.3
ajustando a orientação
. . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.4
Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
iii
Sumário
Casa do Código
4.5
Assets da Tela de abertura . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.6
Capturando configurações iniciais do dispositivo . . . . . . . . . . . . 68
4.7
Logo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
71
4.8
Botões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
4.9
Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
74
5
Tela do jogo e objetos inimigos
77
5.1
GameScene . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
5.2
Transição de telas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.3
Engines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
81
5.4
Meteor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
85
5.5
Tela do game . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
87
5.6
Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
6
Criando o Player
93
6.1
Desenhando o Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.2
Botões de controle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
6.3
Atirando
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6.4
Movendo o player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.5
Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
7
Detectando colisões, pontuando e criando efeitos
111
7.1
Detectando colisões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
7.2
Efeitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
7.3
Player morre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
7.4
Placar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
7.5
Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
8
Adicionando sons e música
127
8.1
Executando sons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
8.2
Cache de sons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
8.3
Música de fundo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
8.4
Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . 131
iv
Casa do Código
Sumário
9
Voando com a gravidade!
133
9.1
Usando o Acelerômetro . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
9.2
Controlando a instabilidade . . . . . . . . . . . . . . . . . . . . . . . . 141
9.3
Calibrando a partir da posição inicial do aparelho . . . . . . . . . . . 142
9.4
Desafios com o acelerômetro . . . . . . . . . . . . . . . . . . . . . . . . 144
9.5
Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
10 Tela final e game over
147
10.1
Tela final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
10.2 Tela Game Over . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
10.3 Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
11 Pausando o jogo
157
11.1
Montando a tela de pause . . . . . . . . . . . . . . . . . . . . . . . . . . 158
11.2