SA-MP Forums Archive
[FilterScript] Sistema Vip - 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)
+----- Forum: Lançamentos/Releases (https://sampforum.blast.hk/forumdisplay.php?fid=56)
+----- Thread: [FilterScript] Sistema Vip (/showthread.php?tid=467339)



Sistema Vip - DanDRT - 02.10.2013

Introduзгo:
Й um sistema vip simples que eu fiz para testar a funзгo #emit e resolvi postar aqui.

PHP код:
/* Include's */
#include <a_samp>
#include <zcmd>
#include <sscanf>
#include <DOF2>
/* New's */
new PlayerVip[MAX_PLAYERS];
/* Public's */
main(){}
public 
OnFilterScriptInit() return 1;
public 
OnFilterScriptExit() { DOF2_Exit(); return 1; }
public 
OnPlayerConnect(playerid)
{
    new 
string[80];
    
format(stringsizeof(string), "/vips/%s.ini"GetName(playerid));
    if(
DOF2_FileExists(string))
    {
        
PlayerVip[playerid] = DOF2_GetInt(string,"VipExpira");
        if(
gettime() > PlayerVip[playerid])
        {
            
DOF2_RemoveFile(string);
            
PlayerVip[playerid] = 0;
            
SendClientMessage(playerid0xF6FF00AA"* Seu vip expirou!");
        }
        else
        {
            
format(stringsizeof(string), "* Seu vip expira em %s."convertNumber(PlayerVip[playerid]-gettime()));
            
SendClientMessage(playerid0xF6FF00AAstring);
        }
    }
    return 
1;
}
public 
OnPlayerSpawn(playerid)
{
    if(
PlayerVip[playerid] > 0)
    {
        if(
gettime() > PlayerVip[playerid])
        {
            new 
string[40];
            
format(stringsizeof(string), "/vips/%s.ini"GetName(playerid));
            
DOF2_RemoveFile(string);
            
PlayerVip[playerid] = 0;
            
SendClientMessage(playerid0xF6FF00AA"* Seu vip expirou!");
        }
        else
        {
            
SetPlayerArmour(playerid100);
            
SetPlayerHealth(playerid100);
        }
    }
    return 
1;
}
/* Stock's */
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;
}
stock convertNumber(n)
{
    new 
diahrmnsegresto;
    
resto n;
    
seg resto 60;
    
resto /= 60;
    
mn resto 60;
    
resto /= 60;
    
hr resto 24;
    
resto /= 24;
    
dia resto;
    new 
str[50];
    
format(strsizeof(str), "%ddias, %02dh %02dm %02ds"diahrmnseg);
    return 
str;
}
stock GetName(playerid)
{
    new 
name[24];
    
GetPlayerName(playeridnamesizeof(name));
    return 
name;
}
/* Command's */
CMD:vips(playerid)
{
    new 
string[85];
    new 
count;
       
SendClientMessage(playerid0x33AAFFFF"** Todos os jogadores VIP online:");
    for(new 
0MAX_PLAYERSi++)
    {
        if(
PlayerVip[i] > 0)
        {
            if(
IsPlayerConnected(i))
               {
                
format(stringsizeof(string), "Vip %s (%d) [%s]"GetName(i), iconvertNumber(PlayerVip[i]-gettime()));
                
SendClientMessage(playerid0xE3E3E3FFstring);
                
count++;
               }
        }
    }
    if(
count == 0)
        return 
SendClientMessage(playerid0xD8D8D8FF"Nгo tem nenhum jogador vip on-line!");
    return 
true;
}
CMD:setvip(playeridparams[])
{
    new 
iddaysstring[70];
    if(!
IsPlayerAdmin(playerid))
        return 
SendClientMessage(playerid0xFF0000AA"ERRO: Vocк precisa estar logado na RCON para usar este comando!");
    if(
sscanf(params"ud"iddays))
        return 
SendClientMessage(playerid, -1"Modo de uso: /setvip [id] [dias]");
    if(
days 0)
    {
        return 
SendClientMessage(playerid0xFF0000AA"ERRO: Este jogador nгo estб online!");
    }
    else
    {
        if(!
IsPlayerConnected(id))
            return 
SendClientMessage(playerid0xFF0000AA"ERRO: Este jogador nгo estб online!");
        else
        {
            
PlayerVip[id] = ConvertDays(days);
            
format(stringsizeof(string), "** Vocк deu %d dias de VIP para %s."daysGetName(id));
            
SendClientMessage(playerid0x33AAFFFFstring);
            
format(stringsizeof(string), "** Vocк recebeu %d dias de VIP."days);
            
SendClientMessage(playerid0x33AAFFFFstring);
            
format(stringsizeof(string), "/vips/%s.ini"GetName(id));
            
DOF2_CreateFile(string);
            
DOF2_SetInt(string,"VipExpira"PlayerVip[id]);
            
DOF2_SaveFile();
        }
    }
    return 
true;

ScreenShot:


Crйditos:
DanDRT
Agradecimentos ao Willian_Luigi.

Observaзхes:
Serб necessбria a pasta vips na scriptfiles.



Re: Sistema Vip - smiiir - 02.10.2013

Muito bom,

Parabйns.


Re: Sistema Vip - PT - 02.10.2013

eppaaaa

Os tutoriais do ipsBruno ja estao dando resultados...

bom trabalho...

@ edit

tens 1 erro na 1Є linha logo, mas e coisa simples olha so:

pawn Код:
/* Include's */                                                                                                                        */



Respuesta: Re: Sistema Vip - DanDRT - 02.10.2013

Quote:
Originally Posted by iSmirnoff
Посмотреть сообщение
Muito bom,

Parabйns.
Obrigado :3

Quote:
Originally Posted by PT
Посмотреть сообщение
eppaaaa

Os tutoriais do ipsBruno ja estao dando resultados...

bom trabalho...

@ edit

tens 1 erro na 1Є linha logo, mas e coisa simples olha so:

pawn Код:
/* Include's */                                                                                                                        */
Obrigado, o erro eu percebi agora, corrigido!


Re: Sistema Vip - WLSF - 02.10.2013

Dб pra melhorar, mas como vocк tб no inicio tб fazendo boas postagens.

Parabйns.


Respuesta: Sistema Vip - DanDRT - 02.10.2013

Atualizado, obrigado Willian


Re: Sistema Vip - smiiir - 02.10.2013

Oque mudou?


Respuesta: Re: Sistema Vip - DanDRT - 02.10.2013

Quote:
Originally Posted by iSmirnoff
Посмотреть сообщение
Oque mudou?
stock convertnumber... deixou o codigo mais limpo..


Re: Respuesta: Re: Sistema Vip - smiiir - 02.10.2013

Quote:
Originally Posted by DanDRT
Посмотреть сообщение
stock convertnumber... deixou o codigo mais limpo..
ata

+2


Re: Sistema Vip - zSuYaNw - 02.10.2013

Dan, estou impressionado com este seu cуdigo!

Reputaзгo +7.


(Nгo quer se envolver em uma das melhores equipes de programaзгo ? \/ ).