SA-MP Forums Archive
[Ajuda] COMANDO DE BAN - 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] COMANDO DE BAN (/showthread.php?tid=543041)



comando de ban - Caiton - 24.10.2014

pawn Код:
CMD:ban(playerid, params[])
{
new string[128], Dia, Mes, Ano, Hora, Minuto, Segundo, MesBan, AnoBan,
giveplayerid, giveplayername[MAX_PLAYER_NAME];
if(!sscanf(params, "uds[128]", giveplayerid, DiaBan, Motivo))
{
SendClientMessage(playerid, COLOR_ERRO, "[ERRO]: /ban [id] [dias] [motivo]");
}
else
{
getdate(Ano, Mes, Dia);
gettime(Hora, Minuto, Segundo);
GetPlayerName(playerid, playername, sizeof(playername));
GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
GetPlayerIp(giveplayerid, Ip, sizeof(Ip));
if(IsPlayerConnected(playerid))
{
if(Jogador[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(giveplayerid))
{
if(DiaBan > 999)
{
SendClientMessage(playerid, COR_AZULCLARO, "[TesteBan]: Vocк sу pode banir este player no mбximo 999 dias!");
return 1;
}
format(string, sizeof(string), "[TesteBan]: O Administrador %s baniu %s por %i dias. | Motivo: %s", playername, giveplayername, DiaBan, Motivo);
SendClientMessageToAll(COR_VERMELHO, string);
new file[100];
format(string, sizeof(string), "%d/%d/%d", Dia, Mes, Ano);
format(file, sizeof(file), "Teste/ContasBAN/%s.ini", giveplayername);
if(INI_Open(file))
{
INI_WriteString("Admin", playername);
INI_WriteInt("Dia", Dia);
INI_WriteInt("Mes", Mes);
INI_WriteInt("Ano", Ano);
INI_WriteInt("Hora", Hora);
INI_WriteInt("Minuto", Minuto);
INI_WriteInt("Segundo", Segundo);
INI_WriteInt("DiaBan", Dia);
INI_WriteInt("MesBan", Mes);
INI_WriteInt("AnoBan", Ano);
INI_WriteInt("HoraBan", Hora);
INI_WriteInt("MinutoBan", Minuto);
INI_WriteInt("SegundoBan", Segundo);
INI_WriteString("MotivoBan", Motivo);
INI_WriteString("IP", Ip);
Dia += DiaBan;
INI_WriteInt("DiaBan", Dia);
while(Dia > 31)
{
Dia -= 31;
Mes++;
INI_WriteInt("DiaBan", Dia);
INI_WriteInt("MesBan", Mes);
}
while(Mes > 12)
{
Mes -= 12;
Ano++;
INI_WriteInt("MesBan", Mes);
INI_WriteInt("AnoBan", Ano);
}
DiaBan = INI_ReadInt("DiaBan");
MesBan = INI_ReadInt("MesBan");
AnoBan = INI_ReadInt("AnoBan");
INI_Save();
INI_Close();
}
format(file, sizeof(file), "Teste/IPSBAN/%s.ini", Ip);
if(INI_Open(file))
{
INI_WriteString("Admin", playername);
INI_WriteInt("Dia", Dia);
INI_WriteInt("Mes", Mes);
INI_WriteInt("Ano", Ano);
INI_WriteInt("Hora", Hora);
INI_WriteInt("Minuto", Minuto);
INI_WriteInt("Segundo", Segundo);
INI_WriteInt("DiaBan", DiaBan);
INI_WriteInt("MesBan", MesBan);
INI_WriteInt("AnoBan", AnoBan);
INI_WriteInt("HoraBan", Hora);
INI_WriteInt("MinutoBan", Minuto);
INI_WriteInt("SegundoBan", Segundo);
INI_WriteString("MotivoBan", Motivo);
INI_WriteString("IP", Ip);
INI_Save();
INI_Close();
}
Kick(giveplayerid);
}
else
{
format(string, sizeof(string), "[TesteBan]: O ID %d nгo estб online.", giveplayerid);
SendClientMessage(playerid, COR_AZULCLARO, string);
}
}
else
{
SendClientMessage(playerid, COR_AZULCLARO, "[TesteBan]: Vocк nгo tem permissгo para usar este comando!");
}
}
else
{
SendClientMessage(playerid, COR_AZULCLARO, "[TesteBan]: Vocк tem que estб logado para usar este comando!");
}
}
return 1;
}
o comando quando eu digito exemplo "/BAN ID DIAS MOTIVO ele funfa corretamente, mais se eu digitar sу /ban ele bane o id 0 nгo aparece ele corrigindo para digitar corretamente.


Re: COMANDO DE BAN - Dolby - 24.10.2014

Nгo hб necessidade de criar dois tуpicos, e por favor, leia as regras, й proibido escrever tнtulos com letra maiъscula. A comunidade agradece.


Re: COMANDO DE BAN - PedroFelp - 24.10.2014

Vish nгo entendi nada do que voзк escreveu Nгo explica nada ....

E.jpg


Re: COMANDO DE BAN - Caiton - 24.10.2014

Quote:
Originally Posted by Dolby
Посмотреть сообщение
Nгo hб necessidade de criar dois tуpicos, e por favor, leia as regras, й proibido escrever tнtulos com letra maiъscula. A comunidade agradece.
desculpa pela letra maiъscula mais os tуpicos nгo sгo iguais valeu.


Re: COMANDO DE BAN - Caiton - 24.10.2014

Quote:
Originally Posted by PedroFelp
Посмотреть сообщение
Vish nгo entendi nada do que voзк escreveu Nгo explica nada ....

Вложение 8301
editei rs


Re: COMANDO DE BAN - ArthurxD - 24.10.2014

Troca isso:
pawn Код:
if(!sscanf(params, "uds[128]", giveplayerid, DiaBan, Motivo))
{
SendClientMessage(playerid, COLOR_ERRO, "[ERRO]: /ban [id] [dias] [motivo]");
}
Por isso
pawn Код:
if(sscanf(params, "uds[128]", giveplayerid, DiaBan, Motivo)) return SendClientMessage(playerid, COLOR_ERRO, "[ERRO]: /ban [id] [dias] [motivo]");



Re: COMANDO DE BAN - Caiton - 24.10.2014

Quote:
Originally Posted by ArthurxD
Посмотреть сообщение
Troca isso:
pawn Код:
if(!sscanf(params, "uds[128]", giveplayerid, DiaBan, Motivo))
{
SendClientMessage(playerid, COLOR_ERRO, "[ERRO]: /ban [id] [dias] [motivo]");
}
Por isso
pawn Код:
if(sscanf(params, "uds[128]", giveplayerid, DiaBan, Motivo)) return SendClientMessage(playerid, COLOR_ERRO, "[ERRO]: /ban [id] [dias] [motivo]");
agora eu escrevo normalmente para dar o ban e aparece que eu escrevi errado.
ficou assim
pawn Код:
CMD:tempban(playerid, params[])
{
new string[128], Dia, Mes, Ano, Hora, Minuto, Segundo, MesBan, AnoBan,
giveplayerid, giveplayername[MAX_PLAYER_NAME];
if(sscanf(params, "uds[128]", giveplayerid, DiaBan, Motivo)) return SendClientMessage(playerid, COLOR_ERRO, "[ERRO]: /tempban [id] [dias] [motivo]");
else
{
getdate(Ano, Mes, Dia);
gettime(Hora, Minuto, Segundo);
GetPlayerName(playerid, playername, sizeof(playername));
GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
GetPlayerIp(giveplayerid, Ip, sizeof(Ip));
if(IsPlayerConnected(playerid))
{
if(Jogador[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(giveplayerid))
{
if(DiaBan > 999)
{
SendClientMessage(playerid, COR_AZULCLARO, "[testeBan]: Vocк sу pode banir este player no mбximo 999 dias!");
return 1;
}
format(string, sizeof(string), "[testeBan]: O Administrador %s baniu %s por %i dias. | Motivo: %s", playername, giveplayername, DiaBan, Motivo);
SendClientMessageToAll(COR_VERMELHO, string);
new file[100];
format(string, sizeof(string), "%d/%d/%d", Dia, Mes, Ano);
format(file, sizeof(file), "teste/ContasBAN/%s.ini", giveplayername);
if(INI_Open(file))
{
INI_WriteString("Admin", playername);
INI_WriteInt("Dia", Dia);
INI_WriteInt("Mes", Mes);
INI_WriteInt("Ano", Ano);
INI_WriteInt("Hora", Hora);
INI_WriteInt("Minuto", Minuto);
INI_WriteInt("Segundo", Segundo);
INI_WriteInt("DiaBan", Dia);
INI_WriteInt("MesBan", Mes);
INI_WriteInt("AnoBan", Ano);
INI_WriteInt("HoraBan", Hora);
INI_WriteInt("MinutoBan", Minuto);
INI_WriteInt("SegundoBan", Segundo);
INI_WriteString("MotivoBan", Motivo);
INI_WriteString("IP", Ip);
Dia += DiaBan;
INI_WriteInt("DiaBan", Dia);
while(Dia > 31)
{
Dia -= 31;
Mes++;
INI_WriteInt("DiaBan", Dia);
INI_WriteInt("MesBan", Mes);
}
while(Mes > 12)
{
Mes -= 12;
Ano++;
INI_WriteInt("MesBan", Mes);
INI_WriteInt("AnoBan", Ano);
}
DiaBan = INI_ReadInt("DiaBan");
MesBan = INI_ReadInt("MesBan");
AnoBan = INI_ReadInt("AnoBan");
INI_Save();
INI_Close();
}
format(file, sizeof(file), "teste/IPSBAN/%s.ini", Ip);
if(INI_Open(file))
{
INI_WriteString("Admin", playername);
INI_WriteInt("Dia", Dia);
INI_WriteInt("Mes", Mes);
INI_WriteInt("Ano", Ano);
INI_WriteInt("Hora", Hora);
INI_WriteInt("Minuto", Minuto);
INI_WriteInt("Segundo", Segundo);
INI_WriteInt("DiaBan", DiaBan);
INI_WriteInt("MesBan", MesBan);
INI_WriteInt("AnoBan", AnoBan);
INI_WriteInt("HoraBan", Hora);
INI_WriteInt("MinutoBan", Minuto);
INI_WriteInt("SegundoBan", Segundo);
INI_WriteString("MotivoBan", Motivo);
INI_WriteString("IP", Ip);
INI_Save();
INI_Close();
}
Kick(giveplayerid);
}
else
{
format(string, sizeof(string), "[testeBan]: O ID %d nгo estб online.", giveplayerid);
SendClientMessage(playerid, COR_AZULCLARO, string);
}
}
else
{
SendClientMessage(playerid, COR_AZULCLARO, "[testeBan]: Vocк nгo tem permissгo para usar este comando!");
}
}
else
{
SendClientMessage(playerid, COR_AZULCLARO, "[testeBan]: Vocк tem que estб logado para usar este comando!");
}
}
return 1;
}



Re: COMANDO DE BAN - ArthurxD - 24.10.2014

Bom no meu eu nao usso isso no sscanf "uds[128]", tenta assim "uds"


Re: COMANDO DE BAN - Caiton - 24.10.2014

Quote:
Originally Posted by ArthurxD
Посмотреть сообщение
Bom no meu eu nao usso isso no sscanf "uds[128]", tenta assim "uds"
muito obrigado Arthur, isso era um erro que sempre pegava e nгo sabia resolver agora aprendi rs. +rep


Re: COMANDO DE BAN - ArthurxD - 24.10.2014

Por nada