SA-MP Forums Archive
Crash Help! +2REP - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Crash Help! +2REP (/showthread.php?tid=354280)



Crash Help! +2REP - Aloushi - 26.06.2012

pawn Код:
forward VehicleRespawn(playerid, vehicleid, ispassenger);
public VehicleRespawn(playerid, vehicleid, ispassenger)
{
   
    GameTextForPlayer(playerid,"~r~Vehicles ~g~Respawn",5000,5);
    SendClientMessage(playerid, COLOR_BLUE, "{CFF55F}*INFO: {FFFFFF}Vehicle Respawn.");

   
    for(new i = 0; i < MAX_VEHICLES; i ++ ) {
    for(new o = 0, a = GetMaxPlayers(); o < a; o ++ ) {
    if(!IsPlayerConnected(o)) continue;
    if(IsAnyBodyInVehicle(i)) continue;
    if(CurrentSpawnedVehicle[i]) continue;
   
    SetVehicleToRespawn(i);
    DestroyVehicle(CurrentSpawnedVehicle[i]);
   

   
   
   


             
    }
    }

    return 1;
}

stock IsAnyBodyInVehicle(vid)
{
for(new i = 0; i < GetMaxPlayers(); i ++ ){
if(IsPlayerInVehicle(i, vid)) return 1;

}
return 0;
}

its got error by crashdetect plugin how to fix this problem


Код:
[13:08:09] [debug] Run time error 4: "Array index out of bounds"
[13:08:09] [debug]   Accessing element at index 500 past array upper bound 499
[13:08:09] [debug] Backtrace:
[13:08:09] [debug] #0  001bf54c in public VehicleRespawn () from Faour.amx



Re: Crash Help! +2REP - Skaizo - 26.06.2012

you created many brackets
pawn Код:
forward VehicleRespawn(playerid, vehicleid, ispassenger);
public VehicleRespawn(playerid, vehicleid, ispassenger)
{
    for(new i = 0; i < MAX_VEHICLES; i ++ )
    {
         for(new o = 0, a = GetMaxPlayers(); o < a; o ++ )
         {
                if(!IsPlayerConnected(o)) continue;
                if(IsAnyBodyInVehicle(i)) continue;
                if(CurrentSpawnedVehicle[i]) continue;
                GameTextForPlayer(playerid,"~r~Vehicles ~g~Respawn",5000,5);
                SendClientMessage(playerid, COLOR_BLUE, "{CFF55F}*INFO: {FFFFFF}Vehicle Respawn.");
                SetVehicleToRespawn(i);
                DestroyVehicle(CurrentSpawnedVehicle[i]);
         }
    }
    return 1;
}

stock IsAnyBodyInVehicle(vid)
{
      for(new i = 0; i < GetMaxPlayers(); i ++ )
      {
           if(IsPlayerInVehicle(i, vid)) return 1;
      }
      return 1;
}



Re: Crash Help! +2REP - Aloushi - 26.06.2012

Quote:
Originally Posted by Skaizo
Посмотреть сообщение
you created many brackets
pawn Код:
forward VehicleRespawn(playerid, vehicleid, ispassenger);
public VehicleRespawn(playerid, vehicleid, ispassenger)
{
    for(new i = 0; i < MAX_VEHICLES; i ++ )
    {
         for(new o = 0, a = GetMaxPlayers(); o < a; o ++ )
         {
                if(!IsPlayerConnected(o)) continue;
                if(IsAnyBodyInVehicle(i)) continue;
                if(CurrentSpawnedVehicle[i]) continue;
                GameTextForPlayer(playerid,"~r~Vehicles ~g~Respawn",5000,5);
                SendClientMessage(playerid, COLOR_BLUE, "{CFF55F}*INFO: {FFFFFF}Vehicle Respawn.");
                SetVehicleToRespawn(i);
                DestroyVehicle(CurrentSpawnedVehicle[i]);
         }
    }
    return 1;
}

stock IsAnyBodyInVehicle(vid)
{
      for(new i = 0; i < GetMaxPlayers(); i ++ )
      {
           if(IsPlayerInVehicle(i, vid)) return 1;
      }
      return 1;
}
Код:
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20771) : error 017: undefined symbol "ModCar"
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20909) : warning 217: loose indentation
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20909) : error 029: invalid expression, assumed zero
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20909) : error 004: function "OnPlayerExitVehicle" is not implemented
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20915) : warning 225: unreachable code
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20915) : error 029: invalid expression, assumed zero
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20915) : error 017: undefined symbol "ModCar"
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20916) : error 029: invalid expression, assumed zero
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20916) : error 017: undefined symbol "ModCar"
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20917) : error 017: undefined symbol "playerid"
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20924) : error 017: undefined symbol "playerid"
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20925) : error 017: undefined symbol "playerid"
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20927) : error 017: undefined symbol "playerid"
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20935) : warning 225: unreachable code
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20935) : error 029: invalid expression, assumed zero
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20935) : error 004: function "OnPlayerText" is not implemented
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20938) : error 017: undefined symbol "playerid"
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20939) : error 017: undefined symbol "playerid"
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20940) : error 017: undefined symbol "playerid"
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20942) : error 017: undefined symbol "playerid"
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20950) : warning 225: unreachable code
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20950) : error 029: invalid expression, assumed zero
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20950) : error 004: function "Streamer_OnPlayerEnterCP" is not implemented
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20955) : warning 225: unreachable code
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20955) : error 029: invalid expression, assumed zero
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20955) : error 004: function "Streamer_OnPlayerLeaveCP" is not implemented
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20960) : warning 225: unreachable code
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20960) : error 029: invalid expression, assumed zero
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20960) : error 004: function "Streamer_OnPlayerEnterRaceCP" is not implemented
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20965) : warning 225: unreachable code
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20965) : error 029: invalid expression, assumed zero
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20965) : error 004: function "Streamer_OnPlayerLeaveRaceCP" is not implemented
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20970) : warning 225: unreachable code
C:\Users\Abed\Desktop\stunt 0.3e\gamemodes\Faour.pwn(20970) : error 029: invalid expression, assumed zero

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


26 Errors.



Re: Crash Help! +2REP - [MM]RoXoR[FS] - 26.06.2012

pawn Код:
forward VehicleRespawn(playerid, vehicleid, ispassenger);
public VehicleRespawn(playerid, vehicleid, ispassenger)
{
    GameTextForPlayer(playerid,"~r~Vehicles ~g~Respawn",5000,5);
    SendClientMessage(playerid, COLOR_BLUE, "{CFF55F}*INFO: {FFFFFF}Vehicle Respawn.");

    for(new i = 0; i < MAX_VEHICLES; i++ )
    {
        for(new o = 0; o < GetMaxPlayers(); o++ )
        {
            if(!IsPlayerConnected(o)) continue;
            if(IsAnyBodyInVehicle(i)) continue;
            if(CurrentSpawnedVehicle[i]) continue;

            SetVehicleToRespawn(i);
            DestroyVehicle(CurrentSpawnedVehicle[i]);
        }
    }

    return 1;
}

stock IsAnyBodyInVehicle(vid)
{
    for(new i = 0; i < GetMaxPlayers(); i++ )
    {
        if(IsPlayerInVehicle(i, vid)) return 1;
    }
    return 0;
}[
The code is fine.


Re: Crash Help! +2REP - Grand_Micha - 26.06.2012

pawn Код:
forward VehicleRespawn(playerid, vehicleid, ispassenger);
public VehicleRespawn(playerid, vehicleid, ispassenger)
{
    for(new i = 0; i < MAX_VEHICLES; i ++ )
    {
         for(new o = 0, a = GetMaxPlayers(); o < a; o ++ )
         {
                if(!IsPlayerConnected(o)) continue;
                if(IsAnyBodyInVehicle(i)) continue;
                if(CurrentSpawnedVehicle[i]) continue;
                GameTextForPlayer(playerid,"~r~Vehicles ~g~Respawn",5000,5);
                SendClientMessage(playerid, COLOR_BLUE, "{CFF55F}*INFO: {FFFFFF}Vehicle Respawn.");
                SetVehicleToRespawn(i);
                DestroyVehicle(CurrentSpawnedVehicle[i]);
         }
    }
    return 1;
}

stock IsAnyBodyInVehicle(vid)
{
      for(new i = 0; i < GetMaxPlayers(); i ++ )
      {
           if(IsPlayerInVehicle(i, vid)) return 1;
      }
      return 1;
}
Are you aware of the fact that you have a loop in a loop in a loop?


You do not need any of that shit. Stop thinking your script is "cool" and "unique." What you are going to do now is replace all of that shit with this:

pawn Код:
//.........
for(new i=0; i<=MAX_VEHICLES; i++) SetVehicleToRespawn(i);
//.....