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

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

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

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

Не работает /bizwar

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

olezhka

Дебютант
Помогите с системой захвата бизнеса

Здравствуйте, такая вот проблема.
1) В данной команде сделано 3 места стрел. Суть проблемы в том что квадраты на карте мигают, но очень огромные.
2) Не могу добавить систему, чтобы и малые бизнесы тоже можно захватывать (Это которые прописаны под SBizzInfo например: Заправки)

Код команды:
PHP:
else if(strcmp(cmd, "/bizwar", true) == 0)
	{
		tmp = strtok(cmdtext, idx);
		if(!strlen(tmp))
		{
            SendClientMessage(playerid,COLOR_GREY,"{F74848}»Введите:{FFFFFF} /bizwar [id]");
			SendClientMessage(playerid,COLOR_GREY,"1 - Нефтебаза | 2 - Склад | 3 - Доки");
			return 1;
		}
		mestobizwar = strval(tmp);
		if(mestobizwar > 3 || mestobizwar < 1)
		{
			SendClientMessage(playerid,COLOR_GREY,"{F74848}»Введите:{FFFFFF} /bizwar [id]");
			SendClientMessage(playerid,COLOR_GREY,"1 - Нефтебаза | 2 - Склад | 3 - Доки");
			return 1;
		}
		new factionm=0;
		if(PlayerInfo[playerid][pLeader] !=0){ factionm = PlayerInfo[playerid][pLeader];}
		else if(PlayerInfo[playerid][pMember] != 0 && PlayerInfo[playerid][pLeader] == 0) {factionm = PlayerInfo[playerid][pMember];}
		else {factionm = 0;}
		if(ISAMAFIA(playerid))
		{
			if(startwar == 1) return SendClientMessage(playerid, COLOR_WHITE, "Война уже начата!");
			if(FrakCDm[factionm] > 0){
                format(string,sizeof(string),"Следующий захват возможен через %d секунд",FrakCDm[factionm]);
	            SendClientMessage(playerid, COLOR_GRAD1, string);
                return 1;
			}
			for(new h = 0; h < sizeof(BizzInfo); h++)
			{
				if(PlayerInfo[playerid][pMember] == 5 && PlayerInfo[playerid][pRank] >= 8 || PlayerInfo[playerid][pMember] == 6 && PlayerInfo[playerid][pRank] >= 8 || PlayerInfo[playerid][pMember] == 14 && PlayerInfo[playerid][pRank] >= 8)
				{
					if(PlayerToPoint(3, playerid,BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ]) && BizzInfo[h][bMafia] != PlayerInfo[playerid][pMember])
					{
						if(war > 0)
                        {
      format(string,sizeof(string),"Войну можно начать через %d секунд(ы)",war);
      SendClientMessage(playerid,-1,string);
      return 1;
                        }
						if(BizzInfo[h][bMafia] == 0)
						{
							BizzInfo[h][bMafia] = PlayerInfo[playerid][pMember];
							SendClientMessage(playerid, COLOR_GREEN, "::: Бизнес взят под контроль :::");
							return 1;
						}
						if(BizzInfo[h][bMafia] > 0)
						{
							startwar = 1;
							format(string,sizeof(string),"%s назначил(а) стрелу за %s мафии %s",Name(playerid),BizzInfo[h][bMessage],GetMafiaName(BizzInfo[h][bMafia]));
							SendFamilyMessage(PlayerInfo[playerid][pMember],COLOR_RED,string);
							format(string,sizeof(string),"::: Бизнес %s захватывает мафия %s :::",BizzInfo[h][bMessage],GetMafiaName(PlayerInfo[playerid][pMember]));
							SendFamilyMessage(BizzInfo[h][bMafia],COLOR_RED,string);
							switch(mestobizwar)
							{
			    				case 1:
								{
									SendFamilyMessage(PlayerInfo[playerid][pMember],COLOR_WHITE,"Место встречи - Нефтебаза");
									mestobizwarcor[0] = 599.7518;
									mestobizwarcor[1] = 1236.2462;
									mestobizwarcor[2] = 11.7188;
									mestobizwarcor[3] = 200.6528;
								}
						        case 2:
								{
									SendFamilyMessage(PlayerInfo[playerid][pMember],COLOR_WHITE,"Место встречи - Склад");
									mestobizwarcor[0] = -2150.9617;
									mestobizwarcor[1] = -248.2362;
									mestobizwarcor[2] = 36.5156;
									mestobizwarcor[3] = 91.2908;
								}
						        case 3:
								{
									SendFamilyMessage(PlayerInfo[playerid][pMember],COLOR_WHITE,"Место встречи - Доки");
									mestobizwarcor[0] = 2377.4968;
									mestobizwarcor[1] = -2392.5884;
									mestobizwarcor[2] = 13.3803;
									mestobizwarcor[3] = 45.7968;
								}
							}
							zons = GangZoneCreate(mestobizwarcor[0], mestobizwarcor[1], mestobizwarcor[2], mestobizwarcor[3]);
							SendFamilyMessage(BizzInfo[h][bMafia],COLOR_WHITE,"У Вас есть 10 минуты, чтобы отбить бизнес...");
							BizzInfo[h][bZahvat] = 1;
							war = 1200;
							MZSafeTime[0] = 600;
							FrakCDm[factionm]  = 2400;
							MZInfo[0][mNapad] = PlayerInfo[playerid][pMember];
							MZInfo[0][mFrakVlad] = BizzInfo[h][bMafia];
							ZoneTimerm[0] = 130;
							ZoneOnBattlem[0] = 1;
							GangZoneShowForAll(zons, COLOR_NEWS);
							GangZoneFlashForAll(zons,COLOR_REDD);
						}
					}
				}
			}
		}
		return 1;
	}
Код окончания войны:
PHP:
forward MzCheck();
public MzCheck()
{
    for(new i =0;i<sizeof(MZInfo);i++)
    {
        if(ZoneOnBattlem[i] == 1 && MZSafeTime[i] == 0)
        {
            ZoneTimerm[i] -=10;
            if(ZoneTimerm[i] <=0)
            {
                for(new h = 0; h < sizeof(BizzInfo); h++)
                {
                    if(BizzInfo[h][bZahvat] == 1)
                    {
                        BizzInfo[h][bMafia] = BizzInfo[h][bMafia];
                        SendFamilyMessage(BizzInfo[h][bMafia],COLOR_GREEN,"{00ff00}Вашей мафии удалось отстоять этот бизнес");
                        SendFamilyMessage(MZInfo[i][mNapad],COLOR_RED,"{ff0000}Вашей мафии не удалось взять под контроль новый бизнес");
                        BizzInfo[h][bZahvat] = 0;
                        startwar = 0;
                        ZoneOnBattlem[i] = 0;
                        GangZoneStopFlashForAll(zons);
                        OnPropUpdate();
                    }
                }
            }
            for(new x =0;x<MAX_PLAYERS;x++)
            {
                if(PlayerToKvadrat(x,mestobizwarcor[0], mestobizwarcor[1], mestobizwarcor[2], mestobizwarcor[3]))
                {
                    new factionm;
                    if(PlayerInfo[x][pLeader] !=0) factionm = PlayerInfo[x][pLeader];
                    else factionm = PlayerInfo[x][pMember];
                    OnmZONE[i][factionm] ++;
                }
            }
            new asd;
            for(new x =0;x<20;x++)
            {
                if(OnmZONE[i][x] > 0 && IsInAllowedM(x)) asd ++;
            }
            if(asd == 1)
            {
                for(new x =0;x<20;x++)
                {
                    if(OnmZONE[i][x] > 0)
                    {
                        new zx,zl;
                        zx = x;
                        zl = i;
                        if(MZInfo[i][mFrakVlad] == x)
                        {
                             for(new h = 0; h < sizeof(BizzInfo); h++)
                            {
                                if(BizzInfo[h][bZahvat] == 1)
                                {
                                    BizzInfo[h][bMafia] = BizzInfo[h][bMafia];
                                    SendFamilyMessage(BizzInfo[h][bMafia],COLOR_RED,"{00ff00}Ваша мафия отстояла этот бизнес");
                                    SendFamilyMessage(MZInfo[i][mNapad],COLOR_RED,"{ff0000}Вашей мафии не удалось завоевать ещё один бизнес");
                                    BizzInfo[h][bZahvat] = 0;
                                    startwar = 0;
                                }
                            }
                        }
                        else
                        {
                            for(new h = 0; h < sizeof(BizzInfo); h++)
                            {
                                if(BizzInfo[h][bZahvat] == 1)
                                {
                                      SendFamilyMessage(BizzInfo[h][bMafia],COLOR_RED,"{ff0000}Ваша мафия потеряла контроль над одним из своих бизнесов");
                                    SendFamilyMessage(MZInfo[i][mNapad],COLOR_LIGHTGREEN,"{00ff00}Ваша мафия завоевала новый бизнес");
                                    BizzInfo[h][bMafia] = MZInfo[i][mNapad];
                                    BizzInfo[h][bZahvat] = 0;
                                    startwar = 0;
                                }
                            }
                        }
                        ZoneOnBattlem[zl] =0;
                        MZInfo[zl][mNapad] = 0;
                        MZInfo[zl][mFrakVlad] = zx;
                        GangZoneStopFlashForAll(zons);
                        GangZoneHideForAll(zons);
                        GangZoneShowForAll(zons,COLOR_NEWS);
                        OnPropUpdate();
                        break;
                    }
                }
            }
        }
    }
    for(new i =0;i<3;i++)
    {
        for(new z = 0;z<20;z++)
        {
            OnmZONE[i][z] =0;
        }
    }
}
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу