[Ajuda] Day -
Don_Speed - 04.05.2012
Bom Estou Montando um Sistema Vip Por Dias Porriso Venho Pedir Ajuda Em Duas Coisas.
1° Estou Tentando Usar Isso:
http://forum.sa-mp.com/showthread.ph...ght=time+stamp
Mas Nao Intedi Nada pq meu igles e horrivel alguem poderia me explicar um pouco?
Tentei Criar um cmd deu Aviso
pawn Код:
COMMAND:darvip(playerid, params[])
{
new GivePlayerid, don[145], day, timestamp;
if (APlayerData[playerid][PlayerLevel] <= 4) return SendClientMessage(playerid, -1,"[ERRO] Voce Nao Tem Level de Admin Suficiente");
static Level = 0;
if(sscanf(params, "udd", GivePlayerid, Level, day)) return SendClientMessage(playerid, -1,"[ERRO]: Correto: /darvip [id] [lvl] [dias].");
if(Level > 3 || Level < 0) return SendClientMessage(playerid, -1,"[ERRO]:Bote Nivel Maior que 1 e menor que 3!.");
if(PlayerInfo[GivePlayerid][pVip] == Level) return SendClientMessage(playerid, -1,"[ERRO]: Este player jб tem este nнvel.");
PlayerInfo[GivePlayerid][pVip] = Level;
timestamp = gettime() + day;
format(don,sizeof(don),"Voce Foi Setado a Vip Level %d Pelo Admin %s", Level, playerid);
SendClientMessage(GivePlayerid, -1, don);
return 1;
}
2°Eu Queria que supondo eo player digita-se /comprarvip e abrise um dialog perguntando quantos dias ele quer comprar.
se ele por exemplo bota-se 21 fizesse o calculo sozinho sendo 1 dia de Vip 1000 de Gold
PlayerInfo[playerid][pGold] -= Algo pra fazer o calculo;
Desdeja Agradeзo
Re: [Ajuda] Day -
Mr.Hardy - 04.05.2012
Explica Melhor... D:
Re: [Ajuda] Day -
Don_Speed - 04.05.2012
Quote:
Originally Posted by Mr.Hardy
Explica Melhor... D:
|
Explicar melhor? LoL
Re: [Ajuda] Day -
Mr.Hardy - 04.05.2012
Quote:
Originally Posted by Don_Speed
Explicar melhor? LoL
|
Algum problema ?? ^^ nгo zuera cara de boa !
Para descobrir o valor total de gold й
(Level Vip Ex: 3) * (Valor de cada Level Ex: 1000)
* = Multiplicaзгo
Resultado = Level 3 igual б 3000 reais
Code: 3 * 1000
Pode implementar isto no dialog dps de o jogador escrever o level de vip !
Se VocК me explica melhor eu te ajudo !
Re: [Ajuda] Day -
Don_Speed - 04.05.2012
Entao seia
PlayerInfo[playerid][pGold] -= Dias* 2592000;
Re: [Ajuda] Day -
RebeloX - 04.05.2012
Quote:
Originally Posted by Mr.Hardy
Algum problema ?? ^^ nгo zuera cara de boa !
Para descobrir o valor total de gold й
(Level Vip Ex: 3) * (Valor de cada Level Ex: 1000)
* = Multiplicaзгo
Resultado = Level 3 igual б 3000 reais
Code: 3 * 1000
Pode implementar isto no dialog dps de o jogador escrever o level de vip !
Se VocК me explica melhor eu te ajudo !
|
Ele nгo quer isso, ele quer que tipo quando for o dia X a hora X e ao minuto X ele retire o vip do player.
Eu nunca usei essa funзгo mas й simples, vocк tem varias formas de fazer, eu vou tentar explicar duas.
A primeira й vocк pode criar um Timer com o tempo, imaginamos 1h por exemplo e quando o jogador desconectar vocк pode pegar o tempo que foi usado, por exemplo.
pawn Код:
new Time[MAX_PLAYERS];
new Var[MAX_PLAYERS];
CMD:Give(playerid,params[]){
if(isnull(params))
SendClientMessage(playerid,-1,"USE: /give [id]");
new id = strval(params);
if(!IsPlayerConnected(id))
SendClientMessage(playerid,-1,"Jogador nгo conectado.");
Var[id] = 1;
Teste(id,1000);
}
public Teste(id,time){
Time[id] = GetTickCount();
SetTimerEx("RetirarVip",time,0,"i",id);
return 1;
}
public OnPlayerDisconnect(playerid,reason){
GetTickCount() - Time[playerid];
//salvar o tempo...
}
public OnPlayerConnect(playerid){
//pega o tempo e seta o tempo
SetTimerEx("RetirarVip",rtime,0,"i",playerid);
}
public RetirarVip(playerid)
return Var[playerid] = 1;
Nгo tenho certezas se isso funciona bem, mas enfim a outra й vocк gravar a data e fazer comparaзхes, tipo.
pawn Код:
if(day == eday && month == emonth && year == && eyear) //codigo
Traduzindo: Se o dia for igual ao fim do dia e se o mкs for igual ao fim do mкs e se o ano for igual ao fim do ano.
Enfim, agora tente fazer testes e obter resultados (:
Re: [Ajuda] Day -
Don_Speed - 04.05.2012
Quote:
Originally Posted by BlueX
Ele nгo quer isso, ele quer que tipo quando for o dia X a hora X e ao minuto X ele retire o vip do player.
Eu nunca usei essa funзгo mas й simples, vocк tem varias formas de fazer, eu vou tentar explicar duas.
A primeira й vocк pode criar um Timer com o tempo, imaginamos 1h por exemplo e quando o jogador desconectar vocк pode pegar o tempo que foi usado, por exemplo.
pawn Код:
new Time[MAX_PLAYERS]; new Var[MAX_PLAYERS];
CMD:Give(playerid,params[]){ if(isnull(params)) SendClientMessage(playerid,-1,"USE: /give [id]"); new id = strval(params); if(!IsPlayerConnected(id)) SendClientMessage(playerid,-1,"Jogador nгo conectado."); Var[id] = 1; Teste(id,1000); }
public Teste(id,time){ Time[id] = GetTickCount(); SetTimerEx("RetirarVip",time,0,"i",id); return 1; }
public OnPlayerDisconnect(playerid,reason){ GetTickCount() - Time[playerid]; //salvar o tempo... }
public OnPlayerConnect(playerid){ //pega o tempo e seta o tempo SetTimerEx("RetirarVip",rtime,0,"i",playerid); }
public RetirarVip(playerid) return Var[playerid] = 1;
Nгo tenho certezas se isso funciona bem, mas enfim a outra й vocк gravar a data e fazer comparaзхes, tipo.
pawn Код:
if(day == eday && month == emonth && year == && eyear) //codigo
Traduzindo: Se o dia for igual ao fim do dia e se o mкs for igual ao fim do mкs e se o ano for igual ao fim do ano.
Enfim, agora tente fazer testes e obter resultados (:
|
Desculpe Nao Intendi !
Poderia Fazer Uma FS Com o Cmd de Dar Vip e Que Retire o Dinheiro Pra Quem Voce Deu o vip Fazendo o Calculo

?
PorFavor
Re: [Ajuda] Day -
paulor - 05.05.2012
Quote:
Originally Posted by BlueX
Ele nгo quer isso, ele quer que tipo quando for o dia X a hora X e ao minuto X ele retire o vip do player.
Eu nunca usei essa funзгo mas й simples, vocк tem varias formas de fazer, eu vou tentar explicar duas.
A primeira й vocк pode criar um Timer com o tempo, imaginamos 1h por exemplo e quando o jogador desconectar vocк pode pegar o tempo que foi usado, por exemplo.
pawn Код:
new Time[MAX_PLAYERS]; new Var[MAX_PLAYERS];
CMD:Give(playerid,params[]){ if(isnull(params)) SendClientMessage(playerid,-1,"USE: /give [id]"); new id = strval(params); if(!IsPlayerConnected(id)) SendClientMessage(playerid,-1,"Jogador nгo conectado."); Var[id] = 1; Teste(id,1000); }
public Teste(id,time){ Time[id] = GetTickCount(); SetTimerEx("RetirarVip",time,0,"i",id); return 1; }
public OnPlayerDisconnect(playerid,reason){ GetTickCount() - Time[playerid]; //salvar o tempo... }
public OnPlayerConnect(playerid){ //pega o tempo e seta o tempo SetTimerEx("RetirarVip",rtime,0,"i",playerid); }
public RetirarVip(playerid) return Var[playerid] = 1;
Nгo tenho certezas se isso funciona bem, mas enfim a outra й vocк gravar a data e fazer comparaзхes, tipo.
pawn Код:
if(day == eday && month == emonth && year == && eyear) //codigo
Traduzindo: Se o dia for igual ao fim do dia e se o mкs for igual ao fim do mкs e se o ano for igual ao fim do ano.
Enfim, agora tente fazer testes e obter resultados (:
|
Ganзala nгo resisti! KkKkKkKkKkKkK.... oq q tu fez ai rapaz HeHe!!! Se atrapalhou sozinho.