gilos99 Opublikowano 14 Maja 2015 Udostępnij Opublikowano 14 Maja 2015 Zastanowiłem się nad postami pod moim postem , pod tematem "nad czym aktualnie pracujecie" i faktycznie macie racje : te chmury dziwnie się poruszają. Chciałbym się dowiedzieć jak zrobić by poruszały się nak chmury. PS mój kod na nie : step\code\ x-=2 :D za ewentualną pomoc dziekuję Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gibki Kaktus Opublikowano 14 Maja 2015 Udostępnij Opublikowano 14 Maja 2015 Zawsze możesz zrobić, żeby cały czas były przypisywane do viewu. Zgaduję, że używasz 0, więc kod to byłoby coś takiego w end step: GML xx-=2 x=view_xview[0]+xx Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
gilos99 Opublikowano 14 Maja 2015 Autor Udostępnij Opublikowano 14 Maja 2015 Dzięki :D ___________________________________________ ERROR in action number 1 of End Step Event for object obj_chmura: Error in code at line 1: xx-=2 ^ at position 1: Unknown variable xx eh Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
-[PhariseuS]- Opublikowano 14 Maja 2015 Udostępnij Opublikowano 14 Maja 2015 No chyba najpierw musisz tę zmienną xx zdefiniować, zanim coś od niej odejmiesz. Polecam w Create GML xx=0; Robisz tak z każdą zmienną lokalną i globalną. Nie musi to być Create, ważne, by było to ZANIM zaczniesz operować na tej zmiennej (wyświetlać, dodawać, pobierać do stringu etc). Po prostu nadaj zmiennej jakąś wartość po raz pierwszy, i nie musi to być wcale 0. EDIT: Se właśnie skompilowałem to w głowie. Jeżeli będziesz coś odejmował od zera, to chmurka (zakładając, że jej koordynat x to 0, czyli lewa krawędź roomu) wyjdzie sobie poza ekran. Lepiej więc dodawaj do zmiennej xx 2, zamiast odejmować. A jak chcesz, by chmury płynęły z prawej krawędzi do lewej, to twórz je właśnie tam - przypisz zmiennej x wartość room_width (lub view_wview[0]) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gibki Kaktus Opublikowano 14 Maja 2015 Udostępnij Opublikowano 14 Maja 2015 Myślałem, że to oczywiste, żeby najpierw zmienną przypisać :/ Dałem xx, żeby się zmniejszało, bo w Twojej grze też było od prawej do lewej, ale musisz dać x randomowe przykładowo: GML xx=random_range(100,view_wview[0] I możesz ustawić, że jak nie będzie już widoczna, to będzie usuwana. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
gilos99 Opublikowano 14 Maja 2015 Autor Udostępnij Opublikowano 14 Maja 2015 Dzięki Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
PsichiX Opublikowano 15 Maja 2015 Udostępnij Opublikowano 15 Maja 2015 to się fachowo nazywa 'parallax scrolling' i robi się to tak: dzielisz abstrakcyjnie elementy tła sceny na warstwy i każdej warstwie nadajesz współczynnik głębi. GML (create) layer_depth = 0.5; ten współczynnik stosujesz do przemnożenia przez pozycję w osi (osiach), którą chcesz zwizualizować jako warstwę: GML (draw) draw_sprite(sprite_index, image_index, x * layer_depth, y); (oczywiście możesz dać też to `* layer_depth` do y) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
gilos99 Opublikowano 15 Maja 2015 Autor Udostępnij Opublikowano 15 Maja 2015 @WXE yyy... chmury sie nie ruszajo Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 15 Maja 2015 Udostępnij Opublikowano 15 Maja 2015 No to przed draw sprite daj te twoje poprzednie x -= 2; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
gilos99 Opublikowano 15 Maja 2015 Autor Udostępnij Opublikowano 15 Maja 2015 nadal ten sam efekt co na początku Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 15 Maja 2015 Udostępnij Opublikowano 15 Maja 2015 Problem jest w tym że nie wiemy co chcesz zrobić. Wygląda na to że nie interesuje Cię zwykła paralaxa. Nikt jeszcze nie podał takiego rozwiazania: GML xstart-=1 x=view_xview[0]+xstart Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gibki Kaktus Opublikowano 15 Maja 2015 Udostępnij Opublikowano 15 Maja 2015 To identyczne rozwiazanie co moje. :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 15 Maja 2015 Udostępnij Opublikowano 15 Maja 2015 To identyczne rozwiazanie co moje. :P No rzeczywiście, bo się zagapiłem. Chodziło mi i tak chyba o: GML xstart-=1 x=gracz.x+xstart Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ignatus Opublikowano 15 Maja 2015 Udostępnij Opublikowano 15 Maja 2015 Myślę że problem polega nie na zwykłej paralaxie tylko na połączniu paralaxy z tym że chmury są cały czas w ruchu.Tak jak już pisałem poprzednio mam identyczny problem Chmury mają jakąś swoją prędkość i w momencie kiedy się przesuwają względem prędkości gracza- prędkość ruchu chmur gwałtownie przyspiesza(wręcz turbo)- w naturze raczej chmury nawet jak poruszają się w tym samym kierunku to nie lecą jak odrzutowce. Czyli w skrócie jak zrobić ruchome obiekty w tle których ruch nie będzie zakłocony przez ruch gracza Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gibki Kaktus Opublikowano 15 Maja 2015 Udostępnij Opublikowano 15 Maja 2015 Moje oraz Threefa rozwiązanie właśnie do tego nawiązują. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
gilos99 Opublikowano 16 Maja 2015 Autor Udostępnij Opublikowano 16 Maja 2015 @Threef Dzięki działa :D Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ignatus Opublikowano 16 Maja 2015 Udostępnij Opublikowano 16 Maja 2015 Hmm a jak to zastosować kiedy chmury są Background[0] ? Jak bym nie próbował to jedyne co osiągam to efekt całkowitego braku chmur od początku Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 16 Maja 2015 Udostępnij Opublikowano 16 Maja 2015 Zasada jest taka że przypisujesz background_x[0]=gracz.x+zmianna ta zmienna ma się zwiększać/zmniejszać w czasie. 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ę