Advertisement
razvan_xd

TikiTaka @ gta-mp.ro | ANTI-PIJAWA ZCMD

Dec 29th, 2012
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.08 KB | None | 0 0
  1. /**********************************
  2. * *
  3. * @Author: ZeeX *
  4. * @Version: 0.3.1 *
  5. * @Released: 31/10/2009 *
  6. * *
  7. **********************************/
  8.  
  9. #if defined _zcmd_included
  10. #endinput
  11. #endif
  12. #define _zcmd_included
  13.  
  14. #define MAX_FUNC_NAME (32)
  15.  
  16. #define COMMAND:%1(%2) \
  17. forward cmd_%1(%2); \
  18. public cmd_%1(%2)
  19.  
  20. #define CMD:%1(%2) \
  21. COMMAND:%1(%2)
  22.  
  23. #define command(%1,%2,%3) \
  24. COMMAND:%1(%2, %3)
  25.  
  26. #define cmd(%1,%2,%3) \
  27. COMMAND:%1(%2, %3)
  28.  
  29. #if !defined isnull
  30. #define isnull(%1) \
  31. ((!(%1[0])) || (((%1[0]) == '\1') && (!(%1[1]))))
  32. #endif
  33.  
  34.  
  35. forward OnPlayerCommandReceived(playerid, cmdtext[]);
  36. forward OnPlayerCommandPerformed(playerid, cmdtext[], success);
  37.  
  38.  
  39. static
  40. bool:zcmd_g_HasOPCS = false,
  41. bool:zcmd_g_HasOPCE = false;
  42.  
  43. #if defined FILTERSCRIPT
  44.  
  45. public OnFilterScriptInit()
  46. {
  47. zcmd_g_HasOPCS = funcidx("OnPlayerCommandReceived") != -1;
  48. zcmd_g_HasOPCE = funcidx("OnPlayerCommandPerformed") != -1;
  49. return CallLocalFunction("zcmd_OnFilterScriptInit", "");
  50. }
  51.  
  52. #if defined _ALS_OnFilterScriptInit
  53. #undef OnFilterScriptInit
  54. #else
  55. #define _ALS_OnFilterScriptInit
  56. #endif
  57. #define OnFilterScriptInit zcmd_OnFilterScriptInit
  58. forward zcmd_OnFilterScriptInit();
  59.  
  60. #else /*not a filterscript*/
  61.  
  62. public OnGameModeInit()
  63. {
  64. zcmd_g_HasOPCS = funcidx("OnPlayerCommandReceived") != -1;
  65. zcmd_g_HasOPCE = funcidx("OnPlayerCommandPerformed") != -1;
  66. if (funcidx("zcmd_OnGameModeInit") != -1)
  67. {
  68. return CallLocalFunction("zcmd_OnGameModeInit", "");
  69. }
  70. return 1;
  71. }
  72.  
  73. #if defined _ALS_OnGameModeInit
  74. #undef OnGameModeInit
  75. #else
  76. #define _ALS_OnGameModeInit
  77. #endif
  78. #define OnGameModeInit zcmd_OnGameModeInit
  79. forward zcmd_OnGameModeInit();
  80.  
  81. #endif /*if defined FILTERSCRIPT*/
  82.  
  83. public OnPlayerCommandText(playerid, cmdtext[])
  84. {
  85. if (isnull(cmdtext)) return 0; // Asta e singura modificare adusa la ZCMD.
  86. if (zcmd_g_HasOPCS && !CallLocalFunction("OnPlayerCommandReceived", "is", playerid, cmdtext))
  87. {
  88. return 1;
  89. }
  90. new
  91. pos,
  92. funcname[MAX_FUNC_NAME];
  93. while (cmdtext[++pos] > ' ')
  94. {
  95. funcname[pos-1] = tolower(cmdtext[pos]);
  96. }
  97. format(funcname, sizeof(funcname), "cmd_%s", funcname);
  98. while (cmdtext[pos] == ' ') pos++;
  99. if (!cmdtext[pos])
  100. {
  101. if (zcmd_g_HasOPCE)
  102. {
  103. return CallLocalFunction("OnPlayerCommandPerformed", "isi", playerid, cmdtext, CallLocalFunction(funcname, "is", playerid, "\1"));
  104. }
  105. return CallLocalFunction(funcname, "is", playerid, "\1");
  106. }
  107. if (zcmd_g_HasOPCE)
  108. {
  109. return CallLocalFunction("OnPlayerCommandPerformed", "isi", playerid, cmdtext, CallLocalFunction(funcname, "is", playerid, cmdtext[pos]));
  110. }
  111. return CallLocalFunction(funcname, "is", playerid, cmdtext[pos]);
  112. }
  113.  
  114. #if defined _ALS_OnPlayerCommandText
  115. #undef OnPlayerCommandText
  116. #else
  117. #define _ALS_OnPlayerCommandText
  118. #endif
  119. #define OnPlayerCommandText zcmd_OnPlayerCommandText
  120. forward zcmd_OnPlayerCommandText(playerid, cmdtext[]);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement