Skocz do zawartości

Wstydze sie aby to pytanie wyskoczylo na glownej


PoxiPol

Rekomendowane odpowiedzi

Wlasnie spedzilem godzine glowkujac, jak zrobic cos tak banalnego, ze sprowadzam na siebie straszny wstyd, wiec pytam w pytaniach poczatkujacych : O

Jak zrobic taka petle, pewno za pomoca while i if, gdzie jesli obiekt dojdzie do wybranej pozycji, zawraca sie, i idzie do drugiej, ale nei za pomoca pathow?

 

Edit-

GML
if pozycjax > wybbranapozycjax

{

kod

}

if pozycjax < drugawybranapozycjazlewejx

{

kod

}

Dziekuje.

PS

Czemu znowu nie mozna zamykac tematow?

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

GML
if x == 20 & yy == 20 {hspeed *= -1; vspeed *=-1}

 

Pętla while nie jest wykonywana co step, bo sam step jest pewnym rodzajem pętli. Gdybyś wrzucił while w step, gra zatrzymałaby się na aktualnej klatce aż do skończenia pętli. Wszystko inne w grze by po prostu stało, bo kod wykonywał by się tylko dla tego jednego obiektu.

 

Dla testu możesz sprawdzić:

GML
while (true) {}

Ale ostrzegam, bez Alt+Shift+Esc się nie obejdzie.

Odnośnik do komentarza
Udostępnij na innych stronach

jeśli dobrze zrozumiałem chcesz zrobić moving brusha

znam parę sposobów na to

 

1. markery po dotarciu i wykryciu kolizji obiekt ustawia się na marker a ten wysyła mu nowe współrzędne, Kierunek w którą ma lecieć lub cel (np. inny marker)

 

2. z góry ustalone współrzędne ala

GML (steps)
if pk=0

xt=50

else if pk=1

xt=-8

else if pk=2

xt=90

else if pk=3

xt=0

 

if (x>xt-2)&&(x<xt+2)

{

x=xt

 

if pk<4

pk+=1

else

pk=0

 

}

 

else if x>xt

x-=1

else if x<xt

x+=1

 

3.lub zwykłe odbijanie się od ścian (lub od niewidzialnych obiektów)

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