Сообщение от
Dron_Turbo
Полностью кидай public GzCheck и руссифицированную команду /capture
PHP код:
public GzCheck()
{
for(new i = 0; i < sizeof(GZInfo); i++)
{
if(ZoneOnBattle[i] == 1 && GZSafeTime[i] == 0)
{
ZoneTimer[i] -= 5;
if(ZoneTimer[i] <= 0)
{
SendGangMessage(i,COLOR_RED, "Время на захват территории вышло");
ZoneOnBattle[i] = 0;
GangZoneStopFlashForAll(GZInfo[i][gID]);
SaveGZ();
}
for(new x = 0; x < MAX_PLAYERS; x++)
{
if(PlayerToKvadrat(x,GZInfo[i][gCoords][0], GZInfo[i][gCoords][1],GZInfo[i][gCoords][2],GZInfo[i][gCoords][3])&&IsInAllowed(x))
{
new faction;
if(PlayerInfo[x][pLeader] !=0) {faction = PlayerInfo[x][pLeader];}
else { faction = PlayerInfo[x][pMember];}
OnZONE[i][faction] ++;
}
}
new asd;
for(new x = 0; x < 20; x++)
{
if(OnZONE[i][x] > 0 && IsInAllowedF(x)) asd++;
}
if(asd == 1)
{
for(new x = 0; x < 20; x++)
{
if(OnZONE[i][x] > 0)
{
new string[1024];
new zx,zl;
zx = x;
zl = i;
if(GZInfo[i][gFrakVlad] == x)
{
SendFamilyMessage(GZInfo[i][gFrakVlad],0x00B953AA,"Вы отстояли свою территорию");
SendFamilyMessage(GZInfo[i][gNapad],0xC56565AA,"Вам не удалось захватить территорию");
}
else
{
SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AA,"Вы взяли под свой контроль новую территорию");
switch(GZInfo[i][gNapad])
{
case 12:
{
format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzB*30);
SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AA, string);
}
case 13:
{
format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzV*30);
SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AA, string);
}
case 15:
{
format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzG*30);
SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AA, string);
}
case 17:
{
format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzA*30);
SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AA, string);
}
case 18:
{
format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzR*30);
SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AA, string);
}
}
SendFamilyMessage(GZInfo[i][gFrakVlad], 0xC56565AA,"Вы потеряли контроль одной из своих территорий");
}
ZoneOnBattle[zl] = 0;
GZInfo[zl][gNapad] = 0;
GZInfo[zl][gFrakVlad] = zx;
GangZoneStopFlashForAll(GZInfo[zl][gID]);
GangZoneHideForAll(GZInfo[zl][gID]);
GangZoneShowForAll(GZInfo[zl][gID],GetGangZoneColor(zl));
ItsWar[GZInfo[zl][gNapad]] = false;
ItsWar[GZInfo[zl][gFrakVlad]] = false;
SaveGZ();
killlist = false;// килл лист в окончание капта
break;
}
}
}
}
}
for(new i = 0; i < 130; i++)
{
for(new z = 0; z < 20; z++)
{
OnZONE[i][z] = 0;
}
}
}
И русифицированная команда /capture
PHP код:
if(!strcmp(cmd, "/capture",true))
{
if(FrakCD[PlayerInfo[playerid][pMember]] == 0)
{
if(!IsInAllowed(playerid)) return SendClientMessage(playerid,COLOR_GRAD1, "Вы не можете захватывать территорию");
new tmphour, tmpminute, tmpsecond;
gettime(tmphour, tmpminute, tmpsecond);
tmphour = shifthour;
for(new i = 0; i < 130; i++)
{
if(PlayerToKvadrat(playerid,GZInfo[i][gCoords][0], GZInfo[i][gCoords][1],GZInfo[i][gCoords][2],GZInfo[i][gCoords][3]) && GZInfo[i][gFrakVlad] != PlayerInfo[playerid][pMember] && ZoneOnBattle[i]==0)
{
if(FrakCD[GZInfo[i][gFrakVlad]] != 0) return SendClientMessage(playerid,COLOR_GRAD1,"Банда на которую вы хотите напасть,уже воевала в этом часу");
if(IsATerra(playerid)) return SendClientMessage(playerid,COLOR_WHITE,"Нельзя захватить эту территорию");
if(!IsFracOnline(GZInfo[i][gFrakVlad])) return SendClientMessage(playerid, COLOR_GRAD1, "Банда которую вы хотите атаковать - {F50E0E}нет в онлайне.");
format(string,sizeof(string),"[Внимание]: Ваша банда напала на территорию %s",GetGangName(GZInfo[i][gFrakVlad]));
SendFamilyMessage(PlayerInfo[playerid][pMember],0x00B953AA,string);
format(string,sizeof(string), "[Внимание]: На вашу территорию напала банда %s",GetGangName(PlayerInfo[playerid][pMember]));
SendFamilyMessage(GZInfo[i][gFrakVlad],0xFF8CEFAA,string);
GangZoneFlashForAll(GZInfo[i][gID],GetGZColorF(PlayerInfo[playerid][pMember]));
GZSafeTime[i] = 600;
FrakCD[PlayerInfo[playerid][pMember]] = 3600;
GZInfo[i][gNapad] = PlayerInfo[playerid][pMember];
ZoneTimer[i] = 720;
ZoneOnBattle[i] = 1;
ItsWar[GZInfo[i][gNapad]] = true;
ItsWar[GZInfo[i][gFrakVlad]] = true;
killlist = true; // килл лист в начало капта
break;
}
}
}
else
{
return SendClientMessage(playerid, COLOR_GRAD1, "Ваша банда еще не окрепла с момента последнего захвата.");
}
return 1;
}