Luksor Opublikowano 21 Grudnia 2008 Udostępnij Opublikowano 21 Grudnia 2008 Otóż planuję stworzyć w mojej grze respawn graczy. Po krótce jak to ma działać: -Ktoś cię zabił, masz 0 życia więc stajesz się spectatorem. < działa --Podczas bycia spectatorem odlicza się czas do respawnu. < w tym jest błąd ---Następnie jesteś respawnowany. < to też raczej działa bo zrobiłem żeby był respawn na shifcie i dzialalo Czyli to odliczanie... może najlepiej podam kody i trochę objaśnię. GML STEP ... if hp<=0 && global.spectate=false { killme(); alarm[2]=room_speed; } ... Jeśli masz 0 życia i nie jesteś specem uruchamia się skrypt killme i alarm odliczający. GML SKRYPT KILLME o_mousepositioner.x=objPlayer.x; o_mousepositioner.y=objPlayer.y; global.spectate=true; global.respawn=10; hp=100; sound_play(sound3); Stajesz się spectatorem, ustawia się czas respawnu i życie na max. GML ALARM2 if global.spectate=true //jesli jestes spectatorem { alarm[2]=room_speed; //powtorz ten alarm global.respawn-=1; //odlicz sekunde if global.respawn=0 //jesli jest 0 sekund respawnuj { global.spectate=false; x=32; y=32; } } Bardzo proszę o pomoc nie wiem gdzie zrobiłem błąd że skrypt nie odlicza sekund. Cały czas mam napis Respawn za 10 sekund. Pozdrawiam i życzę Wesołych Świąt! :bye1: Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Lord Marcelot Opublikowano 21 Grudnia 2008 Udostępnij Opublikowano 21 Grudnia 2008 Ja mam takie skrypty i u mnie działa: GML Create hp=0; global.spectate=false; global.respawn=0; GML Alarm 2 if global.spectate=true { alarm[2]=room_speed; global.respawn-=1; if global.respawn=0 { global.spectate=false; x=o_mousepositioner.x; y=o_mousepositioner.y; } } GML Step if hp<=0 && global.spectate=false { killme(); alarm[2]=room_speed; } GML Draw draw_text(x,y,string(global.respawn)); GML killme global.spectate=true; global.respawn=10; hp=100; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Luksor Opublikowano 21 Grudnia 2008 Autor Udostępnij Opublikowano 21 Grudnia 2008 To są praktycznie te same skrypty, musiałem coś sknocić gdzieś indziej. <_< Dzięki za pomoc. ;) EDIT: Znalazłem błąd! W stepie miałem zapewne przypadkowo umieszczony warunek: if global.spectate=true alarm[2]=room_speed; czyli alarm się ciągle zaczynał od początku czy jakoś tak, ważne że po skasowaniu wszystko działa. :jezor: 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ę