^#$PAUL$#^ Opublikowano 30 Listopada 2010 Udostępnij Opublikowano 30 Listopada 2010 Zacząłem tworzyć symulatro biathlonu, ale mam taki oto problem: gm pisze mi, że jest zły zakres tablicy. Kompletnie nie wiem dlaczego może tak się dziać. Bardzo proszę o waszą pomoc i z góry dziękuję za pomoc. to jest z create objektu obj_engine GML ini_open("zawodnicy.txt"); dlugosc = ini_read_real("info","trasa",0); zawodnicy = ini_read_real("info","zawodnicy",0); rodzaj=ini_read_string("info","rodzaj","rodzaj"); podbiegi = ini_read_real("info","podbiegi",0); for (i=1; i<=zawodnicy; i+=1) { nazwisko=ini_read_string(string(i),"nazwisko","nazwisko"); imie=ini_read_string(string(i),"imie","imie"); kraj=ini_read_string(string(i),"kraj","kraj"); sila=ini_read_real(string(i),"sila",0); wytrzymalosc=ini_read_real(string(i),"wytrzymalosc",0); szybkosc=ini_read_real(string(i),"szybkosc",0); global.strzelanie=ini_read_real(string(i),"strzelanie",0); szybkosc_strzelania=ini_read_real(string(i),"szybkosc_strzelania",0); } ini_close(); dalszy ciąg create GML if (rodzaj=='sprint') { sprint();} if (rodzaj=='IND') { ind();} if (rodzaj=='sztafeta') { sztafeta();} if (rodzaj=='masowy') { masowy();} if (rodzaj=='poscig') { poscig();} funkcja sprint GML czas_o=dlugosc*2; for (i=1; i<=zawodnicy; i+=1) { szczescie_strzelanie1=random_range(-30,30); suma=szczescie_strzelanie1+strzelanie;//w tym miejscu jest bląd w zakresie tablicy strzelanie if (suma<=16){pudla[1,i]=5;} if (suma<=32 & suma>16){pudla[1,i]=4;} if (suma<=48 & suma>32){pudla[1,i]=3;} if (suma<=64 & suma>48){pudla[1,i]=2;} if (suma<=80 & suma>64){pudla[1,i]=1;} if (suma<=150 & suma>80){pudla[1,i]=0;} szczescie_strzelanie2=random_range(-30,30); suma=szczescie_strzelanie2+strzelanie; //tu też pewnie jest błąd, ale nie sprawdzłem if (suma<=16){pudla[2,i]=5;} if (suma<=32 & suma>16){pudla[2,i]=4;} if (suma<=48 & suma>32){pudla[2,i]=3;} if (suma<=64 & suma>48){pudla[2,i]=2;} if (suma<=80 & suma>64){pudla[2,i]=1;} if (suma<=150 & suma>80){pudla[2,i]=0;} pudla_o=pudla[1,i] + pudla[2,i]; } ini_open('wyniki.txt'); ini_write_real('pudla','1',pudla[1,1]); ini_write_real('pudla','2',pudla[2,1]); ini_close(); show_message('Zapisano'); plik ini z którego wczytywane są dane: [info] rodzaj=sprint trasa=10 podbiegi=5 zawodnicy=1 [1] nazwisko=Sikora imie=Tomasz kraj=POL sila=50 wystrzymalosc=50 szybkosc=50 strzelanie=50 szybkosc_strzelania=50 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 30 Listopada 2010 Udostępnij Opublikowano 30 Listopada 2010 w create inicjujesz global.strzelanie a w skrypcie chcesz się odwołać do nieistniejącej tablicy strzelanie Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
^#$PAUL$#^ Opublikowano 30 Listopada 2010 Autor Udostępnij Opublikowano 30 Listopada 2010 nie wiem skąd te global tam się wzięło :jezor: , ale teraz czepia się zakresu zmiennej pudla[1,i] Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 30 Listopada 2010 Udostępnij Opublikowano 30 Listopada 2010 Bo teraz nie spełniają się warunki na tą sumę, która ci inicjuje pudła. Dałeś tam pojedynczego & a powinien być &&. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
^#$PAUL$#^ Opublikowano 30 Listopada 2010 Autor Udostępnij Opublikowano 30 Listopada 2010 ok dzięki teraz działa :thumbsup: 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ę