Skocz do zawartości

Zablokowane Menu i tworzenia kwadratu


Mosiek

Rekomendowane odpowiedzi

Witam mam znowu problem z moim menu... i to znowu z drawem zrobiłem już żeby robił kwadrat jak nacisnę esc ale jak wyłącze menu i szybko włącze to mi nie robi kwadratu

mój kod w stepie:

GML
if keyboard_check_pressed(vk_escape) then {

if global.paused == 0 then game_pause();

instance_create(view_xview+310,view_yview+230,obj_menu2)

 

}

if global.paused > 0 && global.paused <= room_speed then global.paused -= 1;

mój kod w drawie:

GML
if global.paused ==room_speed+1

{

draw_set_alpha( 0.7 );

draw_set_color(c_dkgray)

draw_rectangle( view_xview+300, view_yview+120, view_xview+400, view_yview+320, false );

draw_set_alpha( 1 );

}

UWAGA!!: próbowałem usuwać ==room_speed+1 ale wtedy robi kwadrat zawsze jak esc nacisnę ale z opóźnieniem niszczy kwadrat

czy ktoś wie jak mi pomóc?? z góry dziękuje.

Odnośnik do komentarza
Udostępnij na innych stronach

Po 1:

GML
if keyboard_check_pressed(vk_escape) then {

po co Ci then skoro używasz nawiasów klamrowych?

 

Po 2. czym jest funkcja game_pause()?

 

Po 3. Nie wiem kiedy zmienna paused osiaga wartosc room_speed+1

(ja tu tylko widze zmniejszanie jej kiedy jest <=room_speed && > 0)

Nie wiemy wiec kiedy ma sie to drawowac wiec chybanie mozemy Ci pomoc.

 

Po 4:

GML
if global.paused == 0 then game_pause();

instance_create(view_xview+310,view_yview+230,obj_menu2)

 

Jestes świadom że obj_menu2 tworzy sie niezaleznie od tego czy gra zostala zatrzymana czy nie?

Odnośnik do komentarza
Udostępnij na innych stronach

Po 1:

GML
if keyboard_check_pressed(vk_escape) then {

 

po co Ci then skoro używasz nawiasów klamrowych?

ok then usunę

Po 2. czym jest funkcja game_pause()?

jest to skrypt na zatrzymywanie wszystkich obiektów na mapie

Po 3. Nie wiem kiedy zmienna paused osiaga wartosc room_speed+1

(ja tu tylko widze zmniejszanie jej kiedy jest <=room_speed && > 0)

Nie wiemy wiec kiedy ma sie to drawowac wiec chybanie mozemy Ci pomoc.

no tak a jak usunąłem z drawu room_speed+1 to drawował się dobrze ale usuwał się z opóźnieniem czy na to masz jakąś rade?

Po 4:

GML
if global.paused == 0 then game_pause();

instance_create(view_xview+310,view_yview+230,obj_menu2)

 

Jestes świadom że obj_menu2 tworzy sie niezaleznie od tego czy gra zostala zatrzymana czy nie?

nie :P

Odnośnik do komentarza
Udostępnij na innych stronach

GML
if keyboard_check_pressed(vk_escape) then {

if global.paused == 0 then game_pause(); // game_pause() wykona się jesli global.paused==0;

instance_create(view_xview+310,view_yview+230,obj_menu2) // to sie wykona gdy nacisniesz ESC niezaleznie od tego czy wykonalo sie game_pause(); używaj nawiasów klamrowych

}

czyli cos takiego

GML
if( keyboard_check_pressed(vk_escape) )

{

if( global.paused == 0 )

{

game_pause();

instance_create(view_xview+310,view_yview+230,obj_menu2);

}

}

 

No chyba że chcesz aby menu sie tworzylo tez bez zatrzymywania gry, wtedy masz dobrze ;p

 

pokaż kod na zatrzymanie sie wszystkich obiektow

Odnośnik do komentarza
Udostępnij na innych stronach

GML
with (monster)

{

ospeed = spd;

spd = 0;

oalarm0 = alarm[0];

alarm[0] = -1;

oalarm1 = alarm[1];

alarm[1] = -1;

oalarm2 = alarm[2];

alarm[2] = -1;

}

with (postac)

{

oalarm0 = alarm[0];

alarm[0] = -1;

oalarm1 = alarm[1];

alarm[1] = -1;

}

with (postac2)

{

oalarm1 = alarm[1];

alarm[1] = -1;

}

global.paused = room_speed+1;

/* tu mozesz dac kod na tworzenie menu */

 

Skrypt na pause

 

GML
//przykladowy obiekt

with (monster)

{

spd = ospeed;

alarm[0] = oalarm0;

alarm[1] = oalarm1;

alarm[2] = oalarm2;

}

with (postac)

{

alarm[0] = oalarm0;

alarm[1] = oalarm1;

}

with (postac2)

{

alarm[1] = oalarm1;

}

global.paused = room_speed;

/* tu mozesz dac kod na usuwanie menu */

Skrypt na unpause

 

 

EDIT:

wykorzystałem ten twój kod i działa wszystko bo autor pauzy ustawił możliwość naciśnięcia Esc co sekundę i menu się tworzyło od razu a kwadrat bo miał ustawione opóźnienie się nie tworzył dzięki :PP

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

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