Хотите взрыв?
Иногда же вам хотелось сделать миссию более эффектной с помощью артобстрела? Или с помощью бомбардировки? Вот собственно два скрипта с подробным обьяснением.
- Бомбардировка
 идет относительно самолета(кто захочет - можно и вертолета, но это нереально будет, товарищи)
 
 
;находим самолет и записываем его в переменную _plane
 _plane = this select 0
 ;берем название заряда и записываем его в переменную _gun
 _gun = this select 1
 ;записываем кол-во зарядов в переменную _countgun
 _countgun = this select 2
 ;начало цикла
 #bomba
 ;помещаем бомбу ниже самолета на полметра
 _bomb = _gun camcreate[(getpos _plane select 0), (getpos _plane select 1), (getpos _plane select 2)-0.5]
 ;ожидаем полсекунды и уменьшаем кол-во зарядов на 1-цу
 ~0.5
 _countgun = _countgun - 1
 ;проверяем кол-во зарядов:
 ;если > 0, то возвращаемся в начало цикла
 ;если нет, то идем к концу
 ?(_countgun>0): goto "bomba"
 exit
 ;запуск скрипта:
 ;[ваш_самолет,"ваш_заряд",кол-во_зарядов]
 ;exec "ваше_название_скрипта.sqs"
- Артобстрел: !ОБНОВЛЕН!(! - обновление в скрипте)
 идет относительно какого-либо маркера
 
 
;берем название заряда и записываем его в переменную _gun
 _gun = this select 0
 ;берем название маркера и записываем его в переменную _marka
 _marka = this select _coord
 ;кол-во переменных в массиве записываем в переменную _coord
 ;отнимаем от кол-ва переменных в массиве 1-цу для того,
 ;чтобы не было ошибки при взятии координатов,
 ;например: у вас 15 эл. в массиве. _gun нам брать не надо, а
 ;из-за считывания координат без 0-вого эл-та
 ;программа найдет несуществующую переменную. Нам
 ;этого не надо.
 _coord=(count _this) - 1
 ;берем название маркера и записываем его в переменную _marka
 _marka = this select _coord
 ;начало цикла
 #artob
 ;обождем время от 1 до 5 секунд
 ~random 5
 
 ;захват случайным образом координат из массива _this с помощью
 ;переменной _coord
 
 ;координата x
 _xc = _this select (random _coord)
 ;!проверяем номер рендома, чтобы он не взял имя маркера на x
 ;а взял последнюю координату
 ?(_xc == _coord): _xc = _coord - 1
 ;координата y
 _yc = _this select (random _coord)
 ;!проверяем номер рандома, чтобы он не взял имя маркера на y,
 ;а взял последнюю координату
 ?(_yc == _coord): _yc = _coord - 1
 
 ;создаем заряд относительно маркера плюс координат х и у
 _bang = _gun camcreate[(getmarkerpos _marka select 0) + _xc, (getmarkerpos _marka select 1) + _yc]
 
 ;проверяем выполнена ли задача (obj правда или ложь)
 ;правда - переходим к концу
 ;ложь - возвращаемся в начало цикла
 ?(obj): exit
 goto "artob"
 ;если хотите, можете сделать так, как и в бомбардировании - определить
 ;кол-во зарядов, а потом проверить его: 0 зарядов или еще есть
 
 ;для запуска скрипта
 ;["ваш_заряд",...разные_координаты...,"ваш_маркер"]
 ;exec "ваше_название_скрипта.sqs"
 ;не забудьте кроме положительных координат еще и отрицательные
- Артобстрел 2. Сокращение.!НОВОЕ!
 идет относительно какого-либо маркера
 
 
;берем название заряда и записываем его в переменную _gun
 _gun = _this select 0
 ;берем максимальное значение координат и записываем его
 ;в переменную _coordsmax
 _coordsmax = _this select 1
 ;берем название маркера и записываем его в переменную _marka
 _marka = _this select 2
 ;берем максимальное ожидание заряда оружия
 _vrema = _this select 3
 
 ;начинам цикл
 #artobstrel
 ;ожидаем от одной до _vrema секунд
 ~random vrema
 
 ;захватываем одну из координат максимально до _coordsmax в переменную _xc
 _xc = random _coordsmax
 ;захватываем одну из координат максимально до _coordsmax в переменную _yc
 _yc = random _coordsmax
 
 ;создаем заряд относительно маркера _marka плюс координаты x и y
 _bang = _gun camcreate[(getmarkerpos _marka select 0) + _xc, (getmarkerpos _marka select 1) + _yc]
 
 ;проверяем выполнена ли задача (obj правда или ложь)
 ;правда - переходим к концу
 ;ложь - возвращаемся в начало цикла
 ?(obj): exit
 goto "artobstrel"
 ;если хотите, можете сделать так, как и в бомбардировании - определить
 ;кол-во зарядов, а потом проверить его: 0 зарядов или еще есть
 
 ;для запуска скрипта
 ;["ваш_заряд",максимальная_координата,"ваш_маркер"]
 ;exec "ваше_название_скрипта.sqs"
Но в Артобстреле 2 будут только макс-корды(отрицательные не пробовал), но в написании он значительно легче, чем обычный Артобстрел(лучше
использовать обычный Артобстрел, в нем может быть огромное кол-во координат)з>