Skocz do zawartości

Problem z pętlą FOR


killhunt

Rekomendowane odpowiedzi

Cześć. Pisząc skrypt w GameMakerze natknąłem się na pewien problem. Chcę bowiem napisać pętlę for z pewnymi argumentami i chciałbym się zapytać oto, dlaczego nie da się czegoś takiego zrobić (wywala błąd)

 

GML
for(if(x1<x2){ix=x1+32}if(x1>x2){ix=x1+32};ix!=x2;if(x1<x2){ix=ix+32}if(x1>x2){ix=ix-32)

 

Dlaczego jako instrukcję inicjalizującą nie mogę wrzucić warunku? Jest to niedopuszczalny błąd? Oczywiście jestem w stanie to zrobić inaczej, po prostu jestem ciekawy co do tego, czy to jest wymóg tego programu, czy tak ogólnie w C++ czy innych językach jest. Z góry wielkie dzięki za odpowiedź.

Odnośnik do komentarza
Udostępnij na innych stronach

ani w GML ani w C++, czy .NETcie taka skladania nie przejdzie. W GMLu tylko osobne petle for per warunek - pogrupowac i da rade

Odnośnik do komentarza
Udostępnij na innych stronach

zgaza sie, ale to nie jest if, tylko inline-if i niewiele jezykow go wykorzystuje (to chcialem zaznaczyc autorowi posta, ktory twierdzil, ze tamta skladnia ifa wystepuje w normalnych jezykach, bo nie) :P

Odnośnik do komentarza
Udostępnij na innych stronach

jak by interesowalo kogos innego to zrobilem przyklad :)

wystarczy wrzucic do draw eventu

GML
if ( keyboard_check_released(vk_space) ) {

x1=get_integer("dej x1","");

x2=get_integer("dej x2","");

};

for ( if(x1<x2){x3=-5;} else {x3=5}; x3*sign(x3)<15; if(x1<x2){x3-=1} else {x3+=1} ){

draw_text(room_width*.5+22*(x3-5*sign(x3)), 30, string(x3)+", " );

};

draw_text(2, 5, " x1= "+string(x1)+" x2= "+string(x2)+" x3= "+string(x3) + " SPACE wloz x1 and x2, jesli x1<x2 pak wyniky beda ponizej zera" );

a v create eventu
GML
x1=1;

x2=2;

mozna tez modyfikowac, tylko po IF wzsystko musi byc w {}
GML
for ( if(x1<x2){x3=-5; if(x1<x2){x3=-5;}; } else {x3=5}; x3*sign(x3)<(15); if(x1<x2){x3-=1} else {x3+=1} )
do warunku konca for niebylo mozna dac if :)
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ę...