ProdigaL
Компетентный
Всех приветствую, в общем и целом пытаюсь чтоб данная команда работала только в гетто и только на чужой территории, проверка на свою землю работает а вот не могу сделать выход за гетто, данная команда работает везде
Код:
CMD:robhouse(playerid)
{
if(!IsAGang(playerid)) return true;
if(IsATerra(playerid)) return SendClientMessage(playerid, COLOR_GRAD1, !"Вы на своей базе");
//if(!IsInAllowed(playerid)) return SendClientMessage(playerid,COLOR_WHITE,!"Вы должны быть на территории врага чтобы начать ограбление");
if(robhouse[playerid] !=0) return SendClientMessage(playerid, COLOR_GRAD1, !"Вы уже грабили дом в этом часу");
if(WantedLevel[playerid] >= 6) return SendClientMessage(playerid, COLOR_GREY, !"У Вас максимальный уровень розыска!");
if(PI[playerid][pRank] < 7) return SendClientMessage(playerid, COLOR_GRAD1, !"У Вас нет 7 ранга в банде");
for(new h = 0; h < sizeof(HouseInfo); h++)
{
if(HouseInfo[h][hOwned] == 0) return true;
if(IsPlayerInRangeOfPoint(playerid, 7.0, HouseInfo[h][hEntranceX], HouseInfo[h][hEntranceY], HouseInfo[h][hEntranceZ]))
{
SendClientMessage(playerid, COLOR_GREEN, !"Вы ограбили дом, на сумму 2000 вирт!");
SendClientMessage(playerid, COLOR_GREEN, !"Полиция оповещена об ограблении!");
WantedLevel[playerid] ++;
PI[playerid][pRozisk] ++;
PI[playerid][pCrimes] ++;
PI[playerid][pCash] += 2000;
HouseInfo[h][hTakings] -= 2000;
robhouse[playerid] = 1;
SetPlayerWantedLevel(playerid, PI[playerid][pRozisk]);
new string[73 + (- 2 + MAX_PLAYER_NAME)];
format(string, sizeof(string),
"Рация: Cообщает: Неизвестный. Преступление: Ограбление. Подозреваемый: %s",
PI[playerid][pName]
);
SendCopsMessage(playerid, 0xFEBC41AA, string);
new targetid = GetPlayerID(HouseInfo[h][hOwner]);
if(targetid == -1)
return 1;
SendClientMessage(targetid, COLOR_REDD, !"Ваш дом ограбили на сумму 2000 вирт!");
SendClientMessage(targetid, COLOR_REDD, !"Грабитель объявлен в розыск!");
return 1;
}
}
return 1;
}
Код:
stock IsATerra(playerid)
{
if(PI[playerid][pMember] == 12 && PlayerToPoint(50.0,playerid,2651.4746,-2004.3387,13.3828) // BALLAS
||PI[playerid][pMember] == 12 && PlayerToPoint(50.0,playerid,-61.2984,1364.5847,1080.2109) // BALLAS
||PI[playerid][pMember] == 13 && PlayerToPoint(50.0,playerid,2774.2703,-1622.6263,10.9219) // VAGOS
||PI[playerid][pMember] == 13 && PlayerToPoint(50.0,playerid,303.6300,309.2500,999.1484) // VAGOS
||PI[playerid][pMember] == 15 && PlayerToPoint(50.0,playerid,2492.7532,-1676.3687,13.3380) // GROVE
||PI[playerid][pMember] == 15 && PlayerToPoint(50.0,playerid,2496.0129,-1708.9232,1014.7422) // GROVE
||PI[playerid][pMember] == 17 && PlayerToPoint(50.0,playerid,1713.9735,-2114.5122,13.3828) // AZTECAS
||PI[playerid][pMember] == 17 && PlayerToPoint(50.0,playerid,-49.7558,1400.3553,1084.4297) // AZTECAS
||PI[playerid][pMember] == 18 && PlayerToPoint(50.0,playerid,2184.1218,-1803.6334,13.3693) // RIFA
||PI[playerid][pMember] == 18 && PlayerToPoint(50.0,playerid,-223.8400,1410.5100,27.7734)) // RIFA
{
return true;
}
return false;
}
