Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!: Команда /bag [Easy] - Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!

Перейти к содержимому

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

Команда /bag [Easy] Оценка: -----

#1
Пользователь офлайн   xDimasx 

  • Обычный смертный
  • Вставить ник
  • Раскрыть информацию
Я смотрю накопилось уже 3 темы каких-то непонятных.
Я решил принять эстафету и сделать всё рабочее в одной команде а не со стоками как в прошлых темах =3
Команда на DC_CMD:
CMD:bag(playerid,params[])//Команда можете заменить на своё 
{
        new string[128],string2[256];// Переменные которая может содержать 128 символов.
        PlayerLogged[playerid] = false;//Зашли вы на сервер или нет(Заменять на своё!)
        {
                if(sscanf(params,"s[128]", params[0])) return SendClientMessage(playerid, 0xFF0000AA, "Используй Команду /bag [Текст].");//Проверка
                {
                        format(string, sizeof(string), "[ID:%d] %s Заметил Баг: %s",playerid, sendername(playerid), params[0]);//Пишите Администрации что вы нашли баг
                        SendClientMessage(playerid, COLOR_LIGHTBLUE, string);//цвет
                        format(string2, sizeof(string2), "[БАГ]: Игрок %s обнаружил баг. Описание: %s",playerid, sendername(playerid), params[0]);//Пишите Администрации что вы нашли баг
                        SendClientMessage(playerid, COLOR_LIGHTBLUE, string2);//цвет
                        SendClientMessage(playerid, COLOR_RED, "Спасибо вам за оказанную услугу сервера, Администрация, её обязательно рассмотрят. Ожидайте ответа.");//функция после того как вы напишите что нашли баг
                        printf("%s",string2); // Выдаём текст в server_log.txt (Легче там найти по словам [БАГ]:)
                }
        }
        return 1;
}



Ну вообщем как то так,кто знает как сделать еще лучше - принимайте эстафету.

Сообщение отредактировал xDimasx: 22 Май 2015 - 21:47

0

#2
Пользователь офлайн   lama developer 

  • Гадаю по вашему коду!
  • Вставить ник
  • Раскрыть информацию
Чет я не уверен на счет работоспособности коммнды. У тебя есть три параметра в форматировании, из которых форматируется только два. Давай рассмотрим пример твоего форматирования. Вот как текст выйдет игроку [БАГ]: Игрок 0 обнаружил баг. Описание: Darge Неужели ты ждал этого результата? И new string[128] - это не переменная, это строковый тип по типу массива, т.е. массив! Складывается такое ощущение, что команду даже не тестил. К тому же не все используют COLOR_RED и т.д. Так что у кого то будет работенка Изображение
1

#3
Пользователь офлайн   xDimasx 

  • Обычный смертный
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияdarge (22 Май 2015 - 21:36) писал:

Чет я не уверен на счет работоспособности коммнды. У тебя есть три параметра в форматировании, из которых форматируется только два. Давай рассмотрим пример твоего форматирования. Вот как текст выйдет игроку [БАГ]: Игрок 0 обнаружил баг. Описание: Darge Неужели ты ждал этого результата? И new string[128] - это не переменная, это строковый тип по типу массива, т.е. массив! Складывается такое ощущение, что команду даже не тестил. К тому же не все используют COLOR_RED и т.д. Так что у кого то будет работенка Изображение

Не моя команда. Я просто сделал вывод в логи легче чем в пред.командах
0

#4
Пользователь офлайн   lama developer 

  • Гадаю по вашему коду!
  • Вставить ник
  • Раскрыть информацию
Вот я немного набросал комманду. Не тестил. С использованием mxINI.inc

CMD:bag(playerid, params[])
{
	new
		text_bag[хз],
		sendername[MAX_PLAYER_NAME];		
	if(sscanf(params,"s[хз]", params[0])) return SendClientMessage(playerid, -1, "Использование: /bag [text]");
	GetPlayerName(playerid, sendername, sizeof(sendername));
	format(text_bag, sizeof(text_bag), "Игрок %s[%i] заметил баг.", sendername, playerid);
	SendClientMessage(playerid, -1, text_bag);
	new 
		year, 
		month,
		day;
	new bag_file;	
	getdate(year, month, day);
	format(bag_file, sizeof(bag_file), "%d.%d.%d.ini", year, month, day);
	new iniFile = ini_createFile(bag_file);
	if(iniFile < 0)
	{
		iniFile = ini_openFile(bag_file);
		ini_setString(iniFile, "Баг - ", params[0]);
		ini_closeFile(iniFile); 
	}
	return 1;
}

За 10 минут забубонил. Ошибки наверняка есть, но нету времени вникать :) Эстафета принята Изображение
0

#5
Пользователь офлайн   .evoxxx 

  • Liberty Inc.
  • Вставить ник
  • Раскрыть информацию
if(sscanf(params,"s[128]", params[0]))

sscanf - функция разделитель,тоесть разделяет 1 от 2
а тут 1 один параметр,что самого от себя разделять?
0

#6
Пользователь офлайн   - Steff - 

  • Новичок
  • Вставить ник
  • Раскрыть информацию
Раз 10 вижу в паблике -____-
0

Поделиться темой:


Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей


Яндекс.Метрика