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

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

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

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

Помогите со сменой скина.

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

yn0p0T

Ученик
Суть проблемы: фракционный скин записан под переменной pSkin которая записана в файле аккаунта как Skin, вроде бы верно должен менять её значение, но, когда пишу /changeskin id, вылетает диалог, выбираю скин и он меняется, но, при смерти персонажа которому был выдан скин, или при перезаходе на сервер, скин возвращается такой, какой был. Пример: если сделал игроку invite во фракцию, и сменил скин, когда он умрёт у него будет такой скин, который был при invite ( так же, если выдать лидерку а потом сменить скин ).
Помогите пожалуйста :c
+-ик с меня :3
PHP:
	if(strcmp(cmd,"/changeskin",true)==0)
	{
       if(PlayerInfo[playerid][pLeader] >= 1 || PlayerInfo[playerid][pRang] >= 9)
	   {
			new skinid;
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp)) return SCM(playerid, -1, " Используй: /changeskin [id]");
			skinid = ReturnUser(tmp);
			new Leader;
			if(PlayerInfo[playerid][pLeader] >0) Leader = PlayerInfo[playerid][pLeader];
			if(Leader == 1)
				{
	            if(PlayerInfo[skinid][pMember] == 1)
				{
				SetPVarInt(playerid,"SKIN",skinid);
				SPD(playerid, 2351, DIALOG_STYLE_LIST,"Выдача скина", "Скин №1(id 98)\nСкин №2(id 164)\nСкин №3(id 165)\nСкин №4(id 185)\nСкин №5(id 59)\nСкин №6(id 240)\nСкин №7(id 187)\nСкин №8(id 17)\nСкин №9(id 147)\nСкин №10(id 150)\nСкин №11(id 141)\nСкин №12(id 219)","Выдать","Отмена");
				return 1;
				}}
				SavePlayer(skinid);
				}
				return true;
				}
Вот часть диалога:
PHP:
	case 2351:
		{
			if(response)
			{
				switch(listitem)
				{
				case 0:
					{
						switch(PlayerInfo[playerid][pMember])
						{
						case 1: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 98);
						case 2..4: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 98);
						case 5..8: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 287);
						case 9..12: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 265);
						case 13: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 286);
						case 14..17: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 170);
						case 18: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 274);
						case 19: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 105);
						case 20: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 102);
						case 21: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 175);
						case 22: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 116);
						case 23: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 108);
						case 24: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 98);
						case 25: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 112);
						case 26: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 121);
						case 27..29: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 274);
						case 30: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 170);
						}
						PlayerInfo[GetPVarInt(playerid,"SKIN")][pSkin] = GetPlayerSkin(playerid); // может эта строчка лишняя? :D
					}
p.s. и так для каждого скина ( если надо будет, скину все диалоги целиком и всю команду)
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу