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

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

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

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

Автоматический мут/кик при любом слове в любой чат.

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

[CN]Invision

Новичок
Здравствуйте. Сегодня я вам расскажу, как поставить Автоматический мут при любом слове в любой чат.

Так.. Возмём к примеру Общий чат.
Вводим в поиск - /ooc, если не найдёте общий чат, то ищите по команде - /o.
Затем где нибуть вставляем такое:
PHP:
	        if(strfind(cmdtext,"Здесь ваше слово",true)!=-1 || strfind(cmdtext,"Здесь ваше слово",true)!=-1)
			{
   				format(string,256,"Сервак : %s[%d] был(а) закнут(а) сервером на 10 минут. Причина: мат/оск в общий чат.", sendername, playerid);
			    OOCOff(COLOR_LIGHTRED,string);
				PlayerInfo[playerid][pMuteTime] = 600;
				PlayerInfo[playerid][pMuted] = 1;
				return 1;
			}
Расскажу кто к чему.
Вот это - if(strfind(cmdtext,"Здесь ваше слово",true)!=-1), это проверка на это слово в сообщении игрока.
Чтобы не повторять это по 100 раз, легче сделать так:
Вот первое - if(strfind(cmdtext,"Здесь ваше слово",true)!=-1), на конце видим скобку, и сносим её..
Далее после того как снесли скобку, ставим - ||, две прямые полосочки, копируем эту срочку заного,
И вставляем после этих двух полосочек. Получится так:

if(strfind(cmdtext,"Здесь ваше слово",true)!=-1 || if(strfind(cmdtext,"Здесь ваше слово",true)!=-1

Но так не пойдёт! Нужно в том что после полосочек, убрать вот это - if(, и выйдет вот так:

if(strfind(cmdtext,"Здесь ваше слово",true)!=-1 || strfind(cmdtext,"Здесь ваше слово",true)!=-1

На конце закрываем скобку(Ставим скобку ту что удаляли в начале).
А если хотите ещё добавить, то делаем таким же образом, но лучше вот так:

if(strfind(cmdtext,"Здесь ваше слово",true)!=-1 || strfind(cmdtext,"Здесь ваше слово",true)!=-1
strfind(cmdtext,"Здесь ваше слово",true)!=-1 || strfind(cmdtext,"Здесь ваше слово",true)!=-1)


Вот! Тоесть сверху на конце убрали скобку, нажали интер(перешли на другую строку),
И Скопирывали всё что сверху кроме - if(, и на конце скобку закрываем!
И так можно сколько угодно..
Дальше, видим квадратную скобку( такую - { ).
И после неё вот такое:
PHP:
format(string,256,"Сервак : %s[%d] был(а) закнут(а) сервером на 10 минут. Причина: мат/оск в общий чат.", sendername, playerid);
OOCOff(COLOR_LIGHTRED,string);
PlayerInfo[playerid][pMuteTime] = 600;
PlayerInfo[playerid][pMuted] = 1;
Сначало рассмотрим это:
PHP:
format(string,256,"Сервак : %s был(а) закнут(а) сервером на 10 минут. Причина: мат/оск в общий чат.", sendername);
OOCOff(COLOR_LIGHTRED,string);
Первая строка, это текст который будет выводиться всем игрокам.
На второй строке цвет текста. Стоит тёмно-красный(COLOR_LIGHTRED)
Идём дальше..

PlayerInfo[playerid][pMuteTime] = 600;
PlayerInfo[playerid][pMuted] = 1;


Первое, это время на которое игрока затыкает. (600 = 10 минут)
pMuteTime, это название системы в моём моде, у вас может будет другое название, поменять не сложно.
Второе, [pMuted] = 1; pMuted это название системы. А 1 - обозначает что игрок в муте, 0 - нет мута.
Посмотреть точные название систем, можно в команде /mute.
Затем видим что квадратная скобка стоит опять, только уже другой стороной. Это обозначает что код закрыт, проверка остановлена.

Вот и всё.
А чтобы кикало за какое либо слово, нужно сделать так:
PHP:
			if(strfind(cmdtext,"говно сервер",true)!=-1)
			{
			    Kick(playerid);
				return 1;
			}
На первой строке видим всё то что было сверху, а дальше вместо всего того, видим:
Kick(playerid);
С помощью этой строки, игрока кикнет после использования этой команды.

Урок пригодится для людей которые только начали изучать pawno скриптинг.
И прошу знающих людей не писать типо такого:
Хахах, это вообще просто.
И т.д. т.п.
Знаю, урок очень лёгкий, скоро напишу что нибуть по серьёзнее.

Автор урока: Я([CN]Invision)
Спасибо за внимание! Прошу поставить + сик, если не жалко, темболие не за просто так. ;)

Если есть ошибки или что-то не понятно, пишите, я вам помогу.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу