Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

/help

Статус
В этой теме нельзя размещать новые ответы.

Wasap AAsap

Умник
Здравствуйте уважаемые пользователь P-I. Решил написать команду /help. Впринципе она будет полезна для новичков, т.к. когда сам начинал заниматься своим модом, не умел делать команды с диалогами. И так, приступим...
Идем в public OnPlayerCommandText(playerid, cmdtext[])
В него вставляем такую команду:
PHP:
if (strcmp("/help", cmdtext, true, 10) == 0)
	{
		ShowPlayerDialog(playerid,1337,DIALOG_STYLE_LIST,"Помощь по серверу","1. Правила сервера.\n2. Команды сервера.","Выбрать","Отмена");
		return 1;
	}
Что у нас должно получиться:
PHP:
public OnPlayerCommandText(playerid, cmdtext[])
{
        if (strcmp("/help", cmdtext, true, 10) == 0)
	        {
		      ShowPlayerDialog(playerid,1337,DIALOG_STYLE_LIST,"Помощь по серверу","1. Правила сервера.\n2. Команды сервера.","Выбрать","Отмена");
		      return 1;
	        }
Рассмотрим функцию ShowPlayerDialog:
playerid - ID игрока
1337 - id диалога который будет использоваться в public OnDialogResponse
DIALOG_STYLE_LIST - вид диалога, о них можно узнать подробно на форуме
"Помощь по серверу" - заголовок окна в котором будет ваш текст
\n - для перехода на новую строку, ну а далее думаю будет понятно...

Перейдем к паблику public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
В него вставляем
PHP:
if(dialogid == 1337)
	{
		if(response)
		{
			if(listitem==0)
			{
				new String[1200];
				strins(String,"{FFFF00}-------------------------------------------------------------------------------------------------------\n",strlen(String));
				strins(String,"{FF0000}Запрещено:\n",strlen(String));
				strins(String,"1. Употре***ть нецензурные выражения;\n",strlen(String));
				strins(String,"2. Оскорбления родословной такого типа как: Привет мамке;\n",strlen(String));
				strins(String,"3. Оскорбления игроков и администрацию;\n",strlen(String));
				strins(String,"4. DM в зонах для развлечения(/drift, /stunt и т.д.);\n",strlen(String));
				strins(String,"5. Использовать баги сервера в качестве преимущества над игроками;\n",strlen(String));
				strins(String,"6. Использование CLEO скриптов или же s0beit'a и прочих;\n",strlen(String));
				strins(String,"7. DM спауна;\n",strlen(String));
				strins(String,"8. Быть помехой игрока на развлекательных зонах;\n",strlen(String));
				strins(String,"9. Быть помехой на спауне;\n",strlen(String));
				strins(String,"10. Запрещено вставать в AFK на DM зоне.\n\n",strlen(String));
				strins(String,"{00FF00}Разрешено:\n",strlen(String));
				strins(String,"1. Помогать новичкам в освоении интерфейса сервера;\n",strlen(String));
				strins(String,"2. При нахождении бага, сообщать в репорт,\n",strlen(String));
				strins(String,"2.1 Записывать на fraps/bandicam, делать запись в команду /bag;\n",strlen(String));
				strins(String,"3. Не употре***ть нецензурные выражения; (:D) \n",strlen(String));
				strins(String,"4. Не 0скор***ть родословную такого типа как: Привет мамке; (:D)\n",strlen(String));
				strins(String,"5. И т.д., то есть разрешено все, кроме раздела запрещено...\n\n",strlen(String));
				strins(String,"{800080}Памятка:\n",strlen(String));
				strins(String,"Все игроки равны... Независимо администратор это, или обычный игрок!\n",strlen(String));
				strins(String,"Наказание будет одинаковым... (c) Dexter Hodges\n",strlen(String));
				strins(String,"{FFFF00}-------------------------------------------------------------------------------------------------------",strlen(String));
				ShowPlayerDialog(playerid,222,DIALOG_STYLE_MSGBOX,"Правила сервера =)",String,"Ок","");
				return 1;
			}
			if(listitem==1)
			{
				new String[1000];
				strins(String,"{FFFF00}-----------------------------------------------------\n",strlen(String));
				strins(String,"{00fff0}DM зоны:\n",strlen(String));
				strins(String,"1. /dm a-b\n",strlen(String));
				strins(String,"2. Разработка\n",strlen(String));
				strins(String,"{00ff78}Зоны развлечения:\n",strlen(String));
				strins(String,"1. /bmx\n",strlen(String));
				strins(String,"2. Разработка\n",strlen(String));
				strins(String,"{fc00ff}Прочие команды:\n",strlen(String));
				strins(String,"1. /qq(bb)\n",strlen(String));
				strins(String,"2. /pizda\n",strlen(String));
				strins(String,"3. Разработка\n",strlen(String));
				strins(String,"{ffffff}Команды будут пополняться...\n",strlen(String));
				strins(String,"{FFFF00}-----------------------------------------------------",strlen(String));
				ShowPlayerDialog(playerid,222,DIALOG_STYLE_MSGBOX,"Команды сервера",String,"Ок","");
				return 1;
			}
		}
	}
Что у вас должно получиться:
PHP:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
       if(dialogid == 1337)
	{
		if(response)
		{
			if(listitem==0)
			{
				new String[1200];
				strins(String,"{FFFF00}-------------------------------------------------------------------------------------------------------\n",strlen(String));
				strins(String,"{FF0000}Запрещено:\n",strlen(String));
				strins(String,"1. Употре***ть нецензурные выражения;\n",strlen(String));
				strins(String,"2. Оскорбления родословной такого типа как: Привет мамке;\n",strlen(String));
				strins(String,"3. Оскорбления игроков и администрацию;\n",strlen(String));
				strins(String,"4. DM в зонах для развлечения(/drift, /stunt и т.д.);\n",strlen(String));
				strins(String,"5. Использовать баги сервера в качестве преимущества над игроками;\n",strlen(String));
				strins(String,"6. Использование CLEO скриптов или же s0beit'a и прочих;\n",strlen(String));
				strins(String,"7. DM спауна;\n",strlen(String));
				strins(String,"8. Быть помехой игрока на развлекательных зонах;\n",strlen(String));
				strins(String,"9. Быть помехой на спауне;\n",strlen(String));
				strins(String,"10. Запрещено вставать в AFK на DM зоне.\n\n",strlen(String));
				strins(String,"{00FF00}Разрешено:\n",strlen(String));
				strins(String,"1. Помогать новичкам в освоении интерфейса сервера;\n",strlen(String));
				strins(String,"2. При нахождении бага, сообщать в репорт,\n",strlen(String));
				strins(String,"2.1 Записывать на fraps/bandicam, делать запись в команду /bag;\n",strlen(String));
				strins(String,"3. Не употре***ть нецензурные выражения; (:D) \n",strlen(String));
				strins(String,"4. Не 0скор***ть родословную такого типа как: Привет мамке; (:D)\n",strlen(String));
				strins(String,"5. И т.д., то есть разрешено все, кроме раздела запрещено...\n\n",strlen(String));
				strins(String,"{800080}Памятка:\n",strlen(String));
				strins(String,"Все игроки равны... Независимо администратор это, или обычный игрок!\n",strlen(String));
				strins(String,"Наказание будет одинаковым... (c) Dexter Hodges\n",strlen(String));
				strins(String,"{FFFF00}-------------------------------------------------------------------------------------------------------",strlen(String));
				ShowPlayerDialog(playerid,222,DIALOG_STYLE_MSGBOX,"Правила сервера =)",String,"Ок","");
				return 1;
			}
			if(listitem==1)
			{
				new String[1000];
				strins(String,"{FFFF00}-----------------------------------------------------\n",strlen(String));
				strins(String,"{00fff0}DM зоны:\n",strlen(String));
				strins(String,"1. /dm a-b\n",strlen(String));
				strins(String,"2. Разработка\n",strlen(String));
				strins(String,"{00ff78}Зоны развлечения:\n",strlen(String));
				strins(String,"1. /bmx\n",strlen(String));
				strins(String,"2. Разработка\n",strlen(String));
				strins(String,"{fc00ff}Прочие команды:\n",strlen(String));
				strins(String,"1. /qq(bb)\n",strlen(String));
				strins(String,"2. /pizda\n",strlen(String));
				strins(String,"3. Разработка\n",strlen(String));
				strins(String,"{ffffff}Команды будут пополняться...\n",strlen(String));
				strins(String,"{FFFF00}-----------------------------------------------------",strlen(String));
				ShowPlayerDialog(playerid,222,DIALOG_STYLE_MSGBOX,"Команды сервера",String,"Ок","");
				return 1;
			}
		}
	}
        return 1;
}
Рассмотрим этот паблик:
if(dialogid == 1337) - этим мы даем нашему моду путь к нашей команде /help введя диалог 1337
if(response) - этим мы даем моду знать, что будет если нажать на кнопку Ок
if(listitem==0) - где 0 - это строчка в окне Правила сервера
if(listitem==1) - где 1 - это строчка в окне Команды сервера

Вот думаю и все :) Подробного урока на форуме не видел, да и команду я писал с 0.
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу