1
00:00:00,000 --> 00:00:03,960
Bem-vindo de volta, Meus desenvolvedores de jogos favoritos. 

2
00:00:03,960 --> 00:00:05,820
Neste vídeo, na verdade, começamos

3
00:00:05,820 --> 00:00:08,280
a gerar inimigos de forma inteligente. 

4
00:00:08,280 --> 00:00:10,910
Então, agora, quando executamos o jogo,

5
00:00:10,905 --> 00:00:13,445
vamos aumentar isso para que você
 possa

6
00:00:13,440 --> 00:00:15,240
ver corretamente o que está acontecendo. 

7
00:00:15,240 --> 00:00:17,150
Depois que o candidato terminar,

8
00:00:17,145 --> 00:00:18,365
o primeiro inimigo aparece,

9
00:00:18,360 --> 00:00:19,730
o segundo inimigo aparece,

10
00:00:19,725 --> 00:00:22,575
e eles ficam lá esperando que nós os matemos. 

11
00:00:22,575 --> 00:00:24,555
Então, uma vez que os matamos,

12
00:00:24,555 --> 00:00:26,685
vamos tentar ir com eles. 

13
00:00:27,320 --> 00:00:28,500
Certo. 

14
00:00:28,500 --> 00:00:31,560
Na verdade, oh, ok, isso foi embaraçoso. 

15
00:00:31,560 --> 00:00:33,110
Vamos reiniciar o nível. 

16
00:00:33,105 --> 00:00:35,585
Espere por isso. Então,

17
00:00:35,580 --> 00:00:38,280
tornamos os inimigos tão bons que não podemos matá-los. 

18
00:00:38,280 --> 00:00:40,780
Ok, então deixe-me tentar. 

19
00:00:42,940 --> 00:00:47,090
Deixe-me chegar a uma certa distância para que não possamos mais. 

20
00:00:47,090 --> 00:00:48,350
Então, uma vez que os chamamos, você pode ver

21
00:00:48,350 --> 00:00:49,790
que temos a onda completa. 

22
00:00:49,790 --> 00:00:52,700
E, novamente, temos o inimigo surgindo porque
 fizemos

23
00:00:52,700 --> 00:00:55,550
a quantidade de inimigos e aqui também para esta onda. 

24
00:00:55,550 --> 00:01:00,160
Então, não vamos perder mais tempo e vamos começar. 

25
00:01:00,155 --> 00:01:02,065
Oh, caso. 

26
00:01:02,060 --> 00:01:06,010
Então, vamos em frente e, na verdade, começamos a possuir inimigos. 

27
00:01:06,005 --> 00:01:08,035
A primeira coisa que vamos fazer é

28
00:01:08,030 --> 00:01:10,720
obviamente criar aqui algum tipo

29
00:01:10,715 --> 00:01:15,715
de co-rotina ou podemos criar também um contador. 

30
00:01:15,710 --> 00:01:17,090
Mas vamos ficar com

31
00:01:17,090 --> 00:01:19,460
o Coubertin e esse cortejo será

32
00:01:19,460 --> 00:01:23,120
chamado toda vez que tivermos esse atraso na geração. 

33
00:01:23,120 --> 00:01:25,780
Então, essa equipe principal estará gerando os inimigos. 

34
00:01:25,775 --> 00:01:27,625
De qualquer forma, vamos começar e
 veremos

35
00:01:27,620 --> 00:01:29,390
como tudo está funcionando. 

36
00:01:29,390 --> 00:01:33,590
Então, vamos criar um enumerador de olhos aqui. 

37
00:01:33,590 --> 00:01:37,400
E vai ser chamado de onda de desova. 

38
00:01:37,400 --> 00:01:40,640
E a onda que queremos realmente gerar. 

39
00:01:40,640 --> 00:01:44,840
Então acene para detectar. 

40
00:01:44,840 --> 00:01:48,530
Então, já temos a onda que queremos abranger. 

41
00:01:48,530 --> 00:01:50,000
Ele terá seus próprios inimigos,

42
00:01:50,000 --> 00:01:52,870
seu nome e a quantidade de inimigos que tem. 

43
00:01:52,865 --> 00:01:55,835
Então, vamos criar um loop for. 

44
00:01:55,835 --> 00:01:58,165
Neste loop for, vamos começar

45
00:01:58,160 --> 00:02:01,130
com um número inteiro I igual a 0. 

46
00:02:01,130 --> 00:02:03,800
Vamos nos certificar

47
00:02:03,800 --> 00:02:06,970
que nunca ultrapassamos o peso para gerar,

48
00:02:06,965 --> 00:02:08,975
ou é a onda para gerar,

49
00:02:08,975 --> 00:02:11,425
a quantidade de inimigos? 

50
00:02:11,420 --> 00:02:14,180
E também vamos aumentá-lo em
 um a

51
00:02:14,180 --> 00:02:17,050
cada vez. 

52
00:02:17,045 --> 00:02:23,095
Então, aqui vamos criar um número inimigo aleatório. 

53
00:02:23,090 --> 00:02:27,260
E vai ser o alcance aleatório. 

54
00:02:27,260 --> 00:02:30,100
E esse intervalo será superior a 0. 

55
00:02:30,095 --> 00:02:39,095
E a onda para gerar o comprimento do ponto dos inimigos. 

56
00:02:39,090 --> 00:02:42,130
Então lá vamos nós e nos lembramos desses inimigos,

57
00:02:42,130 --> 00:02:45,370
e aqui está uma variedade de objetos de jogo. 

58
00:02:45,370 --> 00:02:48,580
Então, queremos gastar um inimigo aleatório lá dentro. 

59
00:02:48,580 --> 00:02:50,680
Então eu vou aqui onde diremos

60
00:02:50,680 --> 00:02:53,580
que algum tipo de método

61
00:02:53,575 --> 00:02:56,125
para gerar porque queremos tê-lo

62
00:02:56,125 --> 00:02:58,915
fora do, isso aqui mesmo. 

63
00:02:58,915 --> 00:03:00,955
Esta será apenas a onda de desova. 

64
00:03:00,955 --> 00:03:03,105
Este será o criador inimigo aqui. 

65
00:03:03,100 --> 00:03:04,540
E o que faremos,

66
00:03:04,540 --> 00:03:06,400
e a forma como esse numerador
 funcionará

67
00:03:06,400 --> 00:03:09,100
à medida que vamos dar
 retorno

68
00:03:09,099 --> 00:03:15,219
novo, aguarde quatro segundos. 

69
00:03:15,220 --> 00:03:18,310
E vai estar na onda. 

70
00:03:18,310 --> 00:03:23,270
Responda. Não demora, atraso na geração de pontos. 

71
00:03:23,270 --> 00:03:25,010
Então, o que está acontecendo aqui? 

72
00:03:25,010 --> 00:03:27,020
Esta é a primeira vez que acredito que
 usamos

73
00:03:27,020 --> 00:03:29,300
o retorno de rendimento

74
00:03:29,300 --> 00:03:34,040
dentro de um loop for em um enumerador ou uma corrotina. 

75
00:03:34,040 --> 00:03:36,580
Então, passamos por esse loop. 

76
00:03:36,575 --> 00:03:39,235
Toda vez que escolhemos um número aleatório,

77
00:03:39,230 --> 00:03:41,800
geramos algum tipo de inimigo,

78
00:03:41,795 --> 00:03:43,825
e então esperamos quatro segundos. 

79
00:03:43,820 --> 00:03:46,460
E, novamente, geramos um inimigo, geramos um inimigo. 

80
00:03:46,460 --> 00:03:48,340
Então isso nos permitirá dar

81
00:03:48,335 --> 00:03:51,085
retorno e chamar isso várias vezes,

82
00:03:51,080 --> 00:03:54,280
essa onda gerada várias vezes. 

83
00:03:54,275 --> 00:03:56,125
E depois que
 fizermos isso,

84
00:03:56,120 --> 00:03:57,560
também criaremos

85
00:03:57,560 --> 00:04:00,250
o método real que gerará o inimigo. 

86
00:04:00,245 --> 00:04:03,185
Então gere o inimigo. 

87
00:04:03,185 --> 00:04:06,085
E aqui vamos dizer que enviaremos

88
00:04:06,080 --> 00:04:11,320
objeto
 do jogo e o inimigo para gerar. 

89
00:04:11,315 --> 00:04:16,435
E aqui vamos dizer log de pontos de depuração apenas para

90
00:04:16,430 --> 00:04:18,530
garantir que saibamos qual inimigo está

91
00:04:18,530 --> 00:04:20,660
sendo gerado e tudo está funcionando corretamente. 

92
00:04:20,660 --> 00:04:26,560
Então, gerando o inimigo. 

93
00:04:26,555 --> 00:04:30,415
E vamos dar a ele o inimigo para gerar. 

94
00:04:30,410 --> 00:04:32,970
Mas o nome. 

95
00:04:33,040 --> 00:04:37,580
Lá vamos nós. E estamos simplesmente vindo para instanciar. 

96
00:04:37,580 --> 00:04:44,210
E então ela comeu o NMI. Muito pequeno. 

97
00:04:44,210 --> 00:04:48,430
E vai ser, opa, com licença. 

98
00:04:48,425 --> 00:04:52,225
Então, será toda a posição do ponto de transformação

99
00:04:52,220 --> 00:04:56,180
e transformamos a estação de linha. 

100
00:04:56,180 --> 00:04:58,100
Então, qual é a transformação? 

101
00:04:58,100 --> 00:05:00,010
qual transformação estamos falando? 

102
00:05:00,005 --> 00:05:01,585
Então, como o gerador de ondas está
 ligado ao gerenciador

103
00:05:01,580 --> 00:05:03,140
de níveis,

104
00:05:03,140 --> 00:05:05,560
esta será a posição e a rotação do

105
00:05:05,555 --> 00:05:08,855
objeto
 de jogo do gerenciador de níveis em nossa cena. 

106
00:05:08,855 --> 00:05:10,855
E mais tarde, estaremos criando

107
00:05:10,850 --> 00:05:13,760
vários pontos nos quais os inimigos serão gerados. 

108
00:05:13,760 --> 00:05:15,730
Então, funcionará assim. 

109
00:05:15,725 --> 00:05:17,915
Teremos algum tipo de matriz. 

110
00:05:17,915 --> 00:05:20,125
Vamos lidar com isso mais tarde que agora está

111
00:05:20,120 --> 00:05:22,640
focado em instanciar esses inimigos. 

112
00:05:22,640 --> 00:05:27,130
Então gere o inimigo, a onda para

113
00:05:27,125 --> 00:05:31,835
gerar inimigos na posição
 do

114
00:05:31,834 --> 00:05:35,574
número inimigo aleatório que acabamos de criar. 

115
00:05:35,570 --> 00:05:39,190
Então, vou adicionar uma entrada aqui. O que estamos fazendo? 

116
00:05:39,185 --> 00:05:41,845
Precisamos também chamar a corrotina e aqui,

117
00:05:41,840 --> 00:05:45,530
então antes de esquecermos, então co-rotina. 

118
00:05:45,530 --> 00:05:50,320
Spawn, spawn, inimigos, onda. 

119
00:05:50,315 --> 00:05:51,205
Sim, lá vamos nós. 

120
00:05:51,200 --> 00:05:53,800
E de que maneira deveríamos estar gerando? 

121
00:05:53,795 --> 00:05:56,915
Enquanto aqui vamos dizer que é a onda,

122
00:05:56,915 --> 00:06:00,895
ondas na posição próxima onda. 

123
00:06:00,890 --> 00:06:02,300
Então, provavelmente será

124
00:06:02,300 --> 00:06:04,840
0 agora porque a próxima onda,

125
00:06:04,835 --> 00:06:06,365
enquanto a próxima onda,

126
00:06:06,365 --> 00:06:08,755
começa em 0 aqui. 

127
00:06:08,750 --> 00:06:10,810
Então, será a primeira onda

128
00:06:10,805 --> 00:06:13,195
que é por apenas experimentar por enquanto,

129
00:06:13,190 --> 00:06:14,630
que está focada no que isso faz. 

130
00:06:14,630 --> 00:06:18,130
Portanto, uma co-rotina que começa se nos

131
00:06:18,125 --> 00:06:19,285
certivermos de que não estamos

132
00:06:19,280 --> 00:06:21,950
gerando a contagem regressiva é menor que 0,

133
00:06:21,950 --> 00:06:23,180
não
 estamos desova,

134
00:06:23,180 --> 00:06:25,490
estamos prontos para começar a desova. 

135
00:06:25,490 --> 00:06:29,090
Então começamos o revestimento aqui, temos o
 loop que

136
00:06:29,090 --> 00:06:30,830
percorre a quantidade de inimigos
 na

137
00:06:30,830 --> 00:06:32,750
onda que recebemos. 

138
00:06:32,750 --> 00:06:36,020
Como uma corrotina, criamos um número aleatório. 

139
00:06:36,020 --> 00:06:39,370
Nós geramos um inimigo aleatório que só tem a depuração

140
00:06:39,365 --> 00:06:41,275
para nos dizer qual inimigo está sendo gerado

141
00:06:41,270 --> 00:06:43,280
provavelmente removerá isso mais tarde. 

142
00:06:43,280 --> 00:06:48,170
E então instanciamos o inimigo real no gerente. 

143
00:06:48,170 --> 00:06:50,150
E então o que acontece? Nós rendemos o retorno,

144
00:06:50,150 --> 00:06:53,380
esperamos quatro segundos e depois surgimos em outro inimigo. 

145
00:06:53,375 --> 00:06:56,405
Então, antes que esse loop seja chamado novamente,

146
00:06:56,405 --> 00:06:58,405
temos que pesar o atraso de desova

147
00:06:58,400 --> 00:07:00,710
que é designado para nós. 

148
00:07:00,710 --> 00:07:02,500
Então, vou salvar tudo isso. 

149
00:07:02,495 --> 00:07:05,015
Vou voltar e unir. 

150
00:07:05,015 --> 00:07:08,665
E vamos ver o que temos aqui como gerente de níveis. 

151
00:07:08,660 --> 00:07:11,690
Espere que isso compile qualquer coisa. 

152
00:07:11,690 --> 00:07:13,790
Ok, então vamos
 ao

153
00:07:13,790 --> 00:07:17,140
gerente de nível do gerente e o que temos aqui? 

154
00:07:17,135 --> 00:07:18,535
Eu estava brincando,

155
00:07:18,530 --> 00:07:21,050
talvez eu não tenha feito isso no vídeo. 

156
00:07:21,050 --> 00:07:22,750
Então, temos essa onda aqui. 

157
00:07:22,745 --> 00:07:24,155
É a onda do esqueleto. 

158
00:07:24,155 --> 00:07:26,125
Os inimigos que temos aqui são

159
00:07:26,120 --> 00:07:29,450
o inimigo esqueleto e o covarde voando alto. 

160
00:07:29,450 --> 00:07:31,720
A quantidade de inimigos que queremos é responder
 a

161
00:07:31,715 --> 00:07:34,255
leigos será de dois segundos. 

162
00:07:34,250 --> 00:07:35,330
Vou salvar isso. 

163
00:07:35,330 --> 00:07:37,840
Onde está o gerente de níveis e o nosso mundo? 

164
00:07:37,835 --> 00:07:39,935
Não está no 000. 

165
00:07:39,935 --> 00:07:41,755
Vamos colocá-lo de volta em 0,

166
00:07:41,750 --> 00:07:43,670
então está bem na frente do nosso jogador. 

167
00:07:43,670 --> 00:07:46,280
E vamos executar o jogo e ver como ele se parece. 

168
00:07:46,280 --> 00:07:50,300
Então agora 12, devemos ver a contagem regressiva das ondas. 

169
00:07:50,300 --> 00:07:53,450
Lá vamos nós e
 whoa,

170
00:07:53,450 --> 00:07:56,180
são inimigos demais. 

171
00:07:56,180 --> 00:07:59,020
Vamos ver o que fizemos de errado aqui. 

172
00:07:59,015 --> 00:08:00,395
Então, salvamos isso. 

173
00:08:00,395 --> 00:08:01,645
O que está acontecendo aqui,

174
00:08:01,640 --> 00:08:04,430
estamos verificando se a contagem regressiva é menor que 0. 

175
00:08:04,430 --> 00:08:06,760
Não estamos no estado de desova? 

176
00:08:06,755 --> 00:08:08,305
Bem, vamos ver. 

177
00:08:08,300 --> 00:08:10,330
Começamos com a contagem, então não estamos. 

178
00:08:10,325 --> 00:08:14,185
Então, obviamente, precisamos mudar nossos estados aqui. 

179
00:08:14,180 --> 00:08:19,160
Então, antes de criarmos o loop ou iniciar o loop,

180
00:08:19,160 --> 00:08:20,840
vamos dizer que estamos em

181
00:08:20,840 --> 00:08:22,910
um estado que é igual
 aos

182
00:08:22,910 --> 00:08:26,980
Estados de desova, mas desova. 

183
00:08:26,975 --> 00:08:29,725
E então, quando terminarmos a desova,

184
00:08:29,720 --> 00:08:32,590
vamos entrar em um estado,

185
00:08:32,585 --> 00:08:34,585
que é a ponderação. 

186
00:08:34,580 --> 00:08:37,580
Então, estamos esperando que os inimigos sejam gerados. 

187
00:08:37,580 --> 00:08:42,710
Então, agora começamos antes de passarmos pelo loop,

188
00:08:42,710 --> 00:08:43,940
dissemos o estado. 

189
00:08:43,940 --> 00:08:46,250
Então agora isso não será chamado toda
 vez

190
00:08:46,250 --> 00:08:48,940
e não teremos tantos inimigos. 

191
00:08:48,935 --> 00:08:51,055
Vamos testar isso novamente. 

192
00:08:51,050 --> 00:08:55,500
Execute o jogo. Podemos ver a contagem regressiva aqui. 

193
00:08:55,495 --> 00:08:57,855
Eu o tornei público. Lá vamos nós. 

194
00:08:57,850 --> 00:09:01,720
Então 0, pegamos o inimigo e ele começa a atirar. 

195
00:09:01,720 --> 00:09:03,040
Então pegamos outro inimigo,

196
00:09:03,040 --> 00:09:04,740
e depois demos outro inimigo,

197
00:09:04,735 --> 00:09:07,005
e ele está sendo chamado a cada dois segundos. 

198
00:09:07,000 --> 00:09:09,510
Então olhe para esses pequenos cowers aqui. 

199
00:09:09,505 --> 00:09:13,215
Esta é uma mecânica de jogo muito legal, como você pode ver,

200
00:09:13,210 --> 00:09:18,100
cada dois segundos, 1212, e lá vamos nós. 

201
00:09:18,100 --> 00:09:19,230
Então, como você pode ver,

202
00:09:19,225 --> 00:09:21,865
os inimigos estão sendo chamados a cada segundo. 

203
00:09:21,865 --> 00:09:23,695
Mas agora você pode estar se perguntando,

204
00:09:23,695 --> 00:09:26,005
por que temos tantos inimigos,

205
00:09:26,005 --> 00:09:27,735
mesmo que tenhamos dito que a quantidade

206
00:09:27,730 --> 00:09:29,800
de inimigos deve ser apenas também. 

207
00:09:29,800 --> 00:09:31,690
Bem. É porque aqui, na

208
00:09:31,690 --> 00:09:35,310
verdade, não
 temos a contagem regressiva das ondas reiniciando. 

209
00:09:35,305 --> 00:09:38,905
Mais uma vez, algo com o qual lidaremos mais tarde. 

210
00:09:38,900 --> 00:09:42,920
Mas vamos antes de tudo pensar em quando vamos

211
00:09:42,920 --> 00:09:47,830
realmente redefinir a onda e quando é que uma onda real? 

212
00:09:47,825 --> 00:09:52,255
E assim podemos criar um tempo entre a onda. 

213
00:09:52,250 --> 00:09:55,130
Então, digamos que a primeira onda e a segunda onda,

214
00:09:55,130 --> 00:09:56,840
haja um atraso entre elas. 

215
00:09:56,840 --> 00:09:59,960
Ou podemos ter um mecânico muito legal e dar à

216
00:09:59,960 --> 00:10:03,430
nossa camada ou à pessoa que está jogando nosso jogo

217
00:10:03,425 --> 00:10:06,445
uma chance de ir em frente e matar todos
 os

218
00:10:06,440 --> 00:10:10,900
inimigos nesta onda antes que a próxima onda apareça. 

219
00:10:10,895 --> 00:10:13,075
Então é isso que vamos fazer. 

220
00:10:13,070 --> 00:10:14,780
E para fazer isso, vamos
 criar

221
00:10:14,780 --> 00:10:17,270
algum tipo de método

222
00:10:17,269 --> 00:10:21,949
que acompanhará se um inimigo morreu ou não. 

223
00:10:21,950 --> 00:10:24,940
Então, vamos voltar aqui. 

224
00:10:24,935 --> 00:10:27,055
E depois do inimigo da geração,

225
00:10:27,050 --> 00:10:29,450
vamos criar um privado. 

226
00:10:29,450 --> 00:10:31,490
Haverá um booleano,

227
00:10:31,490 --> 00:10:36,740
e será o inimigo ou vivo. 

228
00:10:36,740 --> 00:10:39,130
E isso retornará verdade se

229
00:10:39,125 --> 00:10:41,765
todos os inimigos estiverem vivos ou não. 

230
00:10:41,765 --> 00:10:45,625
Ah, sim, se todos os inimigos estiverem vivos e falsos,

231
00:10:45,620 --> 00:10:48,730
se um deles ou nenhum deles estiver vivo. 

232
00:10:48,725 --> 00:10:50,845
Então, aqui o que vou dizer,

233
00:10:50,840 --> 00:10:53,150
vou criar uma condição if. 

234
00:10:53,150 --> 00:10:56,890
E vou ter o objeto final do tipo. 

235
00:10:56,885 --> 00:11:00,905
E objetos do tipo realmente não encontram objetos,

236
00:11:00,905 --> 00:11:03,995
encontram objetos do tipo. 

237
00:11:03,995 --> 00:11:05,925
E o controlador inimigo,

238
00:11:05,929 --> 00:11:09,709
estarei procurando o comprimento do ponto do controlador inimigo. 

239
00:11:09,710 --> 00:11:12,850
E vai ser igual a 0. 

240
00:11:12,845 --> 00:11:18,185
E se for, então vamos retornar falso. 

241
00:11:18,185 --> 00:11:22,105
Tão falso, isso significa que todos os inimigos morreram. 

242
00:11:22,100 --> 00:11:24,800
E então, se passarmos por

243
00:11:24,800 --> 00:11:27,230
este e não retornarmos falso,

244
00:11:27,230 --> 00:11:30,890
então retornaremos verdadeiros. 

245
00:11:30,890 --> 00:11:34,460
Isso significa que os inimigos ainda estão vivos. 

246
00:11:34,460 --> 00:11:36,920
Então, agora temos uma onda

247
00:11:36,920 --> 00:11:39,890
ou de garantir se nossos inimigos

248
00:11:39,890 --> 00:11:42,400
foram todos esgotados e
 poderemos

249
00:11:42,395 --> 00:11:45,625
usá-lo aqui como uma condição de alguma forma. 

250
00:11:45,620 --> 00:11:49,280
Mas há um pequeno problema que está me incomodando. 

251
00:11:49,280 --> 00:11:52,100
O achar objetos do tipo
 no

252
00:11:52,100 --> 00:11:55,780
controlador inimigo é, na verdade, uma operação muito complicada,

253
00:11:55,775 --> 00:11:58,105
digamos que no sistema. 

254
00:11:58,100 --> 00:12:01,070
É preciso muitos recursos toda

255
00:12:01,070 --> 00:12:02,840
vez para passar por todos os objetos
 no

256
00:12:02,840 --> 00:12:04,190
controlador inimigo, o

257
00:12:04,190 --> 00:12:06,950
que às vezes não é muito necessário. 

258
00:12:06,950 --> 00:12:10,430
Então, o que queremos fazer é que queremos ter algum tipo

259
00:12:10,430 --> 00:12:14,560
de temporizador nos inimigos estão vivos verificador. 

260
00:12:14,555 --> 00:12:16,405
Então, na verdade, não verificamos

261
00:12:16,400 --> 00:12:19,670
cada quadro se todos os inimigos estão mortos. 

262
00:12:19,670 --> 00:12:21,550
Mas em vez disso, temos isso

263
00:12:21,545 --> 00:12:23,765
sendo verificado a cada dois segundos. 

264
00:12:23,765 --> 00:12:26,905
Então, vou lançá-lo para você como um desafio,

265
00:12:26,900 --> 00:12:29,470
e seu desafio é atrasar a verificação. 

266
00:12:29,465 --> 00:12:30,595
Então, antes de tudo,

267
00:12:30,590 --> 00:12:32,480
você precisará criar uma variável para

268
00:12:32,480 --> 00:12:35,390
o tempo entre verificar se há inimigos. 

269
00:12:35,390 --> 00:12:38,360
No método booleano, certifique-se de que não
 olhamos

270
00:12:38,360 --> 00:12:42,130
todos os inimigos, exceto quando o tempo terminar. 

271
00:12:42,125 --> 00:12:45,535
Preste atenção em onde devemos redefinir este contador. 

272
00:12:45,530 --> 00:12:47,540
Então, isso será muito importante. 

273
00:12:47,540 --> 00:12:49,000
Então, com isso dito,

274
00:12:48,995 --> 00:12:53,635
pause o vídeo agora mesmo e vá fazer cada Shannon. 

275
00:12:53,630 --> 00:12:56,270
Certo, bem-vindo de volta. 

276
00:12:56,270 --> 00:12:59,110
Então, vou rolar para cima aqui. 

277
00:12:59,105 --> 00:13:03,055
E vou criar um flutuador particular. 

278
00:13:03,050 --> 00:13:10,030
O tempo entre a busca do inimigo, entre a busca do inimigo. 

279
00:13:10,025 --> 00:13:12,455
E digamos que seja um F.

280
00:13:12,455 --> 00:13:15,055
Então 1 segundo. A cada 1 segundo,
 verificamos

281
00:13:15,050 --> 00:13:17,840
todos os inimigos da dívida. 

282
00:13:17,840 --> 00:13:22,720
E então aqui vou dizer que o tempo entre a

283
00:13:22,715 --> 00:13:29,015
pesquisa está sendo reduzido pelo tempo. DeltaTime,

284
00:13:29,015 --> 00:13:30,505
cada quadro, e isso
 será

285
00:13:30,500 --> 00:13:32,410
chamado de cada quadro. 

286
00:13:32,405 --> 00:13:34,085
E então aqui,

287
00:13:34,085 --> 00:13:35,635
vou verificar antes de
 verificarmos

288
00:13:35,630 --> 00:13:37,520
todos os objetos. 

289
00:13:37,520 --> 00:13:44,480
Se o tempo entre a pesquisa for menor ou igual a 0,

290
00:13:44,480 --> 00:13:51,530
então estaremos pesquisando. Lá vamos nós. 

291
00:13:51,530 --> 00:13:54,620
E então, quando realmente redefinimos isso? 

292
00:13:54,620 --> 00:13:56,210
Assim que o tempo entre

293
00:13:56,210 --> 00:13:58,510
busca for menor ou igual a 0,

294
00:13:58,505 --> 00:14:02,135
começamos verificando se todos os inimigos morreram. 

295
00:14:02,135 --> 00:14:04,195
E também podemos ir

296
00:14:04,190 --> 00:14:07,000
em frente e redefinir esse tempo entre as pesquisas. 

297
00:14:06,995 --> 00:14:11,425
E vou defini-lo para 1.5 porque não
 acho

298
00:14:11,420 --> 00:14:13,490
que isso seja algo
 que

299
00:14:13,490 --> 00:14:15,970
você pode querer mudar no inspetor,
 o

300
00:14:15,965 --> 00:14:17,635
tempo entre as buscas inimigas,

301
00:14:17,630 --> 00:14:19,680
isso pode ser bastante padrão. 

302
00:14:19,684 --> 00:14:21,384
Mas se você acha que

303
00:14:21,380 --> 00:14:23,600
talvez precise mudar essa variável,

304
00:14:23,600 --> 00:14:25,880
obviamente esta f não funcionará. 

305
00:14:25,880 --> 00:14:27,080
Você precisa subir aqui,

306
00:14:27,080 --> 00:14:28,910
criar uma variável separada

307
00:14:28,910 --> 00:14:30,970
se você fez isso, parabéns,

308
00:14:30,965 --> 00:14:34,975
este é o melhor passo ou a melhor maneira de pensar,

309
00:14:34,970 --> 00:14:37,330
o melhor design de jogo talvez. 

310
00:14:37,325 --> 00:14:38,875
Mas para mim, acredito que isso

311
00:14:38,870 --> 00:14:40,660
será algo muito constante,

312
00:14:40,655 --> 00:14:42,175
algo que não mudará. 

313
00:14:42,170 --> 00:14:44,450
Acho que nunca teremos que mudar

314
00:14:44,450 --> 00:14:47,090
o tempo entre as buscas inimigas. 

315
00:14:47,090 --> 00:14:48,320
Isso vai terminar? 

316
00:14:48,320 --> 00:14:50,410
Vamos voltar aqui. 

317
00:14:50,405 --> 00:14:53,245
E precisamos ter certeza de que nós,

318
00:14:53,240 --> 00:14:56,210
Onde está aqui e atualizamos. 

319
00:14:56,210 --> 00:14:57,840
Vamos verificar se

320
00:14:57,840 --> 00:15:05,210
o estado é igual aos estados de desova ponto em espera. 

321
00:15:05,210 --> 00:15:08,360
Então isso significa que estamos constantemente

322
00:15:08,360 --> 00:15:11,720
gerando inimigos e estamos à espera. 

323
00:15:11,720 --> 00:15:15,200
Então, verificamos depois que obviamente terminamos esse loop for,

324
00:15:15,200 --> 00:15:18,470
verificamos que o estado está esperando. 

325
00:15:18,470 --> 00:15:20,720
Então, se estiver aqui,

326
00:15:20,720 --> 00:15:25,690
vamos verificar se os inimigos estão vivos. 

327
00:15:25,685 --> 00:15:29,275
E observe que adicionamos esse ponto de exclamação,

328
00:15:29,270 --> 00:15:31,370
que significa exatamente o oposto. 

329
00:15:31,370 --> 00:15:34,220
Então, se todos os inimigos tiverem o Lloyd
 salvará o

330
00:15:34,220 --> 00:15:38,450
log de pontos de depuração, wave. 

331
00:15:38,450 --> 00:15:40,070
Completo. 

332
00:15:40,069 --> 00:15:41,629
Salve isso. 

333
00:15:41,630 --> 00:15:44,000
E caso contrário, se não for,

334
00:15:44,000 --> 00:15:46,690
então vamos simplesmente retornar. 

335
00:15:46,685 --> 00:15:48,145
E por que estamos fazendo isso? 

336
00:15:48,140 --> 00:15:49,610
Por que estamos dizendo retornar? 

337
00:15:49,610 --> 00:15:52,390
Dissemos que o retorno significa que não fazemos

338
00:15:52,385 --> 00:15:56,435
mais
 nada dentro do método, especialmente em atualização. 

339
00:15:56,435 --> 00:15:59,335
Por quê? Porque uma vez que a onda esteja completa,

340
00:15:59,330 --> 00:16:01,580
não
 queremos voltar para a onda,

341
00:16:01,580 --> 00:16:04,330
agora
 podemos verificar se não estamos em desova,

342
00:16:04,325 --> 00:16:05,995
que não estaremos n

343
00:16:05,990 --> 00:16:08,260
porque estamos obviamente e a espera
 e

344
00:16:08,255 --> 00:16:10,135
iniciamos a gravação novamente e 

345
00:16:10,130 --> 00:16:12,740
comece a criar os inimigos novamente. 

346
00:16:12,740 --> 00:16:14,630
Assim que a onda estiver completa,

347
00:16:14,630 --> 00:16:18,830
queremos impedir que toda a atualização funcione. 

348
00:16:18,830 --> 00:16:20,200
Então, vou salvar isso. 

349
00:16:20,195 --> 00:16:22,195
Vou voltar ao meu ganho. 

350
00:16:22,190 --> 00:16:26,720
E agora devemos ver isso quando executamos o jogo. 

351
00:16:26,720 --> 00:16:31,270
Então conseguimos, depois de cinco segundos de Contagem Regressiva,

352
00:16:31,265 --> 00:16:32,915
obtemos a contagem do inimigo. 

353
00:16:32,915 --> 00:16:35,995
Depois de dois segundos, outro podemos contar o inimigo. 

354
00:16:35,990 --> 00:16:38,030
E lá vamos nós. 

355
00:16:38,030 --> 00:16:41,000
Você pode ver que paramos tudo para que
 não tenhamos

356
00:16:41,000 --> 00:16:44,260
mais inimigos que precisamos. 

357
00:16:44,255 --> 00:16:46,015
Então, vou tentar matá-los. 

358
00:16:46,010 --> 00:16:47,540
Então, temos os dois. 

359
00:16:47,540 --> 00:16:48,920
E como você pode ver, novamente,

360
00:16:48,920 --> 00:16:51,940
a onda foi completada e, em seguida, os inimigos

361
00:16:51,935 --> 00:16:55,375
começam a surgir novamente. Certo, ótimo. 

362
00:16:55,370 --> 00:16:57,700
Então, com isso fora do caminho,

363
00:16:57,695 --> 00:16:59,875
certifique-se de confirmar suas alterações. 

364
00:16:59,870 --> 00:17:01,790
Espero que você goste e te vejo
 no

365
00:17:01,790 --> 00:17:03,800
próximo vídeo, onde iremos

366
00:17:03,800 --> 00:17:06,040
gerar pontos para várias ondas

367
00:17:06,035 --> 00:17:08,225
e completar todas elas,

368
00:17:08,225 --> 00:17:09,385
matando todos os inimigos,

369
00:17:09,380 --> 00:17:10,820
completando todo o caminho,

370
00:17:10,820 --> 00:17:14,030
e talvez ter algum tipo de mensagem muito boa. 

371
00:17:14,030 --> 00:17:16,230
Então, vejo você. 

