16 posts in this topic

Guest stibs
Новичок

Всем привет! Сегодня представлю вашему вниманию готовую систему репорта, при которой ни один репорт не останется неотвеченным! Т.е. пока админы на вопрос не ответят, он не пропадет. Итак, начнем.

Ко всем new: 
 

enum RepGB
{
    Reptex[130],// Текст который пишет игрок 130 символов
    RepTime,
};
new RepInfo[100][RepGB]; // Максимум 100 репортов.

Ко всем командам (если у вас уже есть команда репорта - удалите): 
 

Спойлер

CMD:report(playerid,params[])
{
    if(PLAYER_DATA[playerid][data_LOGGED] == false) return SendClientMessage(playerid,COLOR_WARNING,"Вы не авторизованы на сервере!");
    ReportDialog(playerid);
	return true;
}

CMD:reports(playerid)
{
	if(PLAYER_DATA[playerid][data_ADMLVL] == 0) return SCM(playerid, -1, "Команда доступна только для администрации!");
	new str[200], string[1500], null = 0;
	foreach(new i:Player)
	{
	    if(GetPVarInt(i, "RepUn") > 0)
	    {
	        null++;
            format(str,sizeof(str),"%s\n{FFFFFF}%i. %s[%d] | Жалоба: %s [%s]",string, null,PLAYER_DATA[i][data_NAME],i,RepInfo[i][Reptex], date("%hh:%ii:%ss", RepInfo[i][RepTime]));
            strcat(string,str);
        }
    }
    strcat(string, "\n\n{FFCC00}Ответить на жалобу: /pm [id] [ответ]");
    if(null == 0) return SendClientMessage(playerid, 0xAA3333AA,"Список репортов пуст");
    return ShowPlayerDialogFix(playerid, 9692, 0, "Репорт",string, "Обновить", "Закрыть");
}

 

Ко всем стокам (в конец / середину / начало мода): 
 

Спойлер

stock ReportDialog(playerid)
{
	new dtext[700];
	strcat(dtext, "{FFFFFF}Вы собираетесь написать Администрации сервера\n");
	strcat(dtext, "{FFFFFF}Перед тем как отправить сообщение\n");
	strcat(dtext, "{FFFFFF}убедитесь, что один из пунктов помощи не дал Вам ответа на Ваш вопрос\n\n");
	strcat(dtext, "{FF3300}Запрещено:\n");
	strcat(dtext, "{FFFFFF}- флуд, сквернословие, оффтоп\n");
	strcat(dtext, "{FFFFFF}- Выпрашивание игровых ценностей ('дать денег', 'дать лидерку', 'дать права')\n");
	strcat(dtext, "{FFFFFF}- ложные сообщения о нарушении\n\n");
	strcat(dtext, "{FF3300}За нарушение правил Администратор может:\n");
	strcat(dtext, "{FFFFFF}- предупредить (warn)\n");
	strcat(dtext, "{FFFFFF}- отключить от сервера (kick)\n");
	strcat(dtext, "{FFFFFF}- лишить возможности писать (mute)\n");
	strcat(dtext, "{FFFFFF}- заблокировать (ban)\n\n");
	strcat(dtext, "{FFFFFF}Данные правила установлены для всех игроков {339966}rglrp.tk");
	ShowPlayerDialogFix(playerid,dialog_REPORT,DIALOG_STYLE_INPUT,"{FFCC00}Репорт",dtext,"Отправить","Назад");
	return true;
}

 

Ко всем диалогам: 
 

Спойлер

case dialog_REPORT:
{
    if(!response) return true;
    if(response)
    {
        if(strlen(inputtext) < 1 || strlen(inputtext) > 100) return SendClientMessage(playerid,COLOR_WARNING,"Не менее 1 и не более 100 символов!"),ReportDialog(playerid);
        if(GetPVarInt(playerid,"RepUn") > 0) return SendClientMessage(playerid,0xAA3333AA,"Ошибка: Ваша прошлая жалоба ещё не рассмотрена");
        SetPVarInt(playerid,"RepUn",1);
        strmid(RepInfo[playerid][Reptex], inputtext,0,strlen(inputtext),130);
      	RepInfo[playerid][RepTime] = gettime(); 
        SendAdminMessage(0x33FF66FF, "{FFCC00}Поступила новая жалоба от игрока! Рассмотреть жалобы: /reports");
        SendClientMessage(playerid,0x3399feFF, "Ваша жалоба отправлена на рассмотрение!");
    }
}

 

Спойлер

CMD:pm(playerid,params[])
{
	//ставьте свою переменную админки
    if(PLAYER_DATA[playerid][data_ADMLVL] < 1) return true;
	if(sscanf(params,"us[100]",params[0],params[1])) return SendClientMessage(playerid,COLOR_WARNING,"Используйте: /pm [ид] [текст]");
	if(!IsPlayerConnected(params[0]))return  SendClientMessage(playerid,COLOR_WARNING,"Данного ID нет на сервере!");
	new string[300];
    format(string, sizeof(string), "[Ответ] %s[%d] игроку %s[%d]: {ffffff}%s", PLAYER_DATA[playerid][data_NAME],playerid,PLAYER_DATA[params[0]][data_NAME],params[0],params[1]);
    SendAdminMessage(0xffa141FF, string);
	format(string, sizeof(string), "Администратор %s[%d] ответил вам: {ffffff}%s", PLAYER_DATA[playerid][data_NAME],playerid,params[1]);
    SendClientMessage(params[0], 0xffa141FF, string);
    if(strlen(RepInfo[params[0]][Reptex]))
    {
    	format(string, sizeof(string), "На вашу жалобу: {FFFFFF}%s", RepInfo[params[0]][Reptex]);
    	SendClientMessage(params[0], 0xffa141FF, string);
	}
	strmid(RepInfo[playerid][Reptex], "",0,0,0);
    DeletePVar(params[0], "RepUn");
    return true;
}

 

Вроде бы все! Если будут ошибки - пишите, неисправности - пишите, исправим. 

Автор: неизвестен. 

Автор вырезки и оптимизации: @stibs.

 

Копирование на другие источники разрешено ТОЛЬКО с указанием авторство и активной ссылки на источник (PAWNO-RUS.RU)! 

Share this post


Link to post
Share on other sites
Дима Нисанский
Новичок

Что делать?)

Спойлер

 


C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(4710) : error 010: invalid function or declaration
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(4712) : error 010: invalid function or declaration
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(4713) : error 010: invalid function or declaration
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(4715) : error 010: invalid function or declaration
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(4716) : error 010: invalid function or declaration
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(4721) : error 021: symbol already defined: "SendClientMessage"
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(6365) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(6365) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(6559) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(6559) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(6627) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(6627) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(7526) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(7526) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(7531) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(7531) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(7537) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(7537) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(14577) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(14577) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(14590) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(14590) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(15440) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(15440) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(15496) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(15496) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(16217) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(16217) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(16475) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(16475) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20124) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20124) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20654) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20654) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20661) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20661) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20719) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20719) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20746) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20746) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20778) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20778) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20805) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20805) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20832) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20832) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20859) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20859) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20893) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(20893) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(21640) : error 017: undefined symbol "COLOR_WARNING"
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(21641) : error 017: undefined symbol "COLOR_WARNING"
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(21643) : error 017: undefined symbol "PLAYER_DATA"
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(21643) : warning 215: expression has no effect
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(21643) : error 001: expected token: ";", but found "]"
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(21643) : error 029: invalid expression, assumed zero
C:\Users\User\Desktop\Ñåðâàê íàñòîÿùèé!\MsQL\gamemodes\Fresh.pwn(21643) : fatal error 107: too many error messages on one line

Compilation aborted.

Pawn compiler 3.10.20160907              Copyright (c) 1997-2006, ITB CompuPhase


12 Errors.

 

Edited by odosenok
Причина: Взял код под спойлер.

Share this post


Link to post
Share on other sites
Skezz_Guriro
Новичок

@Дима Нисанский Надо переделать под свой мод коды, переделать такие строки как:

 

1) 

if(PLAYER_DATA[playerid][data_ADMLVL] < 1) return true;

2)

COLOR_WARNING

3) 

SendClientMessage

 

Edited by Skezz_Guriro
Причина: Всзял под сполера.

Share this post


Link to post
Share on other sites
Shakoladka
Великий Гуру

@Skezz_Guriro 

1. PLAYER_DATA - Переменной не существует, возможно у тебя другая PlayerInfo, или pInfo

2. COLOR_WARNING - Такого цвета нету

3. SendClientMessage - Возможно у тебя SCM а не SendClientMessage

Варнинги, и ошибки кидай строчки

Share this post


Link to post
Share on other sites
aaaa_carmona
Новичок
В 02.10.2017 в 21:38, Гость stibs сказал:

SendAdminMessage(0x33FF66FF, "{FFCC00}Поступила новая жалоба от игрока! Рассмотреть жалобы: /reports");

зачем два цвета сразу писать?  0x33FF66FF и в начале сообщения  {FFCC00}

Share this post


Link to post
Share on other sites
pavlov.trade
Новичок

help
 

Цитата

 

C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(539) : error 017: undefined symbol "ShowPlayerDialogFix"
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(523) : symbol is never used: "playerid"
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(12882) : error 017: undefined symbol "dialog_REPORT"
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(12892) : error 017: undefined symbol "SendAdminMessage"
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(48701) : error 017: undefined symbol "PLAYER_DATA"
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(48701) : warning 215: expression has no effect
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(48701) : error 001: expected token: ";", but found "]"
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(48701) : error 029: invalid expression, assumed zero
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(48701) : fatal error 107: too many error messages on one line

Compilation aborted.

Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2016, ITB CompuPhase


7 Errors.

 

Share this post


Link to post
Share on other sites
Santa_Claus
Популярный продавец
38 минут назад, pavlov.trade сказал:

help
 


C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(539) : error 017: undefined symbol "ShowPlayerDialogFix"
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(523) : symbol is never used: "playerid"
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(12882) : error 017: undefined symbol "dialog_REPORT"
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(12892) : error 017: undefined symbol "SendAdminMessage"
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(48701) : error 017: undefined symbol "PLAYER_DATA"
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(48701) : warning 215: expression has no effect
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(48701) : error 001: expected token: ";", but found "]"
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(48701) : error 029: invalid expression, assumed zero
C:\Users\ïê\Desktop\mobile\gamemodes\mobile.pwn(48701) : fatal error 107: too many error messages on one line

Compilation aborted.

Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2016, ITB CompuPhase


7 Errors.

 

Переводчик в помощь, если шаришь, то поймешь! У тебя проблемы с компиляцией, вроде чет такого.

Edited by Santa_Claus

Share this post


Link to post
Share on other sites
pavlov.trade
Новичок
Только что, Santa_Claus сказал:

Переводчик в помощь, если шаришь, то поймешь!

первую ошибку решил - остальные еще пока нет

Share this post


Link to post
Share on other sites
SCRIPTMAN
Великий Гуру

@pavlov.trade 

ShowPlayerDialogFix на 
ShowPlayerDialog

dialog_REPORT - ид диалога, можешь создать, можешь заметить на свой

SendAdminMessage - отправление сообщения админам, можешь удалить строку, если у тебя такого нет

PLAYER_DATA - на свою переменную меняешь, для данных игрока

Share this post


Link to post
Share on other sites
Guest Много сообщение
Новичок

отрпавит чел 1 сообщение в репорт вылезит в /reports много по 2 раза пишет

Share this post


Link to post
Share on other sites
Cawfee
Великий Гуру

@noah., вы не забыли следующий участок кода вставить?

enum RepGB
{
    Reptex[130],// Текст который пишет игрок 130 символов
    RepTime,
};
new RepInfo[100][RepGB]; // Максимум 100 репортов.

 

Share this post


Link to post
Share on other sites
noah.
Новичок
Только что, Cawfee сказал:

@noah., вы не забыли следующий участок кода вставить?


enum RepGB
{
    Reptex[130],// Текст который пишет игрок 130 символов
    RepTime,
};
new RepInfo[100][RepGB]; // Максимум 100 репортов.

 

Нет, не забыл, сначала подумал может enum не вставил, смотрю, да вроде вставил, уже отчаялся начал сюда писать)

Share this post


Link to post
Share on other sites
noah.
Новичок
29 минут назад, noah. сказал:

error 017: undefined symbol "RepTime"
error 035: argument type mismatch (argument 3)

нашел решение в удалении даты отправления репорта.

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

    • Lipsi
      By Lipsi
      Здравствуйте! 
       
      Я ищю людей мапперов скриптеров и так далее! 
       
       Плата будет но не сразу
       
      Связь со мной: 
      ВК - https://vk.ru/lipsi_den
      Тг- @Lipsi_den4ik
      Вконтакте обязательно должен быть у вас!