Elite Games - Свобода среди звезд!

X2 - Скрипты - ScE - Навигационные команды

НАВИГАЦИОННЫЕ КОМАНДЫ

Все навигационные команды возвращают коды завершения, которые позволяют определить каким именно образом завершилась команда (например, постреляв из лазера полезно знать – враг все еще жив или уже уничтожен?). Смысл каждого кода определяется для каждой конкретной команды. Возможны следующие коды завершения:

FLRET_INVALIDPARMS – Указан неверный параметр команды
FLRET_DESTROYED – Объект команды уничтожен
FLRET_LANDED – Объект команды пристыкован/пристыковался
FLRET_WARPED – Объект команды совершил прыжок через врата
FLRET_NOCOMMANDS – Аргумент команды не существует
FLRET_IMMEDIATE
FLRET_ERROR – Во время выполнения команды произошла ошибка
FLRET_INTERRUPTED – Выполнение команды было прервано другим скриптом
FLRET_BREAK – Команда по какой-либо причине не может быть выполнена
FLRET_FIREFREE – Цель в радиусе поражения
FLRET_TARGETREACHED – Цель достигнута
FLRET_NEXTFLIGHTSTEP – Часть команды выполнена, исполняется следующая часть
FLRET_TIMEOUT – Время, отведенное на выполнение команды истекло

@<RetVar/IF> <RefObj> fly to home base
Получить код завершения команды <RetVar/IF> (выполнить команду) «лететь на базу» для объекта <RefObj>.

@<RetVar/IF> <RefObj> fly to station <Var/Station>
Получить код завершения команды <RetVar/IF> (выполнить команду) «лететь на станцию» <Var/Station> для объекта <RefObj>.

@<RetVar/IF> <RefObj> fly to sector <Var/Sector>
Получить код завершения команды <RetVar/IF> (выполнить команду) «лететь в сектор» <Var/Sector> для объекта <RefObj>.

Комментарий к командам Fly to ...
Пока корабль не прилетит в указанное место (если летит на станцию, то пока не состыкуется со станцией) никакие следующие команды скрипта не выполняются. Исключение – если выполнение команды прервано скриптом или сигналом с более высоким приоритетом. То же самое относится к командам folow to ..., move to position. Однако турелям в автоматическом режиме это стрелять по пролетающим мимо врагам не мешает.

<RetVar/IF> <RefObj> find nearest enemy ship: max.dist=<Var/Number>
Найти ближайший враждебный корабль <RetVar/IF> в радиусе <Var/Number> для объекта <RefObj>.

<RetVar/IF> <RefObj> find nearest enemy station: max.dist=<Var/Number>
Найти ближайшую враждебную станцию <RetVar/IF> в радиусе <Var/Number> для объекта <RefObj>.

<RetVar/IF> <RefObj> fire lasers on target <Value> using turret <Var/Number>
Получить код завершения команды <RetVar/IF> (выполнить команду) «стрелять лазерами» по цели <Value> используя орудийную башню <Var/Number> для объекта <RefObj>.

@<RetVar/IF> <RefObj> turn turret <Var/Number1> to target <Var/Ship/Station>: timeout=<Var/Number2> ms
Получить код завершения команды <RetVar/IF> (выполнить команду) «навести орудийную башню» <Var/Number1> на цель <Var/Ship/Station> для объекта <RefObj>. Исполнять команду не дольше <Var/Number2> мс.

@<RetVar/IF> <RefObj> attack run on target <Value>
Получить код завершения команды <RetVar/IF> (выполнить команду) «подготовиться к атаке на цель» <Value>. Команда необходима для подготовительных действий: взлет со станции, сближение с целью и т.д. Возвращаемые значения:
FLRET_FIREFREE – все готово для ведения огня по цели;
FLRET_INTERRUPTED – выполнение команды было прервано другим скриптом;
FLRET_BREAK – цель не существует или не может быть атакована (цель находится в другом секторе, пристыкована к станции/транспорту и т.п.);
FLRET_NOCOMMANDS – нужна новая цель (цель уже уничтожена).

@<RetVar/IF> <RefObj> move to ware object <Value> for collecting
Лететь к плавающему в космосе контейнеру с целью подобрать.

<RetVar/IF> <RefObj> catch ware object <Value>
Подобрать плавающий в космосе контейнер.

@<RetVar/IF> <RefObj> move around <Var/Number> ms
Корабль полетит вперед со скоростью половина от максимальной. Если это корабль, на котором игрок, то корабль уворачиваться от препятствий не будет (может запросто с чем-нить столкнуться) и по истечении указанного времени будет продолжать полет. Если это другой корабль, то от препятствия отвернет в сторону и полетит уже в другом направлении. По истечении указанного времени остановится.

@<RetVar/IF> <RefObj> escort ship <Var/Ship>
Команда кораблю <RefObj> сопровождать корабль <Var/Ship>.

<RefObj> set formation <Var/Number>
Установить тип построения <Var/Number> для корабля <RefObj>.

<RefObj> add to formation with leader <Var/Ship>
Добавить корабль <RefObj> в построение с ведущим кораблем <Var/Ship>.

<RefObj> remove from any formation
Исключить корабль <RefObj> из всех построений.

<RetVar/IF> <RefObj> get formation leader
Запрос типа построения ведущего <RefObj>.

<RetVar>=<RefObj> get formation follower ships
Запрос типа построения ведомого <RefObj>.

<RetVar/IF> <RefObj> is docking allowed at <Var/Ship/Station>
Разрешено ли кораблю <RefObj> пристыковаться к станции (крейсеру) <Var/Ship/Station>. Имеется в виду, хватает ли репутации для стыковки.

START <RefObj> command <Object Command>: arg1=<Value>, arg2=<Value>, arg3=<Value>, arg4=<Value>
???

<RefObj> send signal <Object Signal>: arg1=<Value>, arg2=<Value>, arg3=<Value>, arg4=<Value>
???

@<RetVar/IF> <RefObj> follow ship <Var/Ship> with precision <Var/Number> m
Дать команду кораблю <RefObj> следовать за кораблем <Var/Ship> с точностью <Var/Number>.

<RefObj> set follow mode <Var/Number>
Задать кораблю <RefObj> тип следования <Var/Number>.

<RetVar/IF> <RefObj> get follow mode
Получить тип следования корабля <RefObj>.

<RefObj> set destination to <Value>
Установить назначение. Фактически только информационная команда, чтобы игрок мог понять, куда корабль направляется, просмотрев информацию по кораблю. Непосредственно к полету команда не привязана, например можно командой fly to ... послать корабль в одно место, а destination указать другое.

<RetVar/IF> <RefObj> get destination
Получить назначение корабля <RefObj>.

<RefObj> set attack target to <Value>
???

<RetVar/IF> <RefObj> get attack target
Получить или проверить цель, которую атакует корабль <RefObj>.

@<RetVar/IF> <RefObj> move to position: x=<Var/Number> y=<Var/Number> z=<Var/Number> with precision <Var/Number> m
Лететь в указанную точку с пространственными координатами (в метрах) с точностью <Var/Number>.

<RefObj> set command: <Object Command>
Послать команду <Object Command> объекту <RefObj>.

<RetVar/IF> <RefObj> get command
Получить команду, которую выполняет объект <RefObj>.

<RefObj> set command target: <Value>
???

<RetVar/IF> <RefObj> get command target
???

<RefObj> set command target2: <Value>
???

<RetVar/IF> <RefObj> get command target2
???

<RetVar>=<RefObj> select new formation leader by: ship class=<Var/Number> strength=<Var/Number> min.speed=<Var/Number>
???

<RetVar/IF> <RefObj> has formation ships
???

<RefObj> give formation leadership to <Var/Ship>
???

<RefObj> set tactical to <Var/Number>
???

<RetVar>=<RefObj> get tactical
???

<RetVar/IF> get player tracking aim
???

<RetVar/IF> <RefObj> is <Var/Ship/Station> in firing range of turret <Var/Number>
Проверить, находится ли указанный <Var/Ship/Station> в зоне поражения турели <Var/Number> корабля <RefObj>.

<RetVar>=<RefObj> find enemy in firing range of turret <Var/Number>
Найти врага в зоне поражения указанной турели <Var/Number> корабля <RefObj>.

<RefObj> set command: <Object Command> target=<Value> target2=<Value> par1=<Value> par2=<Value>
???

<RetVar/IF> <RefObj> fire missile <Var/Ware> on <Value>
Команда для <RefObj> запусть 1 ракету <Var/Ware> в цель <Value>. Ракеты должны быть в трюме, но устанавливать их не обязательно, выстрелит и так.

<RetVar/IF> <RefObj> get current missile
Получить тип активных в данный момент ракет.

<RetVar/IF> <RefObj> find best missile for target <Value>
Найти, среди тех ракет, что есть в трюме <RefObj>, лучшую, с точки зрения компьютера, ракету, для поражения цели <Value>.

<RetVar> = best missile type for target <Value>
???

<RetVar/IF> <RefObj> launch <Var/Number> fight drones: protect me or attack target=<Value>
Команда запускает <Var/Number> Дронов (если они есть в трюме <RefObj>). Если установить аргумент protect me or attack target в значение 0, дроны осуществляют защиту <RefObj>. Если аргумент корабль — атакуют этот корабль.

<RetVar/IF> <RefObj> is missile <Var/Ware> ready to fire
Проверить, готова ли ракета <Var/Ware> объекта <RefObj> к запуску?

<RetVar/IF> <RefObj> should a missile be fired
???

<RetVar>=<RefObj> get fire missile probability
Возвращает заданную вероятность пуска ракет для объекта <RefObj>.

<RetVar>=<RefObj> get fire missile time difference in seconds
???

<RefObj> set fire missile probability to <Var/Number>
Устанавливает вероятность пуска ракет <Var/Number> для объекта <RefObj>.

<RefObj> set fire missile time difference to <Var/Number> s
???

<RetVar/IF> <RefObj> fits laser <Var/Ware> into turret <Var/Number>
Выдает возможность установки лазеров <Var/Ware> в турель с номером <Var/Number> корабля <RefObj>. Если возможно — выдает 1, если нет – null.
При этом лазерам <Var/Ware> в трюме лежать не обязательно.

<RetVar>=<RefObj> get max. number of lasers in turret <Var/Number>
Получить число лазеров в турели <Var/Number> корабля <RefObj>.

<RetVar>=<RefObj> get laser type in turret <Var/Number> at slot <Var/Number>
Получить тип лазера в <Var/Number> слоте турели <Var/Number> корабля <RefObj>.

<RetVar>=<RefObj> get number of turrets
Получить количество <RetVar> турелей установленных на объекте <RefObj>.

<RetVar>=get range of missile type <Var/Ware>
Получить радиус поражения (в метрах) <RetVar> ракеты типа <Var/Ware>.

<RetVar>=<RefObj> find nearest missile aiming to me
Найти ближайшую ракету <RetVar>, наведённую на объект <RefObj>.

<RetVar/IF> <RefObj> decouple ships
Хаакский кластер после этой команды разваливается на отдельные корабли.

<RetVar/IF> <RefObj> use jump drive: target=<Value>
Перемещение с помощью прыжкового двигателя. Если <Value> – врата, то <RefObj> появится из этих врат. Если сектор, то появится в центре сектора. Для выполнения этой команды на корабле должен быть установлен прыжковый двигатель и в трюме должно быть необходимое кол-во батареек.

<RetVar/IF> <RefObj> needs jump drive energy for jump to:sector=<Var/Sector>
Выдает, сколько батареек необходимо иметь в трюме <RefObj>, для того, чтобы переместиться в сектор <Var/Sector>.

Назад к оглавлению
Денис Кузьмин a.k.a. Mad_Kuzia
К началу раздела | Наверх страницы Сообщить об ошибке
X2 - Скрипты - ScE - Навигационные команды
Все документы раздела: Главная |


Дизайн Elite Games V5 beta.18
EGM Elite Games Manager v5.17 02.05.2010