Skocz do zawartości

Błąd w zakresie tablicy


^#$PAUL$#^

Rekomendowane odpowiedzi

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

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