From 8e894e85f16af11e8d8190d71d5c6cccbae3fbab Mon Sep 17 00:00:00 2001 From: deidara Date: Fri, 1 May 2026 19:36:01 +0300 Subject: [PATCH] =?UTF-8?q?v1.0.1:=2010=20=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D1=81=D0=B5=D1=80=D0=B2=D0=B5=D1=80=D0=B0=20=D0=B2=20?= =?UTF-8?q?Panel=20=D0=B2=D0=BC=D0=B5=D1=81=D1=82=D0=BE=20Menu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Расширен список правил с 5 до 10 (по запросу пользователя) - Переход с Menu (с пагинацией) на Panel — теперь все правила отображаются на одном экране без переключений - Добавлена ссылка на Telegram для оспаривания наказаний --- scripting/helpmenu.sp | 51 ++++++++++++++++++++++++------------------- 1 file changed, 28 insertions(+), 23 deletions(-) diff --git a/scripting/helpmenu.sp b/scripting/helpmenu.sp index bd57cdd..056545b 100644 --- a/scripting/helpmenu.sp +++ b/scripting/helpmenu.sp @@ -12,7 +12,7 @@ public Plugin myinfo = name = "Help Menu", author = "deidara.dev", description = "Меню справки для игроков: правила, команды, контакты сервера", - version = "1.0.0", + version = "1.0.1", url = "https://deidara.dev" }; @@ -85,38 +85,43 @@ public int MenuHandler_Main(Menu menu, MenuAction action, int client, int item) void ShowRulesMenu(int client) { - Menu menu = new Menu(MenuHandler_Rules); - menu.SetTitle("Правила сервера ArcaneGame"); + // Используем Panel вместо Menu — позволяет показать 10 правил без пагинации + Panel panel = new Panel(); + panel.SetTitle("Правила сервера ArcaneGame"); - // Disabled-пункты: показываются как пронумерованные строки правил, не выбираются - menu.AddItem("r1", "Запрещены читы, скрипты и баг-юзинг", ITEMDRAW_DISABLED); - menu.AddItem("r2", "Запрещён тимкилл и тимфлеш", ITEMDRAW_DISABLED); - menu.AddItem("r3", "Уважение к админам и игрокам", ITEMDRAW_DISABLED); - menu.AddItem("r4", "Запрещены оскорбления и мат", ITEMDRAW_DISABLED); - menu.AddItem("r5", "Запрещён мульти-аккаунт и буст", ITEMDRAW_DISABLED); + panel.DrawText("1. Запрещены читы, хаки, макросы и стороннее ПО"); + panel.DrawText("2. Запрещены оскорбления игроков и админов"); + panel.DrawText("3. Запрещено намеренно мешать союзникам"); + panel.DrawText("4. Запрещено использование багов карт и движка"); + panel.DrawText("5. Запрещён спам в голосовом и текстовом чате"); + panel.DrawText("6. Запрещена реклама сторонних серверов"); + panel.DrawText("7. Запрещена политика и провокации"); + panel.DrawText("8. Уважайте решения админов; жалобы — в Telegram"); + panel.DrawText("9. Незнание правил не освобождает от ответственности"); + panel.DrawText("10. Админы наказывают за вред репутации сервера"); + panel.DrawText(" "); + panel.DrawText("Оспорить наказание: t.me/ArcaneGameCSGO"); + panel.DrawText(" "); - menu.ExitButton = true; - menu.ExitBackButton = true; - menu.Display(client, 30); + panel.CurrentKey = 1; + panel.DrawItem("Назад в меню"); + panel.CurrentKey = 9; + panel.DrawItem("Закрыть"); + + panel.Send(client, PanelHandler_Rules, 30); + delete panel; } -public int MenuHandler_Rules(Menu menu, MenuAction action, int client, int item) +public int PanelHandler_Rules(Menu menu, MenuAction action, int client, int item) { - if (action == MenuAction_End) + if (action == MenuAction_Select) { - delete menu; - return 0; - } - - if (action == MenuAction_Cancel) - { - if (item == MenuCancel_ExitBack) + if (item == 1) { ShowMainMenu(client); } - return 0; + // item == 9 (Закрыть) — ничего не делаем, panel и так закроется } - return 0; }