﻿1
00:00:04,710 --> 00:00:06,600
‫Witam ponownie.

2
00:00:06,630 --> 00:00:09,660
‫Teraz jesteśmy gotowi do rozpoczęcia obsługi danych wprowadzanych przez użytkownika.

3
00:00:09,780 --> 00:00:15,000
‫Oznacza to, że chcielibyśmy naciskać klawisze na klawiaturze, poruszać myszą i klikać myszką, aby zobaczyć, jak nasz

4
00:00:15,000 --> 00:00:16,650
‫czołg reaguje na to wejście.

5
00:00:16,770 --> 00:00:22,260
‫Teraz, aby to zrobić, najpierw musimy faktycznie uzyskać dane wejściowe i najpierw zaczniemy to

6
00:00:22,260 --> 00:00:24,450
‫robić za pomocą mapowania osi.

7
00:00:24,450 --> 00:00:25,980
‫Porozmawiajmy więc o tym.

8
00:00:26,100 --> 00:00:30,600
‫Teraz w projekcie przejdźmy do edycji i ustawień projektu.

9
00:00:30,780 --> 00:00:35,340
‫A jeśli przewiniemy w dół i wybierzemy dane wejściowe, zobaczymy tutaj nasze powiązania.

10
00:00:35,340 --> 00:00:39,600
‫A pod wiązaniami znajdują się mapowania akcji i mapowania osi.

11
00:00:39,630 --> 00:00:42,300
‫Najpierw zajmiemy się odwzorowaniami osi.

12
00:00:42,350 --> 00:00:47,370
‫Teraz możesz mieć z nimi pewne doświadczenie, ale zamierzamy trochę głębiej zagłębić się w to,

13
00:00:47,370 --> 00:00:49,700
‫co one robią i jak działają.

14
00:00:49,710 --> 00:00:51,150
‫Więc mamy ich trzy.

15
00:00:51,240 --> 00:00:58,800
‫A jeśli kliknę strzałkę w dół, zobaczę tutaj W i SW, a te mówią o klawiszach W

16
00:00:58,800 --> 00:01:00,780
‫i SW na klawiaturze.

17
00:01:00,810 --> 00:01:06,960
‫Są one przypisane do tego konkretnego odwzorowania osi, które nazywa się Przesuń do przodu.

18
00:01:06,960 --> 00:01:09,870
‫Omówmy więc, jak działa to mapowanie osi.

19
00:01:09,870 --> 00:01:17,280
‫Widzieliśmy więc w The Unreal Editor, że mamy to mapowanie osi o nazwie Move Forward i ma

20
00:01:17,280 --> 00:01:20,820
‫przypisane W i SCS do tego mapowania osi.

21
00:01:20,820 --> 00:01:22,950
‫Więc co to dokładnie oznacza?

22
00:01:23,730 --> 00:01:27,870
‫Cóż, w Unreal Engine mamy coś, co nazywa się mapowaniem osi.

23
00:01:27,870 --> 00:01:32,970
‫A mapowanie osi to coś, co jest przetwarzane w każdej klatce gry.

24
00:01:33,000 --> 00:01:35,700
‫Przypisujesz klawisze do mapowania osi.

25
00:01:35,700 --> 00:01:38,460
‫W naszym przypadku przypisaliśmy W i S.

26
00:01:38,490 --> 00:01:41,370
‫Teraz spójrz obok klawisza W tutaj.

27
00:01:41,370 --> 00:01:45,060
‫W mojej małej próbce zrzutu ekranu po prawej stronie jest napisane skala.

28
00:01:45,060 --> 00:01:48,180
‫A obok skali jest numer 1. 0.

29
00:01:48,300 --> 00:01:53,160
‫Być może zauważyłeś, że obok SQ skala wynosi -1. 0.

30
00:01:53,160 --> 00:01:58,650
‫Są to więc wartości, które wpłyną na te informacje wejściowe.

31
00:01:58,650 --> 00:02:01,080
‫Oto jak działa mapowanie osi.

32
00:02:01,320 --> 00:02:08,580
‫Nasz ruch do przodu mapowania osi ma możliwość powiązania z funkcją w C++.

33
00:02:08,700 --> 00:02:15,060
‫Teraz, jeśli chodzi o mapowanie osi, jeśli skojarzymy funkcję z mapowaniem osi, musi ona pobrać

34
00:02:15,060 --> 00:02:21,810
‫parametr wejściowy typu float, abyśmy mogli utworzyć funkcję w naszym stawie o nazwie MOVE, która pobiera wartość

35
00:02:21,810 --> 00:02:22,410
‫zmiennoprzecinkową.

36
00:02:22,410 --> 00:02:24,870
‫Po prostu nazwiemy tę wartość parametru wejściowego.

37
00:02:24,930 --> 00:02:30,570
‫Teraz jest sposób, aby wziąć tę funkcję i powiązać ją z naszym mapowaniem osi ruchu do przodu.

38
00:02:30,570 --> 00:02:34,980
‫Powiedział, że wiążemy funkcję move z mapowaniem osi.

39
00:02:34,980 --> 00:02:41,430
‫Tak więc w każdej klatce gry system wprowadzania danych Unreal Engine będzie sprawdzał, czy naciskamy

40
00:02:41,430 --> 00:02:43,680
‫klawisz W, czy klawisz.

41
00:02:43,680 --> 00:02:50,730
‫I obliczy wartość osi w zależności od tego, czy naciskamy te klawisze i każdą pojedynczą

42
00:02:50,730 --> 00:02:51,600
‫klatkę.

43
00:02:51,600 --> 00:02:58,080
‫Wywoła on tę funkcję, którą zobowiązaliśmy się przesunąć do przodu i przekazać tę wartość osi.

44
00:02:58,080 --> 00:03:03,810
‫Cokolwiek dzieje się wewnątrz tej funkcji, zależy od nas jako programisty C++.

45
00:03:03,840 --> 00:03:05,310
‫Oto jak to działa.

46
00:03:05,310 --> 00:03:10,860
‫Jeśli nie naciskamy W ani klawiszy, ta wartość osi ma wartość zero.

47
00:03:10,860 --> 00:03:16,890
‫Tak więc funkcja move, która jest powiązana z odwzorowaniem osi ruchu do przodu, jest wywoływana co pojedynczą

48
00:03:16,890 --> 00:03:19,620
‫ramkę, a przekazywana wartość zmiennoprzecinkowa wynosi zero.

49
00:03:19,620 --> 00:03:22,380
‫Załóżmy teraz, że naciskamy klawisz W.

50
00:03:22,620 --> 00:03:26,820
‫Klawisz W ma skalę ustawioną na 1. 0.

51
00:03:26,850 --> 00:03:33,870
‫Oznacza to, że nasza wartość osi będzie wynosić 1. 0 i to jest przekazywane do funkcji MOV.

52
00:03:33,870 --> 00:03:39,090
‫Tak więc w każdej pojedynczej klatce funkcja move jest wywoływana z wartością 1. Zdano 0.

53
00:03:39,120 --> 00:03:44,910
‫Teraz powiedzmy, że zamiast tego wciskamy SRC, który ma wartość skali -1. 0.

54
00:03:44,940 --> 00:03:51,720
‫Oznacza to, że w każdej klatce zostanie wywołana funkcja move i -1. 0 zostanie przekazane.

55
00:03:51,720 --> 00:03:58,260
‫Teraz w przypadku, gdy naciskamy zarówno W, jak i S, obie te wartości są sumowane.

56
00:03:58,260 --> 00:04:05,040
‫Więc otrzymujemy 1. 0 od wciśnięcia klawisza W i otrzymujemy -1. 0 od naciśnięcia SRC.

57
00:04:05,070 --> 00:04:07,200
‫Teraz oba znoszą się nawzajem.

58
00:04:07,320 --> 00:04:13,350
‫Więc jeśli naciśniemy oba w tym samym czasie, funkcja move zostanie wywołana z podaniem zera.

59
00:04:13,710 --> 00:04:19,020
‫Więc w zależności od tego, którą kombinację klawiszy wciśniemy, otrzymamy inną wartość przekazaną do

60
00:04:19,020 --> 00:04:25,230
‫naszej funkcji MOVE i możemy zrobić z tą wartością, co chcemy, na przykład użyć jej do przesunięcia pionka.

61
00:04:25,230 --> 00:04:28,500
‫Niedługo porozmawiamy o faktycznym przesunięciu pionka.

62
00:04:28,500 --> 00:04:34,620
‫Na razie po prostu popracujmy nad właściwym ustawieniem, abyśmy mogli obsłużyć te informacje z

63
00:04:34,620 --> 00:04:36,390
‫systemu mapowania osi.

64
00:04:36,930 --> 00:04:43,260
‫Okej, więc teraz, gdy wiemy, jak działa mapowanie osi, nadszedł czas, aby utworzyć funkcję zwrotną, którą

65
00:04:43,260 --> 00:04:46,620
‫możemy powiązać z mapowaniem osi ruchu do przodu.

66
00:04:46,620 --> 00:04:50,370
‫Więc zamknę ustawienia projektu i wskoczę z powrotem do kodu VS.

67
00:04:50,370 --> 00:04:58,470
‫Więc tutaj, w kodzie VS, chcielibyśmy stworzyć funkcję, którą możemy powiązać z mapowaniem osi ruchu do przodu.

68
00:04:58,470 --> 00:05:02,640
‫Więc tutaj w zbiorniku H możemy stworzyć prywatną funkcję.

69
00:05:02,640 --> 00:05:03,810
‫Teraz będzie mieć.

70
00:05:03,880 --> 00:05:07,180
‫Typ void return, który chciałbym nazwać tym ruchem.

71
00:05:07,210 --> 00:05:11,950
‫Teraz musi mieć parametr wejściowy zmiennoprzecinkowy i zamierzamy wywołać tę wartość.

72
00:05:12,010 --> 00:05:16,750
‫Weźmy więc naszą funkcję move i zdefiniujmy ją tutaj w Tank.

73
00:05:16,970 --> 00:05:25,450
‫CP Wkleję to tutaj tuż pod konstruktorem i potrzebujemy zbiornika z operatorem rozpoznawania zakresu

74
00:05:25,450 --> 00:05:27,310
‫przed nazwą funkcji.

75
00:05:27,460 --> 00:05:33,550
‫Mamy więc tę funkcję move i jesteśmy gotowi do powiązania jej z mapowaniem osi ruchu do przodu.

76
00:05:33,670 --> 00:05:39,340
‫Odbywa się to w funkcji zwanej setup player input component.

77
00:05:39,370 --> 00:05:40,630
‫To powinno brzmieć znajomo.

78
00:05:40,630 --> 00:05:48,130
‫W rzeczywistości, jeśli otworzymy nasz eksplorator i wrócimy do Base Pont H, możemy przewinąć w dół i zobaczyć

79
00:05:48,130 --> 00:05:51,910
‫w sekcji publicznej komponent wejściowy konfiguracji funkcji odtwarzacza.

80
00:05:51,910 --> 00:05:56,380
‫Zobaczymy, że jest to nadpisanie dziedziczonej funkcji wirtualnej.

81
00:05:56,950 --> 00:06:03,430
‫Teraz podstawowa klasa odradzania tak naprawdę nie musi konfigurować żadnych danych wejściowych i właśnie do tego służy ta

82
00:06:03,430 --> 00:06:06,010
‫funkcja do obsługi danych wejściowych od gracza.

83
00:06:06,040 --> 00:06:10,810
‫Teraz nasza podstawowa klasa obligacji nie musi obsługiwać danych wejściowych, ale nasza klasa czołgów tak.

84
00:06:10,810 --> 00:06:18,160
‫Więc co możemy zrobić, to wyjąć tę funkcję ze stawu bazowego h, ale zamierzam to skopiować, ponieważ potrzebujemy jej

85
00:06:18,160 --> 00:06:19,240
‫w zbiorniku.

86
00:06:19,930 --> 00:06:26,380
‫Więc kopiując tę funkcję, przejdę do Tank H i tutaj w sekcji publicznej zamierzam ją

87
00:06:26,380 --> 00:06:27,190
‫wkleić.

88
00:06:27,190 --> 00:06:32,800
‫A ponieważ nie potrzebujemy go w stawie podstawowym, po prostu usunę go z klasy stawu podstawowego.

89
00:06:32,800 --> 00:06:38,090
‫I faktycznie zamierzam wejść do stawu bazowego CP i usunąć go również stąd.

90
00:06:38,110 --> 00:06:42,250
‫Więc chodźmy dalej i usuń komponent wejściowy odtwarzacza konfiguracji z Base Pond.

91
00:06:42,460 --> 00:06:46,540
‫CP A teraz nie ma go już w klasie stawu podstawowego.

92
00:06:46,540 --> 00:06:52,120
‫Więc chodźmy dalej i zapiszmy nasze zmiany i zamknij bazę Pond H i CP.

93
00:06:52,150 --> 00:06:59,410
‫A teraz mamy konfiguracyjny komponent wejściowy gracza zadeklarowany w Tank H, ale chcemy również go zdefiniować i zbiornik.

94
00:06:59,620 --> 00:07:01,540
‫CP Więc tutaj w Tanku.

95
00:07:01,720 --> 00:07:06,340
‫CP Dodam definicję tuż nad funkcją move.

96
00:07:06,430 --> 00:07:12,880
‫Więc to jest nieważne i jest to element wejściowy gracza w konfiguracji czołgu.

97
00:07:13,510 --> 00:07:18,000
‫Wróćmy teraz do Tank H i zobaczmy, jaki jest typ parametru wejściowego.

98
00:07:18,010 --> 00:07:21,880
‫Zobaczysz, że jest to zadeklarowane do przodu w nawiasach.

99
00:07:21,880 --> 00:07:27,070
‫To jest coś, co możesz zrobić, jeśli chcesz przekazać dalej, zadeklarować typ klasy w pliku nagłówkowym.

100
00:07:27,070 --> 00:07:33,370
‫Więc to jest tutaj zadeklarowane do przodu i potrzebujemy tego, aby wprowadzić typ wskaźnika komponentu, a parametr nazywa

101
00:07:33,370 --> 00:07:34,990
‫się komponentem wejściowym odtwarzacza.

102
00:07:34,990 --> 00:07:37,450
‫Więc potrzebujemy tego parametru wejściowego w zbiorniku.

103
00:07:37,600 --> 00:07:44,980
‫CP Tak więc w nawiasach dla komponentu wejściowego odtwarzacza, będziemy mieć komponent wejściowy U,

104
00:07:45,040 --> 00:07:50,080
‫który jest wskaźnikiem i nazywa się komponentem wejściowym odtwarzacza.

105
00:07:50,320 --> 00:07:55,300
‫Więc teraz podpis funkcji pasuje do tej w deklaracji funkcji.

106
00:07:55,450 --> 00:08:02,050
‫Teraz z powrotem w pliku CP, nadajmy tej funkcji treść funkcji i nadpisujemy

107
00:08:02,050 --> 00:08:07,450
‫tę funkcję. Dobrym pomysłem jest wywołanie komponentu wejściowego odtwarzacza superkonfiguracji.

108
00:08:07,480 --> 00:08:13,030
‫Teraz, ponieważ wywołujemy nadrzędną wersję komponentu wejściowego odtwarzacza konfiguracji, musimy przekazać dane wejściowe typu,

109
00:08:13,030 --> 00:08:15,460
‫które określasz jako komponent wejściowy.

110
00:08:15,460 --> 00:08:19,900
‫Przekażemy tutaj parametr wejściowy do tej funkcji.

111
00:08:19,900 --> 00:08:23,430
‫W ten sposób klasa nadrzędna wywoła swoją wersję.

112
00:08:23,440 --> 00:08:26,620
‫Teraz zbiornik podstawowy nie realizuje tej funkcji.

113
00:08:26,620 --> 00:08:27,700
‫Właśnie go usunęliśmy.

114
00:08:27,700 --> 00:08:31,930
‫Ale klasa nadrzędna do bazy -- wywoła jej wersję.

115
00:08:31,930 --> 00:08:38,410
‫I za każdym razem, gdy zastępujesz taką funkcję wirtualną, dobrym pomysłem jest wywołanie wersji super.

116
00:08:38,410 --> 00:08:43,090
‫Nie brakuje więc żadnej funkcjonalności zaimplementowanej w wersji nadrzędnej.

117
00:08:43,090 --> 00:08:44,440
‫Więc dlaczego to robimy?

118
00:08:44,470 --> 00:08:47,150
‫Do czego służy komponent wejściowy odtwarzacza konfiguracji?

119
00:08:47,170 --> 00:08:51,730
‫Cóż, jedną z rzeczy, do których jest dobry, jest wiązanie funkcji z mapowaniami dostępu.

120
00:08:51,730 --> 00:08:56,140
‫Chcielibyśmy powiązać naszą funkcję ruchu z mapowaniem osi ruchu do przodu.

121
00:08:56,140 --> 00:08:57,250
‫I robimy to tutaj.

122
00:08:57,250 --> 00:09:01,180
‫Robimy to za pomocą tego komponentu wejściowego odtwarzacza z parametrami wejściowymi.

123
00:09:01,180 --> 00:09:04,360
‫Po to właśnie ten obiekt jest przeznaczony.

124
00:09:04,390 --> 00:09:12,160
‫Bierzemy komponent wejściowy odtwarzacza i na tym wskaźniku używamy operatora strzałki, aby uzyskać dostęp do funkcji

125
00:09:12,160 --> 00:09:14,110
‫zwanej osią powiązania.

126
00:09:14,590 --> 00:09:17,890
‫Teraz Bind Axis przyjmuje kilka parametrów wejściowych.

127
00:09:17,890 --> 00:09:22,450
‫Pierwszy to literał ciągu, co oznacza, że użyjemy makra tekstowego.

128
00:09:22,600 --> 00:09:24,430
‫Co teraz umieścimy w cudzysłowie?

129
00:09:24,520 --> 00:09:27,160
‫Wstawiamy nazwę odwzorowania osi.

130
00:09:27,160 --> 00:09:31,690
‫Widzieliśmy w edytorze, że to mapowanie osi nazywa się przesuń do przodu.

131
00:09:32,020 --> 00:09:36,970
‫Więc wybieramy to mapowanie osi do powiązania z drugim parametrem wejściowym.

132
00:09:36,970 --> 00:09:43,690
‫Będzie to wskaźnik do obiektu, w którym powiązanie funkcji dla tego jest wskaźnikiem do

133
00:09:43,690 --> 00:09:50,590
‫instancji określonej klasy, gdzie n, a ponieważ jesteśmy w klasie czołgów, wskaże to na

134
00:09:50,590 --> 00:09:53,280
‫instancję pionka czołgu w gra.

135
00:09:53,290 --> 00:09:58,120
‫Teraz trzeci parametr to adres funkcji, którą łączymy.

136
00:09:58,120 --> 00:10:01,720
‫Więc mamy ruch czołgu.

137
00:10:01,750 --> 00:10:03,550
‫Bardzo ważne, że musimy w pełni.

138
00:10:03,660 --> 00:10:06,900
‫Zakwalifikuj nazwę funkcji nazwą klasy.

139
00:10:06,900 --> 00:10:13,200
‫A tutaj, przed nazwą funkcji, potrzebujemy adresu operatora.

140
00:10:13,230 --> 00:10:18,450
‫Teraz, jeśli nie jesteś zaznajomiony z robieniem czegoś takiego, jest to po prostu pobieranie

141
00:10:18,450 --> 00:10:19,220
‫adresu funkcji.

142
00:10:19,230 --> 00:10:23,040
‫Funkcje mogą mieć adresy, tak jak zmienne.

143
00:10:23,040 --> 00:10:28,320
‫Tak więc użycie adresu operatora jest sposobem na przekazywanie funkcji do innych funkcji.

144
00:10:28,320 --> 00:10:31,380
‫Dlatego potrzebujemy tego adresu operatora.

145
00:10:31,380 --> 00:10:34,050
‫Więc mamy nasze wywołanie funkcji do powiązania dostępu.

146
00:10:34,200 --> 00:10:40,650
‫Teraz prawdopodobnie zauważasz, że wskaźnik błędu IntelliSense wskazujący na niekompletny typ klasy, w którym wprowadzany składnik

147
00:10:40,650 --> 00:10:41,700
‫jest niedozwolony.

148
00:10:41,850 --> 00:10:43,710
‫Teraz wiemy, co może to spowodować.

149
00:10:43,710 --> 00:10:46,950
‫Po pierwsze, może to oznaczać, że musimy dołączyć plik nagłówkowy.

150
00:10:47,220 --> 00:10:50,430
‫Inną możliwością jest to, że jest to fałszywy błąd.

151
00:10:50,430 --> 00:10:55,110
‫Możesz łatwo się dowiedzieć, kompilując, więc spróbujmy skompilować.

152
00:10:55,440 --> 00:10:57,600
‫Zobaczymy, że mamy udaną kompilację.

153
00:10:57,600 --> 00:10:59,640
‫Więc wiemy, że to fałszywy błąd.

154
00:10:59,640 --> 00:11:04,290
‫Ale znowu, jeśli chcesz, możesz dodać dołączenie, aby to usunąć.

155
00:11:04,290 --> 00:11:05,790
‫Więc to ci nie przeszkadza.

156
00:11:05,820 --> 00:11:10,890
‫Teraz wiemy, że typ klasy, na który narzeka, to komponent wejściowy.

157
00:11:11,280 --> 00:11:16,290
‫Więc tutaj masz komponent wejściowy w dokumentacji, a oto dołączanie.

158
00:11:16,290 --> 00:11:23,100
‫A jeśli dodamy to tutaj na górze pliku CP czołgu, pozbędziemy się tego nieznośnego fałszywego błędu.

159
00:11:23,100 --> 00:11:29,280
‫I znowu, ponieważ pragya chce, aby zawierały osłony, wiemy, że komponenty wejściowe nie zostaną uwzględnione

160
00:11:29,280 --> 00:11:34,080
‫więcej niż raz, a więc zawijasy, których już nie ma.

161
00:11:34,350 --> 00:11:39,900
‫Więc teraz wiemy, że ta funkcja przenoszenia będzie nazywana każdą klatką, a wartość będzie miała określoną

162
00:11:39,900 --> 00:11:44,280
‫wartość zmiennoprzecinkową w zależności od tego, czy naciskamy W, czy pytamy.

163
00:11:44,670 --> 00:11:50,490
‫Teraz sama wiedza, że funkcja move musi poruszać się do przodu, nie wystarczy.

164
00:11:50,490 --> 00:11:54,750
‫Jako programiści miło jest mieć jakieś potwierdzenie, że wszystko działa.

165
00:11:54,750 --> 00:12:01,110
‫Więc to, co chciałbym, abyś zrobił jako twoje wyzwanie, to użycie dziennika YUI w funkcji MOV, aby wydrukować wartość,

166
00:12:01,110 --> 00:12:04,950
‫która jest przekazywana do move tego zmiennoprzecinkowego o nazwie value.

167
00:12:04,980 --> 00:12:13,110
‫Więc użyj procentu f w logu uiy, aby zapisać wartość wartości float w logu wyjściowym, a następnie zagraj w test gry i

168
00:12:13,110 --> 00:12:17,020
‫naciśnij te klawisze i zobacz, co zostanie wydrukowane w logu.

169
00:12:17,040 --> 00:12:20,370
‫Zatrzymaj wideo i dodaj to teraz do funkcji przenoszenia.

170
00:12:23,280 --> 00:12:23,590
‫Dobra.

171
00:12:23,610 --> 00:12:27,960
‫Więc tutaj, w funkcji mov, dodam dziennik uii.

172
00:12:30,200 --> 00:12:33,680
‫I to może być ostrzeżenie o temp. dziennika.

173
00:12:33,770 --> 00:12:35,960
‫I dla makra tekstowego.

174
00:12:36,230 --> 00:12:42,440
‫Po prostu wstawię wartość procentową F i wartość.

175
00:12:42,710 --> 00:12:43,520
‫Teraz w porządku.

176
00:12:43,520 --> 00:12:48,500
‫Jeśli użyłeś innego typu gadatliwości lub ostrzeżenia, jeśli wiesz, jak to zrobić.

177
00:12:48,950 --> 00:12:49,960
‫W porządku.

178
00:12:49,970 --> 00:12:56,090
‫Użyję tutaj tylko ostrzeżenia i wiem, że użyłeś rzeczy takich jak procent se i sformatowałeś

179
00:12:56,090 --> 00:12:58,100
‫swój dziennik wartością ciągu.

180
00:12:58,130 --> 00:13:04,300
‫Procent F, jeśli nie jesteś świadomy, to sposób formatowania dziennika interfejsu użytkownika za pomocą wartości zmiennoprzecinkowej.

181
00:13:04,310 --> 00:13:12,380
‫Więc skompilujmy to i wróćmy do edytora, otworzę dziennik wyjściowy, nacisnę play i sprawdzę,

182
00:13:12,380 --> 00:13:16,190
‫gdzie spamuje dziennik wyjściowy niezliczonymi wiadomościami.

183
00:13:16,190 --> 00:13:19,000
‫Teraz kliknę w rzutnię i nacisnę klawisz W.

184
00:13:19,010 --> 00:13:22,030
‫Oto moja wartość jednego, który zamierzam uwolnić.

185
00:13:22,040 --> 00:13:23,180
‫Wrócił do zera.

186
00:13:23,210 --> 00:13:26,570
‫Zamierzam nacisnąć klawisz i jest ujemny.

187
00:13:26,570 --> 00:13:30,500
‫A jeśli naciśniemy oba jednocześnie, otrzymamy zero.

188
00:13:30,500 --> 00:13:33,620
‫A więc jest dokładnie tak, jak się spodziewaliśmy.

189
00:13:33,800 --> 00:13:34,650
‫Idealny.

190
00:13:34,670 --> 00:13:35,390
‫W porządku.

191
00:13:35,390 --> 00:13:39,320
‫W tym filmie przygotowaliśmy nasz staw do obsługi niektórych danych wejściowych użytkownika.

192
00:13:39,560 --> 00:13:46,180
‫Rozmawialiśmy o mapowaniach dostępu i powiązaliśmy naszą funkcję move z mapowaniem dostępu move forward.

193
00:13:46,190 --> 00:13:53,300
‫Następnie wydrukowaliśmy tę wartość dostępu za pomocą dziennika YUI w naszej funkcji MOVE, ale w rzeczywistości wolelibyśmy przenieść nasz

194
00:13:53,300 --> 00:13:57,130
‫zbiornik, zamiast po prostu drukować niektóre wartości w dzienniku wyjściowym.

195
00:13:57,140 --> 00:14:02,720
‫Tak więc w przyszłych wykładach ustawimy to tak, abyśmy mogli zacząć ruszać naszym czołgiem.

196
00:14:03,290 --> 00:14:04,310
‫Zobaczymy się wkrótce.

