Sign in to follow this  
Followers 0
keyl

Команда /an | Pawn.CMD + sscanf2

2 posts in this topic

cmd:an(playerid,params[])
{
	new id,text[128];
	if(player[playerid][Admin] < 1) return SendClientMessage(playerid, 0xFF000000, "Ошибка: {ffffff} У вас нет доступа!");
	if(sscanf(params,"us[128]",id,text))return SendClientMessage(playerid,-1,"/an [id] [text]");
	if(strlen(text) > 128) return SendClientMessage(playerid, -1, "Текст ответа не может быть больше {ff0000}128 {ffffff}символов!");
	new string[256];
	format(string,sizeof(string),"Администратор %s ответил вам: %s",player[playerid][pNick],text);
	SendClientMessage(id, -1, text);
	return 1;
}

Простенькая команда. Можно её улучшить добавив сохранение ответов в базу данных, для этого после SendClientMessage добавьте:
 

			static const fmt_query[] = "INSERT INTO `otvet` (`text`) VALUES ('%s')";
			new query[128];
			format(query, sizeof(query), fmt_query,text);
			mysql_query(dbHandle, query);

Да.. не лучшее сохранение для ответов администрации , но если вдруг, проверить можно :)

Автор : keyl1337.
При копировании на другие порталы, указывать автора.(меня).

Разобрать код?

  • 1ая строка - вводим переменные id и text(размером на 128 символов).
  • Затем идёт проверка на админа.
  • Потом юзаем сканф .
  • После проверяем , если больше 128 символов = ошибка.
  • Затем вводим стринг. Правда хз зачем 256.(по дефолту всегда ставлю)
  • Форматируем стринг
  • Отправляем сообщение человеку , с указанным id.
  • 2ая часть с mysql .
  • Енто запрос.
  • потом переменная. 
  • Затем форматируем,и подключение. dbHandle замените на своё. ибо юзал mysql r-41.

Edited by keyl1337

Share this post


Link to post
Share on other sites

Полезно!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • JAFAR
      By JAFAR
      Удалил полностью все объекты с города Батырево
      вы спросите зачем я это сделал?
      Я вам отвечу я хотел удалить все города с карты CRMP но затея не оправдала себя
      так как я хотел сделать единый город с 0 на crmp 0.3e ну потом я подумал и решил бросить затею
      так как это долго и нудно и смысл не вижу дальше продолжать!
       
      Если хотите что бы я продолжил делать дело с вас Like.
      Скриншоты проделанной работы:
       
      Желаю вам удачи!
      Удалённый батырево.txt
    • Jadyn Allen
      By Jadyn Allen
      Всем привет! Купил Мод Moscow RolePlay, поставил на хост, захожу и тут бац! Пишет что подключился и сразу выкидывает с сервера с переподключением с ошибкой LШ connection to the server. Reconnecting crmp. Кто сможет помочь буду благодарен