﻿1
00:00:04,330 --> 00:00:05,080
‫Cześć i witaj.

2
00:00:05,080 --> 00:00:11,230
‫W tym wykładzie sprawimy, że nasze komponenty wyzwalacza będą wyglądały tak, jakby były

3
00:00:11,410 --> 00:00:14,770
‫puste, a kiedy włożymy gargulca, odblokuje się.

4
00:00:14,950 --> 00:00:17,530
‫A jeśli znowu go wyjmę, znowu się zamknie.

5
00:00:17,980 --> 00:00:23,110
‫Sposób, w jaki zamierzamy to zrobić, polega na wyciągnięciu naszej funkcjonalności do sprawdzenia, czy

6
00:00:23,110 --> 00:00:26,140
‫mamy akceptowalnego aktora do jego własnej oddzielnej funkcji.

7
00:00:26,290 --> 00:00:29,140
‫I dowiem się o wczesnych powrotach w ciągu czterech pętli.

8
00:00:29,380 --> 00:00:30,820
‫Aby to zrobić, zanurkujmy.

9
00:00:31,950 --> 00:00:36,450
‫Więc ten kawałek kodu, który mamy i komponent techniczny, już zaczyna wydawać mi się

10
00:00:36,450 --> 00:00:36,830
‫funkcją.

11
00:00:36,840 --> 00:00:43,560
‫Zasadniczo jest to funkcja, która otrzymuje akceptowalnego aktora, jeśli go mamy, więc możemy przejść do

12
00:00:43,560 --> 00:00:49,470
‫naszego komponentu wyzwalającego kropkę H i w sekcji prywatnej utworzyć taką funkcję.

13
00:00:49,740 --> 00:00:51,810
‫Jaki powinien być typ zwrotu?

14
00:00:51,840 --> 00:00:58,920
‫Cóż, myślę, że powinien to być wskaźnik aktora A, który zawsze może być wskaźnikiem zerowym, jeśli nie ma akceptowalnego

15
00:00:58,920 --> 00:00:59,490
‫aktora.

16
00:00:59,850 --> 00:01:05,160
‫Więc możemy to nazwać pustymi nawiasami, aby uzyskać akceptację aktora.

17
00:01:05,160 --> 00:01:06,420
‫Nie musimy mu nic dawać.

18
00:01:06,420 --> 00:01:12,180
‫A ponieważ nie zmienia to naszej funkcji, możemy uczynić ją stałą.

19
00:01:12,540 --> 00:01:17,700
‫Przejdźmy dalej i zaimplementujmy to w tym pliku sterty, przechodząc do wcięcia.

20
00:01:17,700 --> 00:01:26,760
‫Daje mu to wyzwolenie okrężnicy komponentu i zastąpienie go średnikiem nawiasami klamrowymi.

21
00:01:27,630 --> 00:01:35,490
‫I wtedy kod, którego potrzebujemy, jest w zasadzie zawartością komponentu tik, z wyjątkiem tego, czego nie chcemy robić, to

22
00:01:35,490 --> 00:01:37,440
‫po prostu rejestrować to.

23
00:01:37,440 --> 00:01:39,360
‫Odblokowaliśmy tutaj aktora.

24
00:01:39,780 --> 00:01:47,250
‫To, co chcemy zrobić, to w przypadku, gdy znaleźliśmy tego aktora, zasadniczo chcemy go zwrócić.

25
00:01:47,250 --> 00:01:48,810
‫Możemy to zrobić na kilka sposobów.

26
00:01:48,810 --> 00:01:56,310
‫Moglibyśmy powiedzieć na początku naszej funkcji, że istnieje wskaźnik aktora, który będzie aktorem zwracającym,

27
00:01:56,310 --> 00:02:00,570
‫i domyślnie ustawiamy go na wskaźnik null.

28
00:02:00,990 --> 00:02:04,170
‫Więc nie ma aktora, którego wrócimy.

29
00:02:04,470 --> 00:02:09,300
‫Ale kiedy przejdziemy przez naszą pętlę for i w końcu znajdziemy aktora, który

30
00:02:09,300 --> 00:02:16,740
‫ma akceptowalny tag, wtedy możemy powiedzieć: Hej, aktor zwracający powinien w rzeczywistości wskazywać na wskaźnik aktora, który znaleźliśmy tutaj w

31
00:02:17,010 --> 00:02:17,700
‫tablicy.

32
00:02:18,030 --> 00:02:22,410
‫A potem, pod koniec pętli for, po zakończeniu pełnej pętli, przejrzeliśmy wszystkich aktorów.

33
00:02:22,680 --> 00:02:28,620
‫Możemy iść dalej i zwrócić zmienną aktora powrotu, ponieważ jest to właściwy typ.

34
00:02:29,430 --> 00:02:30,150
‫W porządku.

35
00:02:30,420 --> 00:02:35,340
‫Ale wymaga od nas stworzenia zmiennej, a także przejścia przez całą pełną pętlę,

36
00:02:35,340 --> 00:02:37,860
‫nawet jeśli już znaleźliśmy akceptowalnego aktora.

37
00:02:38,550 --> 00:02:42,150
‫Więc lepszym sposobem na zrobienie tego jest skorzystanie z wcześniejszego zwrotu.

38
00:02:42,150 --> 00:02:48,180
‫Widzieliśmy już tego typu rzeczy w Chwytam CP, gdzie to zrobiliśmy.

39
00:02:48,180 --> 00:02:54,180
‫Jeśli uchwyty fizyki są równe małemu wskaźnikowi, to wracamy i reszta komponentu nie musi

40
00:02:54,180 --> 00:02:55,080
‫działać.

41
00:02:55,350 --> 00:02:59,910
‫Możemy również użyć tego samego rodzaju wydajności do skoków.

42
00:03:00,300 --> 00:03:06,870
‫Więc zamierzam zrobić, jeśli znajdziemy odpowiedniego aktora, zrobimy po prostu aktora powracającego.

43
00:03:06,900 --> 00:03:11,750
‫Dosłownie zwracamy wskaźnik, który właśnie znaleźliśmy w tej pętli for, a reszta pętli for

44
00:03:11,790 --> 00:03:13,170
‫nie musi działać.

45
00:03:13,890 --> 00:03:20,280
‫Jeśli jednak przejdziemy do końca pętli for i nic nie znaleźliśmy, nic nie

46
00:03:20,280 --> 00:03:23,790
‫zwróciliśmy, powrót zatrzyma pętlę for, opuści funkcję.

47
00:03:24,060 --> 00:03:30,150
‫Ale jeśli dojdziemy do końca, musimy domyślnie coś zwrócić i tutaj możemy po prostu zwrócić

48
00:03:30,480 --> 00:03:31,680
‫wskaźnik null.

49
00:03:31,980 --> 00:03:33,390
‫Więc to jest wartość domyślna.

50
00:03:33,390 --> 00:03:35,430
‫Oznacza to, że przeszliśmy przez całą pętlę for.

51
00:03:35,730 --> 00:03:37,980
‫Widzieliśmy, że nie ma akceptowalnego aktora.

52
00:03:37,990 --> 00:03:40,170
‫Żaden z aktorów nie nakładał się na nas.

53
00:03:41,330 --> 00:03:42,770
‫Z poprawną metką.

54
00:03:42,830 --> 00:03:44,960
‫Więc zwracamy pusty wskaźnik.

55
00:03:45,380 --> 00:03:51,050
‫Więc teraz oznacza to, że mam tę zbędną zmienną aktora powrotu, której mogę się pozbyć.

56
00:03:51,380 --> 00:03:53,450
‫A to czyta się naprawdę całkiem czysto.

57
00:03:53,450 --> 00:03:57,830
‫Przechodzimy, zbieramy nakładających się aktorów, robimy nad nimi pełną pętlę.

58
00:03:58,130 --> 00:04:02,600
‫Jeśli każdy aktor, który go testujemy, czy został oznaczony jako akceptowalny tag?

59
00:04:02,870 --> 00:04:04,520
‫Jeśli tak, zatrzymujemy się właśnie tam.

60
00:04:04,550 --> 00:04:05,480
‫Zwracamy ten jeden.

61
00:04:05,780 --> 00:04:08,180
‫Jeśli żaden z nich go nie ma, zwracamy wskaźnik null.

62
00:04:08,390 --> 00:04:11,750
‫Więc rzućmy wyzwanie, aby zalogować się, jeśli znajdziemy aktora.

63
00:04:11,750 --> 00:04:14,300
‫Wywołaj więc naszą funkcję w swoim komponencie tikowym.

64
00:04:14,630 --> 00:04:20,180
‫Sprawdź, czy wskaźnik ma wartość null i zaloguj się w obu przypadkach, niezależnie od tego, czy mamy aktora, czy nie

65
00:04:20,180 --> 00:04:21,860
‫używamy instrukcji F i else.

66
00:04:21,860 --> 00:04:23,300
‫Wstrzymaj wideo i spróbuj.

67
00:04:26,430 --> 00:04:26,780
‫Dobra.

68
00:04:26,790 --> 00:04:27,600
‫Witamy spowrotem.

69
00:04:27,990 --> 00:04:30,090
‫Wróćmy więc do naszych komponentów technicznych.

70
00:04:30,090 --> 00:04:36,540
‫To, co zrobimy, to utworzymy zmienną, wskaźnik aktora, który będzie aktorem, co

71
00:04:36,990 --> 00:04:41,310
‫jest równe uzyskaniu akceptowalnego aktora, który zamierzamy zrobić.

72
00:04:41,310 --> 00:04:50,580
‫Jeśli aktor nie jest równy wskaźnikowi null, wtedy w treści tego zrobimy odblokowanie okna dialogowego, a następnie w innym logowanym

73
00:04:50,580 --> 00:04:57,750
‫tym razem, ponieważ jest to zachowanie, które chcę, aby nasz składnik wyzwalacza i przeniósł go

74
00:04:57,750 --> 00:05:03,120
‫razem, aby mieć to jeśli masz tam gargulca, odblokuje się.

75
00:05:03,120 --> 00:05:09,780
‫Będzie używał movera i ponownie się blokuje, jeśli zasadniczo odznaczymy pole wyboru podczas

76
00:05:09,780 --> 00:05:13,680
‫przenoszenia, jeśli usuniemy gargulca, więc skompilujmy to.

77
00:05:13,890 --> 00:05:15,750
‫Więc chodźmy dalej i włączmy odtwarzanie.

78
00:05:15,960 --> 00:05:19,380
‫Widać, że jest ponownie blokowany, ponieważ nie mamy tam gargulca.

79
00:05:19,590 --> 00:05:22,530
‫Podnieś gargulca, przyprowadź go i gotowe.

80
00:05:22,530 --> 00:05:28,350
‫Teraz odblokowuje, wyjmij go i ponownie blokuje odblokowywanie, wyglądając idealnie.

81
00:05:28,350 --> 00:05:29,970
‫Jeśli wejdę do środka, nic się nie dzieje.

82
00:05:29,970 --> 00:05:30,870
‫To tylko ponowne blokowanie.

83
00:05:31,350 --> 00:05:37,860
‫Udało nam się więc dowiedzieć, czy mamy coś w naszym komponencie wyzwalającym, czy

84
00:05:37,980 --> 00:05:38,610
‫nie.

85
00:05:38,940 --> 00:05:40,650
‫Teraz musimy tylko zmusić go do zrobienia czegoś.

86
00:05:40,650 --> 00:05:42,660
‫I to będzie tematem następnego wykładu.

87
00:05:42,690 --> 00:05:43,290
‫Zobaczę to.

