Cygnus Opublikowano 28 Czerwca 2015 Udostępnij Opublikowano 28 Czerwca 2015 Cześć wszystkim co zrobić żeby obiekt(np mam odłamek skalny) pod którym bohater przejdzie spadł ? taka przeszkoda,która zada obrażenia bohaterowi w momencie,kiedy przejdzie pod nia (Game Maker Studio) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 28 Czerwca 2015 Udostępnij Opublikowano 28 Czerwca 2015 Do wykrycia czy gracz dotknął od góry platformę użyj: place_meeting() jak kolizja będzie wykryta to użyj poniższego kodu by uruchomić odliczanie czasu: GML if ( alarm[0] <= 0 ) { alarm[0] = room_speed*1; // zamiast jedynki wpisz ile sekund ma platforma wytrzymac } No i w evencie alarm 0 bo ten czas uruchomiłeś wstaw niszczenie platformy instance_destroy() oraz tworzenie odłamków funkcją instance_create() Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 28 Czerwca 2015 Autor Udostępnij Opublikowano 28 Czerwca 2015 J am Lord dzięki,a mógłbyś cały kod napisać mi? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 28 Czerwca 2015 Udostępnij Opublikowano 28 Czerwca 2015 Nie, nie mógłbym masz się wysilić. Napisz co wykombinowałeś to ci wskażę błędy. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 28 Czerwca 2015 Autor Udostępnij Opublikowano 28 Czerwca 2015 GML if keyboard_check(vk_left) { if !place_meeting(x - 3, y, obj_platforma) x -=3; } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 28 Czerwca 2015 Udostępnij Opublikowano 28 Czerwca 2015 Szczerze to mnie zaskoczyłeś myślałem że dłużej ci zejdzie :D No prawie. Kod umieść w obj_platforma w step GML if ( place_meeting( x, y - 3, obj_gracz ) ) { if ( alarm[0] <= 0 ) { alarm[0] = room_speed*1; // zamiast jedynki wpisz ile sekund ma platforma wytrzymac } } To działa tak że platforma szuka kolizji z graczem lekko nad sobą bo wpisałem y-3. No i ten event alarm 0 został jeszcze. W którym musisz dać kod niszczenia platformy i tworzenia odłamków. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 28 Czerwca 2015 Autor Udostępnij Opublikowano 28 Czerwca 2015 Szczerze to mnie zaskoczyłeś myślałem że dłużej ci zejdzie :D No prawie. Kod umieść w obj_platforma w step GMLif ( place_meeting( x, y - 3, obj_gracz ) ) { if ( alarm[0] <= 0 ) { alarm[0] = room_speed*1; // zamiast jedynki wpisz ile sekund ma platforma wytrzymac } } To działa tak że platforma szuka kolizji z graczem lekko nad sobą bo wpisałem y-3. No i ten event alarm 0 został jeszcze. W którym musisz dać kod niszczenia platformy i tworzenia odłamków. Dzięki;) o to mi chodziło;) kiedyś trzeba zaskoczyć;D Teraz alarm0 w platformie: GML with (obj_platforma) { instance_destroy(); } o to chodzi? a te odłamki,to nie wiem:/ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 28 Czerwca 2015 Udostępnij Opublikowano 28 Czerwca 2015 Nie po prostu samo instance_destroy(); ta funkcja niszczy ten obiekt w którym kod się wykonał. A odłamki to najpierw stwórz jako osobne obiekty, którym w create nadasz prędkość w dół czyli np. vspeed = 5; dodaj im też jakąś kolizję żeby znikały jak spadną i uderzą w coś. No i w tej platformie w alarm0 instance_create(x, y, obj_odlamki); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 28 Czerwca 2015 Autor Udostępnij Opublikowano 28 Czerwca 2015 Her Lordzie coś takiego? GML ww = sprite_get_width(sprite_index); hh = sprite_get_height(sprite_index); chunk = 4; for (i=0;i<ww;i+=chunk) { for (j=0;j<hh;j+=chunk) { particle = instance_create(x+i,y+j,obj_particle); particle.spr = sprite_index; particle.size = chunk; particle.xx = i; particle.yy = j; } } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 28 Czerwca 2015 Udostępnij Opublikowano 28 Czerwca 2015 Nie wiem skąd to masz ale faktycznie wygląda na jakiś system odłamków, wrzuć do tego alarmu powinno zadziałać. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 28 Czerwca 2015 Autor Udostępnij Opublikowano 28 Czerwca 2015 A,więc tak Lordzie w Create obj_odlamki mam tak; GML vspeed = 5; ALARM 0 GML ww = sprite_get_width(sprite_index); hh = sprite_get_height(sprite_index); chunk = 4; for (i=0;i<ww;i+=chunk) { for (j=0;j<hh;j+=chunk) { particle = instance_create(x+i,y+j,obj_particle); particle.spr = sprite_index; particle.size = chunk; particle.xx = i; particle.yy = j; } } obj_platforma to kod mam tak ALARM 0 GML instance_destroy(); STEP GML if ( place_meeting( x, y - 1, obj_player ) ) { if ( alarm[0] <= 0 ) { alarm[0] = room_speed*3; } } coś jeszcze?? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 28 Czerwca 2015 Autor Udostępnij Opublikowano 28 Czerwca 2015 Lordzie,to może inaczej zamiast wybuchu lepszym rozwiązaniem było by sprawić,że ta platforma nie tylko zniknie,ale za sekunde dwie znowu się pojawi;) wiesz jak to zrobić? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 28 Czerwca 2015 Udostępnij Opublikowano 28 Czerwca 2015 Nie tak. obj_platforma: GML (alarm0) ww = sprite_get_width(sprite_index); hh = sprite_get_height(sprite_index); chunk = 4; for (i=0;i<ww;i+=chunk) { for (j=0;j<hh;j+=chunk) { particle = instance_create(x+i,y+j,obj_particle); particle.spr = sprite_index; particle.size = chunk; particle.xx = i; particle.yy = j; } } instance_destroy(); GML (step) if ( place_meeting( x, y - 1, obj_player ) ) { if ( alarm[0] <= 0 ) { alarm[0] = room_speed*3; } } I to wszystko bo prawdopodobnie twoje obj_particle już ma w sobie to co potrzebujesz. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 28 Czerwca 2015 Autor Udostępnij Opublikowano 28 Czerwca 2015 No dobra Lordzie,a jak teraz zrobić,żeby ta platforma na którą wskoczymy nie wybuchała tylko znikneła tak jak teraz to zrobiła,i zaraz się pojawiła,i tak za każdym razem jak na nią wskoczymy;) można jakoś operować zdarzeniem?? możliwe akcje;) 1.wskakuje bohater na platformę i zaraz ona znika i jak z niej zejdzie pojawia się 2.platforma sama pojawia się i znika w dowolnym odstępie czasowym.. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 28 Czerwca 2015 Udostępnij Opublikowano 28 Czerwca 2015 Hmmm nie wiem, myślę nad deaktywacją i aktywacją obiektu ale to wymaga zrobić jakiś osobny obiekt kontrolujący ponową aktywację tych platform. Jakieś zapisanie ich id do ds_listy albo stack. To będzie trudne i ci tego nie będę umiał wytłumaczyć. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 28 Czerwca 2015 Autor Udostępnij Opublikowano 28 Czerwca 2015 Dzięki z wybuchaniem działa rewelacja;D a teraz jak ustawić tak,że ta platforma w momencie skoku bohatera będzie znikać tak jak jest teraz,ale zaraz pojawiać się,bez wybuchu Lordzie? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 28 Czerwca 2015 Udostępnij Opublikowano 28 Czerwca 2015 Wybuch jakiś jest bo pewnie masz coś w zdarzeniu destroy Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 28 Czerwca 2015 Autor Udostępnij Opublikowano 28 Czerwca 2015 No własnie to już więcej zabawy,ale i tak dziękuje serdecznie. Ja powalczę teraz z tą platformą znikającą się i pojawiająca w odstępach np co 2sekundy;) ale chyba nie koniecznie w tym przypadku trzeba tworzyć osobny obiekt,bo zobacz...tutaj chodzi o sterowanie czasem sam nie wiem jak to nazwać. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 28 Czerwca 2015 Udostępnij Opublikowano 28 Czerwca 2015 W sumie to możesz podmienić obiekty na taki który jest pusty a jedynie odlicza alarm i zamienia z powrotem w tamten. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 28 Czerwca 2015 Autor Udostępnij Opublikowano 28 Czerwca 2015 czyli co tworze jakiś pusty obiekt Lordzie i w nim ustawiam w zdarzeniu alarm0? czy jak? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 29 Czerwca 2015 Udostępnij Opublikowano 29 Czerwca 2015 To może tak ale nie wiem czy dobrze zadziała. Zrób pusty obiekt bez sprite, który w create będzie miał: alarm[0] = room_speed * 3; a w event alarm 0: instance_change(obj_platforma, true); A w tej platformie w alarm 0: instance_change(obj_ten_twoj_pusty_obiekt, true); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 30 Czerwca 2015 Autor Udostępnij Opublikowano 30 Czerwca 2015 Lordzie von Gnysek dzięki zrobiłem tak jak napisałeś,tylko czas znikania platformy ustawiłem na 1;) i efekt niezły;) dziękuje;) Niech ci Bozia w kodzie wynagrodzi;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cygnus Opublikowano 30 Czerwca 2015 Autor Udostępnij Opublikowano 30 Czerwca 2015 Lordzie, a powiedz jak teraz w tej znikajacej i pojawiajacej sie platformie uzyskac taki efekt powolnego naturalnego zanikania i pojawiania sie? 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ę