В теме 8 сообщений

Команда специальных (устных) предупреждений. 

Суть: Администратор может выдавать игроку устные предупреждения. Как только устных предупреждений станет три, игрока кикнет с сервера. 

Ко всем командам: 

CMD:swarn(playerid, params[])
{
	//проверка на админа
	if(sscanf(params, "us[30]", params[0], params[1])) return SendClientMessage(playerid, -1, "Используйте: /swarn [ id] [причина]");
	if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, -1, "Такого игрока нет!");
	if(GetPVarInt(params[0], "SWARN") < 2)
	{
        new str[35+MAX_PLAYER_NAME], 
        	name[MAX_PLAYER_NAME]; 
        GetPlayerName(playerid, name, MAX_PLAYER_NAME); 
		SetPVarInt(params[0], "SWARN", GetPVarInt(params[0], "SWARN")+1);
		format(str, sizeof(str), "Админ %s устно предупредил вас!", name); 
		SendClientMessage(params[0], -1, str); 
		SendClientMessage(playerid, -1, "Вы успешно предупредили игрока!");
	}
	if(GetPVarInt(params[0], "SWARN") >= 2)
	{
		SendClientMessage(playerid, -1, "Игрок был кикнут, так как у него ваше предупреждение стало третьим!");
		Kick(params[0]); 
	}
	return true;
}

На этом все!
Если будет warning 217, значит поправьте табуляцию.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

где для игрока пишется причина?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@aaaa_carmona :/

format(str, sizeof(str), "Админ %s устно предупредил вас!", name); 
	SendClientMessage(params[0], -1, str); 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  В 11/20/2019 в 08:57, MuhammadPawn сказал:

@aaaa_carmona :/

format(str, sizeof(str), "Админ %s устно предупредил вас!", name); 
	SendClientMessage(params[0], -1, str); 

 

Читать далее...  

спасибо

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  В 9/12/2017 в 13:20, DEST сказал:
SendClientMessage(playerid, -1, "Игрок был кикнут, так как у него ваше предупреждение стало третьим!");
Kick(params[0]); 
Читать далее...  

А как сделать вместо кика - Варн, "Warn" не работает!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@Privikay почитайте внимательней тему, здесь имеются ввиду устные предупреждения, т.е. которые не влекут за собой никаких последствий для игрового аккаунта. Если Вам нужна своя логика этих предупреждений, то просто вместо Kick(params[0]); вставьте код выдачи предупреждения из своего gamemode. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что может значить? 
 error 035: argument type mismatch (argument 2)
 warning 204: symbol is assigned a value that is never used: "name"

Отредактировано пользователем Angels_Toressi

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@Angels_Toressi  

GetPlayerName(playerid, name, MAX_PLAYER_NAME)

Тебе надо name заменить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • djxxx
      От djxxx
      приветствую всех.
       
      Задался таким вопросом при добавлении одной системы на DIALOG_STYLE_TABLIST_HEADERS.
       
      Суть проблемы в том, что диалог не выравнивается под нужные показатели, а просто как будто находиться по середине, в диалоге используется \t, но они особо не помогают в решении, также не ровно.
       
      а если попытаться выравнивать большим количеством \t, оно компилируется но в игре происходят вылеты
       
      Код такой:
      DialogAdmShop ( playerid, DIALOG_EPOINTSHOP, DIALOG_STYLE_TABLIST_HEADERS, fmt_str, ""BR"номер\t"BR"наименование\t"BR"доступное действие\n"\ "{EB4C42}#1\t{FFFFFF}Виртуальная валюта\t{888888}нажмите для взаимодействия\n"\ "{EB4C42}#2\t{FFFFFF}Донат валюта\t{888888}нажмите для взаимодействия\n"\ "{EB4C42}#3\t{FFFFFF}Вип статусы\t{888888}нажмите для взаимодействия\n"\ "{EB4C42}#4\t{FFFFFF}Кейсы\t{888888}нажмите для взаимодействия\n"\ "{EB4C42}#5\t{FFFFFF}Уникальные аксессуары\t{888888}нажмите для взаимодействия", "Выбрать", "Закрыть" ); }  
      сток dialogadmshop:
      stock DialogAdmShop(playerid, dialogid, style, title[], text[], button[], button2[]) {   if(style == 5)   {      ShowPlayerDialog(playerid, 0, DIALOG_STYLE_LIST, "...", "...", "...", "");    }   ShowPlayerDialog(playerid, dialogid, style, title, text, button, button2);   return 1; }