v1.0.1: 10 правил сервера в Panel вместо Menu

- Расширен список правил с 5 до 10 (по запросу пользователя)
- Переход с Menu (с пагинацией) на Panel — теперь все правила
  отображаются на одном экране без переключений
- Добавлена ссылка на Telegram для оспаривания наказаний
This commit is contained in:
deidara
2026-05-01 19:36:01 +03:00
parent 9a7131b114
commit 8e894e85f1
+28 -23
View File
@@ -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;
}