Część 5: Dodawanie monet i punktów | hyperPad Documentation

Loading...

Logo
Kompletny przewodnik - Tworzenie gry platformowej

Część 5: Dodawanie monet i punktów

Last updated September 19, 2015

Wstęp

Po zakończeniu Parte 4, powinieneś teraz mieć poziom i grywalną postać, która może biegać i skakać.

Teraz musimy nadać naszemu graczowi cel. W tej części samouczka dodamy kolekcjonowalne monety i wynik, aby śledzić ich zbieranie.

Monety ukryte w blokach to jedna z najbardziej ikonicznych cech Mario. Zacznijmy ten samouczek od stworzenia tej funkcji.

Ukrywanie monet w cegłach

Uderzanie w cegłę

Stworzymy naszą pierwszą cegłę w taki sposób, abyśmy mogli łatwo ją modyfikować, aby mieściła tyle monet, ile potrzebujemy. Gdy cegła będzie gotowa, możesz ją powielić i umieścić w dowolnym miejscu.

Ten samouczek opiera się na Części 4 i zakłada, że branżujesz projekt Części 4 z węzła.

Zacznij od wybrania jednej z cegieł, która będzie trzymać monety. Z właściwości obiektu naciśnij przycisk "Zachowania", aby otworzyć edytor zachowań.

Z kategorii Obiekt dodaj zachowanie Kolizji. Zachowanie Kolizji wyzwoli zdarzenie za każdym razem, gdy 2 określone obiekty się dotkną.

Naciśnij zachowanie Kolizji, które dodałeś, aby zobaczyć jego właściwości. Możesz zobaczyć, że ma 2 pola dla selekcjonowalnych obiektów (Nazywane Obiektem A i Obiektem B). Pierwsze pole (Obiekt A) jest wybrane dla Ciebie, a to jest to, do czego stosujesz zachowania. Możesz dotknąć, aby zmienić to, jeśli chcesz, ale zostawimy to w spokoju.

Puste pole jest dla twojego drugiego obiektu (Obiekt B), z którym zachowanie zderzenia będzie sprawdzać. Dotknij pustego pola, a następnie wybierz swoją postać gracza, którą dodałeś w Części 4 przewodnika.

Teraz, gdy twoje obiekty są wybrane, możesz zmienić, która część Obiektu B wyzwoli zdarzenie kolizji. Wyłącz wszystkie przełączniki, z wyjątkiem opcji "Na górze". Teraz zachowanie Kolizji będzie działać tylko wtedy, gdy górna część postaci gracza dotknie cegły.

Teraz, gdy cegła sprawdza, czy głowa gracza ją dotyka, sprawmy, że będzie się podnosić i opadać. Aby to zrobić, użyjemy zachowań Przesuń o, aby przesunąć ją w górę, a następnie znowu w dół.

Z kategorii Przekształcenie dodaj zachowanie Przesuń o i połącz je z wcześniej dodanym zachowaniem Kolizji.

Naciśnij zachowanie Przesuń o i sprawdź jego właściwości. Ponieważ chcemy przesunąć cegłę w górę, gdy gracz ją uderzy, zmienimy Wartość Y. Ustaw to na małą liczbę, ponieważ chcemy tylko dać jej mały efekt odskoku. Użyłem 0.20 metrów.

Należy również zmienić Czas trwania. Czas trwania to czas potrzebny na zakończenie przemieszczenia. Domyślnie czas trwania jest ustawiony na 1, ale oznacza to, że cegła przesunie się o 0,2 metra w ciągu 1 sekundy. To zdecydowanie zbyt wolno dla naszych potrzeb. Zmień czas trwania na 0.10 sekund.

Uwaga: Ustawienie czasu trwania na zero spowoduje natychmiastowy ruch obiektu do nowej pozycji. Nie będzie gładsza animacja. Zauważ również pole z napisem "Liniowy". To efekt przejścia ruchu, który jest stosowany do twojego ruchu. Jeśli twoje zachowanie ma czas trwania, będzie się poruszać w oparciu o ten efekt.

Teraz, aby cegła odbiła się w dół, dodaj jeszcze jedno zachowanie Przesuń o i połącz je z poprzednim.

Ponownie zmień właściwości. Tym razem chcemy, aby cegła przesunęła się z powrotem w dół. Aby przesunąć ją w dół, zmień Wartość Y na liczbę ujemną. Chcąc, aby cegła wróciła na swoje pierwotne miejsce, przesuniemy ją o -0.20 metrów. Należy również zmienić czas trwania na 0.10 sekund.

W tej chwili, jeśli naciśniesz przycisk play, twoja postać może uderzyć w cegłę od dołu, a cegła będzie się odbijać w górę i w dół. Jednak są pewne problemy, które musimy rozwiązać.

  1. Jest mały błąd w naszej logice. Jeśli gracz ciągle skacze naprawdę szybko, nie pozwalając skrzynce wrócić do pierwotnej pozycji, będzie się ona wciąż poruszać do góry.

  2. Cegła odbija się w nieskończoność. Co jeśli chcesz tylko kilka monet, a potem się zatrzymuje, gdy jest pusta?

  3. Jeszcze nie daje żadnych monet.

Zacznijmy od rozwiązania problemu 1. To jest tak naprawdę prosty błąd do naprawienia. Wszystko, co musimy zrobić, to wyłączyć zachowanie zderzenia, gdy gracz w nie uderza, a następnie włączyć je ponownie, gdy zostanie zakończony ruch.

Aby to zrobić, przełącz się na Kategorie dostosowane i dodaj „ Wyłącz zachowanie ”, a potem połącz to z zachowaniem Kolizji.

Następnie, z właściwości Wyłącz zachowanie, dotknij pustego pola oznaczonego "Wybierz zachowanie". Z listy znajdź poprawne zachowanie Kolizji. Zauważ, że lista pokazuje wszystkie zachowania, ze wszystkich obiektów. Lista jest posortowana na podstawie nazwy obiektu.

Teraz musisz włączyć zachowanie zderzenia z powrotem, gdy przeskok zostanie zakończony. Aby to zrobić, po prostu dodaj Behavior On z kategorii Dostosowane i połącz go z drugim zachowaniem Przesuń o. Z właściwości zachowania, upewnij się, że wybierasz zachowanie Kolizji, aby je włączyć z powrotem.

Dla problemu 2 użyjemy pudełka, aby ustawić ilość monet, które każda cegła ma w sobie. Dzięki temu możemy łatwo zmieniać konkretne cegły, aby miały więcej lub mniej monet.

Pierwszą rzeczą, którą powinieneś zrobić, to dodać pudełko z kategorii Dostosowane, możesz umieścić je gdziekolwiek na ekranie, ponieważ nie łączy się z niczym innym. Możesz również zmienić nazwę tego pudełka na "Monety", aby łatwiej je później znaleźć (aby przypomnieć sobie, jak zmieniać nazwy zachowań, sprawdź Część 4)

Z właściwości zachowań Pudełko monet, zmień właściwość "Wartość domyślna" na 3. To będzie liczba monet, którą posiada cegła.

Następnie z kategorii Logika dodaj zachowanie Dodaj wartości i połącz je z drugim Przesuń o, które dodaliśmy wcześniej. Będziemy używać tego zachowania Dodaj wartości, aby śledzić za każdym razem, gdy gracz uderza w cegłę.

Gdy zachowanie "Dodaj wartości" jest połączone, dotknij go, aby zobaczyć właściwości zachowania. Właściwości pokazują 2 pola wejściowe, a zachowanie "Dodaj wartości" wyprowadzi sumę wprowadzonych wartości.

W naszym przypadku, ponieważ używamy dodawania wartości, aby śledzić każdy hit, weźmiemy 1 w górnym polu, a dolnym polu, z którego wyprowadzimy sumę z Dodaj wartość z powrotem do drugiego pola wejściowego.

Co to robi, to zwiększa sumę za każdym razem, gdy zachowanie jest uruchamiane. Pierwszy raz, gdy zachowanie działa, będzie to 1+0 ponieważ nie ma sumy. Drugi raz, gdy działa, to będzie 1+1, ponieważ suma z poprzedniego czasu jest zapisana.

Następnie musisz sprawdzić, czy suma z dodawania jest równa Pudełku monet, które wcześniej dodałeś.

Aby to zrobić, dodaj zachowanie IF z kategorii Logika i połącz je z Dodawaniem wartości z poprzedniego kroku.

Gdy IF jest połączone, dotknij go, aby zobaczyć właściwości zachowania. Zachowanie IF sprawdzi, czy konkretna warunek jest spełniony (na podstawie 2 pól wejściowych i wybranej warunku).

W tym przypadku, wyprowadzimy (podzielimy) sumę z dodawania behavior, a następnie umieścimy ją w pierwszym polu IF.

Następnie wyprowadź zawartość pudełka na drugie, jeśli.

Z tymi wartościami wprowadzonymi, następne zachowanie połączone zostanie wywołane tylko, JEŚLI suma dodawania będzie równa wartości przechowywanej w pudełku monet.

Teraz, co musisz zrobić, to wyłączyć zachowanie kolizji i zmienić grafikę, aby nie móc już dostać żadnych monet. Aby to zrobić, dodaj nowe zachowanie Wyłącz zachowanie z kategorii Dostosowane i połącz je z IF. Jak wcześniej, wybierz zachowanie Kolizji jako to, które chcesz wyłączyć.

Aby pokazać graczowi, że nie ma już monet, możesz dodać zachowanie Zmiana grafiki z kategorii Przekształcenie i połączyć je z IF.

Kiedy jest już podłączone, wybierz nową grafikę z właściwości zachowania Zmiana grafiki. Dotknij drugiego pola w właściwościach zachowania i wybierz nową grafikę.

Teraz, jeśli naciśniesz play, możesz skoczyć w górę i uderzyć w cegłę 3 razy zanim się zatrzyma.

Zdobywanie punktów

Ustawianie interfejsu użytkownika

Ostatnia rzecz, która pozostała, to faktycznie zdobyć punkty i zbierać monety, gdy uderzając w cegłę!

Pierwszą rzeczą, którą zrobimy, jest dodanie licznika w rogu ekranu, aby powiedzieć graczowi, ile punktów ma.

Więc wróć do głównego edytora, naciskając wstecz, a następnie musisz przywołać pasek Warstwy naciskając 3 kropki po prawej stronie ekranu (możesz także przesunąć od krawędzi ekranu).

Wybierz Warstwę globalną UI. Warstwy interfejsu użytkownika istnieją na szczycie innych warstw w scenie i zazwyczaj są używane do przycisków, joysticków i etykiet. Są one również stałe w tym samym miejscu na ekranie i wydają się poruszać z resztą zawartości w scenie.

Uwaga: Obiekty umieszczone na globalnej warstwie UI będą istnieć w każdej scenie w twoim projekcie. Jeśli chcesz, aby coś istniało tylko w jednej scenie, użyj warstwy UI Sceny.

Gdy warstwa globalna UI jest wybrana, naciśnij ikonę zestawu "Obiekty specjalne" w dokach lub przeciągnij je do sceny.

W wyskakującym oknie wybierz Etykietę, a etykieta zostanie umieszczona w twojej scenie.

Dotknij nowo dodanej etykiety, aby otworzyć właściwości obiektu. Z właściwości etykiety możesz zmienić kolor tekstu, czcionkę, tekst do wyświetlenia i inne.

Dotknij dużego pola tekstowego i zmień tekst na "Punkty:".

Następnie dotknij "Wyrównanie", aby rozwinąć właściwości wyrównania. Ustaw Szerokość na 110 i Wysokość na 64.

Uwaga: Ustawienie tych wartości na 0 usuwa obszar tekstu i pozwala na nieskończoną ekspansję tekstu w poziomie.

Gdy właściwości etykiety są już ustawione, możesz użyć narzędzia Przesuń/Przekształcenie, aby umieścić nową etykietę w rogu ekranu i upewnić się, że nie zasłania widoku gracza.

Gdy twoja etykieta jest już ustawiona, dodaj kolejną etykietę do sceny, będziemy jej używać do wyświetlania twoich punktów. Tym razem ustaw tekst na 0, ponieważ twoja postać zaczyna z zerowymi punktami. W przeciwieństwie do wcześniej, ustawimy określoną szerokość i wysokość. Ustaw szerokość na 500pt, a wysokość na 64pt. Dzięki temu otrzymujemy określony obszar, gdzie tekst może się pojawić. Jeśli masz za dużo tekstu, aby zmieścić się w tym obszarze, zostanie on odcięty.

Ustaw również wyrównanie w poziomie na wyrównane do lewej (Flush Left).

Kiedy skończysz z właściwościami etykiety, umieść ją obok tytułu "Punkty".

Zdobywanie punktów

Teraz musimy zwiększyć punkty za każdym razem, gdy zdobędziesz monetę. Wróć do warstwy głównej i przejdź do zachowań dla cegły z monetami, aby dodać niezbędne zachowania.

Z kategorii UI, przeciągnij zachowanie Dodaj do wyniku i połącz je z drugim Przesuń o, które dodaliśmy wcześniej w tym przewodniku.

Następnie dotknij zachowania Dodaj do wyniku, a następnie włącz przełącznik Nieskończony wynik. Jeśli ten przełącznik jest wyłączony, następne zachowanie zostanie wyzwolone, gdy określony wynik zostanie osiągnięty. Upewnij się również, że "0" dzieli się na odpowiedni obiekt, ponieważ zachowanie "Dodaj do wyniku" automatycznie wybierze losową etykietę w twojej scenie.

Jeśli naciśniesz teraz play, zdobędziesz 1 punkt za każdym razem, gdy gracz uderzy w cegłę.

Teraz możesz sklonować tę cegłę (jak nauczyłeś się w część 3) i umieścić ją w całym swoim poziomie.

Indywidualne monety

Twoja pierwsza moneta

Czasami możesz chcieć po prostu dodać monety do swojego poziomu, nie ukrywając ich wewnątrz cegieł. To jest stosunkowo proste, a teraz to przeanalizujemy.

Zacznij od dodania grafiki monety do swojej sceny, a następnie dotknij jej, aby wyświetlić właściwości obiektu.

Od dołu właściwości obiektu upewnij się, że jest wybrana zakładka fizyka.

Podczas przebywania w zakładce fizyka, spraw, aby moneta była przechodnia. Dzięki temu nasz gracz może nadal przez nią przechodzić, nie zatrzymując się ani nie spowalniając.

Następnie dostosujemy granice kolizji monety. Granice kolizji definiują fizyczny kształt obiektu. Granice kolizji mogą być innej wielkości lub kształtu niż wizualny wygląd obiektu. Aby dostosować granice kolizji, dotknij ikony kolizji.

Z Edytor kolizji możesz użyć palety narzędzi po lewej, aby modyfikować i tworzyć unikalne kształty kolizji.

W tym przewodniku wybierzemy opcję "Koło", aby stworzyć okrągłą granicę kolizji.

Następnie przeciągnij zieloną kropkę na kole, aby zmienić rozmiar granicy kolizji. Ustaw granicę kolizji na tę samą wielkość co moneta. Uwaga, jeśli granica kolizji jest większa niż twój obiekt, to twój gracz może wchodzić w interakcję z nią jeszcze przed fizycznym dotknięciem grafiki monety w środku.

Gdy skończysz tworzenie granicy kolizji, naciśnij ikonę znaku wyboru w palecie narzędzi, aby zaakceptować i zapisać nowy kształt.

Gdy ponownie dotkniesz monety, aby wyświetlić Właściwości obiektu. Tym razem otwórz edytor zachowań dla monety.

Z kategorii Obiekt dodaj zachowanie "Kolizji" na ekran. Jak wcześniej, otwórz właściwości zachowania kolizji i wybierz gracza z zielonym spacemanem jako Obiekt B.

Następnie z kategorii UI przeciągnij zachowanie Dodaj do Wyniku, a następnie połącz je z kolizją. Ponownie z właściwości zachowania włącz przełącznik dla Nieskończony wynik i upewnij się, że wybrana jest odpowiednia etykieta wyniku.

Na koniec z kategorii Obiekt dodaj Zniszcz obiekt i połącz to z zachowaniem kolizji. To całkowicie usunie monetę, gdy gracz w nią wbiegnie.

Jeśli naciśniesz play, możesz teraz wbiec w monetę, a ona zniknie.

To wszystko! Teraz twoja gra platformowa ma kolekcjonowalne monety. W tej chwili wystarczy sklonować swoje monety i umieścić je w całym poziomie. Staraj się być kreatywny, umieszczając swoje monety!

Możesz pobrać ukończoną wersję Części 5 z Węzła i zobaczyć, jak to wszystko działa.

W Części 6 zaczniemy dodawać nieco trudności do gry, wprowadzając wrogów.