[Include] dCMD - Processador de comandos
#1

dCMD - Processador de comandos

Basicamente o uso й igual ao do ZCMD.

Testes de velocidade:

Nгo fiz pensando em ser mais veloz, fiz apenas no intuito de testar o que eu sei(nгo tenho certeza sobre a precisгo dos testes).

10000 interaзхes
Nem sempre й mais rapida e nem sempre mais lenta - Pastebin (usei no teste)
Com Params
PHP Code:
146ms DCMD
155ms 
ZCMD
154ms 
DCMD
152ms 
ZCMD 
Sem Params
PHP Code:
126ms DCMD
124ms 
ZCMD
126ms 
DCMD
131ms 
ZCMD 
Include:
PHP Code:
#if defined _dcmd_included
    #endinput
#endif    
#define _dcmd_included
#define COMMAND:%1(%2)          \
            
forward dcmd_%1(%2); \
            public 
dcmd_%1(%2)
#define CMD:%1(%2) \
            
COMMAND:%1(%2)
#define command(%1,%2,%3) \
            
COMMAND:%1(%2, %3)
#define cmd(%1,%2,%3) \
            
COMMAND:%1(%2, %3)
#if !defined isnull
    #define isnull(%1) \
                
((!(%1[0])) || (((%1[0]) == '\1') && (!(%1[1]))))
#endif
 
static __c__command[32] = "dcmd_";
forward OnPlayerCommandPerfomed(playeridsucess);
public 
OnPlayerCommandText(playeridcmdtext[]) 

    
__command "dcmd_",
    
__c 0;
 
    while(
cmdtext[++__c] > 0x20)
    if(
0x41 <= cmdtext[__c] <= 0x5A)
        
cmdtext[__c] = tolower(cmdtext[__c]);
    
strcat(__commandcmdtext__c+6);
    
strdel(__command56);
    if(!
cmdtext[__c])
        return 
CallLocalFunction("OnPlayerCommandPerfomed""ii"playeridCallLocalFunction(__command"is"playerid"\1")), true;
    
    return 
CallLocalFunction("OnPlayerCommandPerfomed""ii"playeridCallLocalFunction(__command"is"playeridcmdtext[__c+1])), true;

Pastebin

Pra retornar a mensagem de que um comando nгo existe vocк pode utilizar (public obrigatуria):
PHP Code:
public OnPlayerCommandPerfomed(playeridsucess)
{
    if(!
sucess)
        return 
SendClientMessage(playerid0xFF0000AA"ERRO: Comando Invalido!");
    return 
1;

Crйditos:
DanDRT - Include.

Agradecimentos:
JonathanFeitosa - Ajudou-me nos testes e deu-me algumas dicas.

-

Me esforcei pra fazer, espero que se forem criticar que faзam crнticas construtivas.
Reply


Messages In This Thread
dCMD - Processador de comandos - by DanDRT - 13.02.2015, 00:47
Re: dCMD - Processador de comandos - by JkS - 13.02.2015, 00:52
Re: dCMD - Processador de comandos - by WLSF - 13.02.2015, 14:58
Re: dCMD - Processador de comandos - by ipsLuan - 13.02.2015, 15:29
Re: dCMD - Processador de comandos - by DanDRT - 13.02.2015, 16:20
Re: dCMD - Processador de comandos - by PT - 13.02.2015, 16:23
Re: dCMD - Processador de comandos - by WLSF - 14.02.2015, 11:26
Re: dCMD - Processador de comandos - by GM_KoDi - 14.02.2015, 11:41
Re: dCMD - Processador de comandos - by DanDRT - 14.02.2015, 15:43
Re: dCMD - Processador de comandos - by Dolpin - 15.02.2015, 01:49
Re: dCMD - Processador de comandos - by JonathanFeitosa - 15.02.2015, 03:16

Forum Jump:


Users browsing this thread: 2 Guest(s)