if(strcmp(cmd, "/darvip", true) ==0 || strcmp(cmd, "/setarvip", true) ==0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pAdmin] < 1340)
{
SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo tem autorizaзгo para usar esse comando.");
return 1;
}
VipVaga();
if(VagaSobrando == 0)
{
SendClientMessage(playerid, COLOR_GRAD1, "Nгo hб mais vagas na lista use /limparvip primeiro.");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /darvip [ ID ] [Nivel] 1(Prata) 2(Ouro) 3(VIP-Sуcio)");
return 1;
}
new para1;
new level;
para1 = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /darvip [ ID ] [Nivel] 1(Prata) 2(Ouro) 3(VIP-Sуcio)");
return 1;
}
level = strval(tmp);
GetPlayerName(para1, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
if(IsPlayerConnected(para1))
{
if(para1 != INVALID_PLAYER_ID)
{
format(string, sizeof string, "Vocк deu VIP Nнvel %d para %s", level, giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof string, "Vocк ganhou VIP Nнvel %d do admin {FF34B3}%s", level, sendername);
SendClientMessage(para1, COLOR_LIGHTBLUE, string);
getdate(year, month, day);
gettime(hour,minute,second);
format(string, sizeof(string), "%s deu vip ao %s nнvel %d (%d/%d/%d - %d:%d)",sendername,giveplayer,level,day, month, year,hour, minute);
VipsLog(string);
PlayerInfo[para1][pVIP] = level;
new var03 = 0;
for(new i = 0; i < sizeof(VipInfo); i++)
{
if(strcmp(giveplayer,VipInfo[i][vNick],true)==0)
{
VipInfo[i][vTipo] = level;
VipInfo[i][vDia] = day;
VipInfo[i][vMes] = month+1;
VipInfo[i][vAno] = year;
SaveVip();
var03 = 1;
break;
}
}
if(var03 == 0)
{
for(new i = 0; i < sizeof(VipInfo); i++)
{
if(strcmp("Ninguem",VipInfo[i][vNick],true)==0)
{
strmid(VipInfo[i][vNick], giveplayer, 0, strlen(giveplayer), 255);
VipInfo[i][vTipo] = level;
VipInfo[i][vDia] = 0;
VipInfo[i][vMes] = 0;
VipInfo[i][vAno] = 0;
SaveVip();
break;
}
}
}
}
}
}
return 1;
}
//TOPO
new vip[MAX_PLAYERS];
//Onplayerconnect - Requestclass ou outro que vc queira
new string[256];
GetPlayerName(playerid, nome, sizeof(nome));
format(string, sizeof(string),"PASTA DE SALVAMENTO/%s.txt", nome);
vip[playerid] = DOF2_GetInt(string,"tempoVip");
if(gettime() > vip[playerid])
{
vip[playerid] = 0;
DOF2_SetInt(file00,"tempoVip", 0);
}
else
{
format(string, sizeof(string), "Seu vip expira em %s.", convertNumber(vip[playerid]-gettime()));
SendClientMessage(playerid, 0xF6FF00AA, string);
}
//Fim do GM
stock convertNumber(n)
{
new dia, hr, mn, seg, resto;
resto = n;
seg = resto % 60;
resto /= 60;
mn = resto % 60;
resto /= 60;
hr = resto % 24;
resto /= 24;
dia = resto;
new str[50];
format(str, sizeof(str), "%d dias, %02d horas %02d minutos %02d segundos", dia, hr, mn, seg);
return str;
}
stock ConvertDays(dias)
{
new
valueday = 86400*dias,
daysconvert,
gtime = gettime()
;
#emit LOAD.S.PRI gtime
#emit LOAD.S.ALT valueday
#emit ADD
#emit STOR.S.PRI daysconvert
return daysconvert;
}
//Comando em STRCMP
if(strcmp(cmd,"/setarvip", true)==0)
{
new nome[MAX_PLAYER_NAME],string[256],string2[256];
GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
format(string, sizeof(string), "PASTA_DE_SALVAMENTO/%s.txt", nome);
new id, days;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, Vermelho, "Digite: /SetarVip [ID] [DIAS]");
return 1;
}
id = strval(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, Vermelho, "Digite: /SetarVip [ID] [DIAS]");
return 1;
}
days = strval(tmp);
if(days < -1 || days > 999) {
SendClientMessage(playerid, Vermelho, "Quantidade invбlida");
return 1;
}
if(IsPlayerConnected(id)) {
vip[id] = ConvertDays(days);
new pname[MAX_PLAYER_NAME];
GetPlayerName(id, pname, MAX_PLAYER_NAME);
format(string, sizeof(string), "Vocк deu %d dias de VIP para %s.", days, pname);
SendClientMessage(playerid, -1, string);
format(string, sizeof(string), "Vocк recebeu %d dias de VIP.", days);
SendClientMessage(id, -1, string);
format(string2, sizeof(string2), "PASTA_DE_SALVAMENTO/%s.txt", pname);
DOF2_SetInt(string2, "tempoVip", vip[id]);
return 1;
}
else {
SendClientMessage(playerid, -1, "Jogador nгo encontrado.");
return 1;
}
}
|
Adapte do jeito que quiser, ZCMD sscanf e tals, nгo fui eu que criei, apenas adaptei para meu uso.
PHP код:
|
|
Aqui o SaveFile buga meu arquivo as vezes e acaba nгo salvando, e quando eu nгo uso o savefile ele salva
ueahuehauea |