Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano

Tada!

GML
// Kierunek głównego "dira"

dir = point_direction(x,y,mouse_x,mouse_y);

 

// Atakowanie

if mouse_check_button(mb_left)

{

atak = true;

}

else

{atak = false;}

 

// Zmiana wartości sinusa w stosunku do akcji postaci.. Więc zaczynamy...

if atak = true // Jeśli atakuje...

{

if wyzeruj = true {sinus = 0;wyzeruj = false;}

sinus = sin(degtorad(sin_p))*25;

sin_p += 25;

dir += (sinus*1.5);

}

else // Jeśli nie...

{

wyzeruj = true;

if mouse_check_button(mb_right) // I... będzie szedł...

{

sinus = sin(degtorad(sin_p))*10;

sin_p += 16;

dir += sinus;

}

else // Jeśli zaś nie będzie szedł... (będzie po prostu stał, i nie atakował)

{

sinus = sin(degtorad(sin_p))*5;

sin_p += 6;

}

}

 

if mouse_check_button(mb_right) && mouse_check_button(mb_left)

{sin_ruch = 0;}

else

{sin_ruch = sinus;}

// Chodzenie.. (nie, nie animacja - chodzenie konkretne, takie z poruszaniem)

if mouse_check_button(mb_right)

{

x+= lengthdir_x(pred_ruch,dir);

y+= lengthdir_y(pred_ruch,dir);

pred_ruch+= 0.2;

sin_ruch_p += 16;

}

else

{

pred_ruch = 0;

}

// Maksymalna prędkośc ruchu...

if pred_ruch >= 4

{pred_ruch = 4;}

 

Przy naciśnięciu lewej myszki postać zaczyna atakować.. ok, atakuje - ale dodałem też wyzerowywanie sinusa żeby po kliknięciu miecz nie kończył zamachu.. sęk w tym że nie działa jego mać. Nie mogę znaleźć usterki. :/

Opublikowano

Myśleć mi się nie chcę, ale muszę się czepić kilku rzeczy, bo się płakać chce... ;P

 

1.

GML
// Atakowanie

if mouse_check_button(mb_left)

{

atak = true;

}

else

{atak = false;}

==
GML
atak = mouse_check_button(mb_left);

2.

GML
if pred_ruch >= 4

{pred_ruch = 4;}

==
GML
pred_ruch = min(4, pred_ruch);

 

Sory za spam, ale te dwie rzeczy tak się w oczy rzucają, że nie mogę się powstrzymać... :P

 

Kodu jako kodu nawet nie analizowałem, ale... co to jest "mać" O.o Macka?

Opublikowano

Hm... zwróć uwagę na to "wyzerowanie". Chodziło mi o to, że przy każdym rozpoczęciu ataku sinus miał wartość zerową. Kiedyś działało... coś do kodu dodałem, odjąłem... i lipa. Sęk w tym że na pierwszy rzut oka można powiedzieć że wszystko będzie chodzić jak powinno. :/

  • Administratorzy
Opublikowano

GML
if mouse_check_button(mb_left) sin_ruch = 0 //??

 

Btw. ten sin ruch zeruje sie tylko jak naciśniesz dwa klawisze na raz? Dla czego?

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