Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**********************************
- * *
- * @Author: ZeeX *
- * @Version: 0.3.1 *
- * @Released: 31/10/2009 *
- * *
- **********************************/
- #if defined _zcmd_included
- #endinput
- #endif
- #define _zcmd_included
- #define MAX_FUNC_NAME (32)
- #define COMMAND:%1(%2) \
- forward cmd_%1(%2); \
- public cmd_%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
- forward OnPlayerCommandReceived(playerid, cmdtext[]);
- forward OnPlayerCommandPerformed(playerid, cmdtext[], success);
- static
- bool:zcmd_g_HasOPCS = false,
- bool:zcmd_g_HasOPCE = false;
- #if defined FILTERSCRIPT
- public OnFilterScriptInit()
- {
- zcmd_g_HasOPCS = funcidx("OnPlayerCommandReceived") != -1;
- zcmd_g_HasOPCE = funcidx("OnPlayerCommandPerformed") != -1;
- return CallLocalFunction("zcmd_OnFilterScriptInit", "");
- }
- #if defined _ALS_OnFilterScriptInit
- #undef OnFilterScriptInit
- #else
- #define _ALS_OnFilterScriptInit
- #endif
- #define OnFilterScriptInit zcmd_OnFilterScriptInit
- forward zcmd_OnFilterScriptInit();
- #else /*not a filterscript*/
- public OnGameModeInit()
- {
- zcmd_g_HasOPCS = funcidx("OnPlayerCommandReceived") != -1;
- zcmd_g_HasOPCE = funcidx("OnPlayerCommandPerformed") != -1;
- if (funcidx("zcmd_OnGameModeInit") != -1)
- {
- return CallLocalFunction("zcmd_OnGameModeInit", "");
- }
- return 1;
- }
- #if defined _ALS_OnGameModeInit
- #undef OnGameModeInit
- #else
- #define _ALS_OnGameModeInit
- #endif
- #define OnGameModeInit zcmd_OnGameModeInit
- forward zcmd_OnGameModeInit();
- #endif /*if defined FILTERSCRIPT*/
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if (zcmd_g_HasOPCS && !CallLocalFunction("OnPlayerCommandReceived", "is", playerid, cmdtext))
- {
- return 1;
- }
- new
- pos,
- funcname[MAX_FUNC_NAME];
- while (cmdtext[++pos] > ' ')
- {
- funcname[pos-1] = tolower(cmdtext[pos]);
- }
- format(funcname, sizeof(funcname), "cmd_%s", funcname);
- while (cmdtext[pos] == ' ') pos++;
- if (!cmdtext[pos])
- {
- if (zcmd_g_HasOPCE)
- {
- return CallLocalFunction("OnPlayerCommandPerformed", "isi", playerid, cmdtext, CallLocalFunction(funcname, "is", playerid, "\1"));
- }
- return CallLocalFunction(funcname, "is", playerid, "\1");
- }
- if (zcmd_g_HasOPCE)
- {
- return CallLocalFunction("OnPlayerCommandPerformed", "isi", playerid, cmdtext, CallLocalFunction(funcname, "is", playerid, cmdtext[pos]));
- }
- return CallLocalFunction(funcname, "is", playerid, cmdtext[pos]);
- }
- #if defined _ALS_OnPlayerCommandText
- #undef OnPlayerCommandText
- #else
- #define _ALS_OnPlayerCommandText
- #endif
- #define OnPlayerCommandText zcmd_OnPlayerCommandText
- forward zcmd_OnPlayerCommandText(playerid, cmdtext[]);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement