﻿1
00:00:04,090 --> 00:00:09,970
‫Więc jeśli zbliżę się do naszych wież, widzę, że rysują sfery debugowania, udowadniając, że

2
00:00:09,970 --> 00:00:13,780
‫wywołują funkcję ognia i robią to co 2 sekundy.

3
00:00:14,010 --> 00:00:17,290
‫Teraz, dodatkowo, wywołują tylko tę funkcję.

4
00:00:17,290 --> 00:00:22,330
‫Jeśli jestem w zasięgu ognia, jeśli tu wrócę, zauważysz, że nie rysują sfer debugowania.

5
00:00:22,330 --> 00:00:25,660
‫Wiąże się to również z kontrolą odległości.

6
00:00:25,660 --> 00:00:30,430
‫A jak tylko jestem wystarczająco blisko, to zaczynają rysować te sfery debugowania.

7
00:00:30,460 --> 00:00:32,130
‫Witam ponownie.

8
00:00:32,140 --> 00:00:37,930
‫Teraz stworzyliśmy już funkcję ognia i używamy jej w klasie czołgów, ponieważ powiązaliśmy

9
00:00:37,930 --> 00:00:40,270
‫ją z mapowaniem akcji ognia.

10
00:00:40,270 --> 00:00:43,960
‫Ale chcielibyśmy również użyć tego ponownie w klasie wieży.

11
00:00:43,960 --> 00:00:48,820
‫Teraz zamiast używać danych wejściowych użytkownika dla klasy wieży, użyjemy liczników czasu.

12
00:00:48,820 --> 00:00:54,370
‫Zamierzamy stworzyć licznik czasu dla klasy wieży, aby licznik czasu mógł wywołać funkcję ognia.

13
00:00:54,370 --> 00:01:00,400
‫Co jakiś czas ustawiamy określoną liczbę sekund pomiędzy wywołaniami funkcji fire.

14
00:01:00,400 --> 00:01:06,370
‫Więc skoro chcielibyśmy, aby funkcja ognia była wywoływana co jakiś czas w klasie wieży, musimy teraz porozmawiać

15
00:01:06,370 --> 00:01:07,450
‫o zegarach.

16
00:01:07,450 --> 00:01:13,240
‫Unreal Engine ma możliwość ustawiania timerów za pomocą klasy F Timer Manager.

17
00:01:13,270 --> 00:01:18,670
‫Istnieje światowy menedżer zegarów, który zarządza zegarami na świecie.

18
00:01:18,700 --> 00:01:26,950
‫Teraz ten światowy menedżer czasowy ma funkcję o nazwie Set Timer, a ustawianie timera pobiera szereg danych wejściowych,

19
00:01:26,950 --> 00:01:29,050
‫takich jak uchwyt timera.

20
00:01:29,080 --> 00:01:34,000
‫Jest to uchwyt do określonego timera zarządzanego przez menedżera timera.

21
00:01:34,000 --> 00:01:40,720
‫Dzięki temu menedżer może mieć wiele liczników czasu i możemy uzyskać dostęp do informacji o liczniku dla każdego z nich,

22
00:01:40,720 --> 00:01:44,410
‫używając uchwytu licznika jako rodzaju nazwy lub identyfikatora tego licznika.

23
00:01:44,530 --> 00:01:47,680
‫Jest to obiekt typu uchwyt timera typu F.

24
00:01:47,680 --> 00:01:52,870
‫Więc tworzymy uchwyt timera i przekazujemy go do funkcji set timer.

25
00:01:52,900 --> 00:01:59,560
‫Teraz ustawiony timer wymaga również innych danych wejściowych, takich jak szybkość lub ilość czasu, przez którą powinniśmy

26
00:01:59,560 --> 00:02:01,630
‫odczekać, zanim faktycznie coś zrobimy.

27
00:02:01,630 --> 00:02:05,380
‫Teraz to coś będzie w naszej funkcji zwrotnej.

28
00:02:05,380 --> 00:02:12,130
‫Tworzymy funkcję i wiążemy tę funkcję z zegarem, aby jak tylko upłynie odpowiedni czas,

29
00:02:12,130 --> 00:02:16,690
‫a konkretnie szybkość zegara, można wywołać naszą funkcję zwrotną.

30
00:02:16,690 --> 00:02:22,660
‫Widzieliśmy więc, że potrzebujemy kilku rzeczy do naszego timera i zamierzamy umieścić te rzeczy w klasie

31
00:02:22,660 --> 00:02:23,140
‫wieży.

32
00:02:23,140 --> 00:02:30,040
‫Przejdźmy więc do Wieży H i tutaj w pliku Wieży H dodamy kilka prywatnych zmiennych.

33
00:02:30,040 --> 00:02:33,940
‫Więc tuż pod zasięgiem ognia, będziemy potrzebować naszego uchwytu timera.

34
00:02:33,940 --> 00:02:40,840
‫To jest uchwyt czasomierza F i możemy go po prostu nazwać uchwytem czasomierza szybkostrzelności.

35
00:02:40,870 --> 00:02:44,590
‫Potrzebujemy też szybkostrzelności, która będzie pływakiem.

36
00:02:44,590 --> 00:02:50,320
‫Nazwiemy tę szybkostrzelność i możemy ją zainicjować do dwóch punktów F.

37
00:02:50,650 --> 00:02:56,920
‫W ten sposób będziemy musieli czekać dwie sekundy, zanim nasza funkcja zwrotna zostanie wywołana.

38
00:02:57,040 --> 00:03:00,460
‫Mówiąc o funkcjach zwrotnych, tak naprawdę potrzebujemy jednej.

39
00:03:00,460 --> 00:03:05,500
‫Więc stworzymy funkcję void i możemy to nazwać sprawdzaniem warunku pożaru.

40
00:03:06,010 --> 00:03:12,760
‫Mamy więc uchwyt timera i jak tylko ustawimy timer i zacznie działać, mamy 2

41
00:03:12,760 --> 00:03:17,860
‫sekundy, aby poczekać, zanim timer faktycznie wywoła wywołanie naszej funkcji.

42
00:03:17,860 --> 00:03:23,890
‫Nazywam to sprawdzaniem warunku pożaru, ponieważ możemy sprawdzić, czy nasza wieża powinna być w stanie wywołać funkcję

43
00:03:23,890 --> 00:03:29,620
‫pożaru, więc możemy ustawić pewne warunki, które możemy sprawdzić, aby upewnić się, że należy wywołać

44
00:03:29,620 --> 00:03:30,280
‫pożar.

45
00:03:30,280 --> 00:03:33,010
‫Teraz mamy zadeklarowaną funkcję warunku pożaru.

46
00:03:33,010 --> 00:03:38,710
‫Musimy to zdefiniować, abyśmy mogli przejść do wieży CPP i zdefiniować tutaj funkcję.

47
00:03:38,710 --> 00:03:45,940
‫Zamierzam umieścić go pod rozpoczęciem odtwarzania, więc nadam mu treść funkcji i nazwę klasy wieży tuż

48
00:03:45,940 --> 00:03:47,440
‫przed nazwą funkcji.

49
00:03:47,530 --> 00:03:53,710
‫Więc teraz mamy funkcję, ale tak naprawdę musimy ustawić timer, aby ten czas zaczął biec i

50
00:03:53,710 --> 00:03:56,530
‫funkcja zostanie wywołana pod koniec tego czasu.

51
00:03:56,530 --> 00:04:02,200
‫I możemy tutaj ustawić zegar i rozpocząć grę, aby zaczęła działać od początku gry.

52
00:04:02,200 --> 00:04:09,910
‫Wspomnieliśmy więc o menedżerze czasu światowego i możemy uzyskać do niego dostęp za pomocą funkcji o nazwie Get World

53
00:04:09,910 --> 00:04:10,810
‫Timer Manager.

54
00:04:10,810 --> 00:04:16,120
‫Teraz pobierz World Timer Manager, zwraca obiekt menedżera timera F.

55
00:04:16,120 --> 00:04:22,300
‫A ponieważ używamy tego typu, będziemy musieli dołączyć plik nagłówkowy dla menedżera czasowego F.

56
00:04:22,300 --> 00:04:26,660
‫Więc tutaj jest to po prostu menedżer czasowy h.

57
00:04:26,680 --> 00:04:31,000
‫Możemy też zobaczyć niektóre funkcje należące do tej klasy.

58
00:04:31,000 --> 00:04:37,150
‫Więc przewiń je, jeśli interesują Cię wszystkie różne funkcje, które należą do menedżera czasowego

59
00:04:37,150 --> 00:04:37,990
‫F.

60
00:04:38,110 --> 00:04:44,320
‫Możemy więc dołączyć ten plik nagłówkowy tutaj, na szczycie wieży, tuż pod innymi plikami dołączonymi.

61
00:04:44,320 --> 00:04:51,220
‫Więc teraz, gdy mamy dołączony ten plik nagłówkowy, mamy teraz dostęp do menedżera czasu światowego, a

62
00:04:51,220 --> 00:04:55,060
‫funkcja, która nas interesuje, nazywa się set timer.

63
00:04:55,480 --> 00:05:01,060
‫Teraz pobierz światowy menedżer czasowy po prostu zwraca menedżer czasowy F, ale nie zwraca wskaźnika.

64
00:05:01,060 --> 00:05:03,460
‫Więc użyjemy kropki zamiast.

65
00:05:03,520 --> 00:05:06,430
‫Strzałka i zadzwonimy do ustawionego timera.

66
00:05:06,550 --> 00:05:11,080
‫Teraz ustawiony timer ma kilka wersji lub przeciążeń funkcji.

67
00:05:11,080 --> 00:05:17,230
‫Teraz vs code ma to wyskakujące okienko, które pozwala nam przejść przez każde przeciążenie i zobaczyć różne wersje

68
00:05:17,230 --> 00:05:18,250
‫tej funkcji.

69
00:05:18,250 --> 00:05:24,730
‫A wersja, którą jestem zainteresowany, najpierw przyjmuje uchwyt timera F, a my zamierzamy użyć naszego

70
00:05:24,760 --> 00:05:28,480
‫uchwytu timera szybkostrzelności, który zadeklarowaliśmy w Tower H.

71
00:05:28,480 --> 00:05:35,200
‫Teraz następnym parametrem dla naszego konkretnego przeciążenia funkcji będzie klasa użytkownika, podobnie jak w osi

72
00:05:35,200 --> 00:05:37,350
‫bind i akcji bind.

73
00:05:37,360 --> 00:05:43,240
‫To jest klasa, w której pracujemy, w której wiążemy funkcję, aby to było to.

74
00:05:43,240 --> 00:05:50,350
‫Teraz następna będzie funkcja zwrotna, która będzie naszym warunkiem sprawdzania pożaru wieży A, funkcja,

75
00:05:50,350 --> 00:05:52,450
‫którą właśnie stworzyliśmy.

76
00:05:52,450 --> 00:05:58,930
‫Teraz potrzebujemy adresu operatora, ponieważ ustawiony timer przyjmuje adres funkcji.

77
00:05:58,930 --> 00:06:05,590
‫Teraz następny parametr to liczba zmiennoprzecinkowa dla stawki, która będzie określać, ile czasu powinno upłynąć, zanim zostanie

78
00:06:05,590 --> 00:06:07,390
‫wywołane nasze wywołanie zwrotne.

79
00:06:07,390 --> 00:06:09,910
‫To będzie nasza szybkostrzelność.

80
00:06:09,910 --> 00:06:15,730
‫A ostatnim parametrem jest wartość logiczna, która określa, czy ten zegar powinien się zapętlić.

81
00:06:16,060 --> 00:06:22,000
‫Teraz chciałbym, aby nasza funkcja zwrotna była wywoływana co 2 sekundy, więc chcę, aby ten zegar zapętlił się.

82
00:06:22,000 --> 00:06:23,830
‫Więc powiem, że prawda.

83
00:06:24,220 --> 00:06:28,180
‫Gdybyśmy podawali fałsz, minęłyby 2 sekundy.

84
00:06:28,180 --> 00:06:30,910
‫Nasza funkcja zostałaby wywołana i to by było na tyle.

85
00:06:30,910 --> 00:06:37,030
‫Ale ponieważ ustawiliśmy to na pętlę, nasza funkcja zostanie wywołana po 2 sekundach, po czym licznik czasu

86
00:06:37,030 --> 00:06:42,610
‫zostanie zrestartowany, a po kolejnych dwóch sekundach funkcja zostanie wywołana ponownie i będzie kontynuować pętlę,

87
00:06:42,610 --> 00:06:44,290
‫aż gra się skończy.

88
00:06:44,290 --> 00:06:50,380
‫Mamy teraz funkcję powiązaną z naszym zegarem i jest ona wywoływana co 2 sekundy.

89
00:06:50,380 --> 00:06:55,540
‫Więc powiązaliśmy funkcję z naszym zegarem i będzie ona wywoływana co 2 sekundy.

90
00:06:55,660 --> 00:07:00,580
‫Ale chcielibyśmy jakiegoś dowodu lub potwierdzenia, że ta funkcja jest faktycznie wywoływana.

91
00:07:00,580 --> 00:07:06,910
‫Tak więc, aby sprostać wyzwaniu w klasie wieży, przejdź do naszej nowej funkcji zwrotnej, sprawdź stan pożaru.

92
00:07:06,910 --> 00:07:09,310
‫Upewnij się, że czołg jest w zasięgu ognia.

93
00:07:09,310 --> 00:07:12,970
‫Sprawdzisz odległość od wieży do czołgu.

94
00:07:12,970 --> 00:07:17,560
‫I wiemy, jak to zrobić, ponieważ robimy to już w funkcji tiku.

95
00:07:17,560 --> 00:07:22,900
‫Być może będziesz musiał zajrzeć do funkcji zaznaczania i zobaczyć, jak to się robi, aby sobie

96
00:07:22,900 --> 00:07:28,720
‫przypomnieć, teraz sprawdź tę odległość, upewnij się, że jesteśmy w zasięgu ognia, a jeśli tak, wywołaj funkcję

97
00:07:28,720 --> 00:07:31,330
‫ognia, zatrzymaj wideo i zaimplementuj teraz to.

98
00:07:34,320 --> 00:07:34,680
‫Dobra.

99
00:07:34,680 --> 00:07:41,700
‫Wróciłem więc do Tower CP i zamierzam tylko przewinąć w górę do funkcji zaznaczenia, aby przypomnieć sobie, jak

100
00:07:41,700 --> 00:07:45,620
‫uzyskałem tę odległość i sprawdziłem, czy jest w zasięgu ognia.

101
00:07:45,630 --> 00:07:50,420
‫Teraz możemy po prostu ponownie użyć tego kodu tutaj i sprawdzić stan pożaru.

102
00:07:50,430 --> 00:07:56,790
‫Teraz ponowne użycie kodu nie jest zbyt wydajne, więc możemy pomyśleć o refaktoryzacji tego, ale najpierw upewnijmy się, że

103
00:07:56,790 --> 00:08:02,040
‫wszystko działa, abyśmy mogli najpierw sprawdzić nasz wskaźnik czołgu, aby upewnić się, że jest prawidłowy.

104
00:08:02,040 --> 00:08:04,440
‫Więc zrobię to tutaj i sprawdzę stan pożaru.

105
00:08:04,440 --> 00:08:09,870
‫Powiem, czy zbiornik i jeśli zbiornik jest prawidłowy, następną rzeczą, jaką możemy zrobić, jest uzyskanie tej

106
00:08:09,870 --> 00:08:14,700
‫odległości, która jest tą wartością tutaj obliczoną za pomocą funkcji f vector dist.

107
00:08:14,700 --> 00:08:19,380
‫Więc wezmę to i położę tutaj, aby sprawdzić stan ognia.

108
00:08:19,380 --> 00:08:25,050
‫Teraz następną rzeczą, którą robimy, jest sprawdzenie, czy odległość jest mniejsza lub równa zasięgowi ognia.

109
00:08:25,050 --> 00:08:26,610
‫Więc to właśnie zrobimy tutaj.

110
00:08:26,610 --> 00:08:34,200
‫Powiemy, czy odległość jest mniejsza lub równa zasięgowi ognia, a jeśli tak, to możemy po prostu

111
00:08:34,200 --> 00:08:35,820
‫wywołać funkcję ognia.

112
00:08:35,820 --> 00:08:38,760
‫Więc wezwiemy ogień, i to jest tak proste.

113
00:08:38,760 --> 00:08:45,120
‫Więc chodźmy dalej i skompilujmy to, a my wrócimy do edytora, a ja włączę odtwarzanie i wejdę w

114
00:08:45,120 --> 00:08:46,080
‫zasięg ognia.

115
00:08:46,080 --> 00:08:52,800
‫Widzę, że nasze wieże rysują sfery debugowania na czubku lufy, więc widzimy,

116
00:08:52,800 --> 00:09:00,630
‫że ta funkcja ognia jest wywoływana i działa tak samo dla wieży, jak dla czołgu.

117
00:09:00,630 --> 00:09:01,740
‫Więc to jest świetne.

118
00:09:01,740 --> 00:09:09,420
‫To udowadnia nam, że nasz timer działa i nasza funkcja zwrotna jest wywoływana co 2 sekundy.

119
00:09:09,450 --> 00:09:14,910
‫Ok, więc mamy tę funkcję ognia wywoływaną co 2 sekundy, teraz sprawdzamy, stan ognia.

120
00:09:14,910 --> 00:09:21,360
‫Mamy tę funkcję, w której sprawdzamy, czy jesteśmy w zasięgu i robimy dokładnie to samo

121
00:09:21,360 --> 00:09:22,830
‫w funkcji tiku.

122
00:09:22,830 --> 00:09:26,070
‫Jest to więc doskonała okazja do refaktoryzacji.

123
00:09:26,070 --> 00:09:32,580
‫Moglibyśmy stworzyć jakąś funkcję, która zwróci nam wartość logiczną, jeśli będziemy w zasięgu czołgu.

124
00:09:32,580 --> 00:09:37,710
‫Dlaczego więc nie pójdziemy dalej i po prostu szybko zrefaktoryzujemy to w funkcję zwracającą byki?

125
00:09:37,710 --> 00:09:41,430
‫Więc tutaj, w Wieży H, stwórzmy prywatną funkcję.

126
00:09:41,430 --> 00:09:45,840
‫Zwróci bool i powiemy, że na strzelnicy.

127
00:09:45,840 --> 00:09:51,480
‫Teraz jest to prosta gra, a nasza wieża będzie w zasięgu tylko czołgu.

128
00:09:51,480 --> 00:09:57,120
‫Więc nie jest to dwuznaczne, ponieważ nie ma nic innego, co wieża chciałaby kiedykolwiek sprawdzić,

129
00:09:57,120 --> 00:10:03,240
‫aby zobaczyć, czy jest w zasięgu, gdyby była to bardziej skomplikowana gra z innymi rzeczami, dla których

130
00:10:03,240 --> 00:10:08,340
‫wieża chciałaby sprawdzić odległość, moglibyśmy nazwij to trochę inaczej, ale możemy to po

131
00:10:08,340 --> 00:10:10,320
‫prostu nazwać w zasięgu ognia.

132
00:10:10,320 --> 00:10:14,130
‫A to, co zamierzam zrobić, to zaimplementować to tutaj w Tower.

133
00:10:14,130 --> 00:10:17,340
‫Więc chodźmy dalej i stwórzmy ciało funkcji.

134
00:10:17,340 --> 00:10:20,880
‫Będziemy potrzebować wieży przed ustaleniem nazwy funkcji.

135
00:10:20,880 --> 00:10:25,560
‫A to, co tutaj zrobimy, to w zasadzie ta sama kontrola odległości.

136
00:10:25,560 --> 00:10:31,020
‫Więc najpierw sprawdzimy, czy zbiornik jest prawidłowy, sprawdzając, czy.

137
00:10:31,020 --> 00:10:38,880
‫Teraz, jeśli tak, to możemy uzyskać tę odległość, więc możemy skopiować tę linię i po prostu utworzyć nasz lokalny pływak

138
00:10:38,880 --> 00:10:45,690
‫odległości tutaj i po prostu porównać tę odległość z zasięgiem ognia, abyśmy mogli powiedzieć, czy odległość jest mniejsza

139
00:10:45,690 --> 00:10:51,180
‫lub równa zasięgowi ognia, a jeśli tak jest, możemy po prostu zwrócić true.

140
00:10:51,180 --> 00:10:54,780
‫Ta funkcja może zwrócić wartość true.

141
00:10:54,780 --> 00:10:58,950
‫A teraz mamy funkcję, którą możemy wywołać, która zwróci true, jeśli będziemy w zasięgu.

142
00:10:58,950 --> 00:11:05,970
‫Teraz, gdy tylko trafimy na ten wiersz return true w instrukcji if, funkcja zwróci.

143
00:11:05,970 --> 00:11:07,470
‫Wyskoczymy z funkcji.

144
00:11:07,470 --> 00:11:10,830
‫Więc wszystko inne po tym, jeśli instrukcja nie zostanie uruchomiona.

145
00:11:10,830 --> 00:11:18,720
‫Więc to, co możemy zrobić, to na samym końcu naszej funkcji zasięgu ognia, możemy zwrócić false, ponieważ

146
00:11:18,720 --> 00:11:25,020
‫jeśli kiedykolwiek osiągniemy return true, nigdy nie dojdziemy do linii return false tutaj.

147
00:11:25,020 --> 00:11:27,690
‫Po prostu wcześniej wyjdziemy z funkcji.

148
00:11:27,690 --> 00:11:35,250
‫Ale jeśli nie jesteśmy w zasięgu, jeśli ten test odległości się nie powiedzie, to nigdy nie osiągniemy zwrotu prawda.

149
00:11:35,370 --> 00:11:39,300
‫Dojdziemy do końca funkcji i zwrócimy false.

150
00:11:39,300 --> 00:11:45,930
‫Tak więc ta funkcja zwróci prawdę lub fałsz w zależności od tego, czy jesteśmy w zakresie, czy nie, i możemy tego

151
00:11:45,930 --> 00:11:49,440
‫użyć zamiast używać powtarzającego się kodu w naszych dwóch funkcjach.

152
00:11:49,440 --> 00:11:56,610
‫Na przykład tutaj w tiku potrzebujemy tylko jednego sprawdzenia, aby sprawdzić, czy jesteśmy w zasięgu, zanim obrócimy

153
00:11:56,610 --> 00:11:57,180
‫wieżę.

154
00:11:57,180 --> 00:12:06,240
‫Więc co możemy zrobić, to powiedzieć, czy jesteśmy w zasięgu ognia, a jeśli to się powiedzie, jesteśmy w zasięgu ognia, więc możemy

155
00:12:06,240 --> 00:12:07,830
‫wywołać obrót wieży.

156
00:12:07,860 --> 00:12:10,170
‫Więc umieścimy to w instrukcji if.

157
00:12:10,170 --> 00:12:15,090
‫A teraz cały ten kod jest niepotrzebny, więc możemy go po prostu usunąć.

158
00:12:15,450 --> 00:12:19,050
‫A teraz wygląda to o wiele czyściej niż to, co mieliśmy wcześniej.

159
00:12:19,050 --> 00:12:23,940
‫A potem możemy zejść tutaj, sprawdzić stan pożaru i zrobić to samo.

160
00:12:23,940 --> 00:12:29,340
‫Zamiast tego możemy po prostu sprawdzić, czy znajduje się w zasięgu ognia.

161
00:12:31,800 --> 00:12:35,010
‫A jeśli tak, możemy po prostu wezwać ogień.

162
00:12:35,280 --> 00:12:42,270
‫Więc teraz pomyślnie zrefaktoryzowaliśmy cały ten kod w test, który jest wykonywany w naszej funkcji zasięgu

163
00:12:42,270 --> 00:12:43,100
‫ognia.

164
00:12:43,110 --> 00:12:48,750
‫Więc chodźmy dalej, skompilujmy to ponownie i po prostu zagrajmy w test naprawdę szybko, aby upewnić się, że wszystko

165
00:12:48,750 --> 00:12:50,100
‫działa zgodnie z oczekiwaniami.

166
00:12:50,100 --> 00:12:54,210
‫Więc pójdziemy dalej, wciśniemy „play” i znajdziemy się w zasięgu ognia.

167
00:12:54,210 --> 00:12:58,110
‫I oczywiście jesteśmy na strzelnicy i działa to poprawnie.

168
00:12:58,110 --> 00:13:05,130
‫Podsumowując, stworzyliśmy licznik czasu i co 2 sekundy wywołujemy funkcję ognia w klasie

169
00:13:05,130 --> 00:13:05,760
‫wieży.

170
00:13:05,790 --> 00:13:08,700
‫Teraz sprawdzamy również, czy Tank jest w zasięgu.

171
00:13:08,700 --> 00:13:15,570
‫Więc wywołujemy funkcję ostrzału tylko co 2 sekundy, jeśli czołg znajduje się w zasięgu ostrzału.

172
00:13:15,570 --> 00:13:19,950
‫Widzieliśmy również, że używamy tej kontroli odległości w dwóch różnych funkcjach.

173
00:13:19,950 --> 00:13:26,670
‫Przekształciliśmy go więc w jego własną funkcję i po prostu wywołujemy to, aby sprawdzić, czy jesteśmy w zasięgu.

174
00:13:26,670 --> 00:13:29,970
‫Tak więc mamy teraz funkcję ogniową nazywaną klasą wieży.

175
00:13:29,970 --> 00:13:35,190
‫Następną rzeczą do zrobienia jest rozpoczęcie tworzenia pocisków za pomocą naszej funkcji ognia.

176
00:13:35,190 --> 00:13:38,420
‫Porozmawiamy o tym w następnym filmie.

177
00:13:38,430 --> 00:13:39,330
‫Zobaczymy się wkrótce.

