whiplk

[INCLUDE] - JCMD Processador(v1)

Jul 25th, 2013
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 1.54 KB | None | 0 0
  1. /******************************************************************************\
  2. |                                                                              |
  3. |                       [Include] - Processador de comandos                    |
  4. |                             By Jeffrey_Hatrix                                |
  5. |                   Special thanks to: SlashPT for speed ideas                 |
  6. |                                                                              |
  7. \******************************************************************************/
  8.  
  9. // JCMD Fast and simple, enjoy.
  10.  
  11. #if !defined MAX_CMD_PARAMS
  12.         #define MAX_CMD_PARAMS 256
  13. #endif
  14.  
  15. #define newCmd:%1(%2) \
  16.         forward @%1(%2); \
  17.         public @%1(%2)
  18.  
  19. #define newCommand:%1(%2) \
  20.         newCmd:%1(%2)
  21.  
  22. #define CMD:%1(%2) newCmd:%1(%2)
  23.  
  24. static  c_sys_cmd[MAX_CMD_PARAMS], c_sys_loop;
  25.  
  26. public OnPlayerCommandText(playerid, cmdtext[])
  27. {
  28.     c_sys_loop = strfind((cmdtext[0] = 0x40 ,cmdtext), "\x20" );
  29.     c_sys_cmd [0] = '\0';
  30.  
  31.     if(c_sys_loop != -1)
  32.     {
  33.         if(cmdtext[c_sys_loop+1] == '\0')
  34.         {
  35.             cmdtext[c_sys_loop] = '\0';
  36.             return (CallLocalFunction(cmdtext, "is", playerid, "\1") == -1) ? (0) : (1);
  37.         }
  38.         strmid(c_sys_cmd, cmdtext, 0, MAX_CMD_PARAMS);
  39.         c_sys_cmd[c_sys_loop] = '\0';
  40.         return (CallLocalFunction(c_sys_cmd, "is", playerid, cmdtext[c_sys_loop+1]) == -1) ? (0) : (1);
  41.     }
  42.     else
  43.     {
  44.         return (CallLocalFunction(cmdtext, "is", playerid, "\1") == -1) ? (0) : (1);
  45.     }
  46. }
Advertisement
Add Comment
Please, Sign In to add comment