Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: TheBadzoo poslato Avgust 27, 2018, 18:28:26 POSLE PODNE

Naslov: Run time error 4: "Array index out of bounds" HITNO
Poruka od: TheBadzoo poslato Avgust 27, 2018, 18:28:26 POSLE PODNE
Problem(error/warning): Pa kada treba timer da seta neaktivnost izbaci mi u konzoli ovo dole,a pritom na serveru sve lepo radi,znaci seta neaktivnost.
Dio skripte:Evo linija
[pawn](nidje veze)  18727 :print(" ");[/pawn]
[pawn]18465: if( VehicleInfo[ c ][ vUsage ] == PRIVATNO_VOZILO && VehicleInfo[ c ][ vOwned ] == 1 ) {[/pawn]
[pawn](nidje veze)   23941 : for( new i = 1; i < MAX_GZONE; i++ ) {[/pawn]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log):[pawn] Run time error 4: "Array index out of bounds"
Attempted to read/write array element at index 1500 in array of size 1500[/pawn]
Slika/video ingame problema(obavezno ako je ingame problem): Evo tacno sta mi izbacuje  https://pastebin.com/dAMGNjSK
Naslov: Odg: Run time error 4: "Array index out of bounds" HITNO
Poruka od: Bašovski poslato Avgust 27, 2018, 18:52:24 POSLE PODNE
Pošalji čitav kod od VozilaNeaktivnost () i DodajNeaktivnost ().
Ovo se javlja kada pristupaš element-indexu niza koji nije deklarisan u nizu istog.
Moguce je da si zamjenio definiciju tipa MAX_VOZILA sa MAX_???, npr.
MAX_VOZILA je označena brojem od 2000 vozila, dok je neki drugi MAX_??? označen sa 5000, itd.
Naslov: Odg: Run time error 4: "Array index out of bounds" HITNO
Poruka od: TheBadzoo poslato Avgust 27, 2018, 19:55:56 POSLE PODNE
[pawn]FUNCTION: VozilaNeaktivnost()
{
   for( new c = 0; c < MAX_VEHICLES; c++) {

      if( VehicleInfo[ c ][ vUsage ] == PRIVATNO_VOZILO && VehicleInfo[ c ][ vOwned ] == 1 ) {


           VehicleInfo[ c ][ vRegVreme ]--;
           if( VehicleInfo[ c ][ vRegVreme ] == 0 ) {

             VehicleInfo[ c ][ vReg ] = 0;
            VehicleInfo[ c ][ vTeh ] = 0;

         }
         if( VehicleInfo[ c ][ vRegVreme ] == -800) {

             Badzo_DestroyVehicle( VehicleInfo[ c ][ vID ] );

            VehicleInfo[ c ][ vVirtualWorld ] = 0;
            VehicleInfo[ c ][ vInterior ] = 0;

            VehicleInfo[ c ][ vOwned ] = 0;
            VehicleInfo[ c ][ vNeaktivnost ] = 0;
            VehicleInfo[ c ][ vPrice ] = -1;

            VehicleInfo[ c ][ vLokacijaX ] = -2112.0281;
            VehicleInfo[ c ][ vLokacijaY ] = 2729.6250;
            VehicleInfo[ c ][ vLokacijaZ ] = 166.0840;
            VehicleInfo[ c ][ vLokacijaA ] = 202.9713;

            VehicleInfo[ c ][ vID ] = Badzo_CreateVehicle( c, PRIVATNO_VOZILO, -1, -1, -1, VehicleInfo[ c ][ vModel ], VehicleInfo[ c ][ vLokacijaX ], VehicleInfo[ c ][ vLokacijaY ], VehicleInfo[ c ][ vLokacijaZ ]+1.0, VehicleInfo[ c ][ vLokacijaA ], VehicleInfo[ c ][ vColor1 ], VehicleInfo[ c ][ vColor2 ], 300000 );
            LinkVehicleToInterior( VehicleInfo[ c ][ vID ], VehicleInfo[ c ][ vInterior ] );
             SetVehicleVirtualWorld( VehicleInfo[ c ][ vID ], VehicleInfo[ c ][ vVirtualWorld ] );

             strmid( VehicleInfo[ c ][ vOwner ], "Drzava", 0, strlen( "Drzava" ), 32);

            TuneVehicle( c );

               SetVehicleParamsEx( VehicleInfo[ c ][ vID ], 0, 0, 0, VehicleInfo[ c ][ vLocked ], 0, 0, 0 );
             if( IsVehicleBajs( VehicleInfo[ c ][ vID ] ) ) {
               SetVehicleParamsEx( VehicleInfo[ c ][ vID ], 1, 0, 0, VehicleInfo[ c ][ vLocked ], 0, 0, 0 );
            }

         }

         VehicleInfo[ c ][ vNeaktivnost ]++;
         if( VehicleInfo[ c ][ vNeaktivnost ] >= 700) {

            new string[ 256 ];

            format( string, sizeof( string ), "VoziloID: %d | Prodano zbog neaktivnosti vlasnika %s ", c, VehicleInfo[ c ][ vOwner ] );
            LogSave( "Ostalo/LogVozilaNeaktivnost.log", string );

             Badzo_DestroyVehicle( VehicleInfo[ c ][ vID ] );

            VehicleInfo[ c ][ vVirtualWorld ] = 0;
            VehicleInfo[ c ][ vInterior ] = 0;

            VehicleInfo[ c ][ vOwned ] = 0;
            VehicleInfo[ c ][ vNeaktivnost ] = 0;
            VehicleInfo[ c ][ vPrice ] = -1;

            VehicleInfo[ c ][ vLokacijaX ] = -2112.0281;
            VehicleInfo[ c ][ vLokacijaY ] = 2729.6250;
            VehicleInfo[ c ][ vLokacijaZ ] = 166.0840;
            VehicleInfo[ c ][ vLokacijaA ] = 202.9713;

            VehicleInfo[ c ][ vID ] = Badzo_CreateVehicle( c, PRIVATNO_VOZILO, -1, -1, -1, VehicleInfo[ c ][ vModel ], VehicleInfo[ c ][ vLokacijaX ], VehicleInfo[ c ][ vLokacijaY ], VehicleInfo[ c ][ vLokacijaZ ]+1.0, VehicleInfo[ c ][ vLokacijaA ], VehicleInfo[ c ][ vColor1 ], VehicleInfo[ c ][ vColor2 ], 300000 );
            LinkVehicleToInterior( VehicleInfo[ c ][ vID ], VehicleInfo[ c ][ vInterior ] );
             SetVehicleVirtualWorld( VehicleInfo[ c ][ vID ], VehicleInfo[ c ][ vVirtualWorld ] );

             strmid( VehicleInfo[ c ][ vOwner ], "Drzava", 0, strlen( "Drzava" ), 32);

            TuneVehicle( c );

               SetVehicleParamsEx( VehicleInfo[ c ][ vID ], 0, 0, 0, VehicleInfo[ c ][ vLocked ], 0, 0, 0 );
             if( IsVehicleBajs( VehicleInfo[ c ][ vID ] ) ) {
               SetVehicleParamsEx( VehicleInfo[ c ][ vID ], 1, 0, 0, VehicleInfo[ c ][ vLocked ], 0, 0, 0 );
            }
          }
          SaveVehicle( c );
      }
   }
}[/pawn]

[pawn]FUNCTION: DodajNeaktivnost()
{
    print(" ");
    print("*******TEST DODAVANJE NEAKTIVNOSTI POKRENUTO");

   ImovinaNeaktivnost();
   StanNeaktivnost();
   VikendicaNeaktivnost();
   FirmaNeaktivnost();
   VozilaNeaktivnost();

    print(" ");
   print("DODAVANJE NEAKTIVNOSTI USPESNO ZAVRSENO*******");
    print(" ");
}[/pawn]
Naslov: Odg: Run time error 4: "Array index out of bounds" HITNO
Poruka od: TheBadzoo poslato Avgust 28, 2018, 00:19:00 PRE PODNE
Zna'l neko ?  :(
Naslov: Odg: Run time error 4: "Array index out of bounds" HITNO
Poruka od: TheBadzoo poslato Avgust 28, 2018, 20:30:37 POSLE PODNE
Zna'l neko ? V2
Naslov: Odg: Run time error 4: "Array index out of bounds" HITNO
Poruka od: TheBadzoo poslato Avgust 30, 2018, 15:06:02 POSLE PODNE
Neko last version ?
Naslov: Odg: Run time error 4: "Array index out of bounds" HITNO
Poruka od: Paul Castellano poslato Avgust 31, 2018, 01:04:24 PRE PODNE
Bašovski ti je sve rekao.

for( new c = 0; c < MAX_VEHICLES; c++) {


MAX_VEHICLES je 2000 po defaultu a tvoj VehicleInfo vjerovatno nije 2000,i vjerovatno si zamjenio MAX_VEHICLES sa MAX_VOZILA(primjer) kako ti je već rečeno.
Provjeri kod new VehicleInfo veličinu arraya i postavi je u toj for petlji umjesto MAX_VEHICLES i neće biti problema.
Naslov: Odg: Run time error 4: "Array index out of bounds" HITNO
Poruka od: TheBadzoo poslato Avgust 31, 2018, 01:45:29 PRE PODNE
Citat: Paul Castellano poslato Avgust 31, 2018, 01:04:24 PRE PODNE
Bašovski ti je sve rekao.

for( new c = 0; c < MAX_VEHICLES; c++) {


MAX_VEHICLES je 2000 po defaultu a tvoj VehicleInfo vjerovatno nije 2000,i vjerovatno si zamjenio MAX_VEHICLES sa MAX_VOZILA(primjer) kako ti je već rečeno.
Provjeri kod new VehicleInfo veličinu arraya i postavi je u toj for petlji umjesto MAX_VEHICLES i neće biti problema.
Hvala burazeru,fixano  :)