Problemcic sa komandom

Započeo Howard22, Mart 09, 2024, 22:44:53 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 2 gostiju pregledaju ovu temu.

Imam problem sa ovime na primjer ig smo 2ljudi ja setam sebi rank sa imenom Sergeant l , njemu setam Sergeant ll i sad kad napise /f bla bla napravio sam da izlazi ime ranka ali ako ovaj drugi igrac kome sam setao Sgt ll napise poruku pokazuje mu i moji rank i njegov primer :Sergeant l Sergeant l Nick_Name: bla bla bla
Ovako pozivam %s za ime ranka PlayerInfo[playerid][pCustomRank]

[pawn]CMD:setrank(playerid, params[])
{
    new id, imeRanka[128];
    if(sscanf(params, "us[128]", id, imeRanka)) return KORISTIMES(playerid, "/setrank [ID na igracot] [Ime na rankot]");
   if(!IsPlayerConnected(id)) return GRESKAMES(playerid, "Igracot ne e online.");
    if(strlen(imeRanka) < 3 || strlen(imeRanka) > 25) return GRESKAMES(playerid, "Imeto na rankot nemozi da bidi pomalo od 3 ili pogolemo od 25 bukvi!");
   if(PlayerInfo[playerid][pAdmin] == 5)
   {
      PlayerInfo[id][pCustomRank] = imeRanka[0];
      strmid(PlayerInfo[id][pCustomRank], imeRanka, 0, strlen(imeRanka), 255);
      va_SendClientMessage(id, -1,"%s vi postavi rank so ime %s", GetName(playerid), imeRanka);
      va_SendClientMessage(playerid, -1,"Mu postavivte na %s rank so ime %s", GetName(id), imeRanka);
   }
   else return GRESKAMES(playerid, "Nemozete da ja koristite ovaa komanda");
    return true;
}[/pawn]


Citat: Bit Frosty poslato Mart 10, 2024, 11:36:46 PRE PODNE
OnPlayerText daj
Nemam nista tamo imam samo ono za IC chat , koristim ovo da pokazuje igracev rank samo na neke komande kao /f (familychat) /spike /duty

onda komandu za taj chat dje imas problem...

[pawn]CMD:f(playerid, params[])
{
   new string[256], text[150];
   if(sscanf(params, "s[150]", text)) return KORISTIMES(playerid, "/f [Tekst]");
   format(string, sizeof(string), "((%s %s: %s.))", PlayerInfo[playerid][pCustomRank], GetName(playerid), text);
   SendRadioMessage(1, TEAM_BLUE_COLOR, string);
   return 1;   
}[/pawn]

Ae pogodi sad sta mi treba sledece...



[pawn]CMD:radio(playerid, params[]){
   if(!IgracPolicajac(playerid))
       return SendClientMessage(playerid, -1, "Niste pripadnik drzavne bezbednosti");
      
   if(isnull(params))
       return SendClientMessage(playerid, -1, "/r(adio) [Text]");
      
   new string[120];
   format(string,sizeof(string), "[FREQ : 1783] -> %s %s(%d) : {FFFFFF}%s, prijem",PlayerInfo[id][pCustomRank],GetName(playerid),playerid, params);
   SendRadioMessage(-1, string);
   return 1;
}


SendRadioMessage(color, string[]){
   foreach(new i : Player){
      if(IgracPolicajac(playerid)){
         SendClientMessage(i, color, string);
      }
   }
   return 1;
}[/pawn]

[pawn]FUNCTION: SendRadioMessage(member, color, string[])
{
   foreach(Player, i)
   {
      {
         SendClientMessage(i, color, string);
      }
   }
}[/pawn]

Citat: Howard22 poslato Mart 11, 2024, 11:33:45 PRE PODNE
[pawn]FUNCTION: SendRadioMessage(member, color, string[])
{
   foreach(Player, i)
   {
      {
         SendClientMessage(i, color, string);
      }
   }
}[/pawn]
[pawn]CMD:setrank(playerid, params[])[/pawn]
U ovu komandu ispod strmid dodaj SavePlayer( id ); ili kako vec nazivas funkciju za saveanje igraca

Citat: toncikica poslato Mart 11, 2024, 17:27:43 POSLE PODNE
[pawn]CMD:setrank(playerid, params[])[/pawn]
U ovu komandu ispod strmid dodaj SavePlayer( id ); ili kako vec nazivas funkciju za saveanje igraca
sad sa ovim kad sebi setam rank i igracu igracev rank izlazi ali moji rank ne izlazi

Citat: Howard22 poslato Mart 11, 2024, 20:42:04 POSLE PODNE
sad sa ovim kad sebi setam rank i igracu igracev rank izlazi ali moji rank ne izlazi
Brate daj sliku, nista ja tebe ne kontam sta pricas

[pawn]
CMD:setrank(playerid, params[])
{
    new id, imeRanka[128];
    if(sscanf(params, "us[128]", id, imeRanka)) return KORISTIMES(playerid, "/setrank [ID na igracot] [Ime na rankot]");
   if(!IsPlayerConnected(id)) return GRESKAMES(playerid, "Igracot ne e online.");
    if(strlen(imeRanka) < 3 || strlen(imeRanka) > 25) return GRESKAMES(playerid, "Imeto na rankot nemozi da bidi pomalo od 3 ili pogolemo od 25 bukvi!");
   if(PlayerInfo[playerid][pAdmin] == 5)
   {       
      format(PlayerInfo[id][pCustomRank], "%s", imeRanka);
      va_SendClientMessage(id, -1,"%s vi postavi rank so ime %s", GetName(playerid), imeRanka);
      va_SendClientMessage(playerid, -1,"Mu postavivte na %s rank so ime %s", GetName(id), imeRanka);
   }
   else return GRESKAMES(playerid, "Nemozete da ja koristite ovaa komanda");
    return true;
}
[/pawn]

Probaj ovako (je malo idiotski da se koristi format ali to mi je najsigurnije trenutno kad ne znam kod), ako ne radi, onda ne znam iskreno, bog zna dje sta radis pa ces morati da debug.

Maybe like this?

[pawn]
dodaj ovo kod info za playera
pCustomRank[128],

cuvanje
INI_WriteString(File,"CustomRank",PlayerInfo[playerid][pCustomRank]);

uciavanje

INI_String("CustomRank",PlayerInfo[playerid][pCustomRank]);

komanda /f

{
    new customrank[64];
    if(strlen(PlayerInfo[playerid][pCustomRank]) > 2) { format(customrank, sizeof(customrank), "%s", PlayerInfo[playerid][pCustomRank]); }
    format(buffer, sizeof buffer, "F | (%s) %s: "BELA"%s", customrank, GetName(playerid), params[0]);
    return SendRadioMessage(1, TEAM_BLUE_COLOR, string);
}

CMD:setrankname(playerid, params[])
{
    new id, imeRanka[128];
    if(PlayerInfo[playerid][pAdmin] < 5) return SCM(playerid,-1 ,"NE MOZE");
    if(sscanf(params, "us[128]", id, imeRanka)) return SCM(playerid,-1, "/setrankname [ID/Ime_Prezime] [Ime Ranka]");
    if(strlen(imeRanka) < 3 || strlen(imeRanka) > 25) return SCM(playerid,-1,"Ime ranka ne moze biti manji od 3 i veci od 25 slova!");
    PlayerInfo[id][pCustomRank] = imeRanka;
    strmid(PlayerInfo[id][pCustomRank], imeRanka, 0, strlen(imeRanka), 255);
    va_SendClientMessage(id, -1,"Admin %s vam je postavio ime ranka %s",GetName(playerid), imeRanka);
    va_SendClientMessage(playerid, -1,"Igracu %s ste postavili ime ranka %s", GetName(id), imeRanka);
    SavePlayer(id);
    return true;
}
[/pawn]