arek80 Opublikowano 27 Marca 2011 Udostępnij Opublikowano 27 Marca 2011 Witam. Przeglądam forum mniej więcej od 3 tygodni tyle tez posiadam game maker. Przyszedł czas aby aby się zarejestrować. Wcześniej był c++ oraz biblioteka allegro. Jestem pod dużym wrażeniem programu. Szczególnie szybkości tworzenia :rolleyes: Mam problem z dopracowaniem dwóch zdarzeń/skryptów. 1. Kropla wody Moja kropla wody to obiekt, który umieszczam gdzieś na mapie. Chce, aby kropla/obiekt był ciągle tworzony od nowa w tym samym miejscu. Wszystko jest ok poza w tym samym miejscu . Mam problem z parametrami x,y co tam wpisać. Można jakieś wartości 200, 30 ale nie o to chodzi żeby mieć 10 obiektów kropli w zasobach projektu tylko 1 Załącznik klik 2. Ruch z górki plus zmiana sprajta. Są dwa problemy - skacze z górki a powinien schodzić (wiem jest przykład ale mam problem z integracją) - zmiana sprajta w zależności czy jest pochyłość czy plaska powierzchnia Zauważcie, że sprajt się zmienia dopiero jak skocze na daną powierzchnie, a nie jak jest kolizja. Załącznik klik Ps. Rozglądam się za porządnym przesuwaniem kamieni z grawitacją (to samo co w Boulder Dash), tylko mi się przylepiają do krawędzi obiektów. ps2. do administracji ciężko się z wami skontaktować osobie bez konta/ bez aktywacji. Pięciokrotnie zakładałem konto które znikało chyba po 24h bo nie miało aktywacji administratora. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 27 Marca 2011 Udostępnij Opublikowano 27 Marca 2011 1. instance_create(x+random(300),y+random(30),kropla) -chyba o to ci chodzi 2. Spróbuj zmniejszyć w klawisz right, jump to position y na większe np -3 ps: sorry za duble posta EDIT: 1. Łap to https://gmclan.org/up7191_12_kropla_wody.html Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
arek80 Opublikowano 27 Marca 2011 Autor Udostępnij Opublikowano 27 Marca 2011 Chodzi o to aby kropla tworzyła sie w tym samym miejscu np. kapanie z pęknietej rury. Tam gdzie umieszcze na mapie/room tam bedzie się tworzyc kropla/obiekt Jak pisałem mogę stworzyc w zasobach kilkanaście obiektów kropli wody no ale nie o to chodzi. Bardziej mnie martwi to schodzienie z górki i zmiana sprajtów. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 27 Marca 2011 Udostępnij Opublikowano 27 Marca 2011 Aha łap to https://gmclan.org/up7191_12_f6aeb46409.html Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
arek80 Opublikowano 27 Marca 2011 Autor Udostępnij Opublikowano 27 Marca 2011 Dzieki za krople. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Muuuuczek567 Opublikowano 27 Marca 2011 Udostępnij Opublikowano 27 Marca 2011 Schodzenie z górki? Step: GML if(collision_line(x,y+wys_postaci,x,y+wys_postaci+5,gorka,1,1)) { if(x != xprevious) sprite_index = schodzenie repeat(5) {y += 1; if(collision_point(x,y+wys_postaci,gorka,1,1)) break} } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
arek80 Opublikowano 6 Kwietnia 2011 Autor Udostępnij Opublikowano 6 Kwietnia 2011 Rozwiązałem schodzenie z górki. http://rapidshare.com/files/456146343/z_gorki.gmk Nadal nie potrafie zrobić zmiany sprita po zetknięciu z pochyłością ale męcze to nadal. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
alwin Opublikowano 6 Kwietnia 2011 Udostępnij Opublikowano 6 Kwietnia 2011 Wywal zmiany sprita w Twoich klockach przy kolizji z górką i przy ciskaniu klawisza down. To wszytsko masz w tym kodzie: GML //grawitacja if place_free(x+0,y+1) { gravity_direction=270 gravity=0.6 } else // Gdy jesteśmy n ziemi { if(place_meeting(x,y+1,wall)) // i dotykamy ziemi plaskiej { sprite_index = sprite0; // zmien sprita na plaskiego } else if ((place_meeting(x,y+1,g_A)) || (place_meeting(x,y+1,g_B))) // a jezeli dotykamy skosu jednego LUB drugiego { sprite_index = spr; // zmien sprita na skos } gravity_direction=270 gravity=0 } if(keyboard_check(vk_down)) { sprite_index = down; } //max szybkosc spadania if (vspeed>10) { vspeed=10 } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
arek80 Opublikowano 7 Kwietnia 2011 Autor Udostępnij Opublikowano 7 Kwietnia 2011 Wielkie dzieki. Nie wiedziałem co wstawić za GML sprite_index = spr; więc troszeczkę przerobiłem kod :) GML //grawitacja if place_free(x+0,y+1) { gravity_direction=270 gravity=0.6 } else // Gdy jesteśmy n ziemi { if(place_meeting(x,y+1,wall)) // i dotykamy ziemi plaskiej { sprite_index = sprite0; // zmien sprita na plaskiego } else if (place_meeting(x,y+1,g_A)) { sprite_index = lewo; // pochyłość w lewo } else if (place_meeting(x,y+1,g_B)) { sprite_index = prawo; // pochyłość w prawo } gravity_direction=270 gravity=0 } if(keyboard_check(vk_down)) { sprite_index = down; } //max szybkosc spadania if (vspeed>10) { vspeed=10 } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
alwin Opublikowano 7 Kwietnia 2011 Udostępnij Opublikowano 7 Kwietnia 2011 No wiadomo że Twój sprit schodzenia. Jezeli na prawo i lewo będą inne to zrób tak jak masz, jezeli będzie tylko jeden taki sam bez względu na to po jakim skosie schodzisz to możesz mój kod zostawić a w spr dać swoja nazwę tak jak mówiłem. 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ę