rendered paste body/*********************************** * * * - Coded by: ZeeX * * - Version: 0.2.5 * * - Last update: 14/10/2009 * * * ***********************************/#if !defined _zcmd_included#define _zcmd_included#define MAX_COMM_FUNC_NAME (32)#define zcmd(%1,%2,%3) \ forward zcmd_%1(%2, %3); \ public zcmd_%1(%2, %3)#if !defined isnull #define isnull(%1) \ ((!(%1[0])) || (((%1[0]) == '\1') && (!(%1[1]))))#endif#if !defined ZCMD_NO_CALLBACK static gHasOPCT = false;#if defined FILTERSCRIPT || defined _ALS_OnFilterScriptInitpublic OnFilterScriptInit(){ if (funcidx("ZCMD_OnPlayerCommandText") != -1) { gHasOPCT = true; } return CallLocalFunction("ZCMD_OnFilterScriptInit", "");}#if defined _ALS_OnFilterScriptInit #undef OnFilterScriptInit#else #define _ALS_OnFilterScriptInit#endif#define OnFilterScriptInit ZCMD_OnFilterScriptInitforward ZCMD_OnFilterScriptInit();#elsepublic OnGameModeInit(){ if (funcidx("ZCMD_OnPlayerCommandText") != -1) { gHasOPCT = true; } return CallLocalFunction("ZCMD_OnGameModeInit", "");}#if defined _ALS_OnGameModeInit #undef OnGameModeInit#else #define _ALS_OnGameModeInit#endif#define OnGameModeInit ZCMD_OnGameModeInitforward ZCMD_OnGameModeInit();#endifpublic OnPlayerCommandText(playerid, cmdtext[]){ if (gHasOPCT && CallLocalFunction("ZCMD_OnPlayerCommandText", "is", playerid, cmdtext)) { return 1; }#else ZCMD_ProcessCommand(playerid, cmdtext[]){ #endif new pos, funcname[MAX_COMM_FUNC_NAME]; while (cmdtext[++pos] > ' ') cmdtext[pos] = tolower(cmdtext[pos]); if (!cmdtext[pos]) { format(funcname, sizeof (funcname), "zcmd_%s", cmdtext[1]); } else { format(funcname, sizeof (funcname), "zcmd_%.*s", pos-1, cmdtext[1]); while (cmdtext[++pos] == ' ') {} if (cmdtext[pos]) { return CallLocalFunction(funcname, "is", playerid, cmdtext[pos]); } } return CallLocalFunction(funcname, "is", playerid, "\1");}#if !defined ZCMD_NO_CALLBACK#if defined _ALS_OnPlayerCommandText #undef OnPlayerCommandText#else #define _ALS_OnPlayerCommandText#endif#define OnPlayerCommandText ZCMD_OnPlayerCommandTextforward ZCMD_OnPlayerCommandText(playerid, cmdtext[]);#endif #endif