Menu Based Rules v1.5.1

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #41
Вот вам наработочка, дальше сами:
PHP:
#pragma semicolon 1
#include <sourcemod>

new	Handle:g_hMenu;

public OnConfigsExecuted()
{
	if (g_hMenu != INVALID_HANDLE)
	{
		CloseHandle(g_hMenu);
		g_hMenu = INVALID_HANDLE;
	}

	g_hMenu = CreateMenu(RulesMenuHandler);
	SetMenuExitButton(g_hMenu, false);
	SetMenuTitle(g_hMenu, "Ознакомьтесь с правилами:\n \n");
		
	decl String:sBuffer[PLATFORM_MAX_PATH];
	BuildPath(Path_SM, sBuffer, sizeof(sBuffer), "configs/rules.txt");
	if(!FileExists(sBuffer)) SetFailState("Не найден файл %s", sBuffer);
	new Handle:hFile = OpenFile(sBuffer, "r");
		
	if (hFile != INVALID_HANDLE)
	{
		while (!IsEndOfFile(hFile) && ReadFileLine(hFile, sBuffer, sizeof(sBuffer)))
		{
			TrimString(sBuffer);
			if (sBuffer[0])
			{
				ReplaceString(sBuffer, sizeof(sBuffer), "\\n", "\n", false);
				AddMenuItem(g_hMenu, "", sBuffer, ITEMDRAW_DISABLED);
			}
		}
	} else SetFailState("Не удалось открыть файл %s", sBuffer);
	CloseHandle(hFile);
	
	AddMenuItem(g_hMenu, "", "Согласен");
	AddMenuItem(g_hMenu, "", "Не согласен");

	
}

public OnClientPostAdminCheck(iClient)
{
	if(iClient) DisplayMenu(g_hMenu, iClient, 0)
}

public RulesMenuHandler(Handle:hMenu, MenuAction:action, iClient, option) 
{
 	if (action == MenuAction_Select && option == 1) KickClient(iClient, "Вы должны согласиться с правилами");
}
Все пункты считываются с файла addons/sourcemod/configs/rules.txt

Заполнять просто так:
Не крыть матом игроков
Не спорить с админами\nиначе - бан!
Можно юзать \n для переноса строки в меню.
 

AMD

Участник
Сообщения
180
Реакции
18
Вообще проще сделать так:

Title - Вы согласны с правилами?
1 - Открыть правила
2 - Да
3 Нет

Когда выбор падает на 1, то вызвать мотд с соответствующим контентом...

Как-то так короч, и проще, да и как то грамотней чтоли...
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
Мне не надо... А сам он не сделает.
Оффтоп
Проще поискать, я уже видел такое меню правил даже на этом форуме (вроде).
 

DexKekcuk #13

Участник
Сообщения
628
Реакции
69
Ема ё, судя по всему я просто тупень ниче не умеющий :D

Добавлено через 13 минут
Всем спасибо парни, тему можно CLOSED!
 
Последнее редактирование:

rotmir

Участник
Сообщения
138
Реакции
25
А на кс го есть такой плагин или наподобие что нибудь , может через motd окошко ?
 

novichek

Участник
Сообщения
631
Реакции
21
Плагин в csgo выдает вот такую ошибку и не запускается
showrules.smx (Menu Based Rules): Native "BfReadString" was not found
 

Svoboda

Помощь по CSS v92
Сообщения
393
Реакции
56
Хочу чтоб не согласные кикались со сервера
ну так там можно так сделатьОффтоп
 
Сверху Снизу