1
00:00:00,000 --> 00:00:06,390
Willkommen zurück meine Spieleentwickler zu einem brandneuen extrem langen Video. 

2
00:00:06,390 --> 00:00:08,250
Ich weiß, dass du das satt hast. 

3
00:00:08,250 --> 00:00:13,940
Aber wie immer lohnt es sich extrem, weil wir so viel lernen. 

4
00:00:13,935 --> 00:00:16,385
Zuallererst erschaffen wir einen Feind. 

5
00:00:16,380 --> 00:00:18,090
Wir fügen eine Reihe hinzu. 

6
00:00:18,090 --> 00:00:20,490
Wir fügen eine Möglichkeit hinzu, diesen Bereich zu zeichnen. 

7
00:00:20,490 --> 00:00:24,280
Und wir führen das Spiel auch aus. Wir können den Feind erschießen. 

8
00:00:24,275 --> 00:00:25,985
Offensichtlich stirbt er vorerst nicht,

9
00:00:25,985 --> 00:00:28,135
aber wir können in die Reichweite kommen. 

10
00:00:28,130 --> 00:00:31,060
Du siehst genau hier, dass sich der Spieler im Chase-Bereich befindet. 

11
00:00:31,055 --> 00:00:33,205
Es wird jedes Mal verschickt. 

12
00:00:33,200 --> 00:00:35,860
Wenn wir aus dieser kleinen Blase herauskommen, dann
 siehst du,

13
00:00:35,855 --> 00:00:38,935
dass der Spieler außerhalb der Reichweite ist. 

14
00:00:38,930 --> 00:00:40,900
Verschwenden wir also keine Zeit mehr. 

15
00:00:40,895 --> 00:00:44,905
Und lasst uns mit diesem langen Video anfangen. 

16
00:00:44,900 --> 00:00:50,450
Oh, also ist es Zeit für ein paar Feinde. 

17
00:00:50,450 --> 00:00:51,970
Lasst uns anfangen. 

18
00:00:51,965 --> 00:00:54,775
Das erste, was wir tun werden, ist, dass wir

19
00:00:54,770 --> 00:00:57,800
rechten Maustaste klicken
, um ein leeres Spielobjekt zu erstellen. 

20
00:00:57,800 --> 00:01:00,950
Stellen Sie sicher, dass seine Position zurückgesetzt wird. 

21
00:01:00,950 --> 00:01:03,370
Und die Rotation und Skala und so weiter. 

22
00:01:03,365 --> 00:01:10,375
Und wir nennen das vorerst einfach den Feind, bis wir entscheiden, welcher Feind benutzen möchte. 

23
00:01:10,370 --> 00:01:13,700
Das nächste, was wir tun müssen, ist, dass wir in die Sprites gehen müssen. 

24
00:01:13,699 --> 00:01:19,119
Wir klicken mit der rechten Maustaste, um hier einen Ordner für die Feinde zu erstellen. 

25
00:01:19,115 --> 00:01:23,125
Und das Innere der Feinde wird in die Ressourcen eindringen und

26
00:01:23,120 --> 00:01:27,290
wir werden das Monster und die Kreaturen hineinziehen. 

27
00:01:27,290 --> 00:01:29,660
Und lass es uns einfach hier reinlegen. 

28
00:01:29,660 --> 00:01:33,170
Also warten wir, bis alles importiert wird. Wir öffnen das. 

29
00:01:33,170 --> 00:01:35,780
Und wie Sie sehen können, haben wir vier Arten von Feinden

30
00:01:35,780 --> 00:01:38,590
, die ich von Open Game Arts heruntergeladen habe. 

31
00:01:38,585 --> 00:01:40,225
Natürlich kannst
 du wie immer

32
00:01:40,220 --> 00:01:42,560
deine eigenen Feinde finden. 

33
00:01:42,560 --> 00:01:47,470
Dies sind diejenigen, die ich benutzt habe und sie werden im Link in den Ressourcen sein. 

34
00:01:47,465 --> 00:01:49,225
Und was soll ich wählen? 

35
00:01:49,220 --> 00:01:51,580
Ich glaube, ich werde jetzt vier wählen,

36
00:01:51,575 --> 00:01:54,875
die, mal sehen welche. 

37
00:01:54,874 --> 00:01:57,144
habe ich wirklich nicht nachgedacht. 

38
00:01:57,140 --> 00:01:58,420
Die Feinde. 

39
00:01:58,415 --> 00:02:01,375
Lass uns einfach das Skelett wählen und sehr generisch sein. 

40
00:02:01,370 --> 00:02:05,740
Wie Sie sehen können, haben wir den Angriff drei Todesfälle und so weiter. 

41
00:02:05,735 --> 00:02:09,055
Also gehe ich einfach in den Leerlauf. 

42
00:02:09,050 --> 00:02:13,390
Ich werde es mehrere Sprite Editor anwenden lassen. 

43
00:02:13,385 --> 00:02:15,955
Und lasst uns weitermachen und es
 nicht automatisch, sondern nach einer Rastergröße aufschneiden

44
00:02:15,950 --> 00:02:18,590
. 

45
00:02:18,590 --> 00:02:22,610
Und wenn du etwas verwirrt warst von dem, was ich letztes Mal gemacht
 habe,

46
00:02:22,610 --> 00:02:26,990
überprüfe ich einfach die Länge des gesamten Sprites. 

47
00:02:26,990 --> 00:02:31,310
Es sind also 600 und ich teile es durch wie viele Skelette wir haben. 

48
00:02:31,310 --> 00:02:34,700
Wir haben also vier oder eine einzelne Reihe,

49
00:02:34,700 --> 00:02:37,060
also geteilt durch vier. 

50
00:02:37,055 --> 00:02:41,215
Das heißt, es sind wie immer 150 mal 150. 

51
00:02:41,210 --> 00:02:43,190
Aus irgendeinem Grund bin ich überrascht. 

52
00:02:43,190 --> 00:02:46,570
Also gehen wir in den Spleiß, Scheibe. 

53
00:02:46,565 --> 00:02:50,905
Splice, denke, das ist Filmsplice, sicher, Slice. 

54
00:02:50,900 --> 00:02:52,620
Da sind wir los. Bewerben Sie sich 

55
00:02:52,624 --> 00:02:55,894
Jetzt haben wir unsere kleinen Skelette genau hier. 

56
00:02:55,895 --> 00:02:57,475
Ich ziehe es. 

57
00:02:57,470 --> 00:02:59,440
Und die Szene, whoa,

58
00:02:59,435 --> 00:03:01,835
das ist ein riesiges Skelett, oder? 

59
00:03:01,835 --> 00:03:03,335
Das ist Ironie. 

60
00:03:03,335 --> 00:03:04,645
Wenn du es nicht abgeholt hast. 

61
00:03:04,640 --> 00:03:07,610
Wie auch immer, wir schaffen es 50. Da sind wir los. 

62
00:03:07,610 --> 00:03:13,420
Wir können ihn immer noch nicht sehen, weil wir uns bewerben müssen. 

63
00:03:13,415 --> 00:03:21,875
Lasst uns weitermachen und hier eine Ebene schaffen, die der Feind oder die Feinde sein wird. 

64
00:03:21,875 --> 00:03:24,445
Und ich setze die Kugeln vor dem

65
00:03:24,440 --> 00:03:27,820
Feind und auch
 dem Spieler, um eine Verschwörung des Feindes zu machen. 

66
00:03:27,815 --> 00:03:30,655
Und lasst uns weitermachen und den Feind genau hier setzen. 

67
00:03:30,650 --> 00:03:31,760
Also los gehst du. 

68
00:03:31,760 --> 00:03:34,300
Es ist immer noch ein sehr kleiner Feind. 

69
00:03:34,295 --> 00:03:36,775
Lasst uns das aufheben. Machen wir ihn ein bisschen größer. 

70
00:03:36,770 --> 00:03:39,800
Also ein untätiger 50, machen wir sie 32. 

71
00:03:39,800 --> 00:03:41,260
Wende das an. 

72
00:03:41,255 --> 00:03:43,135
Vielleicht noch größer. 

73
00:03:43,130 --> 00:03:46,930
Lasst uns ihn 16 machen. Also 16. 

74
00:03:46,925 --> 00:03:47,785
Jep. Da sind wir los. 

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

76
00:03:48,110 --> 00:03:50,000
Das ist zu groß. 

77
00:03:50,000 --> 00:03:53,740
Wenn D vielleicht 20. 

78
00:03:53,735 --> 00:03:56,345
Ja, ich denke, 20 sind gut genug. 

79
00:03:56,345 --> 00:03:59,195
Das hat diese beiden Punkte geändert. Mal sehen, ob das hilft. 

80
00:03:59,195 --> 00:04:01,555
Ja, da sind wir los. Er sieht viel besser aus,

81
00:04:01,550 --> 00:04:02,720
immer noch ein bisschen körnig,

82
00:04:02,720 --> 00:04:04,240
aber darüber macht er sich keine Sorgen. 

83
00:04:04,235 --> 00:04:06,235
Wir haben ihn umsonst. 

84
00:04:06,230 --> 00:04:07,760
Wie auch immer. 

85
00:04:07,760 --> 00:04:10,010
Mal sehen, das ist der Körper. 

86
00:04:10,010 --> 00:04:12,940
Das wäre die Leiche. 

87
00:04:12,935 --> 00:04:16,165
Und ich werde es dem gegnerischen Spielobjekt unterbringen. 

88
00:04:16,160 --> 00:04:19,610
Jetzt haben wir den Feind genau hier und den Körper. 

89
00:04:19,610 --> 00:04:22,090
Stellen wir ihn einfach auf 00 ein. 

90
00:04:22,085 --> 00:04:23,755
Die Position ist
 natürlich relativ

91
00:04:23,750 --> 00:04:27,470
zu den gegnerischen Spielobjekten oder jetzt bewegen wir uns

92
00:04:27,470 --> 00:04:31,580
mit dem Feind und Sie können sehen, dass er hinter dem Spieler
 hinter der Waffe gerendert wird

93
00:04:31,580 --> 00:04:38,380
und er auch hinter den Kugeln gerendert werden sollte. Geh nach rechts. 

94
00:04:38,375 --> 00:04:39,845
Jetzt, da wir dies haben,

95
00:04:39,845 --> 00:04:42,205
müssen wir
 als Nächstes offensichtlich ein Verhalten oder eine Möglichkeit tun

96
00:04:42,200 --> 00:04:46,750
, das Verhalten unseres Feindes zu kontrollieren.
 

97
00:04:46,745 --> 00:04:51,005
Also gehen wir in die Assets, die Skripte,

98
00:04:51,005 --> 00:04:52,735
wir klicken hier mit der rechten Maustaste,

99
00:04:52,730 --> 00:04:55,490
erstellen vielleicht einen neuen Ordner

100
00:04:55,490 --> 00:04:58,200
und nennen wir ihn die Feinde. 

101
00:04:58,204 --> 00:04:59,314
Geben Sie ein. 

102
00:04:59,315 --> 00:05:03,875
Vielleicht erstelle hier auch einen für den Spieler,

103
00:05:03,875 --> 00:05:06,085
der Spieler-Controller sein wird. 

104
00:05:06,080 --> 00:05:12,100
Und mal sehen, wir erstellen jetzt auch eine für die Kugeln und die Zeit. 

105
00:05:12,095 --> 00:05:16,295
Erstellen Sie also einen neuen Ordner für die Aufzählungszeichen. 

106
00:05:16,295 --> 00:05:19,675
Und wir werden diese in die Kugel bringen. 

107
00:05:19,670 --> 00:05:20,000
Warum? 

108
00:05:20,000 --> 00:05:21,470
Weil wir die Kugel,
 den

109
00:05:21,470 --> 00:05:24,670
Player Bullet Controller und den Aufpralleffekt haben. 

110
00:05:24,665 --> 00:05:28,255
Also und innerhalb der Feinde klicken Sie mit der rechten Maustaste,

111
00:05:28,250 --> 00:05:30,080
erstellen Sie ein neues C Sharp-Skript,

112
00:05:30,080 --> 00:05:31,820
und wir nennen es den

113
00:05:31,820 --> 00:05:36,460
And-EMI-Controller drücken Sie Enter. 

114
00:05:36,455 --> 00:05:39,745
Warte, bis das kompiliert wurde. Okay, großartig. 

115
00:05:39,740 --> 00:05:41,150
Und jetzt können
 wir im Feind eine Komponente hinzufügen,

116
00:05:41,150 --> 00:05:46,630
die der feindliche Controller ist. 

117
00:05:46,625 --> 00:05:48,955
Und wir werden das Drehbuch öffnen. 

118
00:05:48,950 --> 00:05:54,640
Okay? Also etwas, das Ihnen vielleicht aufgefallen ist, dass alle Tabs verschwunden sind. 

119
00:05:54,635 --> 00:05:56,425
Das liegt nicht daran,
 dass ich sie geschlossen habe,

120
00:05:56,420 --> 00:05:59,210
weil wir das Verzeichnis von ihnen geändert haben. 

121
00:05:59,210 --> 00:06:00,650
Also haben wir zum Beispiel
 den Player-Controller von den Ordnerskripten in die Ordner-Player-Skripte verschoben

122
00:06:00,650 --> 00:06:06,260
. 

123
00:06:06,260 --> 00:06:07,400
Deshalb haben wir es nicht,
 aber keine Sorge,

124
00:06:07,400 --> 00:06:08,590
es ist immer noch,

125
00:06:08,585 --> 00:06:11,585
wenn wir doppelklicken, können wir es leicht öffnen. 

126
00:06:11,585 --> 00:06:12,805
Lasst uns weitermachen. 

127
00:06:12,800 --> 00:06:16,780
Was brauchen wir hier im NMI-Controller? 

128
00:06:16,775 --> 00:06:18,565
Während wir vor allem
 eine Variable brauchen,

129
00:06:18,560 --> 00:06:22,130
die die Geschwindigkeit der Feinde im Auge behält. 

130
00:06:22,130 --> 00:06:27,140
Und wir werden eine Variable brauchen, die den starren Körper des Feindes repräsentiert. 

131
00:06:27,140 --> 00:06:30,050
Also mache ich genau das. 

132
00:06:30,050 --> 00:06:31,840
Das sind sehr einfache Dinge. 

133
00:06:31,835 --> 00:06:34,085
Keine Notwendigkeit für viele Erklärungen. 

134
00:06:34,085 --> 00:06:35,935
Dies ist ein serialisiertes Feld,

135
00:06:35,930 --> 00:06:39,610
ein Schwimmer und die feindliche Geschwindigkeit. 

136
00:06:39,605 --> 00:06:45,395
Und eine weitere Variable, die ein privater starrer Körper 2D sein wird. 

137
00:06:45,395 --> 00:06:46,955
Und ich habe mich gerade daran erinnert. 

138
00:06:46,954 --> 00:06:51,694
Und EMI, starrer Körper. 

139
00:06:51,695 --> 00:06:54,275
Der Körper muss kein Kapital sein. 

140
00:06:54,275 --> 00:06:55,495
Spar dir das auf. 

141
00:06:55,490 --> 00:06:58,790
Und ich erinnere mich nur daran, dass wir offensichtlich vergessen haben

142
00:06:58,790 --> 00:07:02,540
dem Feind, der hier ist, ein paar Dinge
 hinzuzufügen. 

143
00:07:02,540 --> 00:07:07,810
Wir werden eine Komponente hinzufügen, die ein Box Collider sein wird. 

144
00:07:07,805 --> 00:07:12,905
Und lass uns weitermachen und es schaffen. 

145
00:07:12,905 --> 00:07:14,995
Vielleicht ist es ohne den Schild
 normalerweise besser,

146
00:07:14,990 --> 00:07:20,860
die Box-Collider etwas kleiner als den tatsächlichen Körper zu halten. 

147
00:07:20,855 --> 00:07:25,795
Dies wird dazu führen, dass der Spieler Ihres Spiels genauer werden wollte. 

148
00:07:25,790 --> 00:07:27,610
Und wir können übrigens auch den Schatten
 unter dem Feind hinzufügen

149
00:07:27,605 --> 00:07:30,875
, was eine ziemlich gute Idee ist. 

150
00:07:30,875 --> 00:07:33,005
Ich füge eine weitere Komponente hinzu,

151
00:07:33,005 --> 00:07:35,725
die der starre Körper 2D sein wird. 

152
00:07:35,720 --> 00:07:40,850
Offensichtlich werden wir die Schwerkraftskala 0 machen. 

153
00:07:40,850 --> 00:07:43,120
Spar dir das auf, und wir schließen
 beide,

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

155
00:07:44,285 --> 00:07:48,305
Verschieben Sie das Skript unter die beiden Komponenten,

156
00:07:48,305 --> 00:07:49,735
oder wir lassen es einfach dort. 

157
00:07:49,730 --> 00:07:51,500
Wie hoch ist die Geschwindigkeit des Feindes? 

158
00:07:51,500 --> 00:07:54,170
Wie hoch ist die Geschwindigkeit des Spielers zuerst,
 okay

159
00:07:54,170 --> 00:07:58,000
, dann lass uns den Feind 5,5 davon beschleunigen. 

160
00:07:57,995 --> 00:07:59,485
Spar dir das auf. Okay, großartig. 

161
00:07:59,480 --> 00:08:01,520
Jetzt haben wir den Feind. 

162
00:08:01,520 --> 00:08:04,220
Wir haben einen starren Körper und einen Collider bei ihm

163
00:08:04,220 --> 00:08:07,040
damit wir ihn erschießen und körperlich mit ihm interagieren können. 

164
00:08:07,040 --> 00:08:12,340
Was Sie jetzt tun möchten, ist, dass wir den Feind auf den Spieler zubewegen wollen,

165
00:08:12,335 --> 00:08:13,775
aber nicht ständig,

166
00:08:13,775 --> 00:08:17,095
nur wenn der Spieler nahe genug ist. 

167
00:08:17,090 --> 00:08:21,080
Wir brauchen also eine Variable für die Reichweite
, in

168
00:08:21,080 --> 00:08:25,250
der der Spieler befehlen wird, damit der Feind ihn nicht mehr jagen kann. 

169
00:08:25,250 --> 00:08:30,940
Und wir brauchen auch die Richtung, in die sich der Feind bewegen wird. 

170
00:08:30,935 --> 00:08:32,885
Als erstes werden
 wir also

171
00:08:32,885 --> 00:08:35,425
ein serialisiertes Feld erstellen,
 das ein

172
00:08:35,420 --> 00:08:41,750
Float mit dem Spieler- oder Spieler-Verfolgungsbereich sein wird,

173
00:08:41,750 --> 00:08:44,890
nennen
 wir es den Spielerkettenbereich. 

174
00:08:44,885 --> 00:08:49,855
Also die Reichweite, die der Spieler sein sollte, um ihn zu jagen. 

175
00:08:49,850 --> 00:08:54,320
Und wir schaffen einen privaten Faktor drei. 

176
00:08:54,320 --> 00:09:03,980
Und dies wird die Richtung sein, um sich in die Richtung zu bewegen und zu speichern. 

177
00:09:03,980 --> 00:09:05,060
Okay, großartig. 

178
00:09:05,060 --> 00:09:08,030
Lasst uns wieder hier rein gehen. 

179
00:09:08,030 --> 00:09:11,480
Und was ist der Chase-Bereich? Und weißt du was? 

180
00:09:11,480 --> 00:09:12,890
Behalten wir es für später auf. 

181
00:09:12,890 --> 00:09:16,970
Und ich zeige dir eine sehr raffinierte Art, wie wir zeichnen können. 

182
00:09:16,970 --> 00:09:20,930
Wie werden wir wissen, was die Verfolgungsjagd reicht? 

183
00:09:20,930 --> 00:09:22,130
So kann ich zum Beispiel damit
 beginnen,

184
00:09:22,130 --> 00:09:26,590
den Änderungsbereich fünf oder zehn oder 21 zu machen. 

185
00:09:26,585 --> 00:09:27,845
Aber was heißt das? 

186
00:09:27,845 --> 00:09:30,235
Was bedeutet es den Verfolgungsbereich hier drin. 

187
00:09:30,230 --> 00:09:33,500
Also müssen wir jedes Mal diese kleinen Boxen hier
 drin berechnen

188
00:09:33,500 --> 00:09:36,890
, um festzustellen, wie weit oder nah deklariert ist. 

189
00:09:36,890 --> 00:09:38,770
Nun, natürlich nicht. 

190
00:09:38,765 --> 00:09:41,225
Was wir tun werden, ist, dass wir hier
 einen Kreis zeichnen

191
00:09:41,225 --> 00:09:44,935
, der nur im Szenenmodus erscheint,

192
00:09:44,930 --> 00:09:47,570
aber nicht innerhalb des Spielmodus. 

193
00:09:47,570 --> 00:09:49,550
Wie werden wir das machen? 

194
00:09:49,550 --> 00:09:55,010
Wenn wir zurückgehen und hier haben wir etwas namens Draw Gizmos. 

195
00:09:55,010 --> 00:09:57,460
Und das findest du in der Unity-Dokumentation. 

196
00:09:57,455 --> 00:09:59,065
Und hier geht's,

197
00:09:59,060 --> 00:10:02,770
Sie können sehen, dass wir etwas unter dem Mono-Verhalten haben,

198
00:10:02,765 --> 00:10:05,095
nämlich OnDraw Gizmo select. 

199
00:10:05,090 --> 00:10:08,150
Und Sie können direkt hier sehen implementieren das OnDraw wird ausgewählt, um Gizmo-Objekt zu

200
00:10:08,150 --> 00:10:11,680
zeichnen. 

201
00:10:11,675 --> 00:10:16,675
Beachten Sie, was wir gesagt haben, wenn das Objekt ausgewählt ist und Sie direkt hier sehen können,

202
00:10:16,670 --> 00:10:20,090
haben
 wir den Gizmos-Test und wie wir es verwenden können. 

203
00:10:20,090 --> 00:10:22,390
Also erstellen wir ein ungültiges OnDraw-Gizmo. 

204
00:10:22,385 --> 00:10:28,675
Und hier können wir die Gizmo-Farbe erstellen, damit wir auswählen, welche Farbe wir zeichnen möchten. 

205
00:10:28,670 --> 00:10:30,590
Und was wollen wir zeichnen,

206
00:10:30,590 --> 00:10:32,150
welches ist die Sphäre. 

207
00:10:32,150 --> 00:10:36,860
So können wir auf die Troposphäre klicken und wir können sie genau hier sehen,

208
00:10:36,860 --> 00:10:38,710
was die Öffentlichkeit Angst
 zieht,

209
00:10:38,705 --> 00:10:42,695
eine solide Kugel mit Mitte und Radius zeichnet. 

210
00:10:42,695 --> 00:10:44,915
Lassen Sie uns das also umsetzen. 

211
00:10:44,915 --> 00:10:52,975
Und verwende es, um unseren eigenen Kreis oder eine eigene Kugel um den Feind zu zeichnen und seine Reichweite zu kennen. 

212
00:10:52,970 --> 00:10:57,470
Und wenn wir uns die Methode genau ansehen und hier sehen wir, dass das Angst hervorruft,

213
00:10:57,470 --> 00:11:00,440
brauchen
 wir ein Zentrum und wir brauchen einen Radius. 

214
00:11:00,440 --> 00:11:02,240
Wie sollte der Radius sein? 

215
00:11:02,240 --> 00:11:05,990
Denken Sie darüber nach, während wir diese Methode erstellen. 

216
00:11:05,990 --> 00:11:13,540
Also hier drin werden wir auf Draw Gizmos ausgesucht sagen. 

217
00:11:13,535 --> 00:11:16,465
Und wir werden zuerst eine Farbe wählen. 

218
00:11:16,460 --> 00:11:20,960
Es wird also die Gizmos-Punktfarbe

219
00:11:20,960 --> 00:11:25,450
sein
 und es wird gleich der Farbe sein, sagen wir rot. 

220
00:11:25,445 --> 00:11:27,145
Spar dir das auf. 

221
00:11:27,140 --> 00:11:35,120
Als nächstes werden wir auf den Gizmos Punkt Draw Wire, Kugel zugreifen. 

222
00:11:35,120 --> 00:11:40,450
Warum ist der Blick auf die Kugel, die eine Drahtgitterkugel mit einem Zentrum und dem Radius zeichnet. 

223
00:11:40,445 --> 00:11:42,355
Es ist also ein bisschen anders als die Kugel,

224
00:11:42,350 --> 00:11:45,910
aber weil wir in 2D spielen,

225
00:11:45,905 --> 00:11:47,875
müssen
 wir nicht die gesamte Kugel zeichnen,

226
00:11:47,870 --> 00:11:50,050
wir brauchen nur den Draht um sie herum. 

227
00:11:50,045 --> 00:11:53,155
Und mal sehen, was das Zentrum sein sollte. 

228
00:11:53,150 --> 00:11:56,900
Das Zentrum sollte offensichtlich die Transformationspunktpositionen sein oder

229
00:11:56,900 --> 00:12:01,360
Transport ist der Transport des Objekts, das über den feindlichen Controller verfügt. 

230
00:12:01,355 --> 00:12:03,295
Ich weiß, dass ich es eine Million Mal gesagt habe,

231
00:12:03,290 --> 00:12:05,830
aber für diejenigen unter euch, die immer noch verwirrt sind, weiß
 ich,

232
00:12:05,825 --> 00:12:09,505
dass ich ein bisschen verwirrt war, als ich vor ein paar Jahren, vor vielen Jahren damit angefangen
 habe

233
00:12:09,500 --> 00:12:13,690
. 

234
00:12:13,685 --> 00:12:16,655
Und ich erinnere mich, woher kommt das? 

235
00:12:16,655 --> 00:12:21,055
Nun, es ist die Transformation des Objekts, auf dem der feindliche Controller steht,

236
00:12:21,050 --> 00:12:24,010
was bedeutet, dass es dieser V-Feind ist. 

237
00:12:24,005 --> 00:12:28,375
Dies ist der Transformator, der hier drin spricht. 

238
00:12:28,370 --> 00:12:29,930
Wie hoch ist der Radius? 

239
00:12:29,930 --> 00:12:31,700
Nun, hast du darüber nachgedacht? 

240
00:12:31,700 --> 00:12:33,700
Wie groß sollte der Radius sein? 

241
00:12:33,695 --> 00:12:37,565
Offensichtlich ist es der Spieler-Chase-Bereich. 

242
00:12:37,565 --> 00:12:39,305
werden wir retten. 

243
00:12:39,305 --> 00:12:42,505
Wir werden zurück in Unity gehen. 

244
00:12:42,500 --> 00:12:46,760
Und nun, während der Kreis, den du vielleicht fragst, naja,

245
00:12:46,760 --> 00:12:50,660
wenn du dich an ein paar Videos erinnerst, haben wir die Spielereien ausgeschaltet. 

246
00:12:50,660 --> 00:12:51,890
Vielleicht hast du es schon gesehen,

247
00:12:51,890 --> 00:12:55,390
du hast es nicht bemerkt, aber wenn wir darauf klicken, los geht's. 

248
00:12:55,385 --> 00:12:56,665
Und warum haben wir es ausgeschaltet? 

249
00:12:56,660 --> 00:13:00,520
Weil wir diese Kamera und das lästige Symbol der Kamera hatten. 

250
00:13:00,515 --> 00:13:03,085
Was wir tun können, ist, dass wir die Spielereien öffnen können. 

251
00:13:03,080 --> 00:13:06,590
Sie können sehen, dass wir hier viele Dinge abwählen können,

252
00:13:06,590 --> 00:13:11,030
aber eines der wichtigsten ist, dass wir diese Icons etwas kleiner machen können. 

253
00:13:11,030 --> 00:13:12,470
Also los gehst du. 

254
00:13:12,470 --> 00:13:16,810
Wir sehen die lästige Kamera nicht mehr los, richtig? 

255
00:13:16,805 --> 00:13:19,965
Sieh dir diesen großen, riesigen Kreis an. 

256
00:13:19,969 --> 00:13:21,409
Machen wir es ein bisschen kleiner. 

257
00:13:21,410 --> 00:13:24,820
Und Sie können sehen, dass es sich sofort ändert. 

258
00:13:24,815 --> 00:13:26,855
Ich schaffe es ja groß. 

259
00:13:26,855 --> 00:13:28,675
Ich setze den Spieler dort ein. 

260
00:13:28,670 --> 00:13:32,780
Und das nächste, was wir tun müssen, ist, dass wir die Entfernung
 zwischen dem Spieler und dem Feind berechnen und sehen müssen

261
00:13:32,780 --> 00:13:37,180
, ob sie kleiner als die Reichweite ist. 

262
00:13:37,175 --> 00:13:40,115
Wenn es weniger ist, können wir anfangen, den Spieler zu jagen. 

263
00:13:40,115 --> 00:13:41,825
Wenn es nicht weniger als ist,

264
00:13:41,825 --> 00:13:43,915
jagen
 wir den Spieler nicht. 

265
00:13:43,910 --> 00:13:47,300
Was ist der erste Schritt zu tun? 

266
00:13:47,300 --> 00:13:49,190
Nun, wir haben die Reichweite,

267
00:13:49,190 --> 00:13:52,300
wir haben die Transformationsposition des Feindes. 

268
00:13:52,295 --> 00:13:55,735
Das nächste, was wir brauchen, ist ein Hinweis auf den Spieler. 

269
00:13:55,730 --> 00:13:59,080
Wie bekommen wir die Referenz des Spielers? 

270
00:13:59,075 --> 00:14:07,245
Nun, wir müssen zunächst eine Methode verstehen, die ich Ihnen zeigen werde,

271
00:14:07,245 --> 00:14:11,835
nämlich die Objektpunktsuche Objekte des Typs. 

272
00:14:11,830 --> 00:14:13,600
Und was das bedeutet,

273
00:14:13,600 --> 00:14:19,450
das Objekt t bedeutet, dass es davon abhängt, wonach das Objekt Sie suchen. 

274
00:14:19,450 --> 00:14:21,190
Wenn Sie also das Objekt finden,

275
00:14:21,190 --> 00:14:23,860
wird
 d zu diesem Objekttyp. 

276
00:14:23,860 --> 00:14:29,860
Also das Objekt, der erste Akt des geladenen Objekts, das dem spezifischen Typ entspricht. 

277
00:14:29,860 --> 00:14:36,720
Es gibt also das erste geladene Objekt des Typs zurück oder Sie können ihm Ihren Typ geben. 

278
00:14:36,715 --> 00:14:38,265
Und wenn wir hier schauen,

279
00:14:38,260 --> 00:14:39,730
können
 wir ein paar Beispiele sehen. 

280
00:14:39,730 --> 00:14:43,960
Nehmen wir an, wir wollen den Canvas-Renderer finden. 

281
00:14:43,960 --> 00:14:45,880
Wenn Sie nicht wissen, was der Canvas-Renderer ist,

282
00:14:45,880 --> 00:14:48,600
sich
 keine Sorgen, wir werden uns später damit befassen. 

283
00:14:48,595 --> 00:14:51,785
Aber schauen Sie sich vorerst den Canvas-Renderer an. 

284
00:14:51,785 --> 00:14:56,905
Wir erstellen eine Canvas-Renderer-Pipe-Variable mit dem Namen Canvas,

285
00:14:56,900 --> 00:15:00,740
und wir verwenden ein finites Objekt des Typs und wir erhalten den Canvas-Render. 

286
00:15:00,740 --> 00:15:03,410
Jetzt bekommen wir einen Hinweis darauf. 

287
00:15:03,410 --> 00:15:05,770
Und weil wir nur einen Spieler haben,

288
00:15:05,765 --> 00:15:06,955
können
 wir das benutzen. 

289
00:15:06,950 --> 00:15:08,770
Wenn wir mehrere Spieler hätten,

290
00:15:08,765 --> 00:15:10,595
hätten
 wir es nicht tun können,
 weil

291
00:15:10,595 --> 00:15:14,675
wir offensichtlich nur den ersten Akt von einem finden. 

292
00:15:14,675 --> 00:15:17,375
Also schau diese Methode nach,
 finde

293
00:15:17,375 --> 00:15:20,935
sie, studiere sie, verstehe sie. 

294
00:15:20,930 --> 00:15:24,140
Und dann musst du diese Herausforderung machen. 

295
00:15:24,140 --> 00:15:27,170
Du musst das Spielerobjekt finden. 

296
00:15:27,170 --> 00:15:31,610
Erstellen Sie also eine Variable vom Typ transformiert, um den Spieler darzustellen, den wir
 jagen möchten

297
00:15:31,610 --> 00:15:38,300
, und verwenden Sie Objekte vom Typ 2 suchen, suchen Sie den Spieler. 

298
00:15:38,300 --> 00:15:41,470
Der Typ sollte der Player-Controller sein. 

299
00:15:41,465 --> 00:15:46,655
Warum? Weil wir einen bestimmten Spielertyp finden müssen. 

300
00:15:46,655 --> 00:15:49,295
Wie identifizieren wir den Spieler? 

301
00:15:49,295 --> 00:15:51,425
Er ist genau wie alle anderen Objekte. 

302
00:15:51,424 --> 00:15:52,824
Was macht ihn einzigartig? 

303
00:15:52,820 --> 00:15:57,260
Es ist nicht nur der Name, den Sie durch den Namen oder den Körper oder das On finden können. 

304
00:15:57,260 --> 00:15:59,520
Wir müssen etwas Bestimmtes verwenden. 

305
00:15:59,524 --> 00:16:03,354
Und das ist etwas Bestimmtes ist das Player-Controller-Skript. 

306
00:16:03,350 --> 00:16:09,920
Aus diesem Grund ist der Typ des Objekts, das Sie finden möchten, der Player-Controller. 

307
00:16:09,920 --> 00:16:13,780
Verwenden Sie schließlich die Punkttransformation für das Objekt, das Sie finden, und

308
00:16:13,775 --> 00:16:17,975
weisen Sie es der Variablen zu, die wir erstellt haben, y dot transformation. 

309
00:16:17,975 --> 00:16:22,435
Sie sollten dies wissen, weil der Typ, den wir erstellen werden, die Transformation ist. 

310
00:16:22,430 --> 00:16:23,720
Warum ist es Transformation? 

311
00:16:23,720 --> 00:16:25,640
Nun, weil wir die Distanz bekommen wollen. 

312
00:16:25,639 --> 00:16:26,929
Wie bekommen wir die Distanz? 

313
00:16:26,930 --> 00:16:29,270
Nun, offensichtlich weil es eine Transformation ist. 

314
00:16:29,270 --> 00:16:31,310
Also pausiere das Video sofort. 

315
00:16:31,310 --> 00:16:34,200
Geh, mach die Herausforderung. 

316
00:16:34,210 --> 00:16:37,220
Okay, also zuerst

317
00:16:37,220 --> 00:16:45,430
werden
 wir eine private Transformation erstellen und den Spieler, den er jagen soll. 

318
00:16:45,434 --> 00:16:47,684
Jetzt werden
 wir sagen, dass der

319
00:16:47,680 --> 00:16:56,160
Spieler, den man jagen soll, gleich ist, Objekte des Typs zu finden. 

320
00:16:56,155 --> 00:17:00,615
Und der Typ, nach dem wir suchen, ist der Player-Controller. 

321
00:17:00,610 --> 00:17:04,990
Und wenn wir ihn finden, weil wir zwei Chase als Transformation erklärt
 haben,

322
00:17:04,990 --> 00:17:09,340
werden wir einfach sofort von mir auf die Transformation zugreifen. 

323
00:17:09,340 --> 00:17:11,100
Ich hoffe also, dass Sie die Herausforderung bewältigt haben. 

324
00:17:11,095 --> 00:17:12,795
Ich hoffe, es war nicht allzu schwer. 

325
00:17:12,790 --> 00:17:15,190
Ich weiß, dass es hier ein paar Tricks gab,

326
00:17:15,190 --> 00:17:18,640
obwohl es das erste Mal ist, dass Sie das Objekt des Typs finden,

327
00:17:18,640 --> 00:17:21,480
bin
 ich mir sicher, dass Sie zumindest in
 der Lage waren

328
00:17:21,475 --> 00:17:24,805
, diesen Teil zu machen, wenn Sie das nicht hätten herausfinden können,

329
00:17:24,805 --> 00:17:29,525
keine
 Sorge darüber war rechtzeitig, wird alles verstehen. 

330
00:17:29,525 --> 00:17:35,195
Aber jetzt besteht der nächste Schritt darin, die Entfernung zu berechnen. 

331
00:17:35,195 --> 00:17:39,265
Also werde ich zuerst eine if-Aussage erstellen. 

332
00:17:39,260 --> 00:17:43,250
Und dann schreibe ich Vektor 3 Punkt. 

333
00:17:43,249 --> 00:17:46,549
Und Sie können sehen, dass wir hier eine Methode haben, die die Entfernung
 ist und

334
00:17:46,550 --> 00:17:50,110
die Entfernung zwischen a und B zurückgibt

335
00:17:50,105 --> 00:17:52,615
Also werden wir das öffnen. 

336
00:17:52,610 --> 00:17:54,050
Was ist das A? 

337
00:17:54,050 --> 00:17:59,750
Es wird die Transformationspunkt-Position sein. Und was ist das B? 

338
00:17:59,750 --> 00:18:03,960
Es wird der Spieler sein, der die Punktposition verfolgt. 

339
00:18:03,964 --> 00:18:05,154
Da gehst du. 

340
00:18:05,150 --> 00:18:10,060
Und was ist die Bedingung, wenn der Abstand zwischen der transformierten Position,

341
00:18:10,055 --> 00:18:12,325
die der Feind und der Spieler ist, zu jagen,

342
00:18:12,320 --> 00:18:18,520
der der Spieler ist und weniger als
 die Verfolgungsreichweite des V-Spielers ist. 

343
00:18:18,515 --> 00:18:22,235
Dann werden wir unseren Feind bewegen. 

344
00:18:22,235 --> 00:18:24,205
Aber das ist für ein anderes Video. 

345
00:18:24,200 --> 00:18:27,710
Im Moment verwende ich einfach das Debug-Punktprotokoll. 

346
00:18:27,710 --> 00:18:34,600
Und ich sage, dass der Spieler im Chase-Bereich ist. 

347
00:18:34,604 --> 00:18:41,894
Und eine andere Aussage, die wir sagen werden, dass diese Zeile dupliziert wird, verschiebe sie nach unten. 

348
00:18:41,890 --> 00:18:44,160
Und es wird sagen, dass

349
00:18:44,155 --> 00:18:52,515
Spieler außerhalb von Chase außerhalb der Verfolgungsjagd liegen. 

350
00:18:52,510 --> 00:18:56,000
Spar das wieder in unserem Spiel auf. 

351
00:18:57,960 --> 00:19:02,640
Lass uns wissen, was ich einfach nur machen will. 

352
00:19:02,635 --> 00:19:05,475
Ich mache das nur vorerst öffentlich,

353
00:19:05,470 --> 00:19:07,870
nur damit wir sehen können, was passiert. 

354
00:19:07,870 --> 00:19:10,600
Sie werden also feststellen, dass wir am Feind
 gerade

355
00:19:10,600 --> 00:19:13,440
einen Spieler verfolgen müssen, aber es gibt nichts. 

356
00:19:13,435 --> 00:19:15,435
Wir werden nichts hinzufügen. 

357
00:19:15,430 --> 00:19:18,280
Wir werden das Spiel einfach laufen. Da gehst du. 

358
00:19:18,275 --> 00:19:21,085
Sie können sehen, dass jetzt der Untergangsspieler, wenn ich darauf klicke,
 es

359
00:19:21,080 --> 00:19:23,440
die Referenz und jetzt das Skelett gibt,

360
00:19:23,435 --> 00:19:26,395
unser Feind hat einen Hinweis auf den Spieler. 

361
00:19:26,390 --> 00:19:27,770
Ich kann ihn sogar erschießen. 

362
00:19:27,770 --> 00:19:29,870
Also gehe ich in die Konsole. 

363
00:19:29,870 --> 00:19:31,550
Was ist das falsch? 

364
00:19:31,550 --> 00:19:32,360
Doppelklicken wir. 

365
00:19:32,360 --> 00:19:36,620
Okay, also dieser und der Spieler ist außerhalb der Verfolgungsjagd. 

366
00:19:36,620 --> 00:19:38,890
Lassen Sie mich das Spielfenster neben
 die Szene stellen

367
00:19:38,885 --> 00:19:43,165
, damit wir den Kreis hier klar sehen können. 

368
00:19:43,160 --> 00:19:46,100
Wenn ich also nahe genug komme,

369
00:19:46,100 --> 00:19:50,350
dann kannst du sehen, dass der Spieler jetzt im Chase-Bereich ist. 

370
00:19:50,345 --> 00:19:53,575
Wenn ich ausgehe, ist der Spieler außerhalb der Reichweite. 

371
00:19:53,570 --> 00:19:56,530
Wenn ich als NJ seltsam spiele,

372
00:19:56,525 --> 00:19:59,585
los
 geht's, alles funktioniert einwandfrei. 

373
00:19:59,585 --> 00:20:01,045
Ich hoffe es gefällt dir. 

374
00:20:01,040 --> 00:20:04,120
Und das nächste Video wird unseren Feind tatsächlich bewegen,

375
00:20:04,115 --> 00:20:06,745
nicht nur etwas in den Debug drucken, in das Protokoll. 

376
00:20:06,740 --> 00:20:08,740
Lassen Sie mich dieses Debug-Punkt-Protokoll entfernen. 

377
00:20:08,735 --> 00:20:09,505
Spar dir das auf. 

378
00:20:09,500 --> 00:20:13,120
Lassen Sie mich das noch einmal privat machen, weil wir es nicht sehen müssen. 

379
00:20:13,115 --> 00:20:14,755
Ich wollte es nur demonstrieren. 

380
00:20:14,750 --> 00:20:17,620
Vergiss nicht, alle deine Dateien zu inszenieren. 

381
00:20:17,615 --> 00:20:19,735
Und bevor ich gehe,

382
00:20:19,730 --> 00:20:21,860
was wollte ich euch auch allen erzählen. 

383
00:20:21,860 --> 00:20:22,990
Ich hoffe es gefällt dir. 

384
00:20:22,985 --> 00:20:24,695
Wir sehen uns das nächste Mal. 

