Markar Opublikowano 4 Grudnia 2009 Udostępnij Opublikowano 4 Grudnia 2009 A więc tak: mam obiekt O_gracz, O_platforma1(platforma pozioma), O_platforma2(platforma ukośna) mam w kolizji gracza do O_platforma 2 zmianę sprita na sprit gdzie idzie po krzywej platformie. Ale kiedy normalnie wejdę na platforme krzywą, z platformy poziomej(są w romie złączone) nie zmienia sprita... Jak zrobić żeby zmieniał sprita?? Jak niezrozumiale coś napisałem to napiszcie ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ZeroXbot Opublikowano 4 Grudnia 2009 Udostępnij Opublikowano 4 Grudnia 2009 No więc może masz coś źle w kodzie. Pokaż ten kawałek, który ma zmieniać sprite'a Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Markar Opublikowano 4 Grudnia 2009 Autor Udostępnij Opublikowano 4 Grudnia 2009 @ZeroXbot: GML sprite_index=S_gracz_idzie_krzywo1 Zwykła zmiana sprita, mam to w kolizji z O_platforma2. Kiedy przechodzę z O_platforma1 na O_platforma2 sprite się nie zmienia... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ZeroXbot Opublikowano 4 Grudnia 2009 Udostępnij Opublikowano 4 Grudnia 2009 A nie masz gdzieś w stepie (albo gdzieś indziej niż w kolizji) zmiany na normalny sprite? Może ta akcja nadpisuje tamtą (czyli tę w kolizji) i nie widać zmiany. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Muuuuczek567 Opublikowano 4 Grudnia 2009 Udostępnij Opublikowano 4 Grudnia 2009 Dzieje się tak, gdy dotykasz dwóch platform jednocześnie? Bo jeśli tak (będę strzelał) - platforma pozioma ma większe ID, więc kod wykonuje się później. A jeśli też wtedy, gdy dotykasz tylko ukośnej - to gdzieś indziej popsułeś kod, np. Step, Draw... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Markar Opublikowano 4 Grudnia 2009 Autor Udostępnij Opublikowano 4 Grudnia 2009 @ZeroXbot: Nie mam zmiany nigdzie indziej... EDIT: @Muuuuczek567, jak mogę zrobić aby się ten prite zmieniał? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ZeroXbot Opublikowano 4 Grudnia 2009 Udostępnij Opublikowano 4 Grudnia 2009 Może masz tak skonstruowany ruch, że praktycznie gracz nie koliduje z podłogą i nie wykonuje się akcja. Zamiast tego sprawdź funkcją bodajże place_meeting() co jest pod tobą i nadawaj odpowiedni sprite. GML if(place_meeting(x,y+1,opodloga1)) { sprite_index=spr1; } else if(place_meeting(x,y+1,opodloga2)) { sprite_index=spr2; } Coś takiego. ED: Zamiast place_meeting napisałem position_meeting :P Zmienione. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Markar Opublikowano 4 Grudnia 2009 Autor Udostępnij Opublikowano 4 Grudnia 2009 Działa, a co do tego place_meeting to sie skapłem sam ;) Edit: Pozostaje jeden problem... Bardzo szybko zmienia mi się sprite z jednego na drugi kiedy jestem na przełomie O_platforma1-O_platforma2. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
lenin Opublikowano 4 Grudnia 2009 Udostępnij Opublikowano 4 Grudnia 2009 Bardzo szybko zmienia mi się sprite z jednego na drugi Szybko tzn? Ustaw zmianę sprita przez alarmy Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Markar Opublikowano 5 Grudnia 2009 Autor Udostępnij Opublikowano 5 Grudnia 2009 Dobra, działa. Zrobiłem to na alarmie i w miarę dobrze zmienia sprita ;) Ktoś chce creditsa? 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ę