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

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

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

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

Баг с каптом.

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

Dimarios

Умник
Добрый день всем. У меня такая проблема. Значит система капта у меня простая, кто на территории последний, того и терра. Вот в чём проблема. Добавил 2 банды Crips и Bloods (Может кто знает), но когда кончается капт, то она должна стать той, кто последний на терре. Значит, к примеру, я в блудз закаптил ацтек, время прошло, если ацтек на терре будет, то отстоит, а если блудз, то ничего не происходит, как бы не видит его. Прошу помощи.
Вот GzCheck:
PHP:
stock GzCheck()
{
	new string[128];
	for(new i =0;i<sizeof(GZInfo);i++)
	{
		if(ZoneOnBattle[i] == 1 && GZSafeTime[i] == 0)
		{
			ZoneTimer[i] -=5;
			new faction;
			new zl;
			zl = i;
			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))
				{
					if(PlayerInfo[x][pLeader] !=0) {faction = PlayerInfo[x][pLeader];}
					else { faction = PlayerInfo[x][pMember];}
					OnZONE[i][faction] ++;
				}
			}
			new asd;
			for(new x =0;x<23;x++)
			{
				if(OnZONE[i][x] > 0 && IsInAllowedF(x)) asd ++;
			}
			if(asd == 1)
			{
				for(new x =0;x<23;x++)
				{
					if(OnZONE[i][x] > 0)
					{
						new zx;
						zx = x;
						if(GZInfo[i][gFrak] == x) {format(string,90,"Банда %s отстояла свою территорию",GetGangName(zx)); }
                        if(GZInfo[i][gNapad] == x){format(string,90,"Банда %s выиграла войну за территорию",GetGangName(zx)); }
						SendFMes(GZInfo[i][gFrak],COLOR_GREEN, string);
						SendFMes(GZInfo[i][gNapad],COLOR_GREEN, string);
                        if(GZInfo[i][gNapad] == x && GZInfo[i][gFrak] == x)
						{
							format(string,90,"Война за территорию продлена на 1 минуту, поскольку на поле боя присутствуют 2 враждующиеся банды");
							SendFMes(GZInfo[i][gFrak],COLOR_GREEN, string);
							SendFMes(GZInfo[i][gNapad],COLOR_GREEN, string);
							GZSafeTime[x] = 60;
							return true;
						}
						ZoneOnBattle[zl] =0;
						GZInfo[zl][gNapad] = 0;
						GZInfo[zl][gFrak] = zx;
						GangZoneStopFlashForAll(GZInfo[zl][id]);
						GangZoneHideForAll(GZInfo[zl][id]);
						GangZoneShowForAll(GZInfo[zl][id],GetGangZoneColor(zl));
						SaveGZ(zl);
						break;
					}
				}
			}
		}
	}
	for(new i =0;i<120;i++)
	{
		for(new z = 0;z<20;z++)
		{
			OnZONE[i][z] =0;
		}
	}
Вот /capture:
PHP:
CMD:capture(playerid, params[])
{
	new string[128];
	if(PlayerLogged[playerid] == 0) return true;
	if(IsAGang(playerid))
	{
		if(PlayerInfo[playerid][pRank] < 7) return SendClientMessage(playerid,COLOR_GREY,"Функция доступно с 7 ранга!");
		new faction = PlayerInfo[playerid][pMember];
		if(FrakCD[faction] > 0) return SendClientMessage(playerid, COLOR_GREY, "Захватывать территорию можно 1 раз в час!");
		if(!IsInAllowed(playerid)) return SendClientMessage(playerid, COLOR_GREY, "Ваша банда уже учавствует в захвате территории!");
		for(new i = 1;i<=TOTALGZ;i++)
		{
			if(PlayerToKvadrat(playerid,GZInfo[i][gCoords][0], GZInfo[i][gCoords][1],GZInfo[i][gCoords][2],GZInfo[i][gCoords][3]) && ZoneOnBattle[i] == 0)
			{
				if(GZInfo[i][gFrak] == faction) return SendClientMessage(playerid, COLOR_GREY, "Вы не можете захватить свою территорию!");
				//if(!IsPlayerInBandOnline(GZInfo[i][gFrak])) return SendMes(playerid,COLOR_GREY, "Игроков банды \"%s\" нет в сети!", GetGangName(GZInfo[i][gFrak]));
				format(string, 127,"[Внимание]: На вашу территорию напала банда %s", FracInfo[PlayerInfo[playerid][pMember]][fName]);
				SendFMes(GZInfo[i][gFrak],COLOR_GREEN,string);
				format(string, 127, "Территория будет мигать 7 минут, после чего перейдет к банде, оставшейся последней");
				SendFMes(GZInfo[i][gFrak],COLOR_WHITE,string);
				format(string, 127, "Если на территорию присутствуют обе банды, война за территорию продлится на 1 минуту");
				SendFMes(GZInfo[i][gFrak],COLOR_WHITE,string);
				format(string,128,"[Внимание]: %s назначил войну банде %s",sendername(playerid),GetGangName(GZInfo[i][gFrak]));
				SendFMes(faction,COLOR_GREEN,string);
				format(string,128,"Территория будет мигать 7 минут, после чего перейдет к банде, оставшейся последней");
				SendFMes(faction,COLOR_WHITE,string);
				format(string,128,"Если на территорию присутствуют обе банды, война за территорию продлится на 1 минуту");
				SendFMes(faction,COLOR_WHITE,string);
				GangZoneFlashForAll(GZInfo[i][id],GetGZColorF(PlayerInfo[playerid][pMember]));
				GZSafeTime[i] = 300;
				FrakCD[PlayerInfo[playerid][pMember]] = 1800;
				GZInfo[i][gNapad] = PlayerInfo[playerid][pMember];
				ZoneTimer[i] = 720;
				ZoneOnBattle[i] = 1;
				break;
			}
		}
	}
	else SendClientMessage(playerid, COLOR_GREY, YouCanNot);
	return true;
}
P.s немного изменил, но суть вопроса таже.
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу