Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- native DMessage(playerid, color, const message[], string);
- native DTextAll(const string[],time,style);
- native DPlayerDialog(playerid, dialogid, style, caption[], info[], button1[], button2[], string);
- native DStaticVehicleEx(modelid, Float:spawn_x, Float:spawn_y, Float:spawn_z, Float:z_angle, color1, color2, respawn_delay, string);
- #if defined _dcmd_included
- #endinput
- #endif
- #define _dcmd_included
- #define MAX_FUNC_NAME (32)
- #define DCOMMAND:%1(%2) forward cmd_%1(%2); \
- public cmd_%1(%2)
- #define DCMD:%1(%2) \
- DCOMMAND:%1(%2)
- #define dcommand(%1,%2,%3) \
- DCOMMAND:%1(%2, %3)
- #define dcmd(%1,%2,%3) \
- DCOMMAND:%1(%2, %3)
- forward OnPlayerCommandReceived(playerid, cmdtext[]);
- forward OnPlayerCommandDark(playerid, cmdtext[], success);
- static
- bool:dcmd_g_HasOPCS = false,
- bool:dcmd_g_HasOPCE = false;
- #if defined FILTERSCRIPT
- public OnFilterScriptInit()
- {
- dcmd_g_HasOPCS = funcidx("OnPlayerCommandReceived") != -1;
- dcmd_g_HasOPCE = funcidx("OnPlayerCommandDark") != -1;
- return CallLocalFunction("dcmd_OnFilterScriptInit", "");
- }
- #if defined _ALS_OnFilterScriptInit
- #undef OnFilterScriptInit
- #else
- #define _ALS_OnFilterScriptInit
- #endif
- #define OnFilterScriptInit dcmd_OnFilterScriptInit
- forward dcmd_OnFilterScriptInit();
- #else /*not a filterscript*/
- public OnGameModeInit()
- {
- dcmd_g_HasOPCS = funcidx("OnPlayerCommandReceived") != -1;
- dcmd_g_HasOPCE = funcidx("OnPlayerCommandDark") != -1;
- if (funcidx("dcmd_OnGameModeInit") != -1)
- {
- return CallLocalFunction("dcmd_OnGameModeInit", "");
- }
- return 1;
- }
- #if defined _ALS_OnGameModeInit
- #undef OnGameModeInit
- #else
- #define _ALS_OnGameModeInit
- #endif
- #define OnGameModeInit dcmd_OnGameModeInit
- forward dcmd_OnGameModeInit();
- #endif
- public OnPlayerCommandDark(playerid, cmdtext[])
- {
- if (dcmd_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 (dcmd_g_HasOPCE)
- {
- return CallLocalFunction("OnPlayerCommandDark", "isi", playerid, cmdtext, CallLocalFunction(funcname, "is", playerid, "\1"));
- }
- return CallLocalFunction(funcname, "is", playerid, "\1");
- }
- if (dcmd_g_HasOPCE)
- {
- return CallLocalFunction("OnPlayerCommandDark", "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 dcmd_OnPlayerCommandText
- forward dcmd_OnPlayerCommandText(playerid, cmdtext[]);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement