Skocz do zawartości

chodzenie po kratkach


Ray14

Rekomendowane odpowiedzi

Co do pocisków - użyj alarmów, musiał byś mi pokazać swój kod strzelania wtedy mógłbym Ci pomóc :)

najprostrzy jaki może by

GML
if distance_to_object(player) < (przeciwnik.agresja)/6

{instance_create(x,y,naboj)

}

 

a w naboju

GML
move_towards_point(player.x+10,player.y+30,10)
Odnośnik do komentarza
Udostępnij na innych stronach

GML (Create wroga)
strzelac=true;

GML
if distance_to_object(player) < (przeciwnik.agresja)/6

{

if strzelac!=true

{

//nic nie rob

}}

else

{

instance_create(x,y,naboj);

strzelac=false;

alarm[0]=1000 //gdzie 1000 to milisekundy(1000 ms = 1s)

}

 

GML (event alarmu numer 0 w objekcie playera)
strzelac=true;

 

Co do poruszania się po kratkach, przeczytaj 16 punkt w FAQ ;)

https://gmclan.org/index.php?czytajart=7

Odnośnik do komentarza
Udostępnij na innych stronach

GML (Create wroga)
strzelac=true;

GML
if distance_to_object(player) < (przeciwnik.agresja)/6

{

if strzelac!=true

{

//nic nie rob

}}

else

{

instance_create(x,y,naboj);

strzelac=false;

alarm[0]=1000 //gdzie 1000 to milisekundy(1000 ms = 1s)

}

 

GML (event alarmu numer 0 w objekcie playera)
strzelac=true;

 

Co do poruszania się po kratkach, przeczytaj 16 punkt w FAQ ;)

https://gmclan.org/index.php?czytajart=7

 

GML
alarm[0] = room_speed // być może 1000 ms to 1s ale w pokojach o różnych

prędkościach inaczej będzie to odliczane, dlatego bezpieczniej wpisać jest room_speed,

który jest zawsze równy 1s jeśli chodzi o czas</span>

Odnośnik do komentarza
Udostępnij na innych stronach

nie wiem dlaczego ale mi nie dziala, a najgorsze jest to ze wszyscy przeciwnicy wtedy zaczynaja strzelać naraz bez różnicy na odległość. Aha jeszcze coś to jest jak zrobić żeby chodzil mój i to już mam ale przeciwnik ma tak chodzić i

if przeciwnik idzie w lewo{change_sprite lewo},

coś takiego.

Odnośnik do komentarza
Udostępnij na innych stronach

nie wiem dlaczego ale mi nie dziala, a najgorsze jest to ze wszyscy przeciwnicy wtedy zaczynaja strzelać naraz bez różnicy na odległość. Aha jeszcze coś to jest jak zrobić żeby chodzil mój i to już mam ale przeciwnik ma tak chodzić i

if przeciwnik idzie w lewo{change_sprite lewo},

coś takiego.

1. Sprawdź ile wynosi to (przeciwnik.agresja)/6, być może jest na tyle duże, że obejmuje cały ekran

2. Co do poruszania się sprawdzaj direction przeciwnika i ustawiaj odpowiedni obrazek

GML
if( direction = 180 ) // 180 stopni to chyba w lewo jest nie?

{

//zmiana obrazka na ten w lewo

}

Odnośnik do komentarza
Udostępnij na innych stronach

nie agresje to 24*6< a więc to wynosi 24. nie wiem co to może być za problem. jeśli ktoś ma pomysł proszę pomóżcie.

 

EDIT

 

sorki ale czy ten alarm nie powinien być w przeciwniku??

 

No chyba raczej logicznie myśląc być powinien "w przeciwniku"...

 

GML
if( distance_to_object( player ) <= 150 )

{

if( shoot = true )

{

instance_create( x, y, naboj );

alarm[0] = room_speed;

shoot = false;

}

}

Proszę właściwy kod.

Ew

GML
if distance_to_object(player) < ( agresja )/6

{

if strzelac!=true

{

//nic nie rob

}

else

{

instance_create(x,y,naboj);

strzelac=false;

alarm[0]=1000 //gdzie 1000 to milisekundy(1000 ms = 1s)

}

}

Jedna klamerka a tak wiele zmieniła

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