Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: #Montana poslato Februar 28, 2018, 17:55:38 POSLE PODNE

Naslov: Debug
Poruka od: #Montana poslato Februar 28, 2018, 17:55:38 POSLE PODNE
Problem(error/warning): Izbauje mi debug za onplayerdeath,samo mi nije jasno zasto to izbacuje kad je sve okej
Dio skripte: Stavljam sta treba
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log):[17:34:12] [debug] Run time error 4: "Array index out of bounds"
[17:34:12] [debug]  Accessing element at index 65535 past array upper bound 149
[17:34:12] [debug] AMX backtrace:
[17:34:12] [debug] #0 0021e7c4 in ?? (0, 65535, 255) from nwrp.amx
[17:34:12] [debug] #1 0000804c in public OnPlayerDeath (0, 65535, 255) from nwrp.amx
[17:34:12] [death] Montana died 255

Slika/video ingame problema(obavezno ako je ingame problem): //
Naslov: Odg: Debug
Poruka od: Łuk@ poslato Februar 28, 2018, 18:13:14 POSLE PODNE
mozda da das onplayerdeath??
Naslov: Odg: Debug
Poruka od: Lukiii poslato Februar 28, 2018, 18:14:28 POSLE PODNE
@ Łuk@ Ocu tut da napravim nesto vezano za skriptanje koje glavni za to ako znas pito mumu nez slavicu sam poslo poruku nadam se da ces ti da mi kazes
Naslov: Odg: Debug
Poruka od: Łuk@ poslato Februar 28, 2018, 18:16:31 POSLE PODNE
Citat: Scripter|Å,Ï...χχı poslato Februar 28, 2018, 18:14:28 POSLE PODNE
@ Łuk@ Ocu tut da napravim nesto vezano za skriptanje koje glavni za to ako znas pito mumu nez slavicu sam poslo poruku nadam se da ces ti da mi kazes
za to imas pm ali evo ovdje postavi http://balkan-samp.com/forum/index.php?board=27.0
Naslov: Odg: Debug
Poruka od: #Montana poslato Februar 28, 2018, 18:17:48 POSLE PODNE
Citat: Łukmember=1996][/member] link=topic=120226.msg824876#msg824876 date=1519837994]
mozda da das onplayerdeath??
[pawn]public OnPlayerDeath(playerid, killerid, reason)
{
    ResetPlayerWeaponsEx(playerid);
      AntiFakekill[playerid]++;
   SetTimerEx("AntiFakeKillTimer_H", 600,false,"i",playerid);
   AttachObjectRemove(playerid);
   KosiDrogu[playerid] = 0;
    SvercaMats[playerid] = 0;
    SvercaMunicije[playerid] = 0;
   KillTimer_H(ZauzimanjeAC[playerid]);
    DisablePlayerCheckpoint(playerid);
   PosaoGPS[playerid] = 0;
   HealthSynced[playerid] = 0;
   IgracSpawnan[playerid] = 0;
   DisablePlayerCheckpoint(playerid);
   Lovi[playerid] = 0;
   if(PI[playerid][pFPS] == 1)
    {
       SetCameraBehindPlayer(playerid);
       DestroyObject(FPS[playerid]);
    }
   if(AdminUbio[playerid] == 0 && IgracNaEventu[playerid] == 0 && Uwaru[playerid] == 0)
   {
       Umire[playerid] = 1;
       PrikaziSmrtTD(playerid);
      if(killerid != INVALID_PLAYER_ID)
      {
          new killstring[200];
          new deathreason[20];
          if(reason == 0) { deathreason = "Rucno"; }
          else if(reason == 36 || reason == 35 || reason == 40 || reason == 16) { deathreason = "Eksplozija"; }
          else if(reason == 18 || reason == 37) { deathreason = "Zapaljen"; }
          else if(reason == 51) { deathreason = "Eksplozija"; }
          else if(reason == 50) { deathreason = "Ubistvo Helisom"; }
          else { GetWeaponName(reason, deathreason, sizeof(deathreason)); }
          format(killstring, sizeof(killstring),"{1A94E6}[AC] {FFFFFF}%s [ID:%d] je ubio igraca %s [ID:%d] - Vrsta: %s", Ime_Igraca(killerid),killerid, Ime_Igraca(playerid),playerid, deathreason);
          StaffPoruka(COLORSET, killstring);
      }
      else
      {
          new killstring[126];
          new text[30];
          if(reason == 51) { text = "Eksplozija"; }
          else if(reason == 53) { text = "Davljenje"; }
          else if(reason == 54) { text = "Sudar/Pad"; }
          else { text = "Death"; }
          format(killstring, sizeof(killstring),"{1A94E6}[AC] {FFFFFF}%s [ID:%d] je umro. [%s]", Ime_Igraca(playerid), playerid, text);
          StaffPoruka(COLORSET, killstring);
      }
       if(killerid != INVALID_PLAYER_ID)
       {
          PI[killerid][Ubistava]++; PI[playerid][Smrti]++;
         ResetujVar(playerid);
         if(IgracPolicajac(killerid))
         {
             PI[killerid][TrazeniNivo] = 0;
            SetPlayerWantedLevel_Ex(killerid,0);
          }
       }
       if(killerid != INVALID_PLAYER_ID)
       {
         if(!IgracPolicajac(killerid) && IsPlayerConnected(playerid))
         {
            if(PI[killerid][Zatvor] == 0)
            {
                    PI[killerid][TrazeniNivo] = 3;
                SetPlayerWantedLevel_Ex(killerid,3);
               PostaviWanted(killerid, "Ubistvo", "Nepoznat");
            }
         }
      }
      if(killerid != INVALID_PLAYER_ID)
       {
         if(GetPlayerWantedLevel_Ex(killerid) > 18)
         {
            PI[killerid][TrazeniNivo] += 18;
            SetPlayerWantedLevel_Ex(killerid, PI[playerid][TrazeniNivo]);
         }
      }
      if(killerid != INVALID_PLAYER_ID)
       {
         if(IsPlayerConnected(killerid) && GetPlayerState(killerid) == PLAYER_STATE_DRIVER)
         {
            format(nellys,sizeof(nellys), "{1A94E6}[AC] {FFFFFF}%s [ID:%d] je uradio Drive By nad igracem %s [ID:%d]!", Ime_Igraca(killerid), killerid, Ime_Igraca(playerid), playerid);
             StaffPoruka(COLORSET, nellys);
         }
      }
      if(WantedPoint[playerid] > 0)
      {
         new wanted = WantedPoint[playerid];
         new diecash = 0;
          while(WantedPoint[playerid] > 0)
          {
              diecash += 150;
              WantedPoint[playerid] --;
          }
          SendLocalMessage(playerid, "(( Izgubili ste $%d zbog umiranja sa %d trazenih poena.", diecash, wanted);
           g_NovacMinus(playerid, diecash);
         format(nellys, sizeof(nellys), "{1A94E6}[AC] {FFFFFF}%s [ID:%d] je umro sa wanted level-om: %d.", GetName(playerid),playerid,PI[playerid][TrazeniNivo]);
          StaffPoruka(COLOR_WHITE, nellys);
          strmid(PI[playerid][pZlocinText], "Nema", 0, strlen("Nema"), 255);
           strmid(PI[playerid][pPrijavioText], "Nema", 0, strlen("Nema"), 255);
           strmid(PI[playerid][pPocinioText], "Nema", 0, strlen("Nema"), 255);
         format(nellys,sizeof(nellys),"[CENTRAL DISPACHER] Zlocinac %s je umro sa wanted levelom(%d).", GetName(playerid),PI[playerid][TrazeniNivo]);
         FamilyPoruka(1, TEAM_BLUE_COLOR, nellys);
         FamilyPoruka(2, TEAM_BLUE_COLOR, nellys);
         PI[playerid][TrazeniNivo] = 0;
         SetPlayerWantedLevel_Ex(playerid, PI[playerid][TrazeniNivo]);
         SavePlayer(playerid);
      }
      WantedPoint[playerid] = 0;
   }
   AdminUbio[playerid] = 0;
   IgracNaEventu[playerid] = 0;
   if(IgracVojnik[playerid] == 1)
   {
       Vojska--;
       EventSlotovi--;
       IgracVojnik[playerid] = 0;
   }
   if(PlayerBlind[playerid] == true)
   {
      PlayerBlind[playerid] = false;
      PlayerTextDrawHide(playerid, poveztd[playerid][0]);
      PlayerTextDrawHide(playerid, poveztd[playerid][1]);
   }
   if(TrakaStavljena[playerid] == true)
   {
      TrakaStavljena[playerid] = false;
   }
   if(IgracTerorista[playerid] == 1)
   {
       Teroristi--;
       EventSlotovi--;
       IgracTerorista[playerid] = 0;
   }
   if(IgracNaBaseball[playerid] == 1)
   {
      IgracNaBaseball[playerid] = 0;
      palicaekipa--;
      EventSlotovi--;
   }
   if(IgracNaMaraton[playerid] == 1)
   {
      IgracNaMaraton[playerid] = 0;
      Maratonci--;
      EventSlotovi--;
   }
   if(hSmetlar[playerid] == true)
   {
      DestroyPlayerObject(playerid,hSmece[playerid]);
       hSmetlar[playerid] = false;
       hVreca[playerid] = 0;
      hSmece[playerid] = -255;
        DisablePlayerCheckpoint(playerid);
   }
   if(EventVozilo[playerid] != -1)
   {
       for(new sl = 0; sl < sizeof(MestoKartTrka); sl++)
      {
          if(MestoKartTrka[sl] == EventVozilo[playerid])
         {
            MestoKartTrka[sl] = INVALID_VEHICLE_ID;
            break;
         }
      }
      for(new sf = 0; sf < sizeof(MestoSFTrka); sf++)
      {
          if(MestoSFTrka[sf] == EventVozilo[playerid])
            {
            MestoSFTrka[sf] = INVALID_VEHICLE_ID;
            break;
         }
      }
      for(new sc = 0; sc < sizeof(MestoInfTrka); sc++)
      {
          if(MestoInfTrka[sc] == EventVozilo[playerid])
           {
            MestoInfTrka[sc] = INVALID_VEHICLE_ID;
            break;
         }
      }
      for(new sq = 0; sq < sizeof(MestoGliserTrka); sq++)
      {
          if(MestoGliserTrka[sq] == EventVozilo[playerid])
           {
            MestoGliserTrka[sq] = INVALID_VEHICLE_ID;
            break;
         }
      }
      for(new dd = 0; dd < sizeof(MestoSeaTrka); dd++)
      {
           if(MestoSeaTrka[dd] == EventVozilo[playerid])
         {
            MestoSeaTrka[dd] = INVALID_VEHICLE_ID;
            break;
          }
      }
      for(new sr = 0; sr < sizeof(MestoCanndyTrka); sr++)
      {
           if(MestoCanndyTrka[sr] == EventVozilo[playerid])
         {
            MestoCanndyTrka[sr] = INVALID_VEHICLE_ID;
            break;
          }
      }
      DestroyVehicle(EventVozilo[playerid]);
       EventVozilo[playerid] = -1;
   }
   if(Uwaru[killerid] == 1)
   {
       new str[64];
      if(PI[killerid][pAlfa] == 1)
      {
          alfa++;
         format(str,sizeof(str),"~b~ALFA TIM: ~w~ %d",alfa);
         TextDrawSetString(WarTD[6], str);
         SetTimerEx("WarRespawn", 4000, false, "i", playerid);
      }
      else if(PI[killerid][pBeta] == 1)
      {
          beta++;
         format(str,sizeof(str),"~w~%d ~r~:BETA TIM",beta);
         TextDrawSetString(WarTD[7], str);
         SetTimerEx("WarRespawn", 4000, false, "i", playerid);
      }
   }
   if(gPlayerUsingLoopingAnim[playerid])
   {
      gPlayerUsingLoopingAnim[playerid] = 0;
   }
   if(Vucen[playerid] != 9999)
   {
      KillTimer_H(VuciTimer[Vucen[playerid]]);
      IDVucenogIgraca[Vucen[playerid]] = 9999;
      Vucen[playerid] = 9999;
   }
   if(IDVucenogIgraca[playerid] != 9999)
   {
      KillTimer_H(VuciTimer[playerid]);
      IDVucenogIgraca[playerid] = 9999;
      Vucen[IDVucenogIgraca[playerid]] = 9999;
   }
    return 1;
}[/pawn]
Citat: Scripter|Å,Ï...χχı poslato Februar 28, 2018, 18:14:28 POSLE PODNE
@ Łuk@ Ocu tut da napravim nesto vezano za skriptanje koje glavni za to ako znas pito mumu nez slavicu sam poslo poruku nadam se da ces ti da mi kazes
Za to imas druge pod forume
Naslov: Odg: Debug
Poruka od: Łuk@ poslato Februar 28, 2018, 18:19:11 POSLE PODNE
Citat: #Montana poslato Februar 28, 2018, 18:17:48 POSLE PODNE
[pawn]public OnPlayerDeath(playerid, killerid, reason)
{
    ResetPlayerWeaponsEx(playerid);
      AntiFakekill[playerid]++;
   SetTimerEx("AntiFakeKillTimer_H", 600,false,"i",playerid);
   AttachObjectRemove(playerid);
   KosiDrogu[playerid] = 0;
    SvercaMats[playerid] = 0;
    SvercaMunicije[playerid] = 0;
   KillTimer_H(ZauzimanjeAC[playerid]);
    DisablePlayerCheckpoint(playerid);
   PosaoGPS[playerid] = 0;
   HealthSynced[playerid] = 0;
   IgracSpawnan[playerid] = 0;
   DisablePlayerCheckpoint(playerid);
   Lovi[playerid] = 0;
   if(PI[playerid][pFPS] == 1)
    {
       SetCameraBehindPlayer(playerid);
       DestroyObject(FPS[playerid]);
    }
   if(AdminUbio[playerid] == 0 && IgracNaEventu[playerid] == 0 && Uwaru[playerid] == 0)
   {
       Umire[playerid] = 1;
       PrikaziSmrtTD(playerid);
      if(killerid != INVALID_PLAYER_ID)
      {
          new killstring[200];
          new deathreason[20];
          if(reason == 0) { deathreason = "Rucno"; }
          else if(reason == 36 || reason == 35 || reason == 40 || reason == 16) { deathreason = "Eksplozija"; }
          else if(reason == 18 || reason == 37) { deathreason = "Zapaljen"; }
          else if(reason == 51) { deathreason = "Eksplozija"; }
          else if(reason == 50) { deathreason = "Ubistvo Helisom"; }
          else { GetWeaponName(reason, deathreason, sizeof(deathreason)); }
          format(killstring, sizeof(killstring),"{1A94E6}[AC] {FFFFFF}%s [ID:%d] je ubio igraca %s [ID:%d] - Vrsta: %s", Ime_Igraca(killerid),killerid, Ime_Igraca(playerid),playerid, deathreason);
          StaffPoruka(COLORSET, killstring);
      }
      else
      {
          new killstring[126];
          new text[30];
          if(reason == 51) { text = "Eksplozija"; }
          else if(reason == 53) { text = "Davljenje"; }
          else if(reason == 54) { text = "Sudar/Pad"; }
          else { text = "Death"; }
          format(killstring, sizeof(killstring),"{1A94E6}[AC] {FFFFFF}%s [ID:%d] je umro. [%s]", Ime_Igraca(playerid), playerid, text);
          StaffPoruka(COLORSET, killstring);
      }
       if(killerid != INVALID_PLAYER_ID)
       {
          PI[killerid][Ubistava]++; PI[playerid][Smrti]++;
         ResetujVar(playerid);
         if(IgracPolicajac(killerid))
         {
             PI[killerid][TrazeniNivo] = 0;
            SetPlayerWantedLevel_Ex(killerid,0);
          }
       }
       if(killerid != INVALID_PLAYER_ID)
       {
         if(!IgracPolicajac(killerid) && IsPlayerConnected(playerid))
         {
            if(PI[killerid][Zatvor] == 0)
            {
                    PI[killerid][TrazeniNivo] = 3;
                SetPlayerWantedLevel_Ex(killerid,3);
               PostaviWanted(killerid, "Ubistvo", "Nepoznat");
            }
         }
      }
      if(killerid != INVALID_PLAYER_ID)
       {
         if(GetPlayerWantedLevel_Ex(killerid) > 18)
         {
            PI[killerid][TrazeniNivo] += 18;
            SetPlayerWantedLevel_Ex(killerid, PI[playerid][TrazeniNivo]);
         }
      }
      if(killerid != INVALID_PLAYER_ID)
       {
         if(IsPlayerConnected(killerid) && GetPlayerState(killerid) == PLAYER_STATE_DRIVER)
         {
            format(nellys,sizeof(nellys), "{1A94E6}[AC] {FFFFFF}%s [ID:%d] je uradio Drive By nad igracem %s [ID:%d]!", Ime_Igraca(killerid), killerid, Ime_Igraca(playerid), playerid);
             StaffPoruka(COLORSET, nellys);
         }
      }
      if(WantedPoint[playerid] > 0)
      {
         new wanted = WantedPoint[playerid];
         new diecash = 0;
          while(WantedPoint[playerid] > 0)
          {
              diecash += 150;
              WantedPoint[playerid] --;
          }
          SendLocalMessage(playerid, "(( Izgubili ste $%d zbog umiranja sa %d trazenih poena.", diecash, wanted);
           g_NovacMinus(playerid, diecash);
         format(nellys, sizeof(nellys), "{1A94E6}[AC] {FFFFFF}%s [ID:%d] je umro sa wanted level-om: %d.", GetName(playerid),playerid,PI[playerid][TrazeniNivo]);
          StaffPoruka(COLOR_WHITE, nellys);
          strmid(PI[playerid][pZlocinText], "Nema", 0, strlen("Nema"), 255);
           strmid(PI[playerid][pPrijavioText], "Nema", 0, strlen("Nema"), 255);
           strmid(PI[playerid][pPocinioText], "Nema", 0, strlen("Nema"), 255);
         format(nellys,sizeof(nellys),"[CENTRAL DISPACHER] Zlocinac %s je umro sa wanted levelom(%d).", GetName(playerid),PI[playerid][TrazeniNivo]);
         FamilyPoruka(1, TEAM_BLUE_COLOR, nellys);
         FamilyPoruka(2, TEAM_BLUE_COLOR, nellys);
         PI[playerid][TrazeniNivo] = 0;
         SetPlayerWantedLevel_Ex(playerid, PI[playerid][TrazeniNivo]);
         SavePlayer(playerid);
      }
      WantedPoint[playerid] = 0;
   }
   AdminUbio[playerid] = 0;
   IgracNaEventu[playerid] = 0;
   if(IgracVojnik[playerid] == 1)
   {
       Vojska--;
       EventSlotovi--;
       IgracVojnik[playerid] = 0;
   }
   if(PlayerBlind[playerid] == true)
   {
      PlayerBlind[playerid] = false;
      PlayerTextDrawHide(playerid, poveztd[playerid][0]);
      PlayerTextDrawHide(playerid, poveztd[playerid][1]);
   }
   if(TrakaStavljena[playerid] == true)
   {
      TrakaStavljena[playerid] = false;
   }
   if(IgracTerorista[playerid] == 1)
   {
       Teroristi--;
       EventSlotovi--;
       IgracTerorista[playerid] = 0;
   }
   if(IgracNaBaseball[playerid] == 1)
   {
      IgracNaBaseball[playerid] = 0;
      palicaekipa--;
      EventSlotovi--;
   }
   if(IgracNaMaraton[playerid] == 1)
   {
      IgracNaMaraton[playerid] = 0;
      Maratonci--;
      EventSlotovi--;
   }
   if(hSmetlar[playerid] == true)
   {
      DestroyPlayerObject(playerid,hSmece[playerid]);
       hSmetlar[playerid] = false;
       hVreca[playerid] = 0;
      hSmece[playerid] = -255;
        DisablePlayerCheckpoint(playerid);
   }
   if(EventVozilo[playerid] != -1)
   {
       for(new sl = 0; sl < sizeof(MestoKartTrka); sl++)
      {
          if(MestoKartTrka[sl] == EventVozilo[playerid])
         {
            MestoKartTrka[sl] = INVALID_VEHICLE_ID;
            break;
         }
      }
      for(new sf = 0; sf < sizeof(MestoSFTrka); sf++)
      {
          if(MestoSFTrka[sf] == EventVozilo[playerid])
            {
            MestoSFTrka[sf] = INVALID_VEHICLE_ID;
            break;
         }
      }
      for(new sc = 0; sc < sizeof(MestoInfTrka); sc++)
      {
          if(MestoInfTrka[sc] == EventVozilo[playerid])
           {
            MestoInfTrka[sc] = INVALID_VEHICLE_ID;
            break;
         }
      }
      for(new sq = 0; sq < sizeof(MestoGliserTrka); sq++)
      {
          if(MestoGliserTrka[sq] == EventVozilo[playerid])
           {
            MestoGliserTrka[sq] = INVALID_VEHICLE_ID;
            break;
         }
      }
      for(new dd = 0; dd < sizeof(MestoSeaTrka); dd++)
      {
           if(MestoSeaTrka[dd] == EventVozilo[playerid])
         {
            MestoSeaTrka[dd] = INVALID_VEHICLE_ID;
            break;
          }
      }
      for(new sr = 0; sr < sizeof(MestoCanndyTrka); sr++)
      {
           if(MestoCanndyTrka[sr] == EventVozilo[playerid])
         {
            MestoCanndyTrka[sr] = INVALID_VEHICLE_ID;
            break;
          }
      }
      DestroyVehicle(EventVozilo[playerid]);
       EventVozilo[playerid] = -1;
   }
   if(Uwaru[killerid] == 1)
   {
       new str[64];
      if(PI[killerid][pAlfa] == 1)
      {
          alfa++;
         format(str,sizeof(str),"~b~ALFA TIM: ~w~ %d",alfa);
         TextDrawSetString(WarTD[6], str);
         SetTimerEx("WarRespawn", 4000, false, "i", playerid);
      }
      else if(PI[killerid][pBeta] == 1)
      {
          beta++;
         format(str,sizeof(str),"~w~%d ~r~:BETA TIM",beta);
         TextDrawSetString(WarTD[7], str);
         SetTimerEx("WarRespawn", 4000, false, "i", playerid);
      }
   }
   if(gPlayerUsingLoopingAnim[playerid])
   {
      gPlayerUsingLoopingAnim[playerid] = 0;
   }
   if(Vucen[playerid] != 9999)
   {
      KillTimer_H(VuciTimer[Vucen[playerid]]);
      IDVucenogIgraca[Vucen[playerid]] = 9999;
      Vucen[playerid] = 9999;
   }
   if(IDVucenogIgraca[playerid] != 9999)
   {
      KillTimer_H(VuciTimer[playerid]);
      IDVucenogIgraca[playerid] = 9999;
      Vucen[IDVucenogIgraca[playerid]] = 9999;
   }
    return 1;
}[/pawn]Za to imas druge pod forume
http://forum.sa-mp.com/showthread.php?t=379430
Naslov: Odg: Debug
Poruka od: $Parker poslato Februar 28, 2018, 22:19:16 POSLE PODNE
ПронаÑ'и if(Uwaru[killerid] == 1)
Ð"одаш изнад, да направиш услов if(killerid != INVALID_PLAYER_ID)
Ð'иће решено.
Naslov: Odg: Debug
Poruka od: Łuk@ poslato Februar 28, 2018, 22:34:21 POSLE PODNE
Citat: Milosh poslato Februar 28, 2018, 22:19:16 POSLE PODNE
ПронаÑ'и if(Uwaru[killerid] == 1)
Ð"одаш изнад, да направиш услов if(killerid != INVALID_PLAYER_ID)
Ð'иће решено.
i tebe na hladjenje? poslao sam isto, samo skupljas postove