[porada] Eskorta...
Moderatorzy: GameBoy, Dragon Kamillo
-
- Posty: 8
- Rejestracja: 21 maja 2006, 18:46
[porada] Eskorta...
Witam! Tutaj taka mała porada jak zrobić, aby wybrana postać za nami poszła. (Nie wiem czy jest to najlepszy sposób ale innego nie wymyśliłem)
Uwzględniłem przechodzenie miedzy lokacjami oraz rozkazy stój i chodź.
Napisze to kroczek po kroczku żeby wszyscy zrozumieli.
Po pierwsze potrzebujmy mieć jakieś lokacje (Przynajmniej 2 :P) razem z przejściami między nimi. Na pierwszej z nich tworzymy jakąś postać powiedzmy "TEST" I na pierwszej stronie dajemy prostą rozmowę np.:
TEST: "Siema!"
GRACZ: "Cześć"
TEST: "Pomożesz mi dostać się do domu?"
GRACZ: "Jasne\Nie"
Kiedy gracz wybierze opcję jasne ustawiamy zmienna FOLLOW na 1
(*)Tworzymy drugą stronę i jako warunek dajemy zmienna FOLLOW >= 1
I ustawiamy zwór poruszania na "Za bohaterem" prędkość, jak kto chce.
Następnie ustawiamy np. coś takiego:
TEST: "Tak?"
GRACZ "Czekaj\Chodź"
Dla opcji czekaj ustawiamy "Ruszaj zdarzeniem" w opcjach ruchu dajemy "Czekaj" na 999 i zaznaczamy "Powtarzaj akcję"
Dla opcji Chodź ustawiamy "Ruszaj zdarzeniem" w opcjach ruchy dajemy "Zmiana szybkości" taka sama jak domyślnie i "Zmiana częstotliwości" też taka sama jak domyślnie (tj. tak jak mamy na stronie głównej naszego zdarzenia)
To spowoduje, że wybrana postać będzie za nami chodzić i będziemy mogli wydawać jej proste polecenia....
A teraz jak zrobić żeby postać przeszła razem z nami do innej lokacji
Na drugiej mapce w jakimś miejscu (najlepiej koło przejścia) stawiamy drugą identyczną postać, ustawiamy jej to samo, co mamy powyżej w punkcie z gwiazdką. (*)
Dzięki temu posunięciu postać będzie razem z nami w innej lokacji.
Teraz trzeba zrobić żeby z nami wróciła - tutaj jest nieco trudniej.
Wracamy z powrotem do pierwszej mapki, i gdzieś w okolicach przejścia tworzymy nowe puste zdarzenie i nazywamy je SKOK (zaraz napisze, co dalej) i zostawmy to na razie w spokoju.
Następnie edytujemy nasze przejście i robimy coś takiego:
Ustawiamy zmienną TEST_SKOK na 1
Ustawiamy teleport
Sprawdzamy czy zmienna, FOLLOW >= 1 jeśli tak to ustawiamy zmienną FOLLOW na 2
Zamykamy przejście i idziemy do SKOK'u i jako jego warunek ustawiamy FOLLOW >= 2 a w "polecenie zdarzenia" tworzymy warunek, który sprawdzi czy zmienna TEST_SKOK == 1 jeśli tak to zmieniamy położenie TEST ze SKOK'iem i ustawiamy zmienną TEST_SKOK na 0
Dzięki temu postać wróci razem z nami do poprzedniej lokacji. Oczywiście to jest przykład tylko dla dwóch lokacji, ale resztę zostawiam wam :D
Chciałem też umieścić to na konkurencyjnej stronie "Twierdza RPG Maker" ale coś tam rejestracja szwankuje, więc tylko wy jesteście w posiadaniu tego dzieła :P
Jeśli ktoś potrafi to uprościć/usprawnić czekam na wszelkie komentarze :D
Uwzględniłem przechodzenie miedzy lokacjami oraz rozkazy stój i chodź.
Napisze to kroczek po kroczku żeby wszyscy zrozumieli.
Po pierwsze potrzebujmy mieć jakieś lokacje (Przynajmniej 2 :P) razem z przejściami między nimi. Na pierwszej z nich tworzymy jakąś postać powiedzmy "TEST" I na pierwszej stronie dajemy prostą rozmowę np.:
TEST: "Siema!"
GRACZ: "Cześć"
TEST: "Pomożesz mi dostać się do domu?"
GRACZ: "Jasne\Nie"
Kiedy gracz wybierze opcję jasne ustawiamy zmienna FOLLOW na 1
(*)Tworzymy drugą stronę i jako warunek dajemy zmienna FOLLOW >= 1
I ustawiamy zwór poruszania na "Za bohaterem" prędkość, jak kto chce.
Następnie ustawiamy np. coś takiego:
TEST: "Tak?"
GRACZ "Czekaj\Chodź"
Dla opcji czekaj ustawiamy "Ruszaj zdarzeniem" w opcjach ruchu dajemy "Czekaj" na 999 i zaznaczamy "Powtarzaj akcję"
Dla opcji Chodź ustawiamy "Ruszaj zdarzeniem" w opcjach ruchy dajemy "Zmiana szybkości" taka sama jak domyślnie i "Zmiana częstotliwości" też taka sama jak domyślnie (tj. tak jak mamy na stronie głównej naszego zdarzenia)
To spowoduje, że wybrana postać będzie za nami chodzić i będziemy mogli wydawać jej proste polecenia....
A teraz jak zrobić żeby postać przeszła razem z nami do innej lokacji
Na drugiej mapce w jakimś miejscu (najlepiej koło przejścia) stawiamy drugą identyczną postać, ustawiamy jej to samo, co mamy powyżej w punkcie z gwiazdką. (*)
Dzięki temu posunięciu postać będzie razem z nami w innej lokacji.
Teraz trzeba zrobić żeby z nami wróciła - tutaj jest nieco trudniej.
Wracamy z powrotem do pierwszej mapki, i gdzieś w okolicach przejścia tworzymy nowe puste zdarzenie i nazywamy je SKOK (zaraz napisze, co dalej) i zostawmy to na razie w spokoju.
Następnie edytujemy nasze przejście i robimy coś takiego:
Ustawiamy zmienną TEST_SKOK na 1
Ustawiamy teleport
Sprawdzamy czy zmienna, FOLLOW >= 1 jeśli tak to ustawiamy zmienną FOLLOW na 2
Zamykamy przejście i idziemy do SKOK'u i jako jego warunek ustawiamy FOLLOW >= 2 a w "polecenie zdarzenia" tworzymy warunek, który sprawdzi czy zmienna TEST_SKOK == 1 jeśli tak to zmieniamy położenie TEST ze SKOK'iem i ustawiamy zmienną TEST_SKOK na 0
Dzięki temu postać wróci razem z nami do poprzedniej lokacji. Oczywiście to jest przykład tylko dla dwóch lokacji, ale resztę zostawiam wam :D
Chciałem też umieścić to na konkurencyjnej stronie "Twierdza RPG Maker" ale coś tam rejestracja szwankuje, więc tylko wy jesteście w posiadaniu tego dzieła :P
Jeśli ktoś potrafi to uprościć/usprawnić czekam na wszelkie komentarze :D
- Mertruve
- Posty: 1518
- Rejestracja: 22 kwie 2006, 20:07
-
- Posty: 8
- Rejestracja: 21 maja 2006, 18:46
- Jazzwhisky
- Posty: 4332
- Rejestracja: 13 kwie 2006, 21:45
- Kontakt:
Szczerze mowiac mogloby byc jeszcze bardziej szczegolowo :P. Gdyby udało Ci się wcisnac to do common event (i dorzucac efekt np. przy kazdym teleporcie) tak zeby skrypt byl funkcjonalny dla wielu map i wszedzie, to byloby juz cos :].
Nasz discordowy czat, 24h/d - https://discord.gg/4GG85kr
-
- Posty: 8
- Rejestracja: 21 maja 2006, 18:46
Próbowałem zrobić cos takiego - bo znacznie by to uprościło sprawę- ale natknąłem się na pewien problem.
Moja koncepcja była taka.
Tworzmy sobie n teleportów i n pustych zdarzenia. Każdej parze przejści ustawiamy zmienna TEST_SKOK na jakąś wartość (Najlepiej kolejno 1,2,3,...,n) i każdemu pustemu zdażeniu odpowiedniu warunek czy zmienna TEST_SKOK == 1,2,3,...,n.
Tworzymy "Typowe Zdarzenie":
Wszystko działa tak długo aż numer kolesia którego eskortujemy jest taki sam na wszytkich mapach (czyli jest zawsze n-tym zdarzeniem) bo program niestety nie sprawdza nazwy zdarzenia tylko jego numer.
Domyślam się że nie jest to najbardziej optymalny sposob ale chyba nikt nie ma na pamię wiecej niż np. 10-20 przejść.
Narazie nie mam zbyt dużo czasu żeby nad tym głębiej pomyśleć, ale jeśli ktoś ma jakieś wskazówki to poprosze :)
Moja koncepcja była taka.
Tworzmy sobie n teleportów i n pustych zdarzenia. Każdej parze przejści ustawiamy zmienna TEST_SKOK na jakąś wartość (Najlepiej kolejno 1,2,3,...,n) i każdemu pustemu zdażeniu odpowiedniu warunek czy zmienna TEST_SKOK == 1,2,3,...,n.
Tworzymy "Typowe Zdarzenie":
Kod: Zaznacz cały
Warunek: Zmienna TEST_SKOK == 1
Zmiana położenia zdarzenia. To zdarzenie z ziomkiem któego eskortujemy.
Zmienna: TEST_SKOK = 0
Koniec:
Warunek: Zmienna TEST_SKOK == 2
Zmiana położenia zdarzenia. To zdarzenie z ziomkiem którego eskortujemy.
Zmienna: TEST_SKOK = 0
Koniec:
Warunek: Zmienna TEST_SKOK == 3
Zmiana położenia zdarzenia. To zdarzenie z ziomkiem którego eskortujemy.
Zmienna: TEST_SKOK = 0
Koniec:
[...]
Warunek: Zmienna TEST_SKOK == n
Zmiana położenia zdarzenia. To zdarzenie z ziomkiem którego eskortujemy.
Zmienna: TEST_SKOK = 0
Koniec:
Domyślam się że nie jest to najbardziej optymalny sposob ale chyba nikt nie ma na pamię wiecej niż np. 10-20 przejść.
Narazie nie mam zbyt dużo czasu żeby nad tym głębiej pomyśleć, ale jeśli ktoś ma jakieś wskazówki to poprosze :)
- Mertruve
- Posty: 1518
- Rejestracja: 22 kwie 2006, 20:07
- Jazzwhisky
- Posty: 4332
- Rejestracja: 13 kwie 2006, 21:45
- Kontakt:
Ludzix, mr. Upachi nie umiescil tego w dziale help, a ja na TA skryptu caterpillara (a juz na pewno nie Foxera) nie widzem. Chcesz - napisz, opisz, wrzucimy i jeszcze piesni pochwalne beda :]Ludzikus pisze: A najlepiej użyj jednego z WIELU gotowych skryptów Caterpillara, które aż się przelewają - polecam ten Foxera.
Nasz discordowy czat, 24h/d - https://discord.gg/4GG85kr