Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: mqrkelich poslato Februar 22, 2020, 17:57:25 POSLE PODNE

Naslov: Pomoc oko Errora
Poruka od: mqrkelich poslato Februar 22, 2020, 17:57:25 POSLE PODNE
Problem(error/warning): error 047: array sizes do not match, or destination array is too small. To se desi kada compilam mod.
Dio skripte: [pawn]YCMD:prihvati(playerid, params[], help)
{
    #pragma unused help
    if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,"UP:RP | "CRVENA"Moras se ulogovati da bi koristio ovu komandu!");
   new ime[24];
   if(sscanf(params, "s[24]", ime))
   {
      SCM(playerid,-1,""CRVENA"UP:RP Pomoc: "BELA"/prihvati [Ime]");
      SCM(playerid,-1,""CRVENA"Prihvati Ime: "BELA"Poziv | Pojacanje | Kaznu | Popravku | Gorivo | Lecenje");
      return 1;
   }
   if(!strcmp(ime, "poziv", true))
   {
      new ftext[20];
      if(PlayerInfo[playerid][pPozvan] == 0) return SCM(playerid, -1, ""CRVENA"UP:RP | "SIVA"Niko vas nije pozvao u org!");
      else if(PlayerInfo[playerid][pPozvan] == 1)
      {
         ftext = "LSPD";
         PlayerInfo[playerid][pClan] = 1; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = 284;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""PLAVA"[LSPD] "SIVA"Uspesno ste se pridruzili LSPD Organizaciji!");
         format(string, sizeof(string), ""PLAVA"[LSPD] "BELA"Igrac %s je prihvatio poziv i pridruzio se LSPD!", GetName(playerid));
         ChatPD(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 2)
      {
         ftext = "The Vinci Family";
         PlayerInfo[playerid][pClan] = 2; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = 127;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""CRVENA"[TVF] "SIVA"Uspesno ste se pridruzili The Vinci Family Organizaciji!");
         format(string, sizeof(string), ""CRVENA"[The Vinci Family] "BELA"Igrac %s je prihvatio poziv i pridruzio se The Vinci Family!", GetName(playerid));
         ChatVF(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 3)
      {
         ftext = "Black Dragon Triads";
         PlayerInfo[playerid][pClan] = 3; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = 117;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""ZUTA"[BDT] "SIVA"Uspesno ste se pridruzili Black Dragon Triads Organizaciji!");
         format(string, sizeof(string), ""CRVENA"[Black Dragon Triads] "BELA"Igrac %s je prihvatio poziv i pridruzio se Black Dragon Triads!", GetName(playerid));
         ChatTBT(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 4)
      {
         ftext = "Grove Street Family";
         PlayerInfo[playerid][pClan] = 4; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = 105;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""ZELENA"[GSF] "SIVA"Uspesno ste se pridruzili Grove Street Family Organizaciji!");
         format(string, sizeof(string), ""ZELENA"[Grove Street Family] "SIVA"Igrac %s je prihvatio poziv i pridruzio se Grove Street Family!", GetName(playerid));
         ChatGSF(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 5)
      {
         ftext = "Ballas";
         PlayerInfo[playerid][pClan] = 5; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = BALLAS_RANK1;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""BALLASC"[BALLAS] "SIVA"Uspesno ste se pridruzili Ballas Organizaciji!");
         format(string, sizeof(string), ""BALLASC"[Ballas] "SIVA"Igrac %s je prihvatio poziv i pridruzio se Ballas!", GetName(playerid));
         ChatBallas(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 6)
      {
         ftext = "Novinari";
         PlayerInfo[playerid][pClan] = 6; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = NOVINARI_RANK1;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""ORANGE"[LSN]: "BELA"Uspesno ste se pridruzili Novinarima!");
         format(string, sizeof(string), ""ORANGE"[LSN]: "BELA"Igrac %s je prihvatio poziv i pridruzio se Novinarima!", GetName(playerid));
         ChatNovinari(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 7)
      {
         ftext = "Blue Lagoon";
         PlayerInfo[playerid][pClan] = 7; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = BLUELAGOON_RANK1;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""SPLAVA"[BL]: "BELA"Uspesno ste se pridruzili Blue Lagoon!");
         format(string, sizeof(string), ""SPLAVA"[BL]: "BELA"Igrac %s je prihvatio poziv i pridruzio se Blue Lagoon!", GetName(playerid));
         ChatBL(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 8)
      {
         ftext = "La Costra Nostra";
         PlayerInfo[playerid][pClan] = 8; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = LCN_RANK1;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""CRVENA"[LCN]: "BELA"Uspesno ste se pridruzili La Costra Nostra!");
         format(string, sizeof(string), ""CRVENA"[LCN]: "BELA"Igrac %s je prihvatio poziv i pridruzio se La Costra Nostra!", GetName(playerid));
         ChatLCN(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 9)
      {
          // OVDIJE JE EROR //     ftext = "Black Cobra Coparation";
         PlayerInfo[playerid][pClan] = 9; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = BCC_RANK1;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""ORANGE"[BCC]: "BELA"Uspesno ste se pridruzili Black Cobra Coparation!");
         format(string, sizeof(string), ""ORANGE"[BCC]: "BELA"Igrac %s je prihvatio poziv i pridruzio se Black Cobra Coparation!", GetName(playerid));
         ChatBCC(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 10)
      {
         ftext = "Condor";
         PlayerInfo[playerid][pClan] = 10; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = CONDOR_RANK1;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""ORANGE"[Condor]: "BELA"Uspesno ste se pridruzili Condor-u!");
         format(string, sizeof(string), ""ORANGE"[Condor]: "BELA"Igrac %s je prihvatio poziv i pridruzio se Condor-u!", GetName(playerid));
         ChatCondor(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 11)
      {
         ftext = "Left Coast Family";
         PlayerInfo[playerid][pClan] = 11; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = LCF_RANK1;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""CRVENA"[LCF]: "BELA"Uspesno ste se pridruzili Left Coast Family!");
         format(string, sizeof(string), ""CRVENA"[LCF]: "BELA"Igrac %s je prihvatio poziv i pridruzio se Left Coast Family!", GetName(playerid));
         ChatLCF(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 12)
      {
         ftext = "Deathrow";
         PlayerInfo[playerid][pClan] = 12; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = DR_RANK1;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""CRVENA"[DR]: "BELA"Uspesno ste se pridruzili Death Row!");
         format(string, sizeof(string), ""CRVENA"[DR]: "BELA"Igrac %s je prihvatio poziv i pridruzio se Death Row!", GetName(playerid));
         ChatDR(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 13)
      {
         ftext = "Da Naga Boys";
         PlayerInfo[playerid][pClan] = 13; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = DNB_RANK1;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""ORANGE"[DNB]: "BELA"Uspesno ste se pridruzili Da Naga Boys!");
         format(string, sizeof(string), ""ORANGE"[DNB]: "BELA"Igrac %s je prihvatio poziv i pridruzio se Da Naga Boys!", GetName(playerid));
         ChatDNB(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 14)
      {
         ftext = "Yakuza";
         PlayerInfo[playerid][pClan] = 14; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = YAKUZA_RANK1;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""ORANGE"[YAKUZA]: "BELA"Uspesno ste se pridruzili Yakuz-i!");
         format(string, sizeof(string), ""ORANGE"[YAKUZA]: "BELA"Igrac %s je prihvatio poziv i pridruzio se Yakuz-i!", GetName(playerid));
         ChatYakuza(-1, string);
      }
      else if(PlayerInfo[playerid][pPozvan] == 15)
      {
         ftext = "Rusian Mafia";
         PlayerInfo[playerid][pClan] = 15; PlayerInfo[playerid][pRank] = 1; PlayerInfo[playerid][pSkin] = RM_RANK1;
         PlayerInfo[playerid][pPozvan] = 0; SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
         new string[128]; SCM(playerid,-1,""CRVENA"[RM]: "BELA"Uspesno ste se pridruzili Rusian Mafia!");
         format(string, sizeof(string), ""CRVENA"[RM]: "BELA"Igrac %s je prihvatio poziv i pridruzio se Rusian Mafia!", GetName(playerid));
         ChatRM(-1, string);
      }
   }[/pawn]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): //
Slika/video ingame problema(obavezno ako je ingame problem): //
Naslov: Odg: Pomoc oko Errora
Poruka od: algorhitmically poslato Februar 22, 2020, 18:08:47 POSLE PODNE
Posto ftext koristis u svakoj if proveri ne moras ga kreirati svugde vec na pocetku funkcije.
Znaci ako igrac unese ime, posle sscanf provere stavis: new ftext[48], umesto 48 mozes staviti broj slova najveceg imena jer taj error ti izlazi zato sto si u niz karaktera koji moze sadrzati samo 19 slova + nulti karakter uneo ime organizacije koja premasuje broj 19.
Naslov: Odg: Pomoc oko Errora
Poruka od: mqrkelich poslato Februar 22, 2020, 18:12:10 POSLE PODNE
Citat: algorhitmically poslato Februar 22, 2020, 18:08:47 POSLE PODNE
Posto ftext koristis u svakoj if proveri ne moras ga kreirati svugde vec na pocetku funkcije.
Znaci ako igrac unese ime, posle sscanf provere stavis: new ftext[48], umesto 48 mozes staviti broj slova najveceg imena jer taj error ti izlazi zato sto si u niz karaktera koji moze sadrzati samo 19 slova + nulti karakter uneo ime organizacije koja premasuje broj 19.
Ne kontam, mozel malo bolje ?
Naslov: Odg: Pomoc oko Errora
Poruka od: algorhitmically poslato Februar 22, 2020, 18:15:09 POSLE PODNE
Obrisi gde god da imas [pawn]new ftext[20][/pawn] i slicno. Na pocetak funkcije dodaj new ftext[48];
Posle samo ostavis u if proverama ftext = imena organizacija itd.
Naslov: Odg: Pomoc oko Errora
Poruka od: mqrkelich poslato Februar 22, 2020, 18:16:29 POSLE PODNE
Citat: algorhitmically poslato Februar 22, 2020, 18:15:09 POSLE PODNE
Obrisi gde god da imas [pawn]new ftext[20][/pawn] i slicno. Na pocetak funkcije dodaj new ftext[48];
Posle samo ostavis u if proverama ftext = imena organizacija itd.
Nemam ja nigde new ftext[20],  vec sam dodao gore i obrisao na LSPD sto je bilo ali i dalje ne radi?
Naslov: Odg: Pomoc oko Errora
Poruka od: mqrkelich poslato Februar 22, 2020, 18:18:10 POSLE PODNE
Fixano je, hvala nisam bio stavio haha hvala puno.