įdėkit į pluginą spalvas

Šiame forume vartotojai gali prašyti jiems reikiamo plugino.
Forum rules
Šiame forume galite siūlyti idėjas ar prašyti jums reikalingų pluginų. Jei kas nors pradės jį kurti, tai pasirašys Jūsų sukurtoje temoje. Niekada nepykite, jei niekas neatsako į Jūsų prašymą. Gal tai tiesiog per sudėtinga, arba reikalauja per daug darbo.
Post Reply
iNew
O taip. Jis jau surinko 50 žinučių!
Posts: 84
Joined: 2016 Jun 20 15:54
Skype: dilanidzee
Location: Kaunas

įdėkit į pluginą spalvas

Post by iNew »

Sveiki, galite įdėti spalvas į pluginą, kad per menufront.txt Eitu su spalvom rašyt: Pvž ( ^3Užblokuoti Žaidėja ) Arba ( !3Užblokuoti Žaidėja )

Code: Select all

/* AMX Mod X*   Menus Front-End Plugin** by the AMX Mod X Development Team*  originally developed by OLO** This file is part of AMX Mod X.***  This program is free software; you can redistribute it and/or modify it*  under the terms of the GNU General Public License as published by the*  Free Software Foundation; either version 2 of the License, or (at*  your option) any later version.**  This program is distributed in the hope that it will be useful, but*  WITHOUT ANY WARRANTY; without even the implied warranty of*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU*  General Public License for more details.**  You should have received a copy of the GNU General Public License*  along with this program; if not, write to the Free Software Foundation,*  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA**  In addition, as a special exception, the author gives permission to*  link the code of this program with the Half-Life Game Engine ("HL*  Engine") and Modified Game Libraries ("MODs") developed by Valve,*  L.L.C ("Valve"). You must obey the GNU General Public License in all*  respects for all of the code used other than the HL Engine and MODs*  from Valve. If you modify this file, you may extend this exception*  to your version of the file, but you are not obligated to do so. If*  you do not wish to do so, delete this exception statement from your*  version.*/ #include <amxmodx>#include <amxmisc> #define MAXMENUS            128#define STRINGSIZE          32#define STRINGLENGTH        STRINGSIZE - 1#define MENUITEMSPERPAGE    8//#define MENUS_NUMBER 16 new g_menuPosition[33]new g_menusNumber = 0new g_menuBody[MAXMENUS][STRINGSIZE]new bool:g_menuBodyPhrase[MAXMENUS]new g_menuCmd[MAXMENUS][STRINGSIZE]new g_menuAccess[MAXMENUS]new g_menuPlugin[MAXMENUS][STRINGSIZE] new g_coloredMenus new g_clientMenuPosition[33]new g_clientMenusNumber = 0new g_clientMenuBody[MAXMENUS][STRINGSIZE]new bool:g_clientMenuBodyPhrase[MAXMENUS]new g_clientMenuCmd[MAXMENUS][STRINGSIZE]new g_clientMenuAccess[MAXMENUS]new g_clientMenuPlugin[MAXMENUS][STRINGSIZE] // menuBody: Text that will be shown for this item in menu// menuCmd: Command that should be executed to start menu// menuAccess: Access required for menu// menuPlugin: The exact case-insensitive name of plugin holding the menu commandpublic AddMenu(const menuBody[], const menuCmd[], const menuAccess, const menuPlugin[]){    if (g_menusNumber + 1 == MAXMENUS)    {        log_amx("Error: Plugin ^"%s^" tried to add a menu item to Menu Front-End plugin with maximum menu items reached!", menuPlugin)        return    }     copy(g_menuBody[g_menusNumber], STRINGLENGTH, menuBody)    g_menuBodyPhrase[g_menusNumber] = false        copy(g_menuCmd[g_menusNumber], STRINGLENGTH, menuCmd)    g_menuAccess[g_menusNumber] = menuAccess        copy(g_menuPlugin[g_menusNumber], STRINGLENGTH, menuPlugin)     g_menusNumber++    server_print("Menu item %d added to Menus Front-End: ^"%s^" from plugin ^"%s^"", g_menusNumber, menuBody, menuPlugin)} public AddMenuLang(const menuBody[], const menuCmd[], const menuAccess, const menuPlugin[]){    if (g_menusNumber + 1 == MAXMENUS)    {        log_amx("Error: Plugin ^"%s^" tried to add a menu item to Menu Front-End plugin with maximum menu items reached!", menuPlugin)        return    }     copy(g_menuBody[g_menusNumber], STRINGLENGTH, menuBody)    g_menuBodyPhrase[g_menusNumber] = true        copy(g_menuCmd[g_menusNumber], STRINGLENGTH, menuCmd)    g_menuAccess[g_menusNumber] = menuAccess        copy(g_menuPlugin[g_menusNumber], STRINGLENGTH, menuPlugin)    g_menusNumber++     //server_print("Menu item %d added to Menus Front-End: ^"%s^" (LANG) from plugin ^"%s^"", g_menusNumber, menuBody, menuPlugin)} public AddClientMenu(const menuBody[], const menuCmd[], const menuAccess, const menuPlugin[]){    if (g_clientMenusNumber + 1 == MAXMENUS)    {        log_amx("Error: Plugin ^"%s^" tried to add a menu item to Menu Front-End plugin with maximum menu items reached!", menuPlugin)        return    }     copy(g_clientMenuBody[g_clientMenusNumber], STRINGLENGTH, menuBody)    g_clientMenuBodyPhrase[g_clientMenusNumber] = false        copy(g_clientMenuCmd[g_clientMenusNumber], STRINGLENGTH, menuCmd)    g_clientMenuAccess[g_clientMenusNumber] = menuAccess        copy(g_clientMenuPlugin[g_clientMenusNumber], STRINGLENGTH, menuPlugin)     g_clientMenusNumber++    server_print("Client menu item %d added to Client Menus Front-End: ^"%s^" from plugin ^"%s^"", g_clientMenusNumber, menuBody, menuPlugin)} AddDefaultMenus(){    new flags;    AddMenuLang("KICK_PLAYER", "amx_kickmenu", get_clcmd_flags("amx_kickmenu", flags) ? flags : ADMIN_KICK , "Players Menu")    AddMenuLang("BAN_PLAYER", "amx_banmenu", get_clcmd_flags("amx_banmenu", flags) ? flags : ADMIN_BAN, "Players Menu")    AddMenuLang("SLAP_SLAY", "amx_slapmenu", get_clcmd_flags("amx_slapmenu", flags) ? flags : ADMIN_SLAY, "Players Menu")    AddMenuLang("GAG_PLAYER", "amx_gagmenu", get_clcmd_flags("amx_gagmenu", flags) ? flags : ADMIN_BAN, "Players Menu")    AddMenuLang("TEAM_PLAYER", "amx_teammenu", get_clcmd_flags("amx_teammenu", flags) ? flags : ADMIN_LEVEL_A, "Players Menu")    AddMenuLang("CHANGEL", "amx_mapmenu", get_clcmd_flags("amx_mapmenu", flags) ? flags : ADMIN_MAP, "Maps Menu")    AddMenuLang("VOTE_MAPS", "amx_votemapmenu", get_clcmd_flags("amx_votemapmenu", flags) ? flags : ADMIN_VOTE, "Maps Menu")    AddMenuLang("SPECH_STUFF", "amx_speechmenu", get_clcmd_flags("amx_speechmenu", flags) ? flags : ADMIN_MENU, "Commands Menu")    AddMenuLang("CLIENT_COM", "amx_clcmdmenu", get_clcmd_flags("amx_clcmdmenu", flags) ? flags : ADMIN_LEVEL_A, "Players Menu")    AddMenuLang("SERVER_COM", "amx_cmdmenu", get_clcmd_flags("amx_cmdmenu", flags) ? flags : ADMIN_MENU, "Commands Menu")    AddMenuLang("CVARS_SET", "amx_cvarmenu", get_clcmd_flags("amx_cvarmenu", flags) ? flags : ADMIN_CVAR, "Commands Menu")    AddMenuLang("CONFIG", "amx_cfgmenu", get_clcmd_flags("amx_cfgmenu", flags) ? flags : ADMIN_MENU, "Commands Menu")}stock bool:get_clcmd_flags(const search_command[], &flags){    new count = get_clcmdsnum(-1);    static cmd[128];    static info[1];    new _flags;     for (new i = 0; i < count; i++)    {        get_clcmd(i, cmd, charsmax(cmd), _flags, info, charsmax(info), -1);         if (strcmp(cmd, search_command) == 0)        {            flags = _flags;            return true;        }    }     return false;}public actionMenu(id, key){    switch (key)    {        case 8: displayMenu(id, ++g_menuPosition[id])        case 9: displayMenu(id, --g_menuPosition[id])        default: client_cmd(id, "%s", g_menuCmd[g_menuPosition[id] * 8 + key])    }        return PLUGIN_HANDLED} public clientActionMenu(id, key){    switch (key)    {        case 8: clientDisplayMenu(id, ++g_clientMenuPosition[id])        case 9: clientDisplayMenu(id, --g_clientMenuPosition[id])        default: client_cmd(id, "%s", g_clientMenuCmd[g_clientMenuPosition[id] * 8 + key])    }        return PLUGIN_HANDLED} displayMenu(id, pos){    if (pos < 0)        return     new menuBody[512]    new b = 0    new start = pos * MENUITEMSPERPAGE     if (start >= g_menusNumber)     // MENUS_NUMBER        start = pos = g_menuPosition[id] = 0     new len = format(menuBody, 511,         g_coloredMenus ? "\yAMX Mod X Menu\R%d/%d^n\w^n" : "AMX Mod X Menu %d/%d^n^n" , pos + 1, (g_menusNumber / MENUITEMSPERPAGE) + (((g_menusNumber % MENUITEMSPERPAGE) > 0) ? 1 : 0))     new end = start + MENUITEMSPERPAGE    new keys = MENU_KEY_0     if (end > g_menusNumber)        // MENUS_NUMBER        end = g_menusNumber         // MENUS_NUMBER     for (new a = start; a < end; ++a)    {        if ( access(id, g_menuAccess[a]) &&             ((is_plugin_loaded(g_menuPlugin[a]) != -1) ||           // search plugins for registered name             (is_plugin_loaded(g_menuPlugin[a], true) != -1)))  // search plugins for filename        {            keys |= (1<<b)                        if (g_menuBodyPhrase[a])                len += format(menuBody[len], 511-len, "%d. %L^n", ++b, id, g_menuBody[a])            else                len += format(menuBody[len], 511-len, "%d. %s^n", ++b, g_menuBody[a])        } else {            ++b                        if (g_coloredMenus)            {                if (g_menuBodyPhrase[a])                    len += format(menuBody[len], 511-len, "\d%d. %L^n\w", b, id, g_menuBody[a])                else                    len += format(menuBody[len], 511-len, "\d%d. %s^n\w", b, g_menuBody[a])            } else {                if (g_menuBodyPhrase[a])                    len += format(menuBody[len], 511-len, "#. %L^n", id, g_menuBody[a])                else                    len += format(menuBody[len], 511-len, "#. %s^n", g_menuBody[a])            }        }    }     if (end != g_menusNumber)       // MENUS_NUMBER    {        format(menuBody[len], 511-len, "^n9. %L...^n0. %L", id, "MORE", id, pos ? "BACK" : "EXIT")        keys |= MENU_KEY_9    } else {        format(menuBody[len], 511-len, "^n0. %L", id, pos ? "BACK" : "EXIT")    }     show_menu(id, keys, menuBody)} clientDisplayMenu(id, pos){    if (pos < 0)        return     new menuBody[512]    new b = 0    new start = pos * MENUITEMSPERPAGE     if (start >= g_clientMenusNumber)       // MENUS_NUMBER        start = pos = g_clientMenuPosition[id] = 0     new len = format(menuBody, 511, g_coloredMenus ? "\yAMX Mod X Client Menu\R%d/%d^n\w^n" : "AMX Mod X Client Menu %d/%d^n^n" , pos + 1, (g_clientMenusNumber / MENUITEMSPERPAGE) + (((g_clientMenusNumber % MENUITEMSPERPAGE) > 0) ? 1 : 0))     new end = start + MENUITEMSPERPAGE    new keys = MENU_KEY_0     if (end > g_clientMenusNumber)          // MENUS_NUMBER        end = g_clientMenusNumber           // MENUS_NUMBER     for (new a = start; a < end; ++a)    {        if ( access(id, g_clientMenuAccess[a]) &&             ((is_plugin_loaded(g_clientMenuPlugin[a]) != -1) ||         // search plugins for registered name             (is_plugin_loaded(g_clientMenuPlugin[a], true) != -1)))        // search plugins for file name        {            keys |= (1<<b)                        if (g_clientMenuBodyPhrase[a])                len += format(menuBody[len], 511-len, "%d. %L^n", ++b, id, g_clientMenuBody[a])            else                len += format(menuBody[len], 511-len, "%d. %s^n", ++b, g_clientMenuBody[a])        } else {            ++b                        if (g_coloredMenus)            {                if (g_clientMenuBodyPhrase[a])                    len += format(menuBody[len], 511-len, "\d%d. %L^n\w", b, id, g_clientMenuBody[a])                else                    len += format(menuBody[len], 511-len, "\d%d. %s^n\w", b, g_clientMenuBody[a])            } else {                if (g_clientMenuBodyPhrase[a])                    len += format(menuBody[len], 511-len, "#. %L^n", id, g_clientMenuBody[a])                else                    len += format(menuBody[len], 511-len, "#. %s^n", g_clientMenuBody[a])            }        }    }     if (end != g_clientMenusNumber)         // MENUS_NUMBER    {        format(menuBody[len], 511-len, "^n9. %L...^n0. %L", id, "MORE", id, pos ? "BACK" : "EXIT")        keys |= MENU_KEY_9    }    else {        format(menuBody[len], 511-len, "^n0. %L", id, pos ? "BACK" : "EXIT")    }     show_menu(id, keys, menuBody)} public cmdMenu(id, level, cid){    if (cmd_access(id, level, cid, 1))        displayMenu(id, g_menuPosition[id] = 0)     return PLUGIN_HANDLED}public clientCmdMenu(id, level, cid){    if (cmd_access(id, level, cid, 1))        clientDisplayMenu(id, g_clientMenuPosition[id] = 0)     return PLUGIN_HANDLED} public addmenuitem_cmd(id, level, cid){    if (!cmd_access(id, level, cid, 5))        return PLUGIN_HANDLED     // AddMenu(const menuBody[], const menuCmd[], const menuAccess, const menuPlugin[])    new menuBody[STRINGSIZE], menuCmd[STRINGSIZE], flags[STRINGSIZE], menuAccess = 0, menuPlugin[STRINGSIZE]    read_argv(1, menuBody, STRINGLENGTH)    read_argv(2, menuCmd, STRINGLENGTH)    read_argv(3, flags, STRINGLENGTH)    menuAccess = read_flags(flags)    read_argv(4, menuPlugin, STRINGLENGTH)     AddMenu(menuBody, menuCmd, menuAccess, menuPlugin)     return PLUGIN_HANDLED} public addclientmenuitem_cmd(id, level, cid){    if (!cmd_access(id, level, cid, 5))        return PLUGIN_HANDLED     // AddMenu(const menuBody[], const menuCmd[], const menuAccess, const menuPlugin[])    new menuBody[STRINGSIZE], menuCmd[STRINGSIZE], flags[STRINGSIZE], menuAccess = 0, menuPlugin[STRINGSIZE]    read_argv(1, menuBody, STRINGLENGTH)    read_argv(2, menuCmd, STRINGLENGTH)    read_argv(3, flags, STRINGLENGTH)    menuAccess = read_flags(flags)    read_argv(4, menuPlugin, STRINGLENGTH)     AddClientMenu(menuBody, menuCmd, menuAccess, menuPlugin)     return PLUGIN_HANDLED} public plugin_init(){    register_plugin("Menus Front-End", AMXX_VERSION_STR, "AMXX Dev Team")    register_dictionary("menufront.txt")    register_dictionary("common.txt")     register_menucmd(register_menuid("AMX Mod X Menu"), 1023, "actionMenu")    register_menucmd(register_menuid("AMX Mod X Client Menu"), 1023, "clientActionMenu")    register_clcmd("amxmodmenu", "cmdMenu", ADMIN_MENU, "- displays menus")    register_clcmd("amx_menu", "clientCmdMenu", 0, "- displays menus available to client")     register_srvcmd("amx_addmenuitem", "addmenuitem_cmd", 0, "<menu text> <menu command> <access flags> <plugin name | plugin filename> - Add a menu item to Menus Front-End")    register_srvcmd("amx_addclientmenuitem", "addclientmenuitem_cmd", 0, "<menu text> <menu command> <access flags> <plugin name | plugin filename> - Add a menu item to Client Menus Front-End")     g_coloredMenus = colored_menus()  }public plugin_cfg(){    AddDefaultMenus()     new configs[128]    get_configsdir(configs, 127)    server_cmd("exec %s/custommenuitems.cfg", configs)} 

User avatar
laimiukas3
Moderatorius
Posts: 4569
Joined: 2012 Aug 03 01:12
Skype: laimiukas3
Location: Vilnius
Contact:

Re: įdėkit į pluginą spalvas

Post by laimiukas3 »

iNew wrote:Sveiki, galite įdėti spalvas į pluginą, kad per menufront.txt Eitu su spalvom rašyt: Pvž ( ^3Užblokuoti Žaidėja ) Arba ( !3Užblokuoti Žaidėja )

Code: Select all

/* AMX Mod X*   Menus Front-End Plugin** by the AMX Mod X Development Team*  originally developed by OLO** This file is part of AMX Mod X.***  This program is free software; you can redistribute it and/or modify it*  under the terms of the GNU General Public License as published by the*  Free Software Foundation; either version 2 of the License, or (at*  your option) any later version.**  This program is distributed in the hope that it will be useful, but*  WITHOUT ANY WARRANTY; without even the implied warranty of*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU*  General Public License for more details.**  You should have received a copy of the GNU General Public License*  along with this program; if not, write to the Free Software Foundation,*  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA**  In addition, as a special exception, the author gives permission to*  link the code of this program with the Half-Life Game Engine ("HL*  Engine") and Modified Game Libraries ("MODs") developed by Valve,*  L.L.C ("Valve"). You must obey the GNU General Public License in all*  respects for all of the code used other than the HL Engine and MODs*  from Valve. If you modify this file, you may extend this exception*  to your version of the file, but you are not obligated to do so. If*  you do not wish to do so, delete this exception statement from your*  version.*/ #include <amxmodx>#include <amxmisc> #define MAXMENUS            128#define STRINGSIZE          32#define STRINGLENGTH        STRINGSIZE - 1#define MENUITEMSPERPAGE    8//#define MENUS_NUMBER 16 new g_menuPosition[33]new g_menusNumber = 0new g_menuBody[MAXMENUS][STRINGSIZE]new bool:g_menuBodyPhrase[MAXMENUS]new g_menuCmd[MAXMENUS][STRINGSIZE]new g_menuAccess[MAXMENUS]new g_menuPlugin[MAXMENUS][STRINGSIZE] new g_coloredMenus new g_clientMenuPosition[33]new g_clientMenusNumber = 0new g_clientMenuBody[MAXMENUS][STRINGSIZE]new bool:g_clientMenuBodyPhrase[MAXMENUS]new g_clientMenuCmd[MAXMENUS][STRINGSIZE]new g_clientMenuAccess[MAXMENUS]new g_clientMenuPlugin[MAXMENUS][STRINGSIZE] // menuBody: Text that will be shown for this item in menu// menuCmd: Command that should be executed to start menu// menuAccess: Access required for menu// menuPlugin: The exact case-insensitive name of plugin holding the menu commandpublic AddMenu(const menuBody[], const menuCmd[], const menuAccess, const menuPlugin[]){    if (g_menusNumber + 1 == MAXMENUS)    {        log_amx("Error: Plugin ^"%s^" tried to add a menu item to Menu Front-End plugin with maximum menu items reached!", menuPlugin)        return    }     copy(g_menuBody[g_menusNumber], STRINGLENGTH, menuBody)    g_menuBodyPhrase[g_menusNumber] = false        copy(g_menuCmd[g_menusNumber], STRINGLENGTH, menuCmd)    g_menuAccess[g_menusNumber] = menuAccess        copy(g_menuPlugin[g_menusNumber], STRINGLENGTH, menuPlugin)     g_menusNumber++    server_print("Menu item %d added to Menus Front-End: ^"%s^" from plugin ^"%s^"", g_menusNumber, menuBody, menuPlugin)} public AddMenuLang(const menuBody[], const menuCmd[], const menuAccess, const menuPlugin[]){    if (g_menusNumber + 1 == MAXMENUS)    {        log_amx("Error: Plugin ^"%s^" tried to add a menu item to Menu Front-End plugin with maximum menu items reached!", menuPlugin)        return    }     copy(g_menuBody[g_menusNumber], STRINGLENGTH, menuBody)    g_menuBodyPhrase[g_menusNumber] = true        copy(g_menuCmd[g_menusNumber], STRINGLENGTH, menuCmd)    g_menuAccess[g_menusNumber] = menuAccess        copy(g_menuPlugin[g_menusNumber], STRINGLENGTH, menuPlugin)    g_menusNumber++     //server_print("Menu item %d added to Menus Front-End: ^"%s^" (LANG) from plugin ^"%s^"", g_menusNumber, menuBody, menuPlugin)} public AddClientMenu(const menuBody[], const menuCmd[], const menuAccess, const menuPlugin[]){    if (g_clientMenusNumber + 1 == MAXMENUS)    {        log_amx("Error: Plugin ^"%s^" tried to add a menu item to Menu Front-End plugin with maximum menu items reached!", menuPlugin)        return    }     copy(g_clientMenuBody[g_clientMenusNumber], STRINGLENGTH, menuBody)    g_clientMenuBodyPhrase[g_clientMenusNumber] = false        copy(g_clientMenuCmd[g_clientMenusNumber], STRINGLENGTH, menuCmd)    g_clientMenuAccess[g_clientMenusNumber] = menuAccess        copy(g_clientMenuPlugin[g_clientMenusNumber], STRINGLENGTH, menuPlugin)     g_clientMenusNumber++    server_print("Client menu item %d added to Client Menus Front-End: ^"%s^" from plugin ^"%s^"", g_clientMenusNumber, menuBody, menuPlugin)} AddDefaultMenus(){    new flags;    AddMenuLang("KICK_PLAYER", "amx_kickmenu", get_clcmd_flags("amx_kickmenu", flags) ? flags : ADMIN_KICK , "Players Menu")    AddMenuLang("BAN_PLAYER", "amx_banmenu", get_clcmd_flags("amx_banmenu", flags) ? flags : ADMIN_BAN, "Players Menu")    AddMenuLang("SLAP_SLAY", "amx_slapmenu", get_clcmd_flags("amx_slapmenu", flags) ? flags : ADMIN_SLAY, "Players Menu")    AddMenuLang("GAG_PLAYER", "amx_gagmenu", get_clcmd_flags("amx_gagmenu", flags) ? flags : ADMIN_BAN, "Players Menu")    AddMenuLang("TEAM_PLAYER", "amx_teammenu", get_clcmd_flags("amx_teammenu", flags) ? flags : ADMIN_LEVEL_A, "Players Menu")    AddMenuLang("CHANGEL", "amx_mapmenu", get_clcmd_flags("amx_mapmenu", flags) ? flags : ADMIN_MAP, "Maps Menu")    AddMenuLang("VOTE_MAPS", "amx_votemapmenu", get_clcmd_flags("amx_votemapmenu", flags) ? flags : ADMIN_VOTE, "Maps Menu")    AddMenuLang("SPECH_STUFF", "amx_speechmenu", get_clcmd_flags("amx_speechmenu", flags) ? flags : ADMIN_MENU, "Commands Menu")    AddMenuLang("CLIENT_COM", "amx_clcmdmenu", get_clcmd_flags("amx_clcmdmenu", flags) ? flags : ADMIN_LEVEL_A, "Players Menu")    AddMenuLang("SERVER_COM", "amx_cmdmenu", get_clcmd_flags("amx_cmdmenu", flags) ? flags : ADMIN_MENU, "Commands Menu")    AddMenuLang("CVARS_SET", "amx_cvarmenu", get_clcmd_flags("amx_cvarmenu", flags) ? flags : ADMIN_CVAR, "Commands Menu")    AddMenuLang("CONFIG", "amx_cfgmenu", get_clcmd_flags("amx_cfgmenu", flags) ? flags : ADMIN_MENU, "Commands Menu")}stock bool:get_clcmd_flags(const search_command[], &flags){    new count = get_clcmdsnum(-1);    static cmd[128];    static info[1];    new _flags;     for (new i = 0; i < count; i++)    {        get_clcmd(i, cmd, charsmax(cmd), _flags, info, charsmax(info), -1);         if (strcmp(cmd, search_command) == 0)        {            flags = _flags;            return true;        }    }     return false;}public actionMenu(id, key){    switch (key)    {        case 8: displayMenu(id, ++g_menuPosition[id])        case 9: displayMenu(id, --g_menuPosition[id])        default: client_cmd(id, "%s", g_menuCmd[g_menuPosition[id] * 8 + key])    }        return PLUGIN_HANDLED} public clientActionMenu(id, key){    switch (key)    {        case 8: clientDisplayMenu(id, ++g_clientMenuPosition[id])        case 9: clientDisplayMenu(id, --g_clientMenuPosition[id])        default: client_cmd(id, "%s", g_clientMenuCmd[g_clientMenuPosition[id] * 8 + key])    }        return PLUGIN_HANDLED} displayMenu(id, pos){    if (pos < 0)        return     new menuBody[512]    new b = 0    new start = pos * MENUITEMSPERPAGE     if (start >= g_menusNumber)     // MENUS_NUMBER        start = pos = g_menuPosition[id] = 0     new len = format(menuBody, 511,         g_coloredMenus ? "\yAMX Mod X Menu\R%d/%d^n\w^n" : "AMX Mod X Menu %d/%d^n^n" , pos + 1, (g_menusNumber / MENUITEMSPERPAGE) + (((g_menusNumber % MENUITEMSPERPAGE) > 0) ? 1 : 0))     new end = start + MENUITEMSPERPAGE    new keys = MENU_KEY_0     if (end > g_menusNumber)        // MENUS_NUMBER        end = g_menusNumber         // MENUS_NUMBER     for (new a = start; a < end; ++a)    {        if ( access(id, g_menuAccess[a]) &&             ((is_plugin_loaded(g_menuPlugin[a]) != -1) ||           // search plugins for registered name             (is_plugin_loaded(g_menuPlugin[a], true) != -1)))  // search plugins for filename        {            keys |= (1<<b)                        if (g_menuBodyPhrase[a])                len += format(menuBody[len], 511-len, "%d. %L^n", ++b, id, g_menuBody[a])            else                len += format(menuBody[len], 511-len, "%d. %s^n", ++b, g_menuBody[a])        } else {            ++b                        if (g_coloredMenus)            {                if (g_menuBodyPhrase[a])                    len += format(menuBody[len], 511-len, "\d%d. %L^n\w", b, id, g_menuBody[a])                else                    len += format(menuBody[len], 511-len, "\d%d. %s^n\w", b, g_menuBody[a])            } else {                if (g_menuBodyPhrase[a])                    len += format(menuBody[len], 511-len, "#. %L^n", id, g_menuBody[a])                else                    len += format(menuBody[len], 511-len, "#. %s^n", g_menuBody[a])            }        }    }     if (end != g_menusNumber)       // MENUS_NUMBER    {        format(menuBody[len], 511-len, "^n9. %L...^n0. %L", id, "MORE", id, pos ? "BACK" : "EXIT")        keys |= MENU_KEY_9    } else {        format(menuBody[len], 511-len, "^n0. %L", id, pos ? "BACK" : "EXIT")    }     show_menu(id, keys, menuBody)} clientDisplayMenu(id, pos){    if (pos < 0)        return     new menuBody[512]    new b = 0    new start = pos * MENUITEMSPERPAGE     if (start >= g_clientMenusNumber)       // MENUS_NUMBER        start = pos = g_clientMenuPosition[id] = 0     new len = format(menuBody, 511, g_coloredMenus ? "\yAMX Mod X Client Menu\R%d/%d^n\w^n" : "AMX Mod X Client Menu %d/%d^n^n" , pos + 1, (g_clientMenusNumber / MENUITEMSPERPAGE) + (((g_clientMenusNumber % MENUITEMSPERPAGE) > 0) ? 1 : 0))     new end = start + MENUITEMSPERPAGE    new keys = MENU_KEY_0     if (end > g_clientMenusNumber)          // MENUS_NUMBER        end = g_clientMenusNumber           // MENUS_NUMBER     for (new a = start; a < end; ++a)    {        if ( access(id, g_clientMenuAccess[a]) &&             ((is_plugin_loaded(g_clientMenuPlugin[a]) != -1) ||         // search plugins for registered name             (is_plugin_loaded(g_clientMenuPlugin[a], true) != -1)))        // search plugins for file name        {            keys |= (1<<b)                        if (g_clientMenuBodyPhrase[a])                len += format(menuBody[len], 511-len, "%d. %L^n", ++b, id, g_clientMenuBody[a])            else                len += format(menuBody[len], 511-len, "%d. %s^n", ++b, g_clientMenuBody[a])        } else {            ++b                        if (g_coloredMenus)            {                if (g_clientMenuBodyPhrase[a])                    len += format(menuBody[len], 511-len, "\d%d. %L^n\w", b, id, g_clientMenuBody[a])                else                    len += format(menuBody[len], 511-len, "\d%d. %s^n\w", b, g_clientMenuBody[a])            } else {                if (g_clientMenuBodyPhrase[a])                    len += format(menuBody[len], 511-len, "#. %L^n", id, g_clientMenuBody[a])                else                    len += format(menuBody[len], 511-len, "#. %s^n", g_clientMenuBody[a])            }        }    }     if (end != g_clientMenusNumber)         // MENUS_NUMBER    {        format(menuBody[len], 511-len, "^n9. %L...^n0. %L", id, "MORE", id, pos ? "BACK" : "EXIT")        keys |= MENU_KEY_9    }    else {        format(menuBody[len], 511-len, "^n0. %L", id, pos ? "BACK" : "EXIT")    }     show_menu(id, keys, menuBody)} public cmdMenu(id, level, cid){    if (cmd_access(id, level, cid, 1))        displayMenu(id, g_menuPosition[id] = 0)     return PLUGIN_HANDLED}public clientCmdMenu(id, level, cid){    if (cmd_access(id, level, cid, 1))        clientDisplayMenu(id, g_clientMenuPosition[id] = 0)     return PLUGIN_HANDLED} public addmenuitem_cmd(id, level, cid){    if (!cmd_access(id, level, cid, 5))        return PLUGIN_HANDLED     // AddMenu(const menuBody[], const menuCmd[], const menuAccess, const menuPlugin[])    new menuBody[STRINGSIZE], menuCmd[STRINGSIZE], flags[STRINGSIZE], menuAccess = 0, menuPlugin[STRINGSIZE]    read_argv(1, menuBody, STRINGLENGTH)    read_argv(2, menuCmd, STRINGLENGTH)    read_argv(3, flags, STRINGLENGTH)    menuAccess = read_flags(flags)    read_argv(4, menuPlugin, STRINGLENGTH)     AddMenu(menuBody, menuCmd, menuAccess, menuPlugin)     return PLUGIN_HANDLED} public addclientmenuitem_cmd(id, level, cid){    if (!cmd_access(id, level, cid, 5))        return PLUGIN_HANDLED     // AddMenu(const menuBody[], const menuCmd[], const menuAccess, const menuPlugin[])    new menuBody[STRINGSIZE], menuCmd[STRINGSIZE], flags[STRINGSIZE], menuAccess = 0, menuPlugin[STRINGSIZE]    read_argv(1, menuBody, STRINGLENGTH)    read_argv(2, menuCmd, STRINGLENGTH)    read_argv(3, flags, STRINGLENGTH)    menuAccess = read_flags(flags)    read_argv(4, menuPlugin, STRINGLENGTH)     AddClientMenu(menuBody, menuCmd, menuAccess, menuPlugin)     return PLUGIN_HANDLED} public plugin_init(){    register_plugin("Menus Front-End", AMXX_VERSION_STR, "AMXX Dev Team")    register_dictionary("menufront.txt")    register_dictionary("common.txt")     register_menucmd(register_menuid("AMX Mod X Menu"), 1023, "actionMenu")    register_menucmd(register_menuid("AMX Mod X Client Menu"), 1023, "clientActionMenu")    register_clcmd("amxmodmenu", "cmdMenu", ADMIN_MENU, "- displays menus")    register_clcmd("amx_menu", "clientCmdMenu", 0, "- displays menus available to client")     register_srvcmd("amx_addmenuitem", "addmenuitem_cmd", 0, "<menu text> <menu command> <access flags> <plugin name | plugin filename> - Add a menu item to Menus Front-End")    register_srvcmd("amx_addclientmenuitem", "addclientmenuitem_cmd", 0, "<menu text> <menu command> <access flags> <plugin name | plugin filename> - Add a menu item to Client Menus Front-End")     g_coloredMenus = colored_menus()  }public plugin_cfg(){    AddDefaultMenus()     new configs[128]    get_configsdir(configs, 127)    server_cmd("exec %s/custommenuitems.cfg", configs)} 
jaigu tai meniu spalvos !y !t gal raudona \r atrodo balta \w atrodo eilute zemin sitas nukele ^n "tai txt faile bent sitam pluginui keiciama ne sma
Image
Image
Image

Post Reply

Who is online

Users browsing this forum: No registered users and 7 guests