SA-MP Forums Archive
[Ajuda] Bug no /limparlider - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Bug no /limparlider (/showthread.php?tid=643018)



Bug no /limparlider - Cuelinhu - 11.10.2017

Quando vou limpar lider de alguma org, o nome do lider sai do /orgs, mas ele continua de lнder (ele tem que relogar pra sair) e outra pessoa й demitida na hora invйs do lider.

Tipo tem 2 players on, 1 й membro da polнcia militar e o outro й lнder da polнcia federal. Quando eu vou limpar o lider da polнcia federal o nome dele sai do /orgs mas ele continua de lider e o membro da pm й demitido.

Alguem pode me ajudar? obrigado.
cуdigo do comando
https://pastebin.com/1eKyzyVg


Re: Bug no /limparlider - MediaCL - 11.10.2017

Provavelmente, ele nгo deve salvar a saida do lider, ou o ID da org esta bagunзado
Tente esse CODE, qualquer erro manda Mensagem

Quote:

if (strcmp("/limparlider", cmdtext, true, 10) == 0)
{
if(PlayerInfo[playerid][pAdmin] < 133
{
SendClientMessage(playerid, COLOR_GRAD2, "Somente admins master ou dono podem usar este comando!");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /limparlider [organizaзгo] [Motivo]");
return 1;
}
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[100];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /limparvaga [ID da Vaga] [Motivo]");
return 1;
}
new Vaga2 = strval(tmp);
if(Vaga2 < 1 || Vaga2 > 50) { SendClientMessage(playerid, COLOR_GREY, "Vaga mнnima 1 mбximo 36!"); return 1; }
new id=GetPlayerID(InfoOrg[Vaga2][Lider]), str[64];
if(IsPlayerOnline(InfoOrg[Vaga2][Lider]))
{
DemitirLider(id);
format(string, sizeof(string), "* Vocк Foi Tirado de Lнder Motivo: %s",result);
SendClientMessage(id, COR_VAGOS, string);
}
else
{
format(str, sizeof(str), "Agendados/ORG%s.ini",InfoOrg[Vaga2][Lider]);
dini_Create(str);
dini_Set(str,"Nome",PlayerName(playerid));
dini_IntSet(str,"Org",Vaga2);
dini_Set(str,"Motivo",result);
}
strmid(InfoOrg[Vaga2][Lider], "Ninguem", 0, strlen("Ninguem"), 255);
format(gstring,sizeof(gstring), "InfoOrg/Org%d.cfg", Vaga2);
dini_Set(gstring,"Lider","Ninguem");
format(string, sizeof(string), "Vocк limpou o lнder da organizaзгo Nє %d, Motivo: %s",Vaga2,result);
SendClientMessage(playerid, COR_VAGOS, string);
format(string, 128, "{FFCCFF}ADMAVISO: %s limpou o lider da organizaзгo N° %d!",PlayerName(playerid), Vaga2);
ABroadCast(0xFFFFFFFF,string,1);
a3d();
//LabelOrg();
return 1;
}




Re: Bug no /limparlider - Cuelinhu - 11.10.2017

Ainda nгo deu


Re: Bug no /limparlider - Cuelinhu - 12.10.2017

Alguйm?


Re: Bug no /limparlider - Cuelinhu - 13.10.2017

UP UP


Re: Bug no /limparlider - Whoo - 13.10.2017

PHP код:
if(strcmp(cmd"/limparlider"true) == 0)
{
    if(
PlayerInfo[playerid][pAdmin] < 1337)
    return 
SendClientMessage(playeridCOLOR_GRAD2"Vocк nгo estб autorizado a utilizar este comando!");
    
    
tmp strtok(cmdtextidx);
    if(!
strlen(tmp))
    return 
SendClientMessage(playeridCOLOR_GRAD2"USE: /limparlider [organizaзгo]");
        
    new 
Vaga2 strval(tmp);
    if(
Vaga2 || Vaga2 30
    return 
SendClientMessage(playeridCOLOR_GREY"Vaga mнnima 1, mбximo 31!"); return true;
    new 
id GetPlayerID(InfoOrg[Vaga2][Lider]);
    
KillTimer(LiderTimer[id]);
    
GetPlayerName(playeridsendernamesizeof(sendername));
    
format(gstringsizeof(string), "O Admin %s estб limpando a org nъmero %d, digite /lideranca %d em 10 segundos.",PlayerName(playerid), Vaga2Vaga2);
    
SendClientMessageToAll(GetPlayerColor(playerid), gstring);
    
format(stringsizeof(string), "Vocк limpou o lнder da organizaзгo Nє %d"Vaga2);
    
SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
    
format(stringsizeof(string), "ADMIN: %s limpou a vaga %d do lнder %s",PlayerName(playerid), Vaga2InfoOrg[Vaga2][Lider]);
    
LideresLog(string);
    
InfoOrg[Vaga2][Lider] = EOS;
    
    
LiderTimer[playerid] = SetTimerEx("LimpaLideranca"10000false"ddd"playeridVaga2id);
    return 
true;

PHP код:
forward LimpaLideranca(playeridVaga2id);
public 
LimpaLideranca(playeridVaga2id)
{
    new 
string[256];
    
format(InfoOrg[Vaga2][Lider], sizeof(InfoOrg[Vaga2][Lider]), "Ninguem");
    
    
format(gstring128"ORG Arquivos/Org%d.cfg"Vaga2);
    
dini_Set(gstring"Lider""Ninguem");
    
format(gstringsizeof(string), "O Admin %s limpou a org %d com sucesso.",PlayerName(playerid), Vaga2);
    
SendClientMessageToAll(GetPlayerColor(playerid), gstring);

PHP код:
forward contaslider(playerid);
public 
contaslider(playerid)
{
    new 
string[128];
    
DemitirInfoOrg(PlayerName(playerid));
    
gTeam[playerid] = 3;
    
PlayerInfo[playerid][pTeam] = 3;
    
PlayerInfo[playerid][pMembro] = 0;
    
PlayerInfo[playerid][pLider] = 0;
    
PlayerInfo[playerid][pCargo] = 0;
    
PlayerInfo[playerid][pSpawn] = 0;
    switch(
PlayerInfo[playerid][pSex])
    {
        case 
1PlayerInfo[playerid][pSkin] = 60;
        default: 
PlayerInfo[playerid][pSkin] = 226;
    } 
    
SetSpawnInfo(playeridgTeam[playerid], PlayerInfo[playerid][pSkin], 0.00.00.00000000);
    
SpawnPlayer(playerid);
    
MedicBill[playerid] = 0;
    
SendClientMessage(playeridCOLOR_LIGHTBLUE"Vocк pediu as contas, agora vocк й um Civil novamente!");
    
format(stringsizeof(string), "PLAYER: %s pediu contas de lider da org:[%s]",PlayerName(playerid), NomeORG(playerid));
    
LideresLog(string);
    return 
true;




Re: Bug no /limparlider - Cuelinhu - 13.10.2017

warning 225: unreachable code
error 001: expected token: "]", but found "-identifier-"
warning 215: expression has no effect
error 001: expected token: ";", but found "]"
error 029: invalid expression, assumed zero
fatal error 107: too many error messages on one line

Todos esses erros nessa linha ;-;
format(InfoOrg[Vaga2][Lider], sizeof(InfoOrg[Vaga2][Lider]), "Ninguem");


Re: Bug no /limparlider - Whoo - 13.10.2017

Troquea linha do error por:
PHP код:
strmid(InfoOrg[Vaga2][Lider], "Ninguem"0strlen("Ninguem"), 255); 



Re: Bug no /limparlider - Cuelinhu - 13.10.2017

Compilou, mas o comando nгo ta pegando pra nada.


Re: Bug no /limparlider - Cuelinhu - 13.10.2017

UP UP