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

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

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

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

[Вопрос] Ганг зоны.

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

Tema444

Ученик
В моде Mafia wars есть багнутые ганг зоны.

Команда /zc что-бы захватить зону
PHP:
if(iscmd(cmd,"/zc")){
  new f = PlayerLeader[playerid], y,m,d;
  if(f<20){
   Message(playerid,"Эту команду может использовать только лидер преступной группировки",clDarkRed);
   return 1;
  }
  new z = GetPlayerZone(playerid);
  if(z<0){
   Message(playerid,"Эту территорию нельзя захватить",clDarkRed);
   return 1;
  }
  if(FZone[z]==f){
   Message(playerid,"Вы не можете захватить эту территорию, она и так ваша",clDarkRed);
   return 1;
  }
  for(new i=0; i<max_factions; i++) if(ZCNow[i]==z){
   Message(playerid,"Вы не можете сейчас захватить эту территорию, за нее уже идет война",clDarkRed);
   return 1;
  }
  new n = 0;
  for(new i=0; i<max_players; i++) if(IsPlayerConnected(i))
	if(GetPlayerFaction(i)==f && GetPlayerZone(i)==z) n++;
  if(n<4 && PlayerAdmin[playerid]<8){
   Message(playerid,"Для захвата территории вы должны собрать как минимум 4 человека",clDarkRed);
   return 1;
  }
  getdate(y,m,d);
  if(ZCDate[f]==d){
   Message(playerid,"Сегодня вы больше не можете захватывать территории",clDarkRed);
   return 1;
  }
  if(!FZone[z]){
   FMessage(f,1,"Эта территория переходит под контроль вашей группировки",clLime);
   ZCDate[f] = d;
   FZone[z] = f;
   UpdateZones();
   SaveFaction(f);
   return 1;
  }
  new of = FZone[z]; n = 0;
  for(new i=0; i<max_players; i++) if(IsPlayerConnected(i))
	if(GetPlayerFaction(i)==of) n++;
  if(n<3 && PlayerAdmin[playerid]<8){
   Message(playerid,"Для захвата территории на сервере должно быть не менее 4 членов группировки, которая держит эту территорию",clDarkRed);
   return 1;
  }
  ZCDate[f] = d;
  ZCTimer[f] = 10; // минуты!!
  ZCNow[f] = z;
  FlashZone(z);
  AddPlayerCrime(playerid,"провокация войны между преступными группировками",6);
  format(msg,max_line,"* Банда %s начала захват одной из ваших территорий",fRu_Name[of],fRu_Name[f]);
  FMessage(of,1,msg,clLightRed);
  FMessage(of,1,"Очистите территорию от нападающих, и она останется под вашим контролем",clYellow);
  FMessage(f,1,"Удерживайте территорию в течении 10 минут, и она перейдет под ваш контроль",clYellow);
  for(new i=0; i<max_players; i++){
   new f2 = GetPlayerFaction(i);
   if(f2==f || f2==FZone[f]) ShowZones(i);

  }
  return 1;
 }
/z что-бы зоны было видно на карте.
PHP:
if(iscmd(cmd,"/z")){
  if(zShown[playerid]) HideZones(playerid);
   else ShowZones(playerid);
  return 1;
 }
/zcreate для создания ганг зоны.
PHP:
if(iscmd(cmd,"/zcreate")){ restricted(7);
  new z = -1;
  for(new i=0; i<max_zones; i++)
   if(Zones[i][0]==0.0) { z = i; break; }
  if(z<0){
   Message(playerid,"Нет свободных территорий",clDarkRed);
   return 1;
  }
  if(z>zCount) zCount++;
  format(msg,max_line,"Cоздана новая территория, id: %i (всего: %i)",z,zCount);
  Message(playerid,msg,clYellow);
  return 1;
 }
Проблема в том, что при вводе команды /zc пишет вы не можете захватить данную зону.
Когда вводишь /z ганг зоны не появляются.
когда вводишь /zcreate пишет ,что зона создана, но не создаётся.

Как исправить баги с этими командами?? Кто мне поможет поставлю + До лимита.
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу