[POMOC] OnPlayerUpdate 1 problem.

Započeo Obrisan korisnik
21. Avg. 2013. Zaključano
340
pregleda
2
postova
Deleted User
Obrisan korisnik
21. Avg. 2013.
Skripta: moja od nule
Opis problema: ovo mi je crash detector izbacio u server.log-u
[20:06:17] Run time error 4: "Array index out of bounds"
[20:06:17]   Accessing element at negative index -400
[20:06:17] AMX backtrace:
[20:06:17] #0 001b0cec in public FIXES_OnPlayerUpdate () from SSRP.amx
[20:06:17] #1 0001a89c in ?? () from SSRP.amx
[20:06:17] #2 00009b70 in public OnPlayerUpdate () from SSRP.amx

Dio skripte: evo vam onplayerupdate
///////////////////////////////////////////////////////////////////////////
public OnPlayerUpdate(playerid)
{
/////////////////////////////////////////////////////////////////////////////////////
if(GetSpeed(playerid) > 290)
{
if(!VoziloJeAvion(GetPlayerVehicleID(playerid)))
{
    new string;
    SCM(playerid,-1," "CRVENA"Admini su obavesteni o koristenju speed hacka!"); TogglePlayerControllable(playerid, false);
format(string, sizeof(string), " "ZELENA"Igrac %s je moguce da koristi speed hack!",GetName(playerid));
AdminGameMaster(-1, string);
return 1;
}
}
////////////////////////////////////////////////////////////////////////////////////
new Float:Health; GetPlayerHealth(playerid, Health);
if(Health > HeltiIgraca)
{
SetPlayerHealth(playerid, HeltiIgraca);
return 1;
}
////////////////////////////////////////////////////////////////////////////////////
new Float:Armour; GetPlayerArmour(playerid, Armour);
if(Armour > 99.0)
{
SCM(playerid,-1," "CRVENA"Kikovani ste zbog armour hacka!");
Kick(playerid);
return 1;
}
////////////////////////////////////////////////////////////////////////////////////
if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK && PlayerInfo < 5)
{
SCM(playerid,-1," "CRVENA"Kikovani ste zbog jetpack hacka!");
Kick(playerid);
return 1;
}
////////////////////////////////////////////////////////////////////////////////////
//CheckWeapons(playerid);
    ///////////////////////////////////////////////////////////////////////////////////
if(KupovinaAuta == true)
{
new string;
    new Keys, ud, lr;
    GetPlayerKeys(playerid, Keys, ud, lr);
if(lr > 0)
{
AutoModel++;
if(AutoModel > PRODAJA_AUTA-1) { AutoModel = 0; }
DestroyVehicle(IzlozbenoAuto);
IzlozbenoAuto = CreateVehicle(AutoSalon, AIZLOZBENO_X,AIZLOZBENO_Y,AIZLOZBENO_Z,AIZLOZBENO_A, 1, 1, 30000);
format(string,sizeof(string),"%s",ImenaVozila[GetVehicleModel(IzlozbenoAuto) - 400]);
PlayerTextDrawSetString(playerid,TDProdajaVozila,string);
format(string,sizeof(string),"Cijena: ~g~%d$",AutoSalon);
PlayerTextDrawSetString(playerid,TDProdajaVozila,string);
}
else if(lr < 0)
{
AutoModel--;
if(AutoModel < 0) { AutoModel = PRODAJA_AUTA-1; }
DestroyVehicle(IzlozbenoAuto);
IzlozbenoAuto = CreateVehicle(AutoSalon, AIZLOZBENO_X,AIZLOZBENO_Y,AIZLOZBENO_Z,AIZLOZBENO_A, 1, 1, 30000);
format(string,sizeof(string),"%s",ImenaVozila[GetVehicleModel(IzlozbenoAuto) - 400]);
PlayerTextDrawSetString(playerid,TDProdajaVozila,string);
format(string,sizeof(string),"Cijena: ~g~%d$",AutoSalon);
PlayerTextDrawSetString(playerid,TDProdajaVozila,string);
}
else if(Keys & KEY_SECONDARY_ATTACK)
{
if(PlayerInfo != -1) return SCM(playerid,-1," "CRVENA"Vec posedujes auto!");
if(PlayerInfo < AutoSalon) return SCM(playerid,-1," "CRVENA"Nemate dovoljno novca!");
for(new i = 0; i < sizeof(VoziloInfo); i++)
{
    new Fajl;
  format(Fajl, sizeof(Fajl), AUTO_FILE, i);
      if(!fexist(Fajl))
      {
    new poz = random(sizeof(RandomAutoSpawn));
    g_NovacMinus(playerid,AutoSalon);
    PlayerInfo = i;
VoziloInfo = AutoSalon;
VoziloInfo = RandomAutoSpawn;
VoziloInfo = RandomAutoSpawn;
VoziloInfo = RandomAutoSpawn;
VoziloInfo = RandomAutoSpawn;
VoziloInfo = 0;
VoziloInfo = 0;
VoziloInfo = 1;
VoziloInfo = 1;
VoziloInfo = 0;
VoziloInfo = 0;
VoziloInfo = -1;
VoziloInfo = 0;
VoziloInfo = 0;
strmid(VoziloInfo, GetName(playerid), 0, strlen(GetName(playerid)), 999);
TogglePlayerControllable(playerid, 1);
VoziloInfo = CreateVehicle(AutoSalon, VoziloInfo,VoziloInfo,VoziloInfo,VoziloInfo, VoziloInfo, VoziloInfo, 30000);
          KupovinaAuta = false; autokatalog = 0;
          UkloniVozilaTD(playerid); SetCameraBehindPlayer(playerid);
          SacuvajVozilo(i); SavePlayer(playerid); StatusMotora(playerid, 1);
          SetPlayerCheckpoint(playerid, VoziloInfo,VoziloInfo,VoziloInfo, 5.0);
          PosaoGPS = 1; Fuel[GetPlayerVehicleID(playerid)] = 45;
          SCM(playerid,-1,"AC | "ZUTA"Uspjesno ste kupili auto!");
          SCM(playerid,-1,"AC | "ZUTA"Autom mozete upravljati komandom /v!");
          SCM(playerid,-1,"AC | "ZUTA"Lokacija vaseg auta je oznacena crveno na mapi!");
          SCM(playerid,-1,"AC | "ZUTA"Ako ne parkirate svoje vozilo negdje drugo, u roku 24h ce vam biti prodato!");
break;
}
}
}
    else if (Keys &  KEY_JUMP)
    {
    TogglePlayerControllable(playerid, 1);
    SCM(playerid, -1, " "CRVENA"Odustali ste od kupovine auta!");
    KupovinaAuta = false; autokatalog = 0;
UkloniVozilaTD(playerid);
SetCameraBehindPlayer(playerid);
    }
}
///////////////////////////////////////////////////////////////////////////////////
if(RadioAktiviran == 1 && !IsPlayerInAnyVehicle(playerid)) return RadioAktiviran = 0, StopAudioStreamForPlayer(playerid);
///////////////////////////////////////////////////////////////////////////////////
if(UsaoAutoProdaja != -1 && !IsPlayerInAnyVehicle(playerid)) return UsaoAutoProdaja = -1;
    ///////////////////////////////////////////////////////////////////////////////////
if(UsaoMotorProdaja != -1 && !IsPlayerInAnyVehicle(playerid)) return UsaoMotorProdaja = -1;
////////////////////////////////////////////////////////////////////////////////////
if(UsaoAvionProdaja != -1 && !IsPlayerInAnyVehicle(playerid)) return UsaoAvionProdaja = -1;
////////////////////////////////////////////////////////////////////////////////////
if(UsaoPloviloProdaja != -1 && !IsPlayerInAnyVehicle(playerid)) return UsaoPloviloProdaja = -1;
///////////////////////////////////////////////////////////////////////////////////
if(Poligon >= 1)
{
if(IsPlayerInAnyVehicle(playerid))
    {
        if(GetSpeed(playerid) > 100)
        {
            Poligon = 0;
    DisablePlayerCheckpoint(playerid);
RemovePlayerFromVehicle(playerid);
SCM(playerid,-1, ": "CRVENA"Pali ste na vozackom ispitu jer ste prekoracili briznu od 100kmh na gradskoj voznji!");
    SetVehicleToRespawn(GetPlayerVehicleID(playerid));
}
}
}
///////////////////////////////////////////////////////////////////////////////////
if(IsPlayerInAnyVehicle(playerid))
  {
      if(!VoziloJeBicikla(GetVehicleModel(GetPlayerVehicleID(playerid))))
      {
  new sspeed;
new string;
new vozilo = GetPlayerVehicleID(playerid);
  format(sspeed, sizeof(sspeed), "%d", GetSpeed(playerid));
  PlayerTextDrawSetString(playerid, BRZINOMJER, sspeed);
  new Float: Pos;
  GetVehicleVelocity(GetPlayerVehicleID(playerid), Pos, Pos, Pos);
  new keys, ud, lr;
  GetPlayerKeys(playerid, keys, ud, lr);
  if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  {
                format(string,sizeof(string),"%s", ImenaVozila[GetVehicleModel(vozilo)-400]);
                PlayerTextDrawSetString(playerid, BRZINOMJER, string);
  }
  }
    }
    ///////////////////////////////////////////////////////////////////////////////////
return 1;
}
Deleted User
Obrisan korisnik
22. Avg. 2013.
bump, zna li neko hitno je??

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha