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

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

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

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

/ban

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

Lexaa

Новичок
Автор: Leaders
Очень нужная и лёгкая функция.
Многие знают какие очень большие команды у Ban, Warn, Kick.

Функция в данный момент сделана только для YCMD.

Пример команды:

PHP:
YCMD:ban(playerid, params[], help)
{
	new id, text[128];
	if(sscanf(params, "is[128]", id, text)) return SendClientMessage(playerid, 0xFFFFFFFF, "Использовать: /ban [id] [text]");
	LoadFactionCommandA(playerid, 1, id, text);
}
PHP:
stock LoadFactionCommandA(playerid, command, id, text[])
{
	new admin = PlayerInfo[playerid][pAdmin];
	new ban = PlayerInfo[playerid][pBan];
	if(admin == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "Вам не доступна команда");
	new warns = PlayerInfo[id][pWarns];
	new reason,reasontext[56],string[128];
	switch(command)
	{
		case 0:
		{
			if(admin < 1) return SendClientMessage(playerid, 0xFFFFFFFF, "Вам не доступна команда");
			reasontext = "кикнул";
			reason = 1; //Kick
		}
		case 1:
		{
			if(admin < 5) return SendClientMessage(playerid, 0xFFFFFFFF, "Вам не доступна команда");
			reasontext = "выдал бан";
			reason = 2; //Ban
			ban = 1;
		}
		case 2:
		{
			if(admin < 2) return SendClientMessage(playerid, 0xFFFFFFFF, "Вам не доступна команда");
			reason = 3+warns; //Warn
			switch(warns)
			{
				case 0: reasontext = "выдал warn[1/3]", warns++;
				case 1: reasontext = "выдал warn[2/3]", warns++;
				case 2: reasontext = "выдал warn[3/3]. Забанил", ban = 1;
			}
		}
	}
	format(string,sizeof(string), "{FF0000}Администратор %s %s %s. Причина: %s", LoadNames(playerid), reasontext, LoadNames(id), text);
	SendClientMessageToAll(0xFFFFFFFF, string);
	Kick(id);
	return 1;
}
PHP:
stock LoadNames(playerid)
{
	new name[MAX_PLAYER_NAME];
	GetPlayerName(playerid, name, sizeof(name));
	return name;
}

Функция LoadFactionCommandA
playerid = ид администратора
command = функция которая делает проверку что будет выполнятся
id = ид игрока которому выдадут Warn Ban Kick
text = причина текст


Если понравилось ставьте +.
Обо всех ошибках сюда.
Жду комментарии. Только без оскорбления и оскорбительной брани, не писать что где то взял. Функция была написана 25минут назад. Смотрите когда создана тема.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу