18/04/2021 19:03
(Esta mensagem foi modificada pela última vez a: 18/04/2021 19:09 por LeleziiN.)
Poderiam mim ajudar pfvr
Comando se setar e retirar o VIP
No chat não muda a cor do tag VIP, mais na msg que informa que a cor do tag foi mudada funciona
Comando se setar e retirar o VIP
Código PHP:
if(!strcmp(cmd, "/setarvip", true))
{
if(!VerificarADMaster(playerid)) return SendClientMessage(playerid, CORX1, "| ERRO | Você não é um administrador(a) master!");
if(VerificarADM(playerid) == 1)
{
if(VerificarADMaster(playerid) == 1)
{
new tmp[256], S[128], Nick[256], Horas, Total = 0;
tmp = strtok(cmdtext, idx);
Nick = tmp;
tmp = strtok(cmdtext, idx);
Horas = strval(tmp);
if(!strlen(tmp)) return SendClientMessage(playerid, COR_MARA7, "/SetarVip [ Nick ] [ Horas ]");
if(!udb_Exists(Nick))
{
format(S, sizeof(S), "| ERRO | A conta '%s' não existe!", Nick);
SendClientMessage(playerid, CORX1, S);
return 1;
}
if(dUserINT(Nick).("HorasVIP") != 0)
{
if(!dini_Exists("RelatorioAdministrativo/Colocar_e_Retirar_VIPS.txt"))
dini_Create("RelatorioAdministrativo/Colocar_e_Retirar_VIPS.txt");
new string[300], File:Relatorio, Hora, Minuto, Segundo, Dia, Mes, Ano;
getdate(Ano, Mes, Dia);
gettime(Hora, Minuto, Segundo);
format(string, sizeof(string), "O Jogador %s já tinha %d horas de VIP, foram adicionadas mais %d horas pelo administrador %s - %02d/%02d/%02d | %02d:%02d:%02d", Nick, dUserINT(Nick).("HorasVIP"), Horas, NJogador(playerid), Dia, Mes, Ano, Hora, Minuto, Segundo);
Relatorio = fopen("RelatorioAdministrativo/Colocar_e_Retirar_VIPS.txt", io_append);
fwrite(Relatorio, string);
fwrite(Relatorio, "\r\n");
fclose(Relatorio);
Total = dUserINT(Nick).("HorasVIP") + Horas;
dUserSetINT(Nick).("HorasVIP", Total);
format(S, sizeof(S), ""#TAG_ADMINFO" O Jogador %s já tinha %d horas de VIP, portanto, foram adicionadas mais %d horas (totalizando %d horas de uso)!", Nick, dUserINT(Nick).("HorasVIP"), Horas, Total);
SendClientMessage(playerid, Azul, S);
for(new I = 0; I < MAX_PLAYERS; I ++)
{
if(strcmp(PlayerName(I), Nick, true) == 0)
{
Vip[I] = Total;
dUserSetINT(Nick).("HorasVIP", Vip[I]);
}
}
}
else
{
if(!dini_Exists("RelatorioAdministrativo/Colocar_e_Retirar_VIPS.txt"))
dini_Create("RelatorioAdministrativo/Colocar_e_Retirar_VIPS.txt");
new string[300], File:Relatorio, Hora, Minuto, Segundo, Dia, Mes, Ano;
getdate(Ano, Mes, Dia);
gettime(Hora, Minuto, Segundo);
format(string, sizeof(string), "Foram setadas %d horas de VIP para o jogador %s pelo administrador %s - %02d/%02d/%02d | %02d:%02d:%02d", Horas, Nick, NJogador(playerid), Dia, Mes, Ano, Hora, Minuto, Segundo);
Relatorio = fopen("RelatorioAdministrativo/Colocar_e_Retirar_VIPS.txt", io_append);
fwrite(Relatorio, string);
fwrite(Relatorio, "\r\n");
fclose(Relatorio);
Total = dUserINT(Nick).("HorasVIP") + Horas;
dUserSetINT(Nick).("HorasVIP", Total);
format(S, sizeof(S), ""#TAG_ADMINFO" Foram setadas %d horas de VIP para o jogador %s", Horas, Nick);
SendClientMessage(playerid, Azul, S);
for(new I = 0; I < MAX_PLAYERS; I ++)
{
if(strcmp(PlayerName(I), Nick, true) == 0)
{
Vip[I] = Total;
dUserSetINT(Nick).("HorasVIP", Vip[I]);
}
}
}
}
else
{
SendClientMessage(playerid, CORX1, "| ERRO | Você não é administrador(a)");
}
}
else
{
SendClientMessage(playerid, CORX1, "| ERRO | Você não é um administrador(a) master!");
}
return 1;
}
if(!strcmp(cmd, "/retirarvip", true))
{
if(!VerificarADMaster(playerid)) return SendClientMessage(playerid, CORX1, "| ERRO | Você não é um administrador(a) master!");
if(VerificarADM(playerid) == 1)
{
if(VerificarADMaster(playerid) == 1)
{
new tmp[256], S[128], Nick[256], Horas, Total = 0;
tmp = strtok(cmdtext, idx);
Nick = tmp;
tmp = strtok(cmdtext, idx);
Horas = strval(tmp);
if(!strlen(tmp)) return SendClientMessage(playerid, COR_MARA7, "/RetirarVip [nick] [horas]");
if(!udb_Exists(Nick))
{
format(S, sizeof(S), "| ERRO | A conta '%s' não existe!", Nick);
SendClientMessage(playerid, CORX1, S);
return 1;
}
if(Horas < 0) Horas = 0;
if(Horas == 0)
{
SendClientMessage(playerid, CORX1, "| ERRO | Valor não aceitável.");
return 1;
}
if(dUserINT(Nick).("HorasVIP") <= 0)
{
SendClientMessage(playerid, CORX1, "| ERRO | Esse jogador não tem VIP!");
return 1;
}
Total = dUserINT(Nick).("HorasVIP") - Horas;
if(Total <= 0)
{
format(S, sizeof(S), ""#TAG_ADMINFO" Todas as horas de VIP do jogador %s retirado.", Nick);
SendClientMessage(playerid, Azul, S);
dUserSetINT(Nick).("HorasVIP", Vip[playerid]);
if(!dini_Exists("RelatorioAdministrativo/Colocar_e_Retirar_VIPS.txt"))
dini_Create("RelatorioAdministrativo/Colocar_e_Retirar_VIPS.txt");
new string[300], File:Relatorio, Hora, Minuto, Segundo, Dia, Mes, Ano;
getdate(Ano, Mes, Dia);
gettime(Hora, Minuto, Segundo);
format(string, sizeof(string), "Todas as horas de VIP do jogador %s foram retiradas pelo administrador %s - %02d/%02d/%02d | %02d:%02d:%02d", Nick, NJogador(playerid), Dia, Mes, Ano, Hora, Minuto, Segundo);
Relatorio = fopen("RelatorioAdministrativo/Colocar_e_Retirar_VIPS.txt", io_append);
fwrite(Relatorio, string);
fwrite(Relatorio, "\r\n");
fclose(Relatorio);
for(new I = 0; I < MAX_PLAYERS; I ++)
{
if(strcmp(PlayerName(I), Nick, true) == 0)
{
Vip[I] = 0;
dUserSetINT(Nick).("HorasVIP", Vip[I]);
}
}
}
else
{
format(S, sizeof(S), ""#TAG_ADMINFO" Foram retiradas %d horas de VIP do jogador %s", Horas, Nick);
SendClientMessage(playerid, Azul, S);
dUserSetINT(Nick).("HorasVIP", Vip[playerid]);
if(!dini_Exists("RelatorioAdministrativo/Colocar_e_Retirar_VIPS.txt"))
dini_Create("RelatorioAdministrativo/Colocar_e_Retirar_VIPS.txt");
new string[300], File:Relatorio, Hora, Minuto, Segundo, Dia, Mes, Ano;
getdate(Ano, Mes, Dia);
gettime(Hora, Minuto, Segundo);
format(string, sizeof(string), "Foram retiradas %d horas do jogador %s administrador %s - %02d/%02d/%02d | %02d:%02d:%02d", Horas, Nick, NJogador(playerid), Dia, Mes, Ano, Hora, Minuto, Segundo);
Relatorio = fopen("RelatorioAdministrativo/Colocar_e_Retirar_VIPS.txt", io_append);
fwrite(Relatorio, string);
fwrite(Relatorio, "\r\n");
fclose(Relatorio);
for(new I = 0; I < MAX_PLAYERS; I ++)
{
if(strcmp(PlayerName(I), Nick, true) == 0)
{
Vip[I] = Total;
dUserSetINT(Nick).("HorasVIP", Vip[I]);
}
}
}
}
else
{
SendClientMessage(playerid, CORX1, "| ERRO | Você não é administrador(a)");
}
}
else
{
SendClientMessage(playerid, CORX1, "| ERRO | Você não é um administrador(a) master!");
}
return 1;
}
No chat não muda a cor do tag VIP, mais na msg que informa que a cor do tag foi mudada funciona