killhunt Opublikowano 23 Listopada 2013 Udostępnij Opublikowano 23 Listopada 2013 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 Więcej opcji udostępniania...
PsichiX Opublikowano 23 Listopada 2013 Udostępnij Opublikowano 23 Listopada 2013 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 Więcej opcji udostępniania...
killhunt Opublikowano 23 Listopada 2013 Autor Udostępnij Opublikowano 23 Listopada 2013 Dobra, wielkie dzięki za odpowiedź, ciekawy byłem. Temat można zamknąć Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Utermiko Opublikowano 23 Listopada 2013 Udostępnij Opublikowano 23 Listopada 2013 Jest jeszcze coś takiego jak: (warunek ? jeśli_prawda : jeśli_fałsz) i to powinno przejść, aczkolwiek w GM'ie chyba nie ma tego operatora. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
PsichiX Opublikowano 23 Listopada 2013 Udostępnij Opublikowano 23 Listopada 2013 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 Więcej opcji udostępniania...
ereg Opublikowano 24 Listopada 2013 Udostępnij Opublikowano 24 Listopada 2013 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 eventuGML 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 Więcej opcji udostępniania...
I am Lord Opublikowano 24 Listopada 2013 Udostępnij Opublikowano 24 Listopada 2013 Fajne, 2 pętle w jednej. Tylko ciekawi mnie jak z optymalizacją jest. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę