rosatto102
Умник
Привет всем. Прошу помощи)
Не понимаю почему у банд не пашет /changeskin. Сама команда работает, выдает меню с выбором, но при нажатии скин не меняется, а выдается один и тот же скин, который вообще в ChangeSkin нету.
С меня плюсики . Надеюсь поможете. Спасибо.
P.S. Прикол в том, через /templeader все хорошо. Скины меняются. Соответственно у лидеров банд нет возможности на смену. Что за нахер? Я в шары долблюсь что ли?
DD
Не понимаю почему у банд не пашет /changeskin. Сама команда работает, выдает меню с выбором, но при нажатии скин не меняется, а выдается один и тот же скин, который вообще в ChangeSkin нету.
С меня плюсики . Надеюсь поможете. Спасибо.
P.S. Прикол в том, через /templeader все хорошо. Скины меняются. Соответственно у лидеров банд нет возможности на смену. Что за нахер? Я в шары долблюсь что ли?
Код:
new ChangeSkin[29][20] =
{
{280,281,282,283,284,285,288,76,300,301,302,303,304,305,306,307,309,310,311}, // SAPD
{286,163,164,165,166,141,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // FBI
{295,191,255,61,287,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // Army SF
{70,274,275,276,219,308,0,0,0,0,0,0,0,0,0,0,0,0,0}, // Medics LS
{223,124,113,214,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // La Cosa Nostra [LCN]
{120,123,169,186,118,117,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // Yakuza
{57,150,98,187,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // Мэрия Los Santos
{57,150,98,187,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // Мэрия San Fierro
{57,150,98,187,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // Мэрия Las Venturas
{280,281,282,283,284,285,288,76,300,301,302,303,304,305,306,307,309,310,311}, // SFPD
{59,172,189,240}, // Лицензеры
{102,103,104,195}, // Ballas НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ
{108,109,110,190}, // Vagos НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ
{112,111,125,272,214}, // Russian Mafia
{105,106,107,269,270,271,56}, // Grove НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ
{250,261,211,217}, // Los Santos News
{114,115,116,41}, // Aztecas Gang НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ
{173,174,175,226}, // Rifa Gang НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ НЕ РАБОТАЕТ
{295,191,255,61,287,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // Army LV
{295,191,255,61,287,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // Army U.S.A
{280,281,282,283,284,285,288,76,300,301,302,303,304,305,306,307,309,310,311}, // LVPD
{29,47,60,83,91,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // Street Racers Club
{247,248,254,181,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // Байкеры
{185,186,250,295,294,12,40,12,0,0,0,0,0,0,0,0,0,0,0,0}, // Hitmans
{76,285,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // S.W.A.T
{17,216,227,287,265,12,208,295,0,0,0,0,0,0,0,0,0,0,0,0}, // Правительство
{295,191,255,61,287,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, // Военно Морской Флот
{70,274,275,276,219,308,0,0,0,0,0,0,0,0,0,0,0,0,0}, // Medics SF
{70,274,275,276,219,308,0,0,0,0,0,0,0,0,0,0,0,0,0} // Medics LV
};
Код:
case 1146:
{
if(!response) return 1;
new fractionid = listitem;
SetPVarInt(playerid,"actfraction",fractionid);
string = "";
for(new i;i<20;i++)
{
new skinid = ChangeSkin[fractionid][i];
if(!skinid) break;
if(!i) format(string,sizeof(string),"Скин %d [%d]",i+1,skinid);
else format(string,sizeof(string),"%s\nСкин %d [%d]",string,i+1,skinid);
}
new actplayerid = GetPVarInt(playerid,"actplayerid");
ShowPlayerDialog(playerid,9185,2,PlayerInfo[actplayerid][pNames],string,"Принять","Отмена");
return 1;
}
case 9185: на всякий случай этот диалог тоже скину, мало ли...
{
if(!response) return DeletePVar(playerid, "actplayerid");
new actplayerid = GetPVarInt(playerid,"actplayerid");
new fractionid = GetPVarInt(playerid,"actfraction");
switch(fractionid)
{
case 7,8,28,29: return SendClientMessage(playerid, -1, "Данные фракции удалены");
}
new skinid = ChangeSkin[fractionid][listitem];
new rank = rangFractionID[fractionid];
PlayerInfo[actplayerid][pMember] = fractionid+1;
PlayerInfo[actplayerid][pLeader] = fractionid+1;
PlayerInfo[actplayerid][pRank] = rank;
if(IsADepartament(actplayerid)) CheckQuest(actplayerid, 3);
if(IsAArm(actplayerid))
{
PlayerInfo[actplayerid][ArmyPlay] = true;
strmid(PlayerInfo[actplayerid][ArmyRank], PlayerRank[PlayerInfo[actplayerid][pMember]-1][PlayerInfo[actplayerid][pRank]-1], 0, strlen(PlayerRank[PlayerInfo[actplayerid][pMember]-1][PlayerInfo[actplayerid][pRank]-1]), 255);
CheckQuest(actplayerid, 5);
}
PlayerInfo[actplayerid][pModel] = skinid;
PlayerInfo[actplayerid][pJob] = 0;
mysql_format(1,string,sizeof(string),"UPDATE `accounts` SET `pMember` = '%d', `pRank` = '%d', `pModel` = '%d', `pLeader` = '%d', `pJob` = '0', `ArmyPlay` = '%d', `ArmyRank` = '%e' WHERE `id` = '%d'",fractionid+1,rank,skinid,fractionid+1,PlayerInfo[actplayerid][ArmyPlay],PlayerInfo[actplayerid][ArmyRank],PlayerInfo[actplayerid][pID]);
mysql_tquery(1, string);
SetPlayerColor(actplayerid, FractionInfo[PlayerInfo[actplayerid][pMember]][fColor]);
new day,month,year,hour,minuite,second;
getdate(year, month, day);
gettime(hour,minuite,second);
new data2[64];
format(data2, 64, "%02d.%02d.%d в %02d:%d",day,month,year,hour,minuite);
string = "";
mysql_format(1, string, MAX_SQL, "INSERT INTO `logs` (`Text`, `Date`) VALUES ('%s выдал лидерку %s фракции %i','%e')",PlayerInfo[playerid][pNames],PlayerInfo[params[0]][pNames],fractionid+1,data2);
mysql_tquery(1, string);
SCMF(playerid, COLOR_ORANGE,"%s был назначен лидером фракции \"%s\"",PlayerInfo[actplayerid][pNames],GetMember[fractionid]);
SCMF(actplayerid, COLOR_ORANGE, "%s %s "ORANGE"назначил вас лидером фракции \"%s\"",PlayerAdmin[PlayerInfo[playerid][bAdmin]-1],PlayerInfo[playerid][pNames],GetMember[fractionid]);
format(string,sizeof(string),"%s %s "ORANGE"назначил %s лидером фракции \"%s\"",PlayerAdmin[PlayerInfo[playerid][bAdmin]-1],PlayerInfo[playerid][pNames],PlayerInfo[actplayerid][pNames],GetMember[fractionid]);
ABroadCast(COLOR_ORANGE, string, 1);
SetPlayerSkin(actplayerid,skinid);
if(StartRabWork(actplayerid))
{
SendClientMessage(actplayerid,COLOR_BLUE,"Ваш рабочий день успешно начат!");
SetPVarInt(actplayerid, "StartRabWork", 1);
}
return 1;
}
Код:
CMD:changeskin(playerid, params[])
{
if(StartRabWork(playerid) && !GetPVarInt(playerid,"StartRabWork")) return SendClientMessage(playerid,COLOR_WHITE,""ZAPRET"Вы не начали рабочий день!");
switch(PlayerInfo[playerid][pMember])
{
case 1,3,19,10,20,21: if(PlayerInfo[playerid][pRank] < 14) return SendClientMessage(playerid,COLOR_WHITE,""ZAPRET"Вам не доступна данная команда");
case 2: if(PlayerInfo[playerid][pRank] < 9) return SendClientMessage(playerid,COLOR_WHITE, ""ZAPRET"Вам недоступна данная команда");
case 4..6,28,29,11..15,17,18,22,24..26: if(PlayerInfo[playerid][pRank] < 9) return SendClientMessage(playerid,COLOR_WHITE,""ZAPRET"Вам не доступна данная команда");
case 7..9: if(PlayerInfo[playerid][pRank] < 5) return SendClientMessage(playerid,COLOR_WHITE,""ZAPRET"Вам не доступна данная команда");
case 16: if(PlayerInfo[playerid][pRank] < 12) return SendClientMessage(playerid,COLOR_WHITE,""ZAPRET"Вам не доступна данная команда");
case 23: if(PlayerInfo[playerid][pRank] < 9) return SendClientMessage(playerid,COLOR_WHITE,""ZAPRET"Вам не доступна данная команда");
case 27: if(PlayerInfo[playerid][pRank] < 10) return SendClientMessage(playerid,COLOR_WHITE,""ZAPRET"Вам не доступна данная команда");
default: return SendClientMessage(playerid,-1,""ZAPRET" Ошибка...");
}
if(sscanf(params,"d",params[0])) return SendClientMessage(playerid, COLOR_WHITE, "Используйте /changeskin [id]");
if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, COLOR_WHITE, ""ZAPRET"Игрок оффлайн!");
if(PlayerInfo[playerid][pMember] != PlayerInfo[params[0]][pMember]) return SendClientMessage(playerid, COLOR_WHITE, ""ZAPRET"Данный игрок не в вашей фракции!");
new fractionid = PlayerInfo[playerid][pMember]-1;
string = "";
for(new i;i<20;i++)
{
new skinid = ChangeSkin[fractionid][i];
if(!skinid) break;
if(!i) format(string,sizeof(string),"Скин %d [%d]",i+1,skinid);
else format(string,sizeof(string),"%s\nСкин %d [%d]",string,i+1,skinid);
}
SetPVarInt(playerid,"actinplayerid1",params[0]);
ShowPlayerDialog(playerid,1145,2,PlayerInfo[params[0]][pNames],string,"Принять","");
return 1;
}
Код:
CMD:templeader(playerid, params[])
{
if(PlayerInfo[playerid][bAdmin] < 5) return 1;
//if(gAdminReason[playerid][ADMIN_TEMPLEADER]) return SendClientMessage(playerid, -1, ""ZAPRET"Основатель запретил Вам пользоваться этой командой!");
if(sscanf(params, "d",params[0])) return SendClientMessage(playerid, COLOR_WHITE, "Используйте /templeader [ID fraction]");
if(params[0] > 29 || params[0] < 1) return SendClientMessage(playerid, -1, ""ZAPRET"Нельзя меньше 1 или больше 29!");
PlayerInfo[playerid][pMember] = params[0];
PlayerInfo[playerid][pRank] = rangFractionID[params[0]-1];
format(string, SMALL_SIZE, "Вы временно вступили в фракцию: {%s}%s",GetFractionColor[params[0]],GetMember[params[0]-1]);
SendClientMessage(playerid, COLOR_WHITE, string);
SetPVarInt(playerid, "StartRabWork", 1);
SendClientMessage(playerid, COLOR_BLUE, "Рабочий день успешно начат.");
return 1;
}
CMD:makeleader(playerid, params[])
{
if(PlayerInfo[playerid][bAdmin] < 5) return 1;
//if(gAdminReason[playerid][ADMIN_MAKELEADER]) return SendClientMessage(playerid, -1, ""ZAPRET"Основатель запретил Вам пользоваться этой командой!");
if(sscanf(params,"d",params[0])) return SendClientMessage(playerid, COLOR_WHITE, "Используйте /makeleader [ID]");
if(!IsPlayerConnected(params[0]) || params[0] == INVALID_PLAYER_ID || !PlayerInfo[playerid][bAdmin]) return 1;
if(PlayerInfo[params[0]][pMember] > 0) return SendClientMessage(playerid, COLOR_WHITE, ""ZAPRET"Игрок во фракции");
//if(PlayerInfo[params[0]][bAdmin] > 0 && PlayerInfo[params[0]][bAdmin] != 6) return SendClientMessage(playerid, COLOR_WHITE, "Администратор не может быть лидером только во фракции ( /templeader [id фракции] )");
if(PlayerInfo[params[0]][pWarns] >= 1) return SendClientMessage(playerid, COLOR_GRAD1,""ZAPRET"У игрока Warn.");
string = "";
for(new i;i!=sizeof(GetMember);i++) format(string,sizeof(string),"%s%s\n",string,GetMember[i]);
ShowPlayerDialog(playerid,1146,2,PlayerInfo[params[0]][pNames],string,"Далее","Отмена");
SetPVarInt(playerid,"actplayerid",params[0]);
return 1;
}
Последнее редактирование:
