Skocz do zawartości

Gdzie mam tu błąd


Rekomendowane odpowiedzi

Witam. Mam dłuuuugggiiii kod. Tylko proszę nie przerażajcie się nim, cały wygląda tak samo pomimo tego że jest długi.

GML
col32_1 = collision_rectangle(x+33,y+1,x+63,y+31,o_Player_Show,true,true)

col32_2 = collision_rectangle(x+65,y+1,x+95,y+31,o_Player_Show,true,true)

col32_3 = collision_rectangle(x+97,y+1,x+127,y+31,o_Player_Show,true,true)

col32_4 = collision_rectangle(x+129,y+1,x+159,y+31,o_Player_Show,true,true)

 

col64_1 = collision_rectangle(x+32,y+32,x+64,y+64,o_Player_Show,true,true)

col64_2 = collision_rectangle(x+64,y+64,x+96,y+96,o_Player_Show,true,true)

col64_3 = collision_rectangle(x+96,y+96,x+128,y+128,o_Player_Show,true,true)

col64_4 = collision_rectangle(x+128,y+128,x+160,y+160,o_Player_Show,true,true)

 

col94_1 = collision_rectangle(x,y+32,x+32,y+64,o_Player_Show,true,true)

col94_2 = collision_rectangle(x,y+64,x+32,y+96,o_Player_Show,true,true)

col94_3 = collision_rectangle(x,y+96,x+32,y+128,o_Player_Show,true,true)

col94_4 = collision_rectangle(x,y+128,x+32,y+160,o_Player_Show,true,true)

 

col88_1 = collision_rectangle(x+32,y,x+64,y-32,o_Player_Show,true,true)

col88_2 = collision_rectangle(x+64,y-32,x+96,y-64,o_Player_Show,true,true)

col88_3 = collision_rectangle(x+96,y-64,x+128,y-96,o_Player_Show,true,true)

col88_4 = collision_rectangle(x+128,y-96,x+160,y-128,o_Player_Show,true,true)

 

if col32_1 > 100000 && col32_2 > 100000 && col32_3 > 100000 && col32_4 > 100000

if col32_1.sprite = sprite && col32_2.sprite = sprite && col32_3.sprite = sprite && col32_4.sprite = sprite

{show_message('Win1');

game_restart();}

 

if col64_1 > 100000 && col64_2 > 100000 && col64_3 > 100000 && col64_4 > 100000

if col64_1.sprite = sprite && col64_2.sprite = sprite && col64_3.sprite = sprite && col64_4.sprite = sprite

{show_message('Win2');

game_restart();}

 

if col94_1 > 100000 && col94_2 > 100000 && col94_3 > 100000 && col94_4 > 100000

if col94_1.sprite = sprite && col94_2.sprite = sprite && col94_3.sprite = sprite && col94_4.sprite = sprite

{show_message('Win3');

game_restart();}

 

if col88_1 > 100000 && col88_2 > 100000 && col88_3 > 100000 && col88_4 > 100000

if col88_1.sprite = sprite && col88_2.sprite = sprite && col88_3.sprite = sprite && col88_4.sprite = sprite

{show_message('Win4');

game_restart();}

 

I teraz moje pytanie. Gdy mam ułożenie obiektów o_Player_Show w ułożeniu poniżej znajduje warunek1 dotyczący col32

|1|0|0|0|0|
|0|2|1|1|1|
|0|2|2|0|0|

0 - oznacza puste pole, nie ma żadnego obiektu
1 - oznacza pierwszy obrazek
2 - oznacza drugi obrazek

Jeszcze spróbuje sprawdzić który z nich to inicjuje, ale nic nie obiecuje.

 

Co do linijki pierwszej

GML
col32_1 = collision_rectangle(x+32,y,x+64,y+32,o_Player_Show,true,true)

col32_2 = collision_rectangle(x+64,y,x+96,y+32,o_Player_Show,true,true)

col32_3 = collision_rectangle(x+96,y,x+128,y+32,o_Player_Show,true,true)

col32_4 = collision_rectangle(x+128,y,x+160,y+32,o_Player_Show,true,true)

Tak też prubowałem
Odnośnik do komentarza
Udostępnij na innych stronach

|1|0|0|0|0|

|0|2|1|1|1|

|0|2|2|0|0|

Mam takie ułożenie obiektów o_Player_Show na planszy. Oznaczone z numerem 1 to obiekty o spricie s_Fire a te z numerem 2 to s_Cross. Z numerem 0 to puste pole. Z warunków powyżej wynika że w rzędzie ma wystąpić 5 takich samych obiektów, o takich samych spritach, lecz coś jest źle i znajduje warunek 1

GML
if col32_1 > 100000 && col32_2 > 100000 && col32_3 > 100000 && col32_4 > 100000

if col32_1.sprite = sprite && col32_2.sprite = sprite && col32_3.sprite = sprite && col32_4.sprite = sprite

{show_message('Win1');

game_restart();}

 

Wynika z tego warunku że od lewej do prawej ma znaleźć 4 takie same obiekty.

Prawdopodobną przyczyną jest że pierwszy obiekt znajduje 4 takie same linie poniżej.

 

Jeśli czegoś nie rozumiecie to sory ale trochę rozkojarzony jestem.

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ę...