MeloPL Opublikowano 23 Lipca 2009 Udostępnij Opublikowano 23 Lipca 2009 Witam, robię grę platformową w której chciałbym zrobić przejście z obecnego rooma do następnego po tym, gdy hero dojdzie do granicy prawej strony, oraz poprzedniego, gdy dojdzie do lewej strony. Jedna plansza ma rozmiar 640x480. Jednak chciałbym zrobić to w ten sposób, jak zrealizowano to w grze "Zelda", czyli jak przejde z prawej strony na następną mapkę, to chcę się pojawić po lewej stronie następnej mapki, a jak przejdę z lewej strony na poprzednią mapkę, to chcę pojawić się po prawej stronie poprzedniej mapki. Jednak żeby nic się nie gryzło, to chcę, żeby np. hero po przejściu w prawą stronę do następnej planszy, odnowił się w lustrzanie odwrotnym miejscu, niż był w mapce poprzedniej. |--------|--------| |.........x.|.x.........| <- jak idzie z góry w lewej planszy, to wychodzi z góry w prawej planszy |.........x.|.x.........| <- jak idzie z dołu w lewej planszy, to wychodzi z dołu w prawej planszy |--------|--------| Mam z tym skryptem ciężki problem, bo umiem zrobić przejście do rooma, ale nie wiem zupełnie, co zrobić, by hero się odnawiał w lustrzanie odwrotnym miejscu. Proszę o pomoc z tym skryptem. :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Platyna Opublikowano 23 Lipca 2009 Udostępnij Opublikowano 23 Lipca 2009 Tworzysz sobie jakąś zmienną globalną global.strona. Jeśli wyjdziesz z rooma idąc w prawo to dajesz global.strona=1 Jeśli wyjdziesz z rooma idąc w lewo to dajesz global.strona=0 I potem w Room Start: GML if(global.strona=0) x=room_width; else x=0; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
MeloPL Opublikowano 23 Lipca 2009 Autor Udostępnij Opublikowano 23 Lipca 2009 Działa, ale nie do końca. Jak ustawię gdzieś hero, to pojawia się on zawsze przy prawej granicy mapy, przez co od razu przechodzi na następną. Jednak jak przejdzie na następną, to pojawia się w lewej granicy mapy, przez co od razu cofa się do pierwszej planszy, w prawej granicy. Jednak przez to, że się pojawił znowu z prawej strony, to idzie do następnej mapy, no i tak w kółko. Trzeba oddalić o jakieś 4 piksele pojawianie się postaci od granicy, ale nie wiem, jak to zrobić. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Platyna Opublikowano 23 Lipca 2009 Udostępnij Opublikowano 23 Lipca 2009 GML if(global.strona=0) x=room_width-5; else x=0+5; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Makary155 Opublikowano 23 Lipca 2009 Udostępnij Opublikowano 23 Lipca 2009 Tak jak Platynowy napisał, tylko że x=room_width-4 i x=4 młech, wyprzedził mnie cham ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Platyna Opublikowano 23 Lipca 2009 Udostępnij Opublikowano 23 Lipca 2009 Co za różnica czy 4 czy 5? Strzeliłem 5 tak na wszelki wypadek, żeby zaraz znowu tu nie leciał, że 4 piksele nie wystarczyło i nie wie jak dać więcej. :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Makary155 Opublikowano 23 Lipca 2009 Udostępnij Opublikowano 23 Lipca 2009 Chciał 4 piksele, to ma 4 piksele Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
MeloPL Opublikowano 23 Lipca 2009 Autor Udostępnij Opublikowano 23 Lipca 2009 Yupii! Dzięki za pomoc, już wszystko działa! Udało mi się też rozwiązać kłopot z tym, by na początku gry postać pojawiała się w odpowiednim miejscu. Wszystko za pomocą zmiennych. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się