1
00:00:00,000 --> 00:00:06,390
Bem-vindo de volta meus colegas desenvolvedores de jogos para um novo vídeo extremamente longo. 

2
00:00:06,390 --> 00:00:08,250
Sei que você está cansado disso. 

3
00:00:08,250 --> 00:00:13,940
Mas, como sempre, vale a pena porque aprendemos muito. 

4
00:00:13,935 --> 00:00:16,385
Primeiro de tudo, criamos um inimigo. 

5
00:00:16,380 --> 00:00:18,090
Adicionamos um intervalo a ele. 

6
00:00:18,090 --> 00:00:20,490
Adicionamos uma maneira de desenhar esse intervalo. 

7
00:00:20,490 --> 00:00:24,280
E também executamos o jogo. Podemos atirar no inimigo. 

8
00:00:24,275 --> 00:00:25,985
Obviamente, ele não morre por enquanto,

9
00:00:25,985 --> 00:00:28,135
mas podemos entrar no intervalo. 

10
00:00:28,130 --> 00:00:31,060
Você pode ver aqui que o jogador está no intervalo Chase. 

11
00:00:31,055 --> 00:00:33,205
Ele está sendo enviado toda vez. 

12
00:00:33,200 --> 00:00:35,860
Se sairmos dessa pequena bolha, lá vai você,

13
00:00:35,855 --> 00:00:38,935
você vê que o jogador está fora do alcance. 

14
00:00:38,930 --> 00:00:40,900
Então, não vamos perder mais tempo. 

15
00:00:40,895 --> 00:00:44,905
E vamos começar com esse vídeo longo. 

16
00:00:44,900 --> 00:00:50,450
Oh, então é hora de alguns inimigos. 

17
00:00:50,450 --> 00:00:51,970
Vamos começar. 

18
00:00:51,965 --> 00:00:54,775
A primeira coisa que vamos fazer é

19
00:00:54,770 --> 00:00:57,800
mouse
 para criar um objeto de jogo vazio. 

20
00:00:57,800 --> 00:01:00,950
Certifique-se de que sua posição esteja redefinida. 

21
00:01:00,950 --> 00:01:03,370
E a rotação e a escala e et cetera. 

22
00:01:03,365 --> 00:01:10,375
E vamos chamar isso de inimigo por enquanto até decidirmos qual inimigo vai querer usar. 

23
00:01:10,370 --> 00:01:13,700
A próxima coisa que precisaremos fazer é que precisemos entrar nos sprites. 

24
00:01:13,699 --> 00:01:19,119
Vamos clicar com o botão direito do mouse em criar uma pasta aqui para os inimigos. 

25
00:01:19,115 --> 00:01:23,125
E dentro dos inimigos entrará nos recursos e

26
00:01:23,120 --> 00:01:27,290
vamos arrastar o monstro e as criaturas. 

27
00:01:27,290 --> 00:01:29,660
E vamos colocá-lo aqui. 

28
00:01:29,660 --> 00:01:33,170
Então, vamos esperar que tudo seja importado. Vamos abrir isso. 

29
00:01:33,170 --> 00:01:35,780
E como você pode ver, temos quatro tipos de inimigos

30
00:01:35,780 --> 00:01:38,590
que baixei de artes de jogos abertos. 

31
00:01:38,585 --> 00:01:40,225
Claro, como sempre,

32
00:01:40,220 --> 00:01:42,560
você pode encontrar seus próprios inimigos. 

33
00:01:42,560 --> 00:01:47,470
Esses são os que usei e eles estarão no link, nos recursos. 

34
00:01:47,465 --> 00:01:49,225
E o que devo escolher? 

35
00:01:49,220 --> 00:01:51,580
Acho que vou escolher quatro agora,

36
00:01:51,575 --> 00:01:54,875
o, vamos ver qual deles. 

37
00:01:54,874 --> 00:01:57,144
Eu realmente não pensei nisso. 

38
00:01:57,140 --> 00:01:58,420
Os inimigos. 

39
00:01:58,415 --> 00:02:01,375
Vamos apenas escolher o esqueleto e ser muito genérico. 

40
00:02:01,370 --> 00:02:05,740
Então, como você pode ver, temos um ataque de três morte ou et cetera, et cetera. 

41
00:02:05,735 --> 00:02:09,055
Então, eu só vou entrar no ocioso. 

42
00:02:09,050 --> 00:02:13,390
Vou fazer com que seja aplicado vários Sprite Editor. 

43
00:02:13,385 --> 00:02:15,955
E vamos seguir em frente e cortá-lo,

44
00:02:15,950 --> 00:02:18,590
não automaticamente, mas por um tamanho de grade. 

45
00:02:18,590 --> 00:02:22,610
E se você estava um pouco confuso com o que fiz da última vez,

46
00:02:22,610 --> 00:02:26,990
eu só verifico o comprimento de todo o sprite. 

47
00:02:26,990 --> 00:02:31,310
Então são 600 e eu divido por quantos esqueletos temos. 

48
00:02:31,310 --> 00:02:34,700
Então, temos quatro ou uma única linha,

49
00:02:34,700 --> 00:02:37,060
então dividida por quatro. 

50
00:02:37,055 --> 00:02:41,215
Isso significa que é 150 por 150, como sempre. 

51
00:02:41,210 --> 00:02:43,190
Por algum motivo, estou surpreso. 

52
00:02:43,190 --> 00:02:46,570
Então vamos para a emenda, fatia. 

53
00:02:46,565 --> 00:02:50,905
Splice, pense que isso é emenda de filme, claro, fatia. 

54
00:02:50,900 --> 00:02:52,620
Lá vamos nós. Aplicar. 

55
00:02:52,624 --> 00:02:55,894
Agora temos nossos pequenos esqueletos aqui. 

56
00:02:55,895 --> 00:02:57,475
Vou arrastá-lo. 

57
00:02:57,470 --> 00:02:59,440
E a cena, whoa,

58
00:02:59,435 --> 00:03:01,835
é um esqueleto enorme, não é? 

59
00:03:01,835 --> 00:03:03,335
Isso é ironia. 

60
00:03:03,335 --> 00:03:04,645
Se você não o pegou. 

61
00:03:04,640 --> 00:03:07,610
De qualquer forma, faremos 50. Lá vamos nós. 

62
00:03:07,610 --> 00:03:13,420
Ainda não podemos vê-lo porque precisamos ter e aplicar. 

63
00:03:13,415 --> 00:03:21,875
Vamos seguir em frente e criar uma camada aqui que será o inimigo ou os inimigos. 

64
00:03:21,875 --> 00:03:24,445
E vou definir as balas para renderizar na frente do

65
00:03:24,440 --> 00:03:27,820
inimigo e também o jogador para renderizar um enredo do inimigo. 

66
00:03:27,815 --> 00:03:30,655
E vamos em frente e definir o inimigo aqui. 

67
00:03:30,650 --> 00:03:31,760
Então lá vai você. 

68
00:03:31,760 --> 00:03:34,300
Ainda é um inimigo muito pequeno. 

69
00:03:34,295 --> 00:03:36,775
Vamos salvar isso. Vamos torná-lo um pouco maior. 

70
00:03:36,770 --> 00:03:39,800
Então, um ocioso 50, vamos fazê-los 32. 

71
00:03:39,800 --> 00:03:41,260
Aplique isso. 

72
00:03:41,255 --> 00:03:43,135
Talvez ainda maior. 

73
00:03:43,130 --> 00:03:46,930
Vamos fazê-lo 16. Então, 16. 

74
00:03:46,925 --> 00:03:47,785
Sim. Lá vamos nós. 

75
00:03:47,780 --> 00:03:48,110
Certo. 

76
00:03:48,110 --> 00:03:50,000
Isso é muito grande. 

77
00:03:50,000 --> 00:03:53,740
Quando D talvez 20. 

78
00:03:53,735 --> 00:03:56,345
Sim, acho que 20 é bom o suficiente. 

79
00:03:56,345 --> 00:03:59,195
Isso mudou esses dois pontos. Veja se isso ajuda. 

80
00:03:59,195 --> 00:04:01,555
Sim, lá vamos nós. Ele parece muito melhor,

81
00:04:01,550 --> 00:04:02,720
ainda um pouco granulado,

82
00:04:02,720 --> 00:04:04,240
mas não se preocupa com isso. 

83
00:04:04,235 --> 00:04:06,235
Nós o temos de graça. 

84
00:04:06,230 --> 00:04:07,760
De qualquer forma. 

85
00:04:07,760 --> 00:04:10,010
Vamos ver, este é o corpo. 

86
00:04:10,010 --> 00:04:12,940
Este seria o corpo. 

87
00:04:12,935 --> 00:04:16,165
E eu vou cuidar do objeto do jogo inimigo. 

88
00:04:16,160 --> 00:04:19,610
Então agora temos o inimigo aqui e o corpo. 

89
00:04:19,610 --> 00:04:22,090
Vamos apenas defini-lo para 00. 

90
00:04:22,085 --> 00:04:23,755
A posição é relativa,

91
00:04:23,750 --> 00:04:27,470
claro para os objetos do jogo inimigo ou agora nos movemos

92
00:04:27,470 --> 00:04:31,580
usando o inimigo e você pode ver que ele é renderizado atrás do jogador,

93
00:04:31,580 --> 00:04:38,380
atrás da arma e ele também deve ser renderizado atrás das balas. Vá para a direita. 

94
00:04:38,375 --> 00:04:39,845
Agora que temos isso,

95
00:04:39,845 --> 00:04:42,205
próxima coisa que precisamos fazer é obviamente em

96
00:04:42,200 --> 00:04:46,750
algum comportamento ou uma maneira de controlar o comportamento de nosso inimigo. 

97
00:04:46,745 --> 00:04:51,005
Então, vamos entrar nos ativos, nos scripts,
 vamos clicar com o

98
00:04:51,005 --> 00:04:52,735
botão direito do mouse aqui,

99
00:04:52,730 --> 00:04:55,490
criar uma nova pasta talvez,

100
00:04:55,490 --> 00:04:58,200
e vamos chamá-la de inimigos. 

101
00:04:58,204 --> 00:04:59,314
Entre. 

102
00:04:59,315 --> 00:05:03,875
Talvez também crie um aqui para o jogador,

103
00:05:03,875 --> 00:05:06,085
que será o controlador do jogador. 

104
00:05:06,080 --> 00:05:12,100
E vamos ver, também criaremos um para as balas e o tempo agora. 

105
00:05:12,095 --> 00:05:16,295
Então crie uma nova pasta para as balas. 

106
00:05:16,295 --> 00:05:19,675
E vamos movê-los para a bala. 

107
00:05:19,670 --> 00:05:20,000
Por quê? 

108
00:05:20,000 --> 00:05:21,470
Porque temos a bala,

109
00:05:21,470 --> 00:05:24,670
o controlador de bala do jogador e o efeito de impacto. 

110
00:05:24,665 --> 00:05:28,255
Então e dentro dos inimigos clicará com o botão direito do mouse,

111
00:05:28,250 --> 00:05:30,080
criará um novo script C Sharp,

112
00:05:30,080 --> 00:05:31,820
e nós o chamaremos

113
00:05:31,820 --> 00:05:36,460
controlador
 E EMI pressionado Enter. 

114
00:05:36,455 --> 00:05:39,745
Aguarde que isso seja compilado. Certo, ótimo. 

115
00:05:39,740 --> 00:05:41,150
E agora no inimigo,

116
00:05:41,150 --> 00:05:46,630
podemos ir em frente e adicionar um componente que é o controlador inimigo. 

117
00:05:46,625 --> 00:05:48,955
E vamos abrir o roteiro. 

118
00:05:48,950 --> 00:05:54,640
Certo? Então, algo que você deve ter notado que todas as guias desapareceram. 

119
00:05:54,635 --> 00:05:56,425
Isso não é porque eu os fechei,

120
00:05:56,420 --> 00:05:59,210
é porque mudamos o diretório deles. 

121
00:05:59,210 --> 00:06:00,650
Então, movemos, por exemplo,

122
00:06:00,650 --> 00:06:06,260
o controlador do player dos scripts de pasta para os scripts do player da pasta. 

123
00:06:06,260 --> 00:06:07,400
É por isso que não o temos,

124
00:06:07,400 --> 00:06:08,590
mas não se preocupe, ainda assim,

125
00:06:08,585 --> 00:06:11,585
se clicarmos duas vezes, podemos abri-la facilmente. 

126
00:06:11,585 --> 00:06:12,805
Vamos continuar. 

127
00:06:12,800 --> 00:06:16,780
O que precisamos aqui dentro do controlador NMI? 

128
00:06:16,775 --> 00:06:18,565
Embora precisemos, em primeiro lugar, de

129
00:06:18,560 --> 00:06:22,130
uma variável que manterá em controle a velocidade dos inimigos. 

130
00:06:22,130 --> 00:06:27,140
E precisaremos de uma variável que representará o corpo rígido dos inimigos. 

131
00:06:27,140 --> 00:06:30,050
Então, vou fazer exatamente isso. 

132
00:06:30,050 --> 00:06:31,840
São coisas muito simples. 

133
00:06:31,835 --> 00:06:34,085
Não há necessidade de muita explicação. 

134
00:06:34,085 --> 00:06:35,935
Este é um campo serializado,

135
00:06:35,930 --> 00:06:39,610
um flutuador e a velocidade inimiga. 

136
00:06:39,605 --> 00:06:45,395
E outra variável que será um corpo rígido privado 2D. 

137
00:06:45,395 --> 00:06:46,955
E acabei de me lembrar. 

138
00:06:46,954 --> 00:06:51,694
E EMI, corpo rígido. 

139
00:06:51,695 --> 00:06:54,275
O corpo não precisa ser capital. 

140
00:06:54,275 --> 00:06:55,495
Salve isso. 

141
00:06:55,490 --> 00:06:58,790
E eu só me lembro que esquecemos obviamente

142
00:06:58,790 --> 00:07:02,540
de
 adicionar algumas coisas ao inimigo, que está aqui. 

143
00:07:02,540 --> 00:07:07,810
Vamos adicionar um componente que será um colisor de caixa. 

144
00:07:07,805 --> 00:07:12,905
E vamos prosseguir e fazê-lo. 

145
00:07:12,905 --> 00:07:14,995
Então, talvez sem o escudo,

146
00:07:14,990 --> 00:07:20,860
geralmente é melhor manter os coliders da caixa um pouco menores do que o corpo real. 

147
00:07:20,855 --> 00:07:25,795
Isso fará com que o jogador do seu jogo quisesse se tornar mais preciso. 

148
00:07:25,790 --> 00:07:27,610
E também podemos adicionar a sombra, a propósito,

149
00:07:27,605 --> 00:07:30,875
sob o inimigo, o que é uma boa ideia. 

150
00:07:30,875 --> 00:07:33,005
Vou adicionar outro componente,

151
00:07:33,005 --> 00:07:35,725
que será o corpo rígido 2D. 

152
00:07:35,720 --> 00:07:40,850
Obviamente, vamos fazer a escala de gravidade 0. 

153
00:07:40,850 --> 00:07:43,120
Salve isso, e fecharemos os
 dois, ambos

154
00:07:43,115 --> 00:07:44,285
para baixo. 

155
00:07:44,285 --> 00:07:48,305
Mova o script sob os dois componentes,

156
00:07:48,305 --> 00:07:49,735
ou podemos deixá-lo lá. 

157
00:07:49,730 --> 00:07:51,500
Qual é a velocidade do inimigo? 

158
00:07:51,500 --> 00:07:54,170
Qual é a velocidade do jogador primeiro, ok,

159
00:07:54,170 --> 00:07:58,000
é então, vamos fazer a velocidade inimiga 5.5 disso. 

160
00:07:57,995 --> 00:07:59,485
Salve isso. Certo, ótimo. 

161
00:07:59,480 --> 00:08:01,520
Então agora temos o inimigo. 

162
00:08:01,520 --> 00:08:04,220
Temos um corpo rígido e um colisor nele

163
00:08:04,220 --> 00:08:07,040
para que possamos atirar nele e interagir com ele fisicamente. 

164
00:08:07,040 --> 00:08:12,340
Agora, o que você quer fazer é começar a mover o inimigo em direção ao jogador,

165
00:08:12,335 --> 00:08:13,775
mas não o tempo todo,

166
00:08:13,775 --> 00:08:17,095
apenas quando o jogador chegar perto o suficiente. 

167
00:08:17,090 --> 00:08:21,080
Então, precisamos de uma variável para o alcance em

168
00:08:21,080 --> 00:08:25,250
que o jogador estará em uma ordem para que o inimigo pare de persegui-lo. 

169
00:08:25,250 --> 00:08:30,940
E também precisamos da direção em que o inimigo se moverá. 

170
00:08:30,935 --> 00:08:32,885
Então, primeiro,

171
00:08:32,885 --> 00:08:35,425
vamos criar um campo serializado,
 que será um

172
00:08:35,420 --> 00:08:41,750
flutuador com o jogador ou o alcance da perseguição do jogador,
 vamos chamá-lo de alcance

173
00:08:41,750 --> 00:08:44,890
das cadeias de jogadores. 

174
00:08:44,885 --> 00:08:49,855
Então, o alcance que o jogador deveria começar a persegui-lo. 

175
00:08:49,850 --> 00:08:54,320
E criaremos um fator privado três. 

176
00:08:54,320 --> 00:09:03,980
E esta será a direção para se mover na direção para mover e salvar isso. 

177
00:09:03,980 --> 00:09:05,060
Certo, ótimo. 

178
00:09:05,060 --> 00:09:08,030
Vamos voltar aqui. 

179
00:09:08,030 --> 00:09:11,480
E qual é o alcance da perseguição? E você sabe o quê? 

180
00:09:11,480 --> 00:09:12,890
Vamos mantê-lo para mais tarde. 

181
00:09:12,890 --> 00:09:16,970
E vou te mostrar uma maneira muito bacana de como podemos desenhar. 

182
00:09:16,970 --> 00:09:20,930
Então, como vamos saber o que a perseguição varia? 

183
00:09:20,930 --> 00:09:22,130
Assim, posso, por exemplo,

184
00:09:22,130 --> 00:09:26,590
começar a fazer o intervalo de alteração cinco ou dez, ou 21. 

185
00:09:26,585 --> 00:09:27,845
Mas o que isso significa? 

186
00:09:27,845 --> 00:09:30,235
O que significa o alcance da perseguição aqui. 

187
00:09:30,230 --> 00:09:33,500
Então, temos que calcular todas as
 caixinhas

188
00:09:33,500 --> 00:09:36,890
aqui para determinar o quão longe ou próximo está declarar. 

189
00:09:36,890 --> 00:09:38,770
Bem, claro que não. 

190
00:09:38,765 --> 00:09:41,225
O que vamos fazer é desenhar

191
00:09:41,225 --> 00:09:44,935
um círculo aqui que só aparecerá no modo de cena,

192
00:09:44,930 --> 00:09:47,570
mas não dentro do modo de jogo. 

193
00:09:47,570 --> 00:09:49,550
Como vamos fazer isso? 

194
00:09:49,550 --> 00:09:55,010
Se voltarmos e aqui temos algo chamado gizmos de sorteio. 

195
00:09:55,010 --> 00:09:57,460
E você pode encontrar isso na documentação do Unity. 

196
00:09:57,455 --> 00:09:59,065
E aqui vamos,

197
00:09:59,060 --> 00:10:02,770
você pode ver que temos algo sob o comportamento mono,

198
00:10:02,765 --> 00:10:05,095
que é OnDraw gizmo select. 

199
00:10:05,090 --> 00:10:08,150
E você pode ver aqui implementar o OnDraw é selecionado para

200
00:10:08,150 --> 00:10:11,680
desenhar o objeto gizmo selecionado. 

201
00:10:11,675 --> 00:10:16,675
Observe o que dissemos, se o objeto for selecionado e você puder ver aqui,

202
00:10:16,670 --> 00:10:20,090
temos o teste de aparelhos e como podemos usá-lo. 

203
00:10:20,090 --> 00:10:22,390
Então, criamos um aparelho OnDraw vazio. 

204
00:10:22,385 --> 00:10:28,675
E aqui podemos criar a cor do gizmo para selecionarmos qual cor queremos ser desenhada. 

205
00:10:28,670 --> 00:10:30,590
E o que queremos desenhar,

206
00:10:30,590 --> 00:10:32,150
que é a esfera. 

207
00:10:32,150 --> 00:10:36,860
Assim, podemos clicar na troposfera e podemos vê-la aqui,

208
00:10:36,860 --> 00:10:38,710
que é o público atrai medo,

209
00:10:38,705 --> 00:10:42,695
desenha uma esfera sólida com centro e raio. 

210
00:10:42,695 --> 00:10:44,915
Então, vamos implementar isso. 

211
00:10:44,915 --> 00:10:52,975
E use-o para desenhar nosso próprio círculo ou esfera ao redor do inimigo e conhecer o alcance dele. 

212
00:10:52,970 --> 00:10:57,470
E se olharmos atentamente para o método e aqui podemos ver que atrai o medo,

213
00:10:57,470 --> 00:11:00,440
precisamos de um centro e precisamos de um raio. 

214
00:11:00,440 --> 00:11:02,240
Então, qual deve ser o raio? 

215
00:11:02,240 --> 00:11:05,990
Pense nisso enquanto criamos esse método. 

216
00:11:05,990 --> 00:11:13,540
Então, aqui, vamos dizer sobre os aparelhos de desenho selecionados. 

217
00:11:13,535 --> 00:11:16,465
E primeiro vamos escolher uma cor. 

218
00:11:16,460 --> 00:11:20,960
Então, será a cor do ponto de gizmos

219
00:11:20,960 --> 00:11:25,450
e será igual à cor, digamos vermelho. 

220
00:11:25,445 --> 00:11:27,145
Salve isso. 

221
00:11:27,140 --> 00:11:35,120
Em seguida, vamos acessar o gizmos dot Draw wire, esfera. 

222
00:11:35,120 --> 00:11:40,450
Então, por que o olhar de esfera que desenha uma esfera de wireframe com um centro e o raio. 

223
00:11:40,445 --> 00:11:42,355
Então, é um pouco diferente da esfera,

224
00:11:42,350 --> 00:11:45,910
mas como estamos jogando em 2D,

225
00:11:45,905 --> 00:11:47,875
não
 precisamos desenhar toda a esfera,

226
00:11:47,870 --> 00:11:50,050
só
 precisamos do fio ao redor dela. 

227
00:11:50,045 --> 00:11:53,155
E vamos ver o que deveria ser o centro. 

228
00:11:53,150 --> 00:11:56,900
O centro obviamente deve ser as posições de ponto de transformação ou

229
00:11:56,900 --> 00:12:01,360
o
 transporte é o transporte do objeto que tem o controlador inimigo. 

230
00:12:01,355 --> 00:12:03,295
Sei que já disse isso um milhão de vezes,

231
00:12:03,290 --> 00:12:05,830
mas para aqueles que ainda estão confusos,

232
00:12:05,825 --> 00:12:09,505
sei que fiquei um pouco confuso quando comecei a fazer

233
00:12:09,500 --> 00:12:13,690
isso há alguns anos, há muitos anos. 

234
00:12:13,685 --> 00:12:16,655
E eu me lembro, então de onde isso vem? 

235
00:12:16,655 --> 00:12:21,055
Bem, é a transformação do objeto que tem o controlador inimigo nele,

236
00:12:21,050 --> 00:12:24,010
o que significa que é este, inimigo V. 

237
00:12:24,005 --> 00:12:28,375
Este é o transformador falando de volta aqui. 

238
00:12:28,370 --> 00:12:29,930
Qual é o raio? 

239
00:12:29,930 --> 00:12:31,700
Bem, você já pensou nisso? 

240
00:12:31,700 --> 00:12:33,700
Qual deve ser o raio? 

241
00:12:33,695 --> 00:12:37,565
Obviamente, é o alcance da perseguição do jogador. 

242
00:12:37,565 --> 00:12:39,305
Vamos salvar isso. 

243
00:12:39,305 --> 00:12:42,505
Vamos voltar para a Unity. 

244
00:12:42,500 --> 00:12:46,760
E bem, enquanto o círculo que você pode estar perguntando, bem,

245
00:12:46,760 --> 00:12:50,660
se você se lembrar de alguns vídeos atrás, desligamos os aparelhos. 

246
00:12:50,660 --> 00:12:51,890
Talvez você já tenha visto,

247
00:12:51,890 --> 00:12:55,390
você não notou, mas se clicarmos nele, lá vamos nós. 

248
00:12:55,385 --> 00:12:56,665
E por que o desligamos? 

249
00:12:56,660 --> 00:13:00,520
Porque tínhamos essa câmera e ícone irritante da câmera. 

250
00:13:00,515 --> 00:13:03,085
O que podemos fazer é abrir os aparelhos. 

251
00:13:03,080 --> 00:13:06,590
Você pode ver que podemos desmarcar muitas coisas aqui,

252
00:13:06,590 --> 00:13:11,030
mas uma das mais importantes é que podemos fazer com que esses ícones sejam um pouco menores. 

253
00:13:11,030 --> 00:13:12,470
Então lá vai você. 

254
00:13:12,470 --> 00:13:16,810
Não vemos mais a câmera irritante, correto? 

255
00:13:16,805 --> 00:13:19,965
Então olhe para aquele grande e enorme círculo. 

256
00:13:19,969 --> 00:13:21,409
Vamos torná-lo um pouco menor. 

257
00:13:21,410 --> 00:13:24,820
E você pode ver que ele muda imediatamente. 

258
00:13:24,815 --> 00:13:26,855
Vou fazer isso sim grande. 

259
00:13:26,855 --> 00:13:28,675
Vou colocar o jogador lá. 

260
00:13:28,670 --> 00:13:32,780
E a próxima coisa que precisamos fazer é calcular a distância
 entre o

261
00:13:32,780 --> 00:13:37,180
jogador e o inimigo e ver se é menor que o alcance. 

262
00:13:37,175 --> 00:13:40,115
Se for menor, podemos começar a perseguir o jogador. 

263
00:13:40,115 --> 00:13:41,825
Se não for menor que,

264
00:13:41,825 --> 00:13:43,915
não
 perseguimos o jogador. 

265
00:13:43,910 --> 00:13:47,300
Então, qual é o primeiro passo a fazer? 

266
00:13:47,300 --> 00:13:49,190
Bem, temos o alcance,

267
00:13:49,190 --> 00:13:52,300
temos a posição de transformação do inimigo. 

268
00:13:52,295 --> 00:13:55,735
A próxima coisa que precisamos é uma referência ao jogador. 

269
00:13:55,730 --> 00:13:59,080
Como vamos obter a referência do jogador? 

270
00:13:59,075 --> 00:14:07,245
Bem, primeiro precisamos entender um método que vou mostrar a você,

271
00:14:07,245 --> 00:14:11,835
que é o ponto objeto encontrar objetos do tipo. 

272
00:14:11,830 --> 00:14:13,600
E o que isso faz,

273
00:14:13,600 --> 00:14:19,450
o objeto t significa que depende do objeto que você está procurando. 

274
00:14:19,450 --> 00:14:21,190
Então, quando você encontra o objeto,

275
00:14:21,190 --> 00:14:23,860
d se torna esse tipo de objeto. 

276
00:14:23,860 --> 00:14:29,860
Portanto, o objeto, o primeiro ato de objeto carregado que corresponde ao tipo específico. 

277
00:14:29,860 --> 00:14:36,720
Portanto, ele retorna o primeiro objeto carregado dos tipos de tipo ou você pode dar seu tipo a ele. 

278
00:14:36,715 --> 00:14:38,265
E se
 olharmos aqui,

279
00:14:38,260 --> 00:14:39,730
podemos ver alguns exemplos. 

280
00:14:39,730 --> 00:14:43,960
Então, digamos que queremos encontrar o renderizador Canvas. 

281
00:14:43,960 --> 00:14:45,880
Se você não sabe o que é o renderizador Canvas,

282
00:14:45,880 --> 00:14:48,600
não se preocupe, vamos examiná-lo mais tarde. 

283
00:14:48,595 --> 00:14:51,785
Mas, por enquanto, veja o renderizador Canvas. 

284
00:14:51,785 --> 00:14:56,905
Criamos uma variável de pipe renderizador de tela com o nome Canvas,

285
00:14:56,900 --> 00:15:00,740
e usamos objeto finito do tipo e obtemos a renderização de tela. 

286
00:15:00,740 --> 00:15:03,410
Então, agora temos uma referência a ele. 

287
00:15:03,410 --> 00:15:05,770
E como só temos um jogador,

288
00:15:05,765 --> 00:15:06,955
podemos usar isso. 

289
00:15:06,950 --> 00:15:08,770
Se tivéssemos vários jogadores,

290
00:15:08,765 --> 00:15:10,595
não
 poderíamos ter porque,

291
00:15:10,595 --> 00:15:14,675
bem, obviamente, encontramos apenas o primeiro ato de um. 

292
00:15:14,675 --> 00:15:17,375
Então, procure esse método,

293
00:15:17,375 --> 00:15:20,935
encontre-o, estude, entenda. 

294
00:15:20,930 --> 00:15:24,140
E então você terá que fazer esse desafio. 

295
00:15:24,140 --> 00:15:27,170
Você precisará encontrar o objeto do jogador. 

296
00:15:27,170 --> 00:15:31,610
Portanto, crie uma variável do tipo transformada para representar o jogador que queremos

297
00:15:31,610 --> 00:15:38,300
perseguir e comece a usar encontrar objetos do tipo 2, encontre o jogador. 

298
00:15:38,300 --> 00:15:41,470
O tipo deve ser o controlador do jogador. 

299
00:15:41,465 --> 00:15:46,655
Por quê? Porque precisamos encontrar algum tipo específico de jogador. 

300
00:15:46,655 --> 00:15:49,295
Então, como identificamos o jogador? 

301
00:15:49,295 --> 00:15:51,425
Ele é como todos os outros objetos. 

302
00:15:51,424 --> 00:15:52,824
O que o torna único? 

303
00:15:52,820 --> 00:15:57,260
Não é apenas o nome que você pode encontrar através do nome, do corpo ou do ligado. 

304
00:15:57,260 --> 00:15:59,520
Precisamos usar algo específico. 

305
00:15:59,524 --> 00:16:03,354
E isso é algo específico é o script do controlador do player. 

306
00:16:03,350 --> 00:16:09,920
É por isso que o tipo de objeto que você deseja encontrar é o controlador do player. 

307
00:16:09,920 --> 00:16:13,780
E, finalmente, use a transformação de pontos no objeto que você encontrar e

308
00:16:13,775 --> 00:16:17,975
atribuí-lo à variável que criamos, transformação de pontos y. 

309
00:16:17,975 --> 00:16:22,435
Você deve saber disso porque o tipo que vamos criar é a transformação. 

310
00:16:22,430 --> 00:16:23,720
Por que ela se transforma? 

311
00:16:23,720 --> 00:16:25,640
Bem, porque queremos obter a distância. 

312
00:16:25,639 --> 00:16:26,929
Como conseguimos a distância? 

313
00:16:26,930 --> 00:16:29,270
Bem, obviamente porque é uma transformação. 

314
00:16:29,270 --> 00:16:31,310
Então, pause o vídeo agora mesmo. 

315
00:16:31,310 --> 00:16:34,200
Vá fazer o desafio. 

316
00:16:34,210 --> 00:16:37,220
Ok, então primeiro, primeiro,

317
00:16:37,220 --> 00:16:45,430
vamos criar uma transformação privada e o jogador a perseguir. 

318
00:16:45,434 --> 00:16:47,684
Agora, dentro do início,

319
00:16:47,680 --> 00:16:56,160
vamos dizer que o jogador a perseguir é igual a encontrar objetos do tipo. 

320
00:16:56,155 --> 00:17:00,615
E o tipo que estamos procurando é o controlador do jogador. 

321
00:17:00,610 --> 00:17:04,990
E quando o encontrarmos porque declarado de dois Chase como uma transformação,

322
00:17:04,990 --> 00:17:09,340
vamos acessar a transformação imediatamente de mim. 

323
00:17:09,340 --> 00:17:11,100
Então, espero que você tenha feito o desafio. 

324
00:17:11,095 --> 00:17:12,795
Espero que não tenha sido muito difícil. 

325
00:17:12,790 --> 00:17:15,190
Eu sei que havia alguns truques aqui,

326
00:17:15,190 --> 00:17:18,640
mesmo que seja a primeira vez que você usa encontrar objeto do tipo,

327
00:17:18,640 --> 00:17:21,480
tenho certeza de que você era pelo menos capaz

328
00:17:21,475 --> 00:17:24,805
de fazer essa parte se você não pudesse ter descoberto isso,

329
00:17:24,805 --> 00:17:29,525
não se preocupe sobre isso era o devido tempo, vai entender tudo. 

330
00:17:29,525 --> 00:17:35,195
Mas agora, o próximo passo é seguir em frente e calcular a distância. 

331
00:17:35,195 --> 00:17:39,265
Então, vou criar antes de tudo, uma declaração if. 

332
00:17:39,260 --> 00:17:43,250
E então vou escrever o vetor 3 pontos. 

333
00:17:43,249 --> 00:17:46,549
E você pode ver que temos um método aqui que é a distância e

334
00:17:46,550 --> 00:17:50,110
ele retorna a distância entre a e B.

335
00:17:50,105 --> 00:17:52,615
Então vamos abrir isso. 

336
00:17:52,610 --> 00:17:54,050
O que é o a? 

337
00:17:54,050 --> 00:17:59,750
Vai ser a posição do ponto de transformação. E o que é o B? 

338
00:17:59,750 --> 00:18:03,960
Será o jogador perseguir a posição dos pontos. 

339
00:18:03,964 --> 00:18:05,154
Lá vai você. 

340
00:18:05,150 --> 00:18:10,060
E qual é a condição se a distância entre a posição transformada,

341
00:18:10,055 --> 00:18:12,325
que é o inimigo e o jogador a perseguir,

342
00:18:12,320 --> 00:18:18,520
que é o jogador e é menor que o alcance da perseguição do jogador V. 

343
00:18:18,515 --> 00:18:22,235
Então vamos mover nosso inimigo. 

344
00:18:22,235 --> 00:18:24,205
Mas isso é para outro vídeo. 

345
00:18:24,200 --> 00:18:27,710
Por enquanto, vou usar o log de pontos de depuração. 

346
00:18:27,710 --> 00:18:34,600
E vou dizer que o jogador está no alcance do Chase. 

347
00:18:34,604 --> 00:18:41,894
E uma declaração else que diremos que duplicar essa linha, mova-a para baixo. 

348
00:18:41,890 --> 00:18:44,160
E vai dizer que o

349
00:18:44,155 --> 00:18:52,515
jogador fora do Chase está fora do alcance da perseguição. 

350
00:18:52,510 --> 00:18:56,000
Salve isso de volta em nosso jogo. 

351
00:18:57,960 --> 00:19:02,640
Vamos saber o que eu só quero fazer alguma coisa. 

352
00:19:02,635 --> 00:19:05,475
Vou tornar isso público apenas por enquanto,
 só para

353
00:19:05,470 --> 00:19:07,870
que possamos ver o que acontece. 

354
00:19:07,870 --> 00:19:10,600
Então você notará que no inimigo
 agora

355
00:19:10,600 --> 00:19:13,440
temos um jogador para perseguir, mas não há nada. 

356
00:19:13,435 --> 00:19:15,435
Não vamos adicionar nada. 

357
00:19:15,430 --> 00:19:18,280
Vamos apenas executar o jogo. Lá vai você. 

358
00:19:18,275 --> 00:19:21,085
Você pode ver que agora o jogador da condenação, se eu clicar nele,

359
00:19:21,080 --> 00:19:23,440
há a referência e agora o esqueleto,

360
00:19:23,435 --> 00:19:26,395
nosso inimigo tem uma referência ao jogador. 

361
00:19:26,390 --> 00:19:27,770
Posso até atirar nele. 

362
00:19:27,770 --> 00:19:29,870
Então, vou para o console. 

363
00:19:29,870 --> 00:19:31,550
O que é isso falso? 

364
00:19:31,550 --> 00:19:32,360
Vamos clicar duas vezes. 

365
00:19:32,360 --> 00:19:36,620
Certo, então este jogador e está fora do alcance da perseguição. 

366
00:19:36,620 --> 00:19:38,890
Deixe-me definir a janela do jogo ao lado

367
00:19:38,885 --> 00:19:43,165
da cena quando aqueles para que possamos ver claramente o círculo aqui. 

368
00:19:43,160 --> 00:19:46,100
Então, se eu chegar perto o suficiente,

369
00:19:46,100 --> 00:19:50,350
lá vamos nós, você pode ver que agora o jogador está no alcance do Chase. 

370
00:19:50,345 --> 00:19:53,575
Se eu sair, o jogador está fora do alcance. 

371
00:19:53,570 --> 00:19:56,530
Se eu for jogar como NJ estranho,

372
00:19:56,525 --> 00:19:59,585
lá vai você, tudo está funcionando perfeitamente bem. 

373
00:19:59,585 --> 00:20:01,045
Então, espero que você goste. 

374
00:20:01,040 --> 00:20:04,120
E o próximo vídeo estará realmente movendo nosso inimigo,

375
00:20:04,115 --> 00:20:06,745
não apenas imprimindo algo para a depuração, para o log. 

376
00:20:06,740 --> 00:20:08,740
Deixe-me remover este log de pontos de depuração. 

377
00:20:08,735 --> 00:20:09,505
Salve isso. 

378
00:20:09,500 --> 00:20:13,120
Deixe-me tornar isso privado novamente porque não precisamos vê-lo. 

379
00:20:13,115 --> 00:20:14,755
Eu só queria demonstrar. 

380
00:20:14,750 --> 00:20:17,620
Não se esqueça de preparar todos os seus arquivos. 

381
00:20:17,615 --> 00:20:19,735
E antes de ir,

382
00:20:19,730 --> 00:20:21,860
o que eu também queria contar a todos vocês. 

383
00:20:21,860 --> 00:20:22,990
Espero que você goste. 

384
00:20:22,985 --> 00:20:24,695
Vejo você na próxima vez. 

