‫Cześć i witaj.
‫Na tym wykładzie nauczymy się instrukcji if, zasadniczo instrukcji rozgałęzień C++, i będziemy ich
‫używać do przesyłania naszej platformy do przodu i do tyłu.
‫Zanurzmy się.
‫Tak więc w komentarzach jest teraz kilka miejsc, w których wspomnieliśmy, że powinniśmy coś zrobić, jeśli
‫posunęliśmy się za daleko.
‫Jak to zrobić, jeśli.
‫Cóż, wcześniej w Blueprint zrobiliśmy to, jeśli mamy węzeł gałęzi.
‫Teraz w C++ istnieje podobna koncepcja i nazywa się to instrukcją if.
‫Oto węzeł gałęzi, który mieliśmy wcześniej jako przykład.
‫Widzicie, że ta zmienna mówi, że jestem głodny, to wartość logiczna i moglibyśmy
‫umieścić ją w warunku, a następnie moglibyśmy mieć albo prawdziwą gałąź wykonania, albo fałszywą gałąź wykonania
‫i moglibyśmy wykonywać funkcje kodu.
‫Wszystko w Blueprint w C++ jest bardzo podobne, z wyjątkiem tekstu.
‫Więc mielibyśmy zmienną o nazwie Jestem głodny, która jest wartością logiczną i możemy po prostu powiedzieć, czy i umieścić ją w
‫nawiasach.
‫Następnie często otwieralibyśmy kilka nawiasów klamrowych po naszej instrukcji if w następnym wierszu, a następnie w tych nawiasach
‫klamrowych moglibyśmy wykonać to, co powinno się wydarzyć, jeśli to prawda.
‫Więc mówimy, że jeśli jestem głodny, jedz niezdrowe jedzenie, podczas gdy żona nie patrzy, a potem możemy zapiąć
‫nasze kręcone aparaty i powiedzieć, w porządku, to koniec tych rzeczy.
‫Powinno to nastąpić warunkowo.
‫Jest też opcja, że jeśli chcielibyśmy umieścić fałszywą gałąź, jeśli
‫chcielibyśmy połączyć coś z fałszem tutaj, to wstawiamy słowo kluczowe else i możemy rozpocząć drugi zestaw nawiasów.
‫A tutaj moglibyśmy dalej grać w gry wideo, a potem zapiąć szelki.
‫Teraz możemy mieć tyle linii, ile chcemy między tymi nawiasami klamrowymi, nie jest konieczne, aby
‫była tylko jedna linia.
‫Możesz więc dodać tutaj dużo kodu, jeśli chcesz, lub możesz mieć tylko jedną linię.
‫A także ze zmienną tutaj, nie musi to być zmienna, która jest podłączona do instrukcji if.
‫Może to być dowolne wyrażenie zwracające wartość logiczną.
‫Możesz więc trochę wywołać funkcję tutaj.
‫Możesz użyć operatora, aby uzyskać inny wynik.
‫Mamy więc do wyboru kilka różnych opcji.
‫Ale przed tym wszystkim musimy skonfigurować, jak daleko może się posunąć ta platforma, zanim powinna się cofnąć
‫i to zrobić.
‫Potrzebujemy nowej nieruchomości.
‫Obecnie nasza odległość została przesunięta jako widoczna w dowolnym miejscu.
‫Stwórzmy nową tuż powyżej, kilka właściwości, które należy dodać w dowolnym miejscu, ponieważ chcemy mieć
‫możliwość konfiguracji w edytorze.
‫I użyję tej samej kategorii przemieszczania platformy z góry i z dołu, tutaj będzie to typ float,
‫ponieważ będzie to odległość i będę nazywać to odległością ruchu w ten sposób, gdy
‫otrzymam wartość domyślna, dam 100 jednostek jako wartość domyślną.
‫Ale wtedy oczywiście możemy to przesłonić, zmienić to w edytorze, a potem możemy to wykorzystać
‫w pliku C++.
‫Więc sposób, w jaki to zrobimy, jest taki, że już przesunęliśmy naszą zmienną odległość.
‫Właściwie chcę nie być już w stanie obserwować, więc usunę z pliku nagłówkowego widoczną
‫właściwość where i zmienną przesunięcia odległości.
‫Następnie wrócę do C++ i zamiast tego zadeklarujemy go jako zmienną lokalną.
‫Więc najłatwiejszym sposobem na zmianę tego jest umieszczenie pływaka przed ruchem na odległość, który zasadniczo deklaruje ją jako zmienną lokalną
‫tutaj w technologii, co oznacza, że wiemy, że jest całkowicie świeża za każdym razem,
‫gdy jej używamy.
‫Więc teraz musimy odwrócić kierunek tego, kto posunął się za daleko.
‫Możemy to zrobić w taki sposób, że możemy użyć operatorów mniejszych lub równych, równych lub większych niż operatory, które
‫widzieliśmy w przeszłości jako węzły w planie.
‫Ale teraz możemy ich używać jako operatorów, tak jak robilibyśmy plus lub mnożenie.
‫A sposób, w jaki możemy to zrobić, to powiedzieć: ok, cóż, przesunęliśmy dystans.
‫Czy to jest większe niż na odległość ruchu?
‫Możemy więc użyć symbolu większego niż, który jest tym prawym szewronem, a następnie możemy podać odległość ruchu.
‫Wygląda na to, że nazwałem to przesuniętym dystansem, ale myślę, że powinien to być dystans ruchu.
‫Więc przypadkowo dostałem tam dodatkowe D.
‫Usuńmy to z nagłówka pliku, a zobaczysz, że to wyrażenie zwraca wartość logiczną, więc możemy jej
‫użyć w naszej instrukcji if.
‫Możemy więc powiedzieć, czy spacja otwiera nawiasy, a następnie wyciąć to wyrażenie i wkleić je do
‫tych nawiasów.
‫Więc jest w porządku, jeśli przebyta odległość jest większa niż odległość przemieszczenia, wtedy zasadniczo
‫chcemy odwrócić kierunek.
‫Po to właśnie robimy ten komentarz.
‫Chcemy odwrócić kierunek ruchu i odwrócić kierunek ruchu.
‫Mamy prędkość platformy.
‫Ustawmy więc prędkość platformy na wartość ujemną, zasadniczo odwracając jej kierunek.
‫Więc prędkość platformy jest równa.
‫Ujemna prędkość platformy.
‫Więc to w zasadzie przerzuci strzałkę na prędkość.
‫Umieszczę średnik na końcu tego wiersza i zobaczmy, czy to stwierdzenie rzeczywiście działa tak, jak
‫zamierzaliśmy.
‫Przejdźmy do edytora i wciśnij kompiluj.
‫A teraz, gdy zakończy się to pomyślnie, możemy iść dalej, nacisnąć przycisk odtwarzania i zobaczyć, co się stanie.
‫Więc spodziewam się, że będzie szedł do przodu i do tyłu, tak jak to robi, i to całkiem nieźle.
‫Teraz to, co się właściwie dzieje, to to, że trochę mija swój punkt wyjścia.
‫Powód tego.
‫Więc jeśli spojrzymy, to jest punkt wyjścia.
‫A jeśli pójdę, wcisnę i spojrzę w bok z tego samego kąta, pod którym stoi mój gracz,
‫widać, że jedzie w tej samej odległości od punktu startowego w każdym kierunku.
‫A to dlatego, że kiedy patrzymy na to, co jest tutaj obliczane, przebyta odległość jest od miejsca początkowego,
‫które nigdy się nie zmienia.
‫Nigdy nie aktualizujemy tej lokalizacji początkowej.
‫Więc idziemy w negatywnym kierunku.
‫Przejedziemy wtedy tyle samo, ile przejechaliśmy w drugą stronę.
‫Więc nie tak chcę, żeby moja platforma działała.
‫Dlatego rzucę Ci wyzwanie, abyś zaktualizował swoją lokalizację początkową.
‫Będziemy to robić w oświadczeniu.
‫Tak więc stanie się to tylko wtedy, gdy dotrzemy do końca naszej podróży i ustawisz ją na
‫bieżącą lokalizację, tak że w zasadzie przestawimy nasz punkt początkowy na drugą stronę i wtedy będziemy mogli podróżować
‫w przeciwnym kierunku.
‫Przetestuj więc wyniki i zobacz, czy działa zgodnie z oczekiwaniami.
‫Wstrzymaj wideo i spróbuj.
‫Dobra.
‫Witamy spowrotem.
‫Więc po tym, jak odwróciliśmy tutaj prędkość, nie ma znaczenia, czy jest po, czy
‫przed, ponieważ nie mają one na siebie wpływu.
‫Ustawimy lokalizację początkową równą bieżącej lokalizacji, co zasadniczo oznacza, że w następnej klatce przesunięta odległość będzie wynosić
‫zero, ponieważ wiemy, że odległość między lokalizacją początkową a nią
‫będzie równa zero.
‫Wróćmy i naprawdę naciśnijmy przycisk kompilacji.
‫A kiedy to zrobisz, włączmy odtwarzanie i zobaczmy, co się teraz stanie.
‫Więc spodziewam się, że będzie to iść w przód iw tył.
‫Proszę bardzo.
‫Mniej więcej tyle samo jednostek zawsze wraca do swojej początkowej lokalizacji, nie cofa się dalej,
‫co jest fantastyczne.
‫Właśnie to, co chciałem, aby się wydarzyło.
‫Na tym wykładzie nauczyliśmy się, jak używać instrukcji if i wyrażeń logicznych, aby to zrobić,
‫i pozwoliliśmy temu przesyłać naszą platformę tam iz powrotem.
‫Świetna sprawa.
‫Do zobaczenia na następnym wykładzie.