Sam_Dixon
Умник
Здравствуйте ув. пользователи P-I
Проблемы с модом Samp-Rp by Vice.
1 проблема: допустим рифа напала на грув... и грув убили всю рифу , и грув остались одни в квадрате, терра все равно отдается Рифе , типо грув проиграли.
2 проблема: после перезапуска у мафий биз лист стирается и становится по 0 бизнесов.
Помогите пожалуйста исправить. Вот код GzChek , вроде бы там проблема.
Проблемы с модом Samp-Rp by Vice.
1 проблема: допустим рифа напала на грув... и грув убили всю рифу , и грув остались одни в квадрате, терра все равно отдается Рифе , типо грув проиграли.
2 проблема: после перезапуска у мафий биз лист стирается и становится по 0 бизнесов.
Помогите пожалуйста исправить. Вот код GzChek , вроде бы там проблема.
PHP:
publics: GzCheck()
{
for(new i = 0; i < sizeof(GZInfo); i++)
{
if(ZoneOnBattle[i] == 1)
{
if(GZSafeTime[i] > 0) GZSafeTime[i] --;
for(new idx=0, x=0; idx<cvector_size(players); idx++)
{
x = cvector_get(players, idx);
new string[128];
new y = PlayerInfo[x][pMember];
if(y == GZInfo[i][gNapad] || y == GZInfo[i][gFrakVlad])
{
if(CaptureOn[x] == 0)
{
CaptureTextDraws(x);
PlayerTextDrawShow(x, CaptureTime[x]);
PlayerTextDrawShow(x, CaptureGang[x]);
PlayerTextDrawShow(x, CaptureWar[x]);
CaptureOn[x] = 1;
}
if(GZSafeTime[i] > 0) format(string,120,"~y~TIME:~g~ %s",Convert(GZSafeTime[i]));
PlayerTextDrawSetString(x,CaptureTime[x],string);
}
}
if(GZSafeTime[i] <= 0)
{
new string[128];
if(CountOnZone[GZInfo[i][gFrakVlad]] > CountOnZone[GZInfo[i][gNapad]])
{
SendFamilyMessage(GZInfo[i][gFrakVlad],0x00B953AA,"Вы отстояли свою территорию");
SendFamilyMessage(GZInfo[i][gNapad],0xC56565AA,"Вам не удалось захватить территорию");
CountOnZone[GZInfo[i][gFrakVlad]] = 0;
CountOnZone[GZInfo[i][gNapad]] = 0;
for(new idx=0, y=0; idx<cvector_size(players); idx++)
{
y = cvector_get(players, idx);
if(PlayerInfo[y][pMember] == GZInfo[i][gNapad] || PlayerInfo[y][pMember] == GZInfo[i][gFrakVlad])
{
CaptureOn[y] = 0;
PlayerTextDrawDestroy(y, CaptureTime[y]);
PlayerTextDrawDestroy(y, CaptureGang[y]);
PlayerTextDrawDestroy(y, CaptureWar[y]);
}
}
}
else if(CountOnZone[GZInfo[i][gFrakVlad]] < CountOnZone[GZInfo[i][gNapad]])
{
CountOnZone[GZInfo[i][gFrakVlad]] = 0;
CountOnZone[GZInfo[i][gNapad]] = 0;
SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AA,"Вы взяли под свой контроль новую территорию");
for(new y = 0; y < sizeof(GZInfo); y++)
{
if(GZInfo[y][gFrakVlad] == 12) TotalGzB++;
if(GZInfo[y][gFrakVlad] == 13) TotalGzV++;
if(GZInfo[y][gFrakVlad] == 15) TotalGzG++;
if(GZInfo[y][gFrakVlad] == 17) TotalGzA++;
if(GZInfo[y][gFrakVlad] == 18) TotalGzR++;
}
switch(GZInfo[i][gNapad])
{
case 12: format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzB*300);
case 13: format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzV*300);
case 15: format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzG*300);
case 17: format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzA*300);
case 18: format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzR*300);
}
SendFamilyMessage(GZInfo[i][gFrakVlad], 0xC56565AA,"Вы потеряли контроль одной из своих территорий");
GZInfo[i][gFrakVlad] = GZInfo[i][gNapad];
SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AA, string);
GZInfo[i][gNapad] = 0;
for(new idx=0, y=0; idx<cvector_size(players); idx++)
{
y = cvector_get(players, idx);
if(PlayerInfo[y][pMember] == GZInfo[i][gNapad] || PlayerInfo[y][pMember] == GZInfo[i][gFrakVlad])
{
CaptureOn[y] = 0;
PlayerTextDrawDestroy(y, CaptureTime[y]);
PlayerTextDrawDestroy(y, CaptureGang[y]);
PlayerTextDrawDestroy(y, CaptureWar[y]);
}
}
}
else if(CountOnZone[GZInfo[i][gFrakVlad]] == CountOnZone[GZInfo[i][gNapad]])
{
CountOnZone[GZInfo[i][gFrakVlad]] = 0;
CountOnZone[GZInfo[i][gNapad]] = 0;
SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AA,"Вы взяли под свой контроль новую территорию");
for(new y = 0; y < sizeof(GZInfo); y++)
{
if(GZInfo[y][gFrakVlad] == 12) TotalGzB++;
if(GZInfo[y][gFrakVlad] == 13) TotalGzV++;
if(GZInfo[y][gFrakVlad] == 15) TotalGzG++;
if(GZInfo[y][gFrakVlad] == 17) TotalGzA++;
if(GZInfo[y][gFrakVlad] == 18) TotalGzR++;
}
switch(GZInfo[i][gNapad])
{
case 12: format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzB*300);
case 13: format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzV*300);
case 15: format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzG*300);
case 17: format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzA*300);
case 18: format(string, sizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzR*300);
}
SendFamilyMessage(GZInfo[i][gFrakVlad], 0xC56565AA,"Вы потеряли контроль одной из своих территорий");
GZInfo[i][gFrakVlad] = GZInfo[i][gNapad];
SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AA, string);
GZInfo[i][gNapad] = 0;
for(new idx=0, y=0; idx<cvector_size(players); idx++)
{
y = cvector_get(players, idx);
if(PlayerInfo[y][pMember] == GZInfo[i][gNapad] || PlayerInfo[y][pMember] == GZInfo[i][gFrakVlad])
{
CaptureOn[y] = 0;
PlayerTextDrawDestroy(y, CaptureTime[y]);
PlayerTextDrawDestroy(y, CaptureGang[y]);
PlayerTextDrawDestroy(y, CaptureWar[y]);
}
}
}
captures--;
ItsWar[GZInfo[i][gNapad]] = -1;
ItsWar[GZInfo[i][gFrakVlad]] = -1;
ClearTotalGz();
ZoneOnBattle[i] = 0;
GangZoneStopFlashForAll(GZInfo[i][gID]);
GangZoneHideForAll(GZInfo[i][gID]);
GangZoneShowForAll(GZInfo[i][gID],GetGangZoneColor(i));
SaveGZ();
if(captures == 0) KillTimer(GzCheckTimer), GzCheckOn = 0;
break;
}
}
}
}
Последнее редактирование:
