Spis treści
Mamy już pierwszą mapę, teraz pora by coś na niej zaczęło się dziać. Poznajmy więc zdarzenia (z ang. events). To właśnie dzięki nim będziesz w stanie sprawić żeby w grze coś się działo się. Aby móc takie postawić przełącz się na tryb edycji zdarzeń (duży czerwony przycisk EVENTS na górze, obok zielonego MAP). Zauważysz że kwadracik do rysowania zamienił się z czerwonego na biały. Teraz wystarczy kliknąć na dowolne pole mapy, żeby ukazało nam się okienko tworzenia zdarzenia.
Okno zdarzenia
Krótko wyjaśnię za co odpowiadają poszczególne opcje:
– pasek – Event ID: – numer zdarzenia. W RPG Makerze 95 każde zdarzenie to osobny plik, tutaj więc widzisz który dokładnie edytujesz. Dzięki temu możesz znaleźć w plikach gry konkretne zdarzenie, co jest czasem przydatne do edycji takowego poza edytorem, ale tak zaawansowanych operacji nie będę omawiał w tym kursie. Jeśli znasz nowsze RM-y, pewnie kojarzysz, że w nich ID zdarzenia jest też przydatne, żeby odnosić się do konkretnego zdarzenia z poziomu innego zdarzenia. RPG Maker 95 nie posiada żadnych takich funkcji, więc podczas normalnego tworzenia ID raczej ci się nie przyda.
– przycisk Select Picture – pozwala wybrać grafikę zdarzenia, Warto tu zauważyć że domyślnie zdarzenie przyjmuje grafikę zaznaczoną w palecie do rysowania map, co przyśpiesza stawianie zdarzeń które mają korzystać z grafik tilesetu. Po wciśnięciu tego przycisku ukazuje nam się takie okienko:
Aby zmienić grafikę zdarzenia trzeba kliknąć na jakąkolwiek inną grafikę w tym zestawie. Strzałki na dole w lewo i prawo, przełączają nas po kolei przez grafiki tilesetu, a w górę i w dół obracają wyświetlone postacie w inne strony. Poklikajcie chwilę, a na pewno załapiecie jak to działa. Jak można zauważyć, grafik postaci jest 64 i to jest limit, z którym musimy pracować.
– rozwijalna opcja Type – tej opcji na próżno szukać w nowszych RM-ach. Jest ona związana z tym jak działa blokowanie tilesetów i pojazdy w RM95. Jak ją rozwiniecie, będziecie mieli do wyboru kolejno: NP (zwykła postać), Wagn (wóz), Sled (sanie), Boat (łódka), Sh (statek), Baln (balon), Airshp (statek powietrzny). Każda z tych opcji wpływa na zachowanie zdarzenia, a w szczególności na teren, po którym może się poruszać. Np. przy domyślnych ustawieniach wybranie typu statek, lub łódź, pozwoli zdarzeniu poruszać się po różnych rodzajach wody, ale inne tereny będą go blokowały. Póki co zostańmy przy typie NP, do tej opcji wrócimy przy lekcji dotyczącej blokowania i pojazdów. Przy okazji, pewnie zauważyliście, że angielskie nazwy które znajdują się w niej są dość dziwne i napisane jakby skrótami. Jest to spowodowane tym, że RM95 to na prawdę stary program i wszystkie teksty w nim są zakodowane na sztywno – co przy tłumaczeniu go z japońskiego nie pozwoliło wszędzie zmieścić się z angielskimi odpowiednikami w wyznaczonym miejscu. Wiele miejsc w RM95 cierpi na ten problem (również podczas samej gry), więc trzeba się niestety do tego przyzwyczaić.
– rozwijalna opcja Displayed – tu wybieramy warstwę, na której ma znajdować się nasze zdarzenie. Do wyboru mamy: Below Hero (pod bohaterem), Same Level as Hero (tak jak bohater) i Above Hero (nad bohaterem). Bohater to określenie postaci którą się poruszamy w trakcie gry. Opcje te działają na zasadzie warstw . Zdarzenia nie mogą nachodzić na siebie jeśli są ustawione na tej samej warstwie (np dwa zdarzenia na Below Hero), ale mogą to robić gdy mają ustawione różne warstwy. Przedstawię to na przykładzie:
Fragment mapy, przejście blokuje nam skarpa, więc postawiłem na niej drabinę (zdarzenie w centrum obrazka) na warstwie pod bohaterem. Teraz bohater (reprezentowany tu przez zdarzenie na dole obrazka) może przejść. Nad przejściem jednak krąży smok (zdarzenie po prawej stronie obrazka), nie blokuje on jednak naszej postaci, ponieważ lata nad nią. W ekstremalnym przypadku może dojść do takiej sytuacji
Jak widać, wszystkie zdarzenia znalazły się w tym samym czasie na jednej kratce. Dzięki temu, że są na różnych warstwach nie blokują siebie nawzajem i wyświetlają się w kolejności, jakiej byśmy oczekiwali, czyli: 1. mapa, 2. zdarzenie dolne (drabina), 3. zdarzenie środkowe (nasza postać) i 4. zdarzenie górne (smok).
Powyższy przykład pokazuje też standardowe użycie zdarzeń na różnych warstwach:
Below Hero używamy najczęściej gdy chcemy uzupełnić mapę którą narysowaliśmy o elementy posiadające niebieskie tło (np. postawienie grafiki talerza na stole), lub chcemy zmienić w trakcie gry jakiś element na mapie (np. drabina na powyższym przykładzie nie musiała być tam postawiona od zawsze, częścią gry mogło być jej zdobycie i samemu postawienie jej przez gracza). Używamy też ich jeśli chcemy, by coś się stało jak gracz nadepnie na określone pole mapy np. przejście na inną mapę (choć tutaj możemy też użyć zdarzeń na Above Hero).
Same Level as Hero jest używane do stawiania tak zwanych NPCów (non-playable character), czyli innych postaci w świecie naszej gry. Stosujemy je również do stawiania innych obiektów jeśli chcemy aby gracz mógł wchodzić z nimi w interakcję, ale które również mają blokować gracza – takie jak skrzynie ze skarbami itp.
Above Hero służy głównie do stawiania elementów mapy, które mają przysłonić naszą postać (np. korony drzew). Można też na tej warstwie stawiać obiekty które w świecie gry mają znajdować się w powietrzu – jak smok z przykładu wyżej.
– rozwijalna opcja Movement – mamy tu do wyboru rodzaje poruszania się zdarzenia: Don’t Move (brak ruchu), Follow Hero (goń postać gracza), Evade Hero (uciekaj przed graczem) i Random (ruch losowy). Przyzwyczajeni do nowszych wersji Makera pewnie zauważyli, że brak tu opcji ręcznego ustawiania ruchu – spokojnie, jest, tylko w innym miejscu. Omówię ją jeszcze w tej samej lekcji, nieco niżej.
– rozwijalna opcja Condition – sposób aktywacji zdarzenia: On Talk/Search (wymaga podejścia i wciśnięcia przycisku akcji – enter/spacja), On Contact (uruchamia się gdy zdarzenie i bohater się dotkną) i AutoRun (startuje automatycznie gdy zdarzenie będzie widoczne na ekranie). Jednak każde zdarzenie bez względu na wybraną tu opcję zawsze można uruchomić wciśnięciem przycisku, o czym trzeba pamiętać szczególnie przy zdarzeniach AutoRun – jeśli nie chcesz by gracz mógł je uruchomić później sam, postaw je w miejscu gdzie nie będzie miał dojścia. Drugą ważną uwagą jest fakt, że opcja On Contact działa różnie w zależności od warstwy zdarzenia (opcja Displayed). Gdy zdarzenie jest na warstwie Same Level as Hero nie ma znaczenie czy to gracz wejdzie w zdarzenie, czy zdarzenie wejdzie w gracza, jednak na innych warstwach zdarzenie uruchomi się tylko wtedy, kiedy gracz wejdzie na zdarzenie, odwrotnie nic się nie stanie. Więc jeśli chcemy stworzyć obiekt, który ma gonić gracza i wywoływać jakiś efekt po złapaniu, to musimy takie zdarzenie zawsze ustawić na tej samej warstwie co bohater. Jest jeszcze parę spraw związanych z wywoływaniem zdarzeń, jednak póki co poprzestańmy na tym.
– nieaktywne opcje Item, Member, Gold i Switch omówię w następnej lekcji.
– przyciski OK i Cancel powinny być raczej jasne. Oba powodują zamknięcie okna, przy czym OK zapisuje zmiany, a Cancel nie. Funkcję przycisku Cancel przejmuje też krzyżyk w prawym górnym rogu.
– pole z napisem [End] – to jest serce zdarzenia, tutaj ustawiamy, co ma się dziać po jego aktywacji. Klikając prawym przyciskiem myszy na napis [End] rozwinie nam się taki wybór:
Później opiszę co robi każda z tych opcji, choć jeśli znacie angielski to już pewnie wiecie. Póki co aktywna jest tylko jedna z nich, wybierzmy więc nią. Ukaże nam się takie okienko:
Na tym etapie nie będę omawiał wszystkich komend (bo tak nazywamy opcje w tym okienku), będziemy to robić stopniowo wraz z kolejnymi lekcjami tego kursu. Póki co wystarczy nam wiedzieć, że kliknięciem myszy na którąkolwiek nazwę komendy otwiera dodatkowe okno z ustawieniami odnośnie niej, albo jeśli nie jest to wymagane od razu zamyka to okno i dodaje wybraną przez nas komendę do listy w okienku z napisem [End]. W tym momencie wybierzmy pierwszą opcję Message (Wiadomość) i wpiszmy w niej np: „Wiadomość 1”:
Resztę opcji zostawmy tak jak jest (wyjaśnię je później) i zatwierdźmy klikając OK. Nasze okno zdarzenia będzie wyglądać teraz tak:
Jak widać napis [End] przesunął się niżej, a na samej górze zamiast niego jest nasza komenda Msg:Wiadomość 1. Zauważmy więc od razu, że użycie opcji Insert na napisie [End] dodało nową komendę nad nim. Jeśli znów zrobimy to samo, to nowa komenda pojawi się również nad nim, ale teraz już pod naszą wiadomością. Co znaczy, że jeśli będziemy chcieli coś dodać nad naszą wiadomością musimy użyć opcji Insert na niej. Alternatywnie o wiele szybciej jest po prostu kliknąć dwa razy na wybraną komendę lewym przyciskiem myszy, co daje ten sam efekt co użycie opcji Insert z menu. Podczas gry zdarzenie będzie realizować poszczególne komendy w kolejności od góry do dołu, tak że zawsze skończą na komendzie [End] która oznacza koniec zdarzenia.
Zostały nam do omówienia inne opcje z menu. Jeśli klikniemy na naszą nowo dodaną komendę prawym przyciskiem myszy, będą one aktywne. Properties pozwala nam edytować wskazaną komendę w naszym zdarzeniu – w naszym przykładzie możemy np. zmienić samą treść wiadomości. Delete usuwa komendę, choć wróć, nie do końca. Tak na prawdę ta opcja działa jak opcja Wytnij w innych programach, więc jeśli coś przypadkowo usuniemy nadal będziemy mogli to wkleić opcją Paste, na tej samej zasadzie co opcja Insert czyli o pozycję wyżej niż wskazana aktualnie komenda. Copy pozwala skopiować komendę, a Paste, jak już wspomniałem, wkleić. Obok trzech najniższych opcji widnieją też alternatywne skróty klawiszowe: Del (przycisk Delete), Cntl+Ins (jednoczesne wciśnięcie przycisków Control (Ctrl) i Insert) i Shit+Ins (jednoczesne wciśnięcie przycisków Shit i Insert). Jeśli zaznaczycie jakąkolwiek komendę i użyjecie któregoś z tych skrótów to będzie to jednoznaczne z użyciem przypisanej do nich opcji z tego menu.
Muszę jednak z przykrością napisać że opcje kopiowania i wklejania są upośledzone. Zupełnie nieintuicyjne skróty klawiszowe to najmniejszy ich problem. Nie da się bowiem zaznaczyć na raz więcej niż jednej komendy, jak również przenosić w ten sposób komend między zdarzeniami. Po zamknięciu zdarzenie (nie ważne czy przy pomocy OK, czy Cancel) komenda przechowywana w pamięci zostaje wymazana. Przydatne to jest więc tylko przy zmianie kolejności komend w jednym zdarzeniu, jak również przy przenoszeniu ich na kolejne strony – o czym niżej.
– przyciski << i >> – służą do przełączania się między stronami zdarzenia. O stronach będzie kolejna lekcja, teraz tylko zauważcie, że jest ich 4 i na każdej oprócz pierwszej aktywne są opcję po lewej stronie których póki co nie omówiłem. Sam numer strony odczytacie przez zmianę numerka przy napisie Picture w lewym górnym rogu okienka. W tym momencie dodajmy na każdą stronę po jednej komendzie wiadomości podobnie jak to zrobiliśmy wyżej, ale zamiast 1 wpiszmy numer aktualnej strony. Przyda nam się to do omówienia kolejnej opcji.
– przycisk Swap Pages – pozwala na zmianę stron. Jak wspominałem wyżej, nie można zaznaczać więcej jak jednej komendy na raz, więc gdyby okazało się, że przez przypadek (albo z innego powodu) mamy całą masę komend ustawionych na złej stronie to ten przycisk pozwala nam szybko wszystkie je przenosić między stronami zdarzenia. Wciskając go zamieniamy miejscami aktualną stronę ze stroną następną – co możecie przetestować teraz z naszymi wiadomościami. W przypadku ostatniej strony jest ona zamieniana z pierwszą. Ważna uwaga – opcja ta przenosi tylko komendy i nic więcej. Warunki startu zdarzenia i inne opcje musimy już zmieniać sami.
– rozwijalna opcja Display – określa widoczność zdarzenia: Norm (Normalne – zdarzenie istnieje na mapie i jest całkowicie widoczne), Trns (Transparent – zdarzenie istnieje na mapie, jednak nie jest wyświetlana jego grafika) i Remv (Remove – zdarzenie zostaje usunięte, nie istnieje na mapie). Zazwyczaj używa się opcji Norm, Trns jest przydatna do zdarzeń systemowych których nie chcemy aby były jakkolwiek widoczne dla gracza (likwiduje to mus posiadania pustego kafla/postaci dla tego typu zdarzeń), a Remv jest przydatne dla czyszczenia nieużywanych zdarzeń z mapy żeby nie niepotrzebnie kolidowały z innymi zdarzeniami.
– rozwijalna opcja Animation – rodzaj animacji zdarzenia: Norm (Normalne – zdarzenie będzie obracało się w kierunku, w którym się porusza, będzie również odwracało się do gracza przy interakcji, jak również będzie się cały czas animowało (dwie klatki animacji)), RgtTrn (Right Turn, obrót w prawo – zdarzenie będzie miało animację kręcenia się w prawo niezależnie od kierunku poruszania, jednak będzie się wciąż obracało do gracza podczas interakcji. Podczas samego obrotu używana zawsze będzie pierwsza klatka animacji), LftTrn (Left Turn, obrót w lewo – to samo co wcześniejsze opcja, obrót zdarzenia w odwrotnym kierunku), Random (obrót losowy, działa tak jak dwie poprzednie opcje, z tym że sam obrót zdarzenia jest kompletnie losowy), SameDir (zdarzenie będzie ciągle zwrócone w jedną stronę, niezależnie od poruszania się czy interakcji z graczem, będzie się też normalnie animować (dwie klatki animacji)), None (zdarzenie będzie się zachowywało jak przy opcji Norm, jednak nie będzie się animować, wyświetlana będzie ciągle tylko pierwsza klatka animacji) i Stop (połączenie opcji SameDir i None, zdarzenie nie będzie animowane, ani nie będzie się obracać, wyświetlana zawsze będzie pierwsza klatka animacji). Opcja Animation może być wybrana tylko gdy jako grafikę zdarzenia ustawimy grafikę z pliku Chara (postaci), gdy ustawimy grafikę tilesetu opcje te będą niedostępne.
– okienko Speed – prędkość zdarzenia. Przyjmuje wartości od 1 (najszybsza) do 50 (najwolniejsza). Domyślna prędkość to 2, więc jak widać można ustawić tylko o 1 szybciej. Jako też iż zdarzenia w RM95 poruszają się skokowo co 8 pikseli wolniejsze opcje nie wyglądają płynnie więc są raczej mało użyteczne. Muszę też wspomnieć, że zmieniając wartość strzałkami nie można wyjść po za 20, jednak można po prostu wpisać inne wartości aż do 50.
– przycisk Setup Movement – opcja ręcznego ustawiania poruszania się zdarzenia. Jest to opcja która normalnie powinna zamknąć nam RM-a z błędem na systemach innych niż Win9x, ale na szczęście Stifowi (jednemu z tłumaczy RM95) udało się ją naprawić, z pewnym efektem ubocznym o którym wspomnę. Oficjalnie opcja ta została naprawiona też w najnowszej wersji Value!, ale jako iż sam program jest bardziej wadliwy, to nie będziemy z tego korzystać. Jeśliby czytał ten tekst ktoś korzystający z japońskiej oryginalnej wersji 1.23, to daję tutaj plik .ips z poprawką Stifa, w sumie to zmiana jednego bajta: RPG95_1.23_Setup_Movement_Repair. Wróćmy do opisania tej opcji, więc po kliknięciu w nią ukaże wam się takie okno:
Zasada dodawania kolejnych opcji jest taka sama, jak przy komendach, czyli klikając na opcje zostanie ona dodana wyżej niż aktualnie zaznaczona. Nie będę tutaj dokładnie opisywał każdej z opcji, pokrótce wspomnę tylko o najważniejszych: Move Up, Rght, Down i Left – krok w górę, prawo, dół i lewo; Turn Up, Rght, Down i Left – obrót w górę, prawo, dół i lewo; Forward – krok do przodu; Stop sec – pauza o długości równej długości wykonywania 1 kroku; opcje A i V zmieniają typy animacji i widoczności na takie które opisałem już wyżej przy okazji opcji Animation i Display; a opcja Loop dodana na końcu powoduje zapętlanie się ruchu (domyślnie po wykonaniu się wszystkich poleceń, zdarzenie zaczyna się poruszać według opcji ustawionej w Movement).
Opcja <Freeze Game> jest wspomnianym wyżej efektem ubocznym metody naprawienia tego okienka, normalnie w ogóle nie powinno jej tu być. Użycie jej powoduje po prostu zawieszenie gry, na szczęście nie wpływa ona na działanie edytora, więc gdy przypadkowo się ją kliknie można ją spokojnie usunąć.
W przeciwieństwie do komend zdarzenia, komendy ruchu możemy zaznaczać więcej niż jedną na raz (po prostu klikając i przeciągając kursorem po nich), jak również wybiórczo przytrzymując przy zaznaczaniu klawisz Ctrl. Używając przycisków na dole można je więc na raz usuwać (Delete), lub obracać o 90 stopni (Rotate 90°). Obrót o 90 stopni działa tylko z komendami kierunkowymi, czyli pierwszymi 8, o ruchu i obrocie we wszystkich kierunkach.
O komendach ruchu i wszystkim z tym związanych rzeczach powstanie kiedyś osobny tekst, bo jest tu parę rzeczy wartych głębszego omówienia.
Tworzymy pierwsze zdarzenie
Uff, trochę tego było. To jeszcze co prawda nie wszystko, ale póki co nam wystarczy. Przejdźmy do naszego projektu i postawmy pierwsze zdarzenie dzięki któremu sprawimy, by gracz mógł wyjść z domku na podwórko. W tym celu w edycji mapy zamieńmy kafel nad drzwiami na kafel podłogi:
Teraz przełączmy się na warstwę zdarzeń, znajdźmy i wybierzmy kafel, który oryginalnie mieliśmy w tym miejscu, po czym postawmy zdarzenie zmieniając tylko opcje Displayed na Above Hero:
Jeśli wszystko zrobiliście dobrze, to po zamknięciu przez OK okna zdarzenia i ponownym uruchomieniu powinniście otrzymać efekt jak na obrazku wyżej. Możecie teraz zapisać i przetestować grę, bohater będzie przechodził pod dodanym przez nas zdarzeniem, dzięki czemu będzie mógł wyjść z domku.
Dodajmy pierwszego NPCa
Nasz bohater jest póki co samotny, dodajmy mu towarzysza w postaci psa. W tym celu postawmy gdziekolwiek na podwórku nowe zdarzenie i w nim wybierzmy grafikę psa. Opcja Displayed samoczynnie ustawi się na Same Level as Hero i tak ją zostawmy, zmieńmy tylko opcję Movement na Random i prędkość (Speed) na np. 5. Całość powinna wyglądać tak:
Dobrze by było, gdybyśmy mogli wejść w interakcję z tym zdarzeniem, dlatego dodamy też do niego wiadomość. Wybierzmy więc komendę wiadomości i wpiszmy w niej coś w stylu – Pies: „Hau, hau.”
Jak widać zaznaczyłem też opcję Display At Bottom, powoduje ono, że okno z naszą wiadomością wyświetli się u dołu ekranu, zamiast domyślnie u góry. Oto porównanie:
Jest to kwestia gustu i decyzji projektowej, ale większość gier wyświetla wiadomości u dołu ekranu, więc i ja będę w tym kursie tak robił.
Druga opcja, czyli Wait For Action sprawia, że okno będzie wyświetlane do momentu aż gracz wciśnie przycisk akcji (spację lub enter), jeśli odznaczymy tą opcję, to gracz nadal będzie mógł sam zamknąć okno z wiadomością, ale zamknie się ono też automatycznie po upływie czasu który można ustawić w Other Settings => Game Properties.
Po za tymi dwoma opcjami, w samym tekście wiadomości możemy użyć specjalnych znaków, które zamienią się na określone rzeczy podczas gry, a są to:
$0 – wyświetla imię pierwszej postaci w drużynie (lidera grupy); przydaje się gdy chcemy by NPC zawsze zwracali się do postaci z którą na prawdę rozmawiają.
$1~8 – wyświetla imię odpowiedniego bohatera – numer odpowiada numerowi z bazy danych; mało przydatne jako iż imion bohaterów nie można zmieniać w trakcie gry (RM95 nie ma opcji wprowadzania imion przez gracza), więc jedyna użyteczność jest taka gdy nie jesteśmy jako twórcy pewni ostatecznych imion postaci i chcielibyśmy je móc szybko zmieniać w trakcie tworzenia bez edytowania wszystkich wiadomości.
$G – wyświetla ilość złota; przydatność dość duża, tym bardziej, że robiąc zaawansowane rzeczy, zamiast złota można przyjąć że wyświetla po prostu zapisaną w nim wartość numeryczną.
$U – wyświetla nazwę waluty; znów mało przydatne, jako iż i tej nazwy nie można zmienić w trakcie gry, podobnie jak imion bohaterów. Jednak dobrze, że jest to osobny skrót nie powiązany sztywno z poprzednim, co sprawia że poprzedni jest bardziej użyteczny niż mógłby być.
$R – działa jak enter, tekst pisany po tym jest wyświetlany w następnej linijce; mało przydatne, nie polecam tego używać, bo może powodować błędy w niektórych okienkach.
$W00~99 – określa ile czasu ma upłynąć zanim wiadomość sama się zamknie (00 – czekaj na wciśnięcie klawisza przez gracza); opcja ta dubluje opcję Wait For Action i ustawienie jej w tekście wiadomości ją nadpisuje. Przydatne z powodu możliwości ustawienia indywidualnie czasu wyświetlania dla każdej wiadomości. Wpisanie kilka razy tego skrótu w jednej wiadomości spowoduje użycia ostatniego.
$$ – wyświetla znak $.
Dodajmy więc drugą wiadomość o treści: $0: „Pewnie jesteś głodny… Muszę dać ci coś do jedzenia!” co w grze wyświetli nam się tak:
Jak widać, skrót zamienił się na imię naszej postaci. Póki co ma na imię Fess, ale zmienimy to na jednej z następnych lekcji. Na razie zostawmy całe to zdarzenie tak jak jest, pieska nakarmimy następnym razem, wrzucę jeszcze jak teraz wygląda nasze zdarzenie i przejdźmy do następnej rzeczy:
Dodatek: opcję Condition możemy zostawić tak jak jest lub zmienić na On Contact jeśli chcemy, by wiadomości aktywowały się bez potrzeby klikania przycisku akcji, a od razu jak pies tylko nas dotknie, lub my jego. Ja jednak zostawię ją na On Talk/Search.
Ruch między mapami
Dobrze, tu musimy na chwilę się zatrzymać, bo przecież nie mamy drugiej mapy (mamy World Map, ale że jest zupełnie pusta, to póki co zostawmy ją w spokoju). W naszym domku mamy schody w dół, dodajmy więc piwnicę. Polecam utworzyć ją jako Child Map od mapy Domek Bohatera i nazwać Piwnica Bohatera. Rozmiar zostawmy minimalny i na szybko narysujmy naszą mapę. Ja zrobiłem coś takiego:
Jak widać, tak jak w poprzedniej lekcji unikałem elementów z niebieskim tłem, tak tu użyłem tylko ich. Prawie wszystkie powstały poprzez wybranie elementu z palety tilesetu i utworzeniu z nimi zdarzenia, po czym zatwierdzeniu go poprzez kliknięcie OK. Sprawia to, że wszystkie te zdarzenia mają domyślne ustawienia, dokładnie takie jak na pierwszym obrazku w tym kursie, a różnią się tylko grafikami. Wyjątkiem są dwa zdarzenia poniżej schodów, tam zmieniłem opcję Displayed na Above Hero, aby dać wrażenie szafy stojącej przy dolnej ścianie. Zauważcie również, że schody mają niebieskie tło, więc i one powinny być postawione jako zdarzenie, zostawiłem je jednak celowo na warstwie mapy, co zaraz się wyjaśni.
Wróćmy więc do mapy Domek Bohatera wybierzmy warstwę zdarzeń i kliknijmy na miejsce na mapie ze schodami prawym przyciskiem myszy – rozwinie nam się wtedy takie menu, którego wcześniej nie omówiłem:
New Event i Edit Event odpowiadają kliknięciu lewym przyciskiem myszy na mapę, czyli otwierają okno edycji zdarzenia.
Cut, Copy i Paste odpowiadają za wycinanie (co jest równoważne z usuwaniem), kopiowanie i wklejanie zdarzeń. Póki co na tym poprzestańmy, bo jest jeszcze inna metoda na te operacje, która daje jednak inne wyniki, opiszę to na pewno w osobnym artykule.
2-Way Teleport to, jak sama nazwa wskazuje, szybkie tworzenie teleportów i tym właśnie teraz się zajmiemy.
Cancel po prostu zamyka to menu.
Wybierzmy więc 2-Way Teleport i kierujmy się dalej według instrukcji które daje nam program:
Wybierzmy więc mapę Piwnica Bohatera i kliknijmy na schody. Utworzą nam się dwa zdarzenia z literką „M”, jedno na mapie Domek Bohatera, a drugie na mapie Piwnica Bohatera. Zapiszcie i przetestujcie, powinniście być w stanie przechodzić między tymi dwiema mapami. Podczas testu można zauważyć trzy rzeczy. 1. Grafika „M” nie jest wyświetlana, 2. Bohater patrzy się w tą samą stronę przed i po teleporcie i 3. Zdarzenie przenosi nas dokładnie w miejsce drugiego zdarzenia, co sprawia, że jeśli chcemy wrócić musimy zejść i wejść z powrotem na schody (lub wcisnąć przycisk akcji). Ta ostatnia rzecz sprawia, że sam osobiście rzadko korzystam z tej funkcji i stawiam teleporty ręcznie. Ale odpalmy jedno z tych zdarzeń w edytorze i spójrzmy jak wyglądają:
Jak widać, nie ma tu za dużo rzeczy. Od domyślnego pustego zdarzenia główne różnice są takie, że to startuje na On Contact jak i również opcja Display jest ustawiona na Trns, co tłumaczy, dlaczego grafika tego zdarzenia nie jest wyświetlana. W komendach znajduje się tylko jedna – to jest teleport. Możemy tu spróbować naprawić 2 i 3 rzecz zauważoną podczas testów. Sprawmy więc, by bohater się odwracał w odpowiednia stronę. Komenda teleport taką opcję dostała dopiero przy RPG Makerze 2003, więc musimy poradzić sobie inaczej. Dodajmy więc nad teleportem komendę Ruszaj Graczem (Move HERO Char), a w niej komendę patrz w lewo (TurnLeft). Sprawi to że bohater przed teleportem obróci się w dobrą stronę, oczywiście jeśli edytowaliśmy zdarzenie teleportu na mapie Domek Bohatera, przy zdarzeniu w piwnicy ustawmy opcję patrz w dół (TurnDown). Trzecią rzecz możemy poprawić edytując samą komendę teleportu, poprzez kliknięcie na niej prawym przyciskiem i wybraniu Properties, pojawi nam się znów komunikat o kliknięciu w miejsce gdzie ma się przenieść gracz, więc kliknijmy na kratkę obok schodów. Tym razem jednak w miejscu kliknięcia nie pojawi się już nowe zdarzenie, one pojawiają się tylko przy używaniu opcji 2-Way Teleport, ale nie przy tworzeniu teleportów ręcznie lub ich edytowaniu w samym oknie zdarzenia. Wykonując te operację, ulepszyliśmy nasze teleporty.
Została jeszcze tylko jedna rzecz – schody w piwnicy. Teraz możemy zamienić grafikę zdarzenia teleportu na nie, zmienić opcję Display na Norm, a w samej mapie zamiast nich postawić po prostu podłogę, dzięki czemu pozbędziemy się niebieskiego tła. Ostatecznie nasze zdarzenie teleportu w piwnicy będzie wyglądać tak:
Podsumowanie
Dzisiaj poznaliśmy podstawy zdarzeń, jak i nauczyliśmy się je dodawać na mapach. Dzięki czemu możemy już uzupełniać nasze mapy o elementy z niebieskim tłem oraz tworzyć prostych NPCów, z którymi możemy wejść w interakcję. Poznaliśmy też komendy wiadomości, teleportu (dzięki której możemy przemieszczać się między mapami) i poruszania się postaci.
W następnej lekcji stworzymy pierwsze bardzo łatwe zadanie – damy jeść naszemu pieskowi, co w praktyce oznacza, że poznamy jak używać stron w zdarzeniach i warunków ich startu, których dzisiaj nie omówiłem.
Dragon Kamillo