public OnPlayerCommandText(playerid, cmdtext[]) { if (!IsPlayerConnected(playerid) || gAllow[playerid]) return 1; new space = gComSet & YS_COMSET_USE_SPACE ? 1 : 0; #if defined YS_USE_PREFIX_ON new len = strlen(gPrefix); if (strcmp(cmdtext, gPrefix, true, len) == 0 && (((space ? cmdtext[len] == 32 : cmdtext[len]) && ProcessCommand(playerid, cmdtext[len + space], 0)) || (cmdtext[len] == 0 && dcmd_commands(playerid, "", false)))) return 1; #else #if defined YS_USE_PREFIX_OFF new len = 1; if (ProcessCommand(playerid, cmdtext[1], 0)) return 1; #else new len = strlen(gPrefix); new prefix = gComSet & YS_COMSET_USE_PREFIX ? 1 : 0; //if ((prefix ? (strcmp(cmdtext, gPrefix, true, len) == 0) : true) && (prefix ? ((space ? cmdtext[len] : cmdtext[len] == 32) ? true : (cmdtext[len] == 0 && !dcmd_commands(playerid, "", false))) : true) && ProcessCommand(playerid, cmdtext[(prefix * len) + space], 0)) return 1; if ((prefix ? (strcmp(cmdtext, gPrefix, true, len) == 0) : true) && ((prefix ? (cmdtext[len] == 0) : false) ? (dcmd_commands(playerid, "", 0) ? true : false) : ((prefix ? (space ? (cmdtext[len] == 32) : true) : true) && ProcessCommand(playerid, cmdtext[(prefix * len) + space], 0)))) return 1; //if (((prefix ? (cmdtext[len] == 0) : false) ? (dcmd_commands(playerid, "", 0) ? true : false) : true)) return 1; //if ((prefix ? (strcmp(cmdtext, gPrefix, true, len) == 0) : true)) return 1; #endif #endif return 0; } ProcessCommand(playerid, cmd[], help) { new len; for (new i = 0; i < gComCount; i++) { #if defined YS_ALT_NAMES_ON if (gAltNames[i][0] ? (len = strlen(gAltNames[i])) && strcmp(cmd, gAltNames[i], true, len) == 0 : (len = strlen(gFuncNames[i])) && strcmp(cmd, gFuncNames[i], true, len) == 0) { // Command entered if (gFuncLevels[i] <= CallRemoteFunction("YSGetUserLevel", "i", playerid)) { if ((cmd[len] == 0 && CALLFUNCE) || (cmd[len] == 32 && CALLFUNC)) return 1; } else { if (gComSet & YS_COMSET_USE_WARNINGS) { SendFormattedMessage(playerid, 0xFF0000FF, "*** You cannot use that command"); } } break; } #else #if defined YS_ALT_NAMES_OFF len = strlen(gFuncNames[i]); if (strcmp(cmd, gFuncNames[i], true, len) == 0) // return 1; { // Command entered if (gFuncLevels[i] <= CallRemoteFunction("YSGetUserLevel", "i", playerid)) { if ((cmd[len] == 0 && CALLFUNCE) || (cmd[len] == 32 && CALLFUNC)) return 1; } else { if (gComSet & YS_COMSET_USE_WARNINGS) { SendFormattedMessage(playerid, 0xFF0000FF, "*** You cannot use that command"); } } } #else if (((gComSet & YS_COMSET_USE_ALT) && (gAltNames[i][0] != 0)) ? (len = strlen(gAltNames[i])) && strcmp(cmd, gAltNames[i], true, len) == 0 : (len = strlen(gFuncNames[i])) && strcmp(cmd, gFuncNames[i], true, len) == 0) { // Command entered printf("found"); if (gFuncLevels[i] <= CallRemoteFunction("YSGetUserLevel", "i", playerid)) { printf("ok"); //new funcname[MAX_STRING]; //funcname = GetFunction(i); if ((cmd[len] == 0 && CALLFUNCE) || (cmd[len] == 32 && CALLFUNC)) return 1; } else { if (gComSet & YS_COMSET_USE_WARNINGS) { SendFormattedMessage(playerid, 0xFF0000AA, "*** You cannot use that command"); return 1; } } } #endif #endif } return 0; }