Блокування консольних команд - українська спільнота зі скриптингу AMXX

shel написав: Юліє, мене дехто просив вас не чіпати, тому ваш пост я опускаю.

блокування консольних команд

  • Список форумів AMX Mod X Скриптинг

У цьому розділі форуму можна створювати теми, які стосуються лише скриптингу для AMX Mod X.

Правила під час створення нової теми: 1. При вставці коду плагіна необхідно використовувати тег [code=php]. 2. Будь-які зображення повинні бути завантажені як вкладення до вашого повідомлення. 3. При описі проблеми або запиті на допомогу в редагуванні плагіна обов'язково викладайте вихідний плагін.

блокування консольних команд

lee » 01 Листопада 2011, 14:32

Re: блокування консольних команд

Mr. Frost » 01 Листопада 2011, 14:39

Мої плагіни: Buy Menu Management 2.0 - додаємо Extra Items в меню закупівель на класик-сервер.

Re: блокування консольних команд

nefik23 » 01 Листопада 2011, 14:59

Для тих, кому не ясно :D

Re: блокування консольних команд

DJ_WEST » 01, лис 2011, 17:15

Re: блокування консольних команд

6ykBaeg » 01 Лис 2011, 19:39

Цитата школяра з "Skype" "а як мені айпі перевірити свого айпі" "Ти че здох що?..н-ну, на, полікуватися. Дібіл." (с) до/м фільм Ботан Джо

Re: блокування консольних команд

lee » 02 Листопада 2011, 00:23

Re: блокування консольних команд

Mr. Frost » 02 Листопада 2011, 01:56

Мої плагіни: Buy Menu Management 2.0 - додаємо Extra Items в меню закупівель на класик-сервер.

Re: блокування консольнихкоманд

6ykBaeg » 02 Листопада 2011, 13:07

[/pawn] ось у мене прохання) ви могли б запхати цей код у вихідник) і виправити ті помилки, що описані вище) ну щоб адміни могли спокійно заходити за будь-яку команду та і приписати туди)) як у режисера) струму напишу трохи інакше)

ось мій вихідник

#define ACCESS_LEVEL ADMIN_IMMUNITY // адмінський доступ

enum TEAM_NONE = 0, TEAM_T, TEAM_CT, TEAM_SPEC,

// Old Style Menus stock const FIRST_JOIN_MSG[] = "#Team_Select"; stock const FIRST_JOIN_MSG_SPEC[] = "#Team_Select_Spect"; stock const INGAME_JOIN_MSG[] = "#IG_T stock const INGAME_JOIN_MSG_SPEC[] = "#IG_Team_Select_Spect"; const iMaxLen = sizeof(INGAME_JOIN_MSG_SPEC);

// New VGUI Menus stock const VGUI_JOIN_TEAM_NUM = 2;

new g_iTeam[33]; new g_iPlayers[MAX_TEAMS];

new tjm_join_team ; new tjm_block_change; new tjm_adm_immune;

public plugin_init() register_plugin("Team Join Management", "0.3fix", "Exolent&Alucard"); register_event("TeamInfo", "event_TeamInfo", "a"); register_message(get_user_msgid("ShowMenu"), "message_ShowMenu"); register_message(get_user_msgid("VGUIMenu"), "message_VGUIMenu"); register_clcmd("jointeam", "clcmd_changeteam" tjm_join_team = register_cvar("tjm_join_team", "2"); tjm_adm_immune = register_cvar("tjm_adm_immune") "1 ("tjm_block_change", "1");

register_clcmd("chooseteam", "clcmd_changeteam") register_clcmd("jointeam", "clcmd_changeteam") >

public plugin_cfg() if (get_pcvar_num(tjm_join_team) == 1 get_pcvar_num(tjm_join_team) == 2 ) < //якщо треба кидати за КТ або Т, робимо більше ліміти з переведення гравців заодин із команд (наприклад, для DeathRun або KZ сервера) set_cvar_num("mp_limitteams", 32); set_cvar_num("sv_restart", 3); > server_cmd("exec addons/amxmodx/configs/amxx.cfg"); //фіксувати сторонню багу, яка не давала змінити квар >

public client_disconnect(id) remove_task(id); >

public event_TeamInfo() новий > новий sTeam[32], iTeam; read_data(2, sTeam, sizeof(sTeam) - 1); for(new i = 0; i g_iPlayers[g_iTeam[id]]--; g_iTeam[ > g_iPlayers[iTeam]++; > >

public message_ShowMenu(iMsgid, iDest, id) if(get_pcvar_num(tjm_adm_immune) && access(id, ACCESS_LEVEL) ) return PLUGIN_CONTINUE; > інакше статичний sMenuCode[iMaxLen]; get_msg_arg_string(4, sMenuCode, sizeof(sMenuCode) - 1); if(equal(sMenuCode, FIRST_JOIN_MSG) equal(sMenuCode, FIRST_JOIN_MSG_SPEC)) if(should_autojoin(id)) set_autojoin_task(id, iMsgid); повернути PLUGIN_HANDLED; > > інакше if(equal(sMenuCode, INGAME_JOIN_MSG) equal(sMenuCode, INGAME_JOIN_MSG_SPEC)) if(get_pcvar_num(tjm_block_change)) new rnd_color = random_num(1,4); if (rnd_color == 2 && get_user_team( > ColorChat(id, RED, " Ви не можете змінити команду!"); > else if (rnd_color == 2 & & get_user_team( > ColorChat(id, BLUE, "Ви не можете змінити команду!"); > else ColorChat(id, NORMAL, "%s Ви не можете змінити команду!", rnd_color) ; > повернути PLUGIN_HANDLED; > > > повернути PLUGIN_CONTINUE; >

public message_VGUIMenu(iMsgid, iDest, id) if(get_pcvar_num(tjm_adm_immune) && access(id, ACCESS_LEVEL)) return PLUGIN_CONTINUE; > інакше, якщо (get_msg_arg_int(1) != VGUI_JOIN_TEAM_NUM) повернутиPLUGIN_CONTINUE; >

if(should_autojoin(id)) set_autojoin_task(id, iMsgid); return PLUGIN_HANDLED; > else if((TEAM_NONE ColorChat(id, RED, " Ви не можете змінити команду!"); > else if (rnd_color == 2 && get_user_team( > ColorChat(id) , BLUE, " Ви не можете змінити команду!"); > return PLUGIN_HANDLED; > > return PLUGIN_CONTINUE; >

public clcmd_changeteam(id) return PLUGIN_HANDLED; >

stock handle_join(id, iMsgid, iTeam) new iMsgBlock = get_msg_block(iMsgid); set_msg_block(iMsgid, BLOCK_SET);

engclient_cmd(id, "jointeam", g_sTeamNums[iTeam]);

new i > if(1 engclient_cmd(id, "joinclass", g_sClassNums[iClass - 1])); > set_msg_block(iMsgid, iMsgBlock); >

Цитата школяра з "Skype" "а як мені айпі перевірити свого айпі" "Ти че здох що?..н-ну, на, полікуватися. Дібіл." (с) до/м фільм Ботан Джо