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

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

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

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

Как сделать что бы МВД мог менять скины всему подразделу.

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

Fox228228

Новичок
Здравствуйте, хотел бы узнать как сделать так что бы МВД мог менять скины всему подразделу:
PHP:
new offerskin[15][27] =
{
	{17,59,98,164,165,185,187,227,240,76,141,150,219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//frac 1
	{311,310,309,307,306,305,304,303,295,288,285,284,283,282,281,280,266,265,17, 0, 0, 0, 0, 0, 0, 0, 0},//ЛСПД,СФПД,ЛВПД
	//{311,310,309,307,306,305,304,303,295,294,288,286,285,284,283,282,281,280,267,266,265,166,165,164,163,147,98},//FRAC 20 - Министерство внутренних дел
	{61,255,287,191,179,253,73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//3
	{70,274,275,276,148,308, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//4
	{170,186,188,223,250,76,141,150,263, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//5
	{105,106,107,195,269,270,271, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//6
	{195,102,103,104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//7
	{108,109,110,190, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//8
	{173,174,175,226,273,119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//9
	{114,115,116,193,292, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//10
	{91,98,113,124,127,214,223, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//11
	{120,121,122,123,294,186,263,169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//12
	{111,112,125,126,46,233, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//13
	{309,307,305,304,303,295,286,285,166,165,164,163,211, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},//FRAC 24 - FBI
	{98,147,165,166,163,164,294,295,285, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}//FRAC 25 - Министерство юстиции
};
PHP:
case 98:
	{
		    if(!response) return 1;
		    new changeskin;
		    new frac = player_info[playerid][FRAC];
		    new fraction = floatround(frac / 10, floatround_floor);
		    new string[80];
		    if(frac == 24) fraction = 14;
		    if(frac == 25) fraction = 15;
		    changeskin = offerskin[fraction-1][listitem];
		    format(string, sizeof(string), "Ваша внешность была изменена лидером организации %s[%d]", player_info[playerid][NAME], playerid);
		    SCM(GetPVarInt(playerid, "changeskinid"), COLOR_LIGHTBLUE, string);
		    format(string, sizeof(string), "Вы изменили внешность игрока %s[%d]", player_info[GetPVarInt(playerid, "changeskinid")][NAME], GetPVarInt(playerid, "changeskinid"));
		    SCM(playerid, COLOR_LIGHTBLUE, string);
		    SetPlayerSkin(GetPVarInt(playerid, "changeskinid"), changeskin);
		    static const fmt_query[] = "UPDATE `accounts` SET `fskin` = '%d' WHERE `id` = '%d'";
		    new query[sizeof(fmt_query)+(-2+1)+(-2+8)];
		    format(query, sizeof(query), fmt_query, changeskin, player_info[GetPVarInt(playerid, "changeskinid")][ID]);
			mysql_query(dbHandle, query);
			DeletePVar(playerid, "changeskinid");
		}
PHP:
CMD:changeskin(playerid, params[])
{
    if(player_info[playerid][RANG] < 8) return SCM(playerid, COLOR_LIGHTGREY, "Вам недоступна данная функция");
    if(sscanf(params, "d", params[0])) return SCM(playerid, COLOR_LIGHTGREY, "Используйте /changeskin [id игрока]");
    if(GetPVarInt(params[0], "logged") != 1) return SCM(playerid, COLOR_LIGHTGREY, "Такого игрока нет");
    new idfrac = player_info[playerid][FRAC];
	if(idfrac == 10 || idfrac == 20 || idfrac == 30 || idfrac == 40 || idfrac == 50)
	{
	    if((idfrac / 10) != floatround(player_info[params[0]][FRAC] / 10, floatround_floor)) return SCM(playerid, COLOR_LIGHTGREY, "Игрок не состоит в Вашей организации");
	}
	else
	{
	    if(player_info[params[0]][FRAC] == 0) return SCM(playerid, COLOR_LIGHTGREY, "Вы не можете изменить скин этому игроку");
		if(player_info[playerid][FRAC] != player_info[params[0]][FRAC] && player_info[params[0]][FRAC] != 0) return SCM(playerid, COLOR_LIGHTGREY, "Игрок не состоит в Вашей организации (в подразделении)");
	}
	/*
	Тут то же самое. Когда все скины заполнишь, условие в цикле "if(offerskin[frac-1][i] == 0) continue;" не нужно будет.
	*/
	new frac = floatround(player_info[playerid][FRAC] / 10, floatround_floor);
	new string[220];
	if(player_info[playerid][FRAC] == 25) frac = 15;
	if(player_info[playerid][FRAC] == 24) frac = 14;
	format(string, sizeof(string), "Скин 1 (id %d)", offerskin[frac-1][0]);
 	for(new i = 1; i < 13; i++)
 	{
 	    if(offerskin[frac-1][i] == 0) continue;
 	    format(string, sizeof(string), "%s\nСкин %d (id %d)", string, i+1, offerskin[frac-1][i]);
 	}
    SPD(playerid, 98, DIALOG_STYLE_LIST, "Выберите внешность для игрока:",string, "Ок", "Отмена");
	SetPVarInt(playerid, "changeskinid", params[0]);
	return 1;
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу