Skocz do zawartości

Opóźnienie strzału


Rekomendowane odpowiedzi

Witam, mam pytanie jak opóźnić strzał, że gdy nacisnę control to wystrzelam i musze czekać 5 sekund aż znów strzelę. I gdy nacisnę control a po 2 sekundach znów nacisnę to żeby pocisk nie leciał teraz tylko dopiero po upływie 5sekund. mój kod na strzał to

GML
if keyboard_check_pressed(vk_control) // klawisz strzału

{

instance_create(x,y,oStrzala)// tworzenie strzału

with(oStrzala) speed=14 // prędkość strzału

}

]

 

Szukałem na forum ale żaden kod mi nie pomógł.

Odnośnik do komentarza
Udostępnij na innych stronach

daj zmienną np shot

w create:

GML
shot=1

w alarm[0]

GML
shot=1

I do twojego kodu dodaj:

GML
if keyboard_check_pressed(vk_control) && shot=1// klawisz strzału

{

alarm[0]=5//Czas między strzałem

shot=0

instance_create(x,y,oStrzala)// tworzenie strzału

with(oStrzala) speed=14 // prędkość strzału

}

]

Odnośnik do komentarza
Udostępnij na innych stronach

GML
//step

if keyboard_check_pressed(vk_control) and alarm[0]=-1 // klawisz strzału

{

instance_create(x,y,oStrzala)// tworzenie strzału

with(oStrzala) speed=14 // prędkość strzału

}

//w ewencie wciśnięcia klawisz conrol

if alarm[0]=-1 {alarm[0]=5*room_speed}

EDIT:

Poprawiłem błędy i zrobiłem przykład (bez stepa)

przykład

Odnośnik do komentarza
Udostępnij na innych stronach

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ę
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...