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

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

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

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

/жалоба ID

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

Charls

Новичок
Всем привет,вот решил зделать /жалоба id игрока суть жалобы
Скрин:


Начнем в new
PHP:
new JustReported[MAX_PLAYERS]; 
new PlayerNeedsHelp[MAX_PLAYERS];
ну и сама команда
PHP:
if(strcmp(cmd, "/жалоба", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
	        if(JustReported[playerid] == 1)
	        {
	            SendClientMessage(playerid, COLOR_GREY, "   Подождите 2 минуты после отправки следующей жалобы ! ");
	            return 1;
	        }
	        GetPlayerName(playerid, sendername, sizeof(sendername));
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD2, "СОВЕТ: /жалоба [id/ЧастьИмени] [текст]");
				return 1;
			}
			giveplayerid = strval(tmp);
			if(IsPlayerConnected(giveplayerid))
			{
			    if(giveplayerid != INVALID_PLAYER_ID)
			    {
			        new length = strlen(cmdtext);
					while ((idx < length) && (cmdtext[idx] <= ' '))
					{
						idx++;
					}
					new offset = idx;
					new result[64];
					while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
					{
						result[idx - offset] = cmdtext[idx];
						idx++;
					}
					result[idx - offset] = EOS;
					if(!strlen(result))
					{
						SendClientMessage(playerid, COLOR_WHITE, "Пиши: /жалоба [id/ЧастьИмени] [текст]");
						return 1;
					}
					GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
			        format(string, sizeof(string), "Жалоба от: %s[%d], Нарушитель: %s[%d]", sendername, playerid, giveplayer, giveplayerid);
					ABroadCast(0xE19898AA,string,1);
					format(string, sizeof(string), "Текст жалобы: %s", (result));
					ABroadCast(0xE19898AA,string,1);
                    ABroadCast(COLOR_WHITE,"Пиши '/принять жалобу [id свидетеля]' или '/отменить жалобу [id свидетеля]'", 1);
					SendClientMessage(playerid, 0x96C184AA, "  Ваша жалоба была отправлена всем Администраторам онлайн.");
					JustReported[playerid] = 1;
					PlayerNeedsHelp[playerid] = 1;
					SetTimerEx("ReportReset", 120000, false, "i", playerid);
			    }
			}
	    }
	    return 1;
	}
Совсем забыл,если надо принять жалобу/откалнить надо добавить в /принять лчино у меня так
PHP:
		if(strcmp(x_job,"жалобу", true) == 0)
            {
	            if(gPlayerLogged[playerid] == 0)
	            {
	               SendClientMessage(playerid, COLOR_GREY, "   You need to login first !");
	               return 1;
	            }
	            if(PlayerInfo[playerid][pAdmin] > 0)
	            {
	                tmp = strtok(cmdtext, idx);
				    if(!strlen(tmp))
				    {
			    	   SendClientMessage(playerid, COLOR_WHITE, "Пиши: /принять жалобу [id/ЧастьИмени]");
			    	   return 1;
				    }
				    giveplayerid = ReturnUser(tmp);
			        if(IsPlayerConnected(giveplayerid))
				    {
				      if(giveplayerid != INVALID_PLAYER_ID)
				      {
				        if(PlayerNeedsHelp[giveplayerid] == 1)
				        {
				            PlayerNeedsHelp[giveplayerid] = 0;
				            GetPlayerName(playerid, sendername, sizeof(sendername));
							GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
							format(string, sizeof(string), "AdmWarning: Администратор %s принял жалобу от игрока %s[%d]", sendername, giveplayer, giveplayerid);
							ABroadCast(COLOR_YELLOW, string, 1);
							format(string, sizeof(string), "** Администратор %s принял вашу жалобу, пожалуйста подождите.", sendername);
							SendClientMessage(giveplayerid, 0x4D903DAA, string);
							JustReported[playerid] = 0;
							PlayerNeedsHelp[playerid] = 0;
                            return 1;
						}
				        else
				        {
				            SendClientMessage(playerid, COLOR_GREY, "   Игрок не подавал жалобы на кого-то !");
				            return 1;
				        }
				      }
		            }
	            }
	        }
В /отменить
PHP:
	if(strcmp(x_job,"жалобу",true) == 0)
	        {
	           if(gPlayerLogged[playerid] == 0)
	           {
	             SendClientMessage(playerid, COLOR_GREY, "   не зашогинин!");
	             return 1;
	           }
	           if(PlayerInfo[playerid][pAdmin] > 0)
	           {
	             tmp = strtok(cmdtext, idx);
				 if(!strlen(tmp))
				 {
			    	SendClientMessage(playerid, COLOR_WHITE, "Пиши: /отменить жалобу [id/ЧастьИмени]");
			    	return 1;
				 }
			 	 giveplayerid = ReturnUser(tmp);
				 if(IsPlayerConnected(giveplayerid))
				 {
				    if(giveplayerid != INVALID_PLAYER_ID)
				    {
				        if(PlayerNeedsHelp[giveplayerid] == 1)
				        {
				            PlayerNeedsHelp[giveplayerid] = 0;
				            GetPlayerName(playerid, sendername, sizeof(sendername));
							GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
							format(string, sizeof(string), "AdmWarning: Администратор %s отменил жалобу от %s[%d].", sendername, giveplayer, giveplayerid);
							ABroadCast(COLOR_YELLOW, string, 1);
							format(string, sizeof(string), "** Администратор %s отклонил твою жалобу, надеемся это было правильное действие !", sendername);
							SendClientMessage(giveplayerid, 0xB35959AA, string);
							JustReported[playerid] = 0;
							PlayerNeedsHelp[playerid] = 0;
                            return 1;
						}
				        else
				        {
				            SendClientMessage(playerid, COLOR_GREY, "   Игрок не подавал жалобы на кого-то !");
				            return 1;
				        }
				    }
				 }
			   }
			}
Автор: Charls (я)
P.s Делал как на Crimegta (не реклама!)
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу