Оглавление | Сообщение об ошибках | Ваше мнение о проекте | E-Mail автору |
v Навигационные команды ( Fly commands ).
Большинство команд из семейства Fly to … выполняют в процессе исполнения комплекс одинаковых подготовительных или завершающих действий, ниже указана последовательность действий общих для этих команд:
@<RetVar/IF> <ship> -> fly to home base
Дать команду объекту <ship> отстыковаться, лететь в сектор где находиться база к которой он приписан, и пристыковаться к ней.
Возвращает значения:
FLRET_LANDED |
Команда выполнена корабль пристыкован. |
FLRET_BREAK |
Команда прервана другой командой Fly. |
FLRET_INTERRUPTED |
Команда прервана другим скриптом. |
FLRET_ERROR |
Ошибка при выполнении (например Нет базы приписки). |
@<RetVar/IF> <ship> fly to station <Station>
Дать команду объекту <ship> «лететь на станцию» <Var/Station> и пристыковаться к ней.
Возвращает значения:
FLRET_LANDED |
Команда выполнена корабль пристыкован. |
FLRET_BREAK |
Команда прервана другой командой Fly. |
FLRET_INTERRUPTED |
Команда прервана другим скриптом. |
FLRET_ERROR |
Ошибка при выполнении (например: база уничтожена) |
@<RetVar/IF> <ship> fly to sector <Sector>
Дать команду объекту <RefObj> «лететь в сектор» <Var/Sector>.
FLRET_NOCOMMANDS |
Команда выполнена корабль достиг сектора. |
FLRET_BREAK |
Команда прервана другой командой Fly. |
FLRET_INTERRUPTED |
Команда прервана другим скриптом. |
FLRET_INVALIDPARMS |
Если <RefObj> не существует. |
* Если параметр <Var/Sector> не правильного формата (например просто число) то корабль отправиться в сектор Kingdom End.
<RetVar/IF> <object> find nearest enemy ship: max.dist=<distance>
Найти ближайший враждебный корабль и вернуть значение <RetVar/IF> в радиусе <distance> для объекта <object>.
<RetVar/IF> <object> find nearest enemy station: max.dist=<distance>
Найти ближайшую враждебную станцию и вернуть значение <RetVar/IF> в радиусе <Var/Number> для объекта <RefObj>.
<RetVar/IF> <object> fire lasers on target <target> using turret <turretid>
Дать команду <object> «стрелять лазерами» по цели <target> используя орудийную башню <turretid> . Если номер турели установлен как 0, то выстрел будет сделан из носового орудия, независимо от того находится цель target в зоне поражения или нет орудия все равно выстрелят и команда вернет [TRUE]. Если команда дана для выстрела именно из турели (номера больше 0), то следует позаботиться чтобы цель была в зоне видимости данной турели (именно видимости, точнее турель должна быть лицом к объекту), расстояние значения не имеет, если направленность правильная то будет сделан выстрел и функция вернет [TRUE]. В случае если цель вне зоны видимости, выстрела не произойдет и возвращаемое значение будет [FALSE].
В таблице указаны соответствующие номерам турели
0 |
Центр (носовые) |
1 |
Носовая |
2 |
Кормовая |
3 |
Левая |
4 |
Правая |
5 |
Верхняя |
6 |
Нижняя |
Возвращаемые значения: TRUE (1) или FALSE (null)
@<RetVar/IF> <object> turn turret <turretid> to target <target>: timeout=<timeout> ms
Дает команду объекту <object>, навести орудийную башню <turretid> на цель <target>. Исполнять команду не дольше <timeout> мс. Турель пытается найти цель в зоне своей видимости. Эта инструкция может быть использована при создании процедуры управляющей турелью.
Структура процедуры должна быть следующей:
Возвращаемые значения:
FLRET_FIREFREE |
Команда выполнена турель наведена. |
FLRET_TIMEOUT |
Истекло указанное в timeout время. |
FLRET_INTERRUPTED |
Команда прервана другим скриптом. |
FLRET_NOCOMMANDS |
Ошибка. Неправильно указана турель, или объект. |
Обратите внимание, что эта команда также как и fire lasers on target, не учитывает расстояния до цели, и может вернуть FLRET_FIREFREE даже если вы находитесь в сотне километров от нее.
@<RetVar/IF> <ship> attack run on target <target>: timeout=<timeout>ms
Команда «подготовить корабль к атаке» на цель <target>. Получив эту команду корабль <ship> совершает подготовительные действия, как то: взлет со станции, сближение с целью и т.д., в течении времени <timeout>.
Структура процедуры атаки:
Возвращаемые значения:
FLRET_FIREFREE |
все готово для ведения огня по цели. |
FLRET_TIMEOUT |
Истекло указанное в timeout время. |
FLRET_INTERRUPTED |
Команда прервана другим скриптом. |
FLRET_BREAK |
Неверная цель. Цель не существует или не может быть атакована (цель находится в другом секторе, пристыкована к станции/транспорту и т.п.) |
FLRET_NOCOMMANDS |
Ошибка. Неправильно указан корабль <ship>. |
@<RetVar/IF> <ship> defensive move: type= <type>, intensity=<intensity> timeout <timeout> ms, avoid object=<object>|null
Команда кораблю совершить маневр уклонения (резкие ускорения, спирали, изменение курса). Параметр type на сегодняшний день не реализован, тип маневра прописан непосредственно в движке программы. Параметр intensity указывается в процентах от 0 до 100 (фактически, если 0 то маневр будет заключаться, в прямом отлете на максимальной скорости исполняя «бочку». Если добавлять интенсивности, то к бочке будут добавляться периодические изменения курса.)
Возвращаемые значения:
FLRET_INTERRUPTED |
Команда прервана другим скриптом. |
FLRET_NOCOMMANDS |
Маневр завершен, (вышло время timeout). |
null |
Если неправильно указан корабль <RefObj> |
@<RetVar/IF> <ship> move to ware object <ware> for collecting: timeout=<timeout>ms
Команда кораблю, «лететь к плавающему в космосе контейнеру с целью подобрать». После завершения, корабль будет находиться на расстоянии позволяющем приступить к подбору летающего контейнера, или стрельбе по нему. В место контейнера можно указать и корабль, тогда наш корабль <ship> полетит к указанному кораблю и попытается занять место рядом с ним (100-300 метров).
Возвращаемые значения:
FLRET_FIREFREE |
все готово занята позиция рядом с. <RefObj> |
FLRET_TIMEOUT |
Истекло указанное в timeout время.(не хватило времени) |
FLRET_INTERRUPTED |
Команда прервана другим скриптом. |
FLRET_BREAK |
Неверная цель. Цель не существует или находиться вне досягаемости (цель находится в другом секторе, пристыкована к станции/транспорту и т.п.) |
FLRET_NOCOMMANDS |
Ошибка. Неправильно указана объект <RefObj>. |
<RetVar/IF> <ship> catch ware object <ware>
Подобрать плавающий в космосе контейнер. Получив эту инструкцию корабль подберет летающий в космосе контейнер <ware>. Инструкция не осуществляет ни каких действий над самим кораблем, все что произойдет, это указанный контейнер будет удален из сектора, а в трюм корабля <ship> добавиться количество товара находившиеся в этом контейнере. Расстояние инструкция не учитывает, подбор будет осуществлен даже если корабль находится в сотне километров от контейнера.
Возвращает [TRUE] если подбор контейнера осуществлен, [FALSE] если нет. Также возвращает [FALSE] если неправильно указать object <Value>, (корабль, станция и т.п.)
@<RetVar/IF> <ship> move around <timeout> ms
Фактическое назначение этой функции, это бесцельный полет по кругу в течении указанного времени (например корабли не имеющие задания). Корабль полетит со скоростью половина от максимальной. Если это корабль, на котором игрок, то корабль укорачиваться от препятствий не будет (может запросто с чем-нибудь столкнуться) и по истечении указанного времени будет продолжать полет. Если это другой корабль, то от препятствия отвернет в сторону и полетит уже в другом направлении. По истечении указанного времени остановится.
Возвращаемые значения:
FLRET_INVAIDPARMS |
Неправильный объект <RefObj> (не корабль) |
FLRET_NOCOMMANDS |
Вышло время timeout, команда завершена |
@<RetVar/IF> <ship> escort ship <target>
Команда кораблю <ship> сопровождать корабль (следовать за)<target>. Эта инструкция не имеет временного ограничения и будет выполняться до бесконечности. Корабль получивший эту инструкцию отстыкуется, если он пристыкован, и будет следовать за сопровождаемым кораблем в пределах сектора. Скорость корабля будет выровнена со скоростью сопровождаемого корабля. Если сопровождаемый корабль будет уничтожен, перейдет в другой сектор или пристыкуется к станции, то команда будет прервана и вернет код FLRET_BREAK. В случае прерывания команды другим скриптом, управление не будет передано этой команде даже после завершения скрипта, для возвращения управления команде escort ship используется команда set follow mode [FALSE], которая помещается перед escort ship. Режим сопровождения будет снова запущен, после возврата из прервавшего выполнение скрипта (return).
Возвращаемые значения:
FLRET_INTERRUPTED |
Команда прервана другим скриптом. |
FLRET_BREAK |
Команда не может продолжить работу (сопровождаемый корабль покинул сектор, пристыковался к станции, уничтожен) |
FLRET_INVAIDPARMS |
Если неправильно указан корабль <RefObj> |
@<RetVar/IF> <ship> escort ship <target>: timeout= <timeout>ms
Тоже команда эскортирования, действия единичны предыдущей разница заключается в том, что устанавливается временное ограничение на исполнение. И соответственно появляется еще один код возврата FLRET_TIMEOUT, время отведенное на выполнение вышло.
<ship> set formation <formation>
Установить тип построения <formation> для всех кораблей сопровождающих корабль <ship>. Тип постарения задает специальная константа Formation.<тип построения>.
[Formation.Delta] |
0 |
|
[Formation.Line] |
1 |
|
[Formation.X] |
2 |
|
[Formation.XDelta] |
3 |
|
[Formation.BigShipEscort] |
3 |
|
[Formation.Pyramid] |
4 |
|
[Formation.Random] |
5 |
Случайное построение |
<ship> add to formation with leader <leadership>
Добавить корабль <ship> в построение с ведущим кораблем <leadership>. Корабль займет место в построении сопровождающих <leadership> кораблей. Также для этого корабля станут доступны сигналы поступающие для всего построения, то есть корабль будет реагировать на изменение обстановки согласно поступившему сигналу (см. разд. SCE=> «Сигналы»).
<ship> remove from any formation
Исключить корабль<ship> из всех построений.
<RetVar/IF> <ship> get formation leader
Запрос типа построения. Запрос может относится к любому кораблю <ship> состоящему в построении.
Возвращает тип построения или null если корабль не участвует в построении.
<RetVar>=<ship> get formation follower ships
Возвращает массив кораблей участвующих в построении. Если указанное судно <ship> не является участником построения или не существует самого построения то команда вернет null.
START <object> command <Object Command>: arg1=<Value1>, arg2=<Value2>, arg3=<Value3>, arg4=<Value4>
Выполняет команду, как если бы игрок выбрал ее в командном меню. Возможность указать четыре аргумента, если они требуются.
<object> send signal <Object Signal>: arg1=<Value1>, arg2=<Value2>, arg3=<Value3>, arg4=<Value4>
Послать объекту <object> сигнал, то есть запустить на объекте обработчик посланного сигнала <Object Signal> (см. разд. SCE=> «Сигналы»).
@<RetVar/IF> <ship> follow object <target> with precision <precision> m
Дать команду кораблю <ship> следовать к кораблю <target> на расстояние <precision>. В отличии от команды escort ship предназначенной для сопровождения и защиты корабля, эта команда более удобна для подготовительных действий для нападения. То есть, для сближения с кораблем <target> на расстояние <precision>. Эта команда тоже запускает корабли если они пристыкованы, после этого корабль на максимальной скорости движется к цели. После достижения необходимого расстояния, команда возвращает код FLRET_TARGETREACHED (Обратите внимание на то, что выполнив команду корабль продолжит двигаться с максимальной скоростью. Так что, если вы поставите вслед за командой follow object команду wait с задержкой секунд 5, то корабль может улететь достаточно далеко от объекта, прежде чем продолжиться выполнение скрипта). Расстояние указывается приблизительно, т.к. добиться идеальной точности очень трудно, да и не к чему. Если выполнение команды прервано другим скриптом, то для возврата управления этой команде (после выполнения скрипта) нужно использовать команду set follow mode [FALSE].
До того как корабль достигнет нужного расстояния до цели, прервать выполнение команды может только другой скрипт или ситуация когда достижение цели становится невозможным (корабль-цель покинул сектор, пристыковался, уничтожен). Эта команда эффективна для преследования быстрых кораблей, если целью не является очень быстрым кораблем, то желательно использовать follow …timeout <…>.
Возвращаемые значения:
FLRET_TARGETREACHED |
Цель достигнута, расстояние согласно precision |
FLRET_INTERRUPTED |
Команда прервана другим скриптом. |
FLRET_BREAK |
Команда не может продолжить работу (корабль-цель покинул сектор, пристыковался к станции, уничтожен) |
FLRET_INVAIDPARMS |
Если неправильно указан корабль <RefObj> |
@<RetVar/IF> <ship> follow <target> with precision <precision> m: timeout=<timeout>ms
Та же команда «лететь к объекту», все функциональные действия как в предыдущей команде. Добавлен параметр timeout указывающий количество времени в миллисекундах на выполнение. Все возвращаемые коды те же, и добавлен еще FLRET_TIMEOUT (время отведенное на выполнение команды вышло)
<object> set follow mode [TRUE]|[FALSE]
Устанавливает включенным или выключенным (TRUE|FALSE) режим сопровождения. Фактически наличие этой команды перед follow или escort обеспечивает возврат управления этим командам после их прерывания. Управление возвращается после возвращения из прерывающего скрипта. В чем отличие между включенным и выключенным режимом непонятно. Похоже работают одинаково.
<RetVar/IF> <ship> get follow mode
Возвращает [TRUE] если корабль <ship> сопровождает или движется к объекту и [FALSE] если нет.
<ship> set destination to <destination>
Установить назначение. Фактически только информационная команда, чтобы игрок мог понять, куда корабль направляется, просмотрев информацию по кораблю. Непосредственно к полету команда не привязана, например можно командой fly to … послать корабль в одно место, а destination указать другое. Более подробное рассмотрение в разделе «Особенности использования некоторых команд.» глава «Использование информативных команд»
<RetVar/IF> <ship> get destination
Получить информативное назначение корабля <ship>, то есть значение установленное командой из командного меню или командой set destination.
<ship> set attack target to <target>
Устанавливает информативное значение <target> в пункте «Атаковать», учтите что <ship> должен выполнять команду которая активируем этот пункт в информационных экранах.
<RetVar/IF> <ship> get attack target
Возвращает информативное значение атакуемого объекта для корабля <ship>. Возвращаемое значение может быть установлено командой из командного меню или командой set attack target.
@<RetVar/IF> <ship> move to position: x=<xcoordinate> y=<ycoordinate> z=<zcoordinate> with precision <precision> m
Двигаться объекту <ship> в точку с указанными координатами до тех пор, пока удаленность <ship> от этой точки не станет менее "точности" <precision>. Эту удаленность(точность) требуется указывать именно в игровых юнитах, а не метрах, не смотря на наличие m после этого параметра. Т.е. желаемую удаленность требуется сначала умножить на 222, а потом подставлять в данную команду.
(akm) http://www.elite-games.ru/conference/viewtopic.php?p=640741#640741
<object> set command: <Object Command>
Суть этой команды в том, чтобы установить информационные значения, отображаемые в инфо-объекта и в меню собственности, для объекта <object> (работает только если <object>=[THIS]). Эта команда относится к семейству информативных команд, то есть ее цель только информация и ни какого отношения к управлению действиями объекта. Команда отразит в инфо-корабля напротив пункта «Команда» текст связанный с этой командой, взятый из основного языкового файла со страницы 2010. Этот текст будет отображаться все время выполнения скрипта или до другой команды set command. Если в процессе работы скрипт вызывает другой скрипт в котором присутствует команда set command изменяющая текущее значение, то по возвращению управления вызывающему скрипту, начальное значение set command восстановлено не будет. Подробно о информационных командах в разделе «Особенности использования некоторых команд.» глава «Использование информативных команд»
<RetVar/IF> <object> get command
Возвращает команду установленную для объекта <object>. Это может быть команда данная объекту из командного меню или установленная командой set command.
<object> set command target: <target>
Это тоже информативная команда, дополняющая команду set command. Set command target позволяет дополнить информацию выводимую предыдущей командой в пункте «Команда», указанием цели <target> для команды. Следует обратить внимание на то, что эта команда работает только со встроенными командами в ScE Х2. Если вы попробуете использовать ее со свободными командами типа CUSTOM, SPECIAL и т.п., то цель команды не будет отражена.
Команда имеет таки же ограничения как и set command. Значение устанавливается только на время выполнения скрипта.
<RetVar/IF> <object> get command target
Возвращает цель установленную для объекта. Это может быть значение задаваемое командой из командного меню объекта или командой set command target.
<object> set command target2: <target2>
Некоторые команды имеют второстепенную цель. Например, команда покупать товар имеет две цели. Первая, это товар который покупать, а второе это станция на которой покупать. Вот станция на которой корабль будет покупать товар и является target2. При помощи этой команды можно задать это значение.
Команда имеет те же ограничения, что и команда set command.
<RetVar/IF> <object> get command target2
Возвращает второстепенную цель объекта, заданную командой выбранной из командного меню или установленного командой set command target2.
<retvar>= <ship> -> select new formation leader by: ship class=
[TRUE]|[FALSE] strength=[TRUE]|[FALSE] min.speed=[TRUE]|
[FALSE]
Этой командой можно автоматически выбрать нового лидера для корабля <ship>, в случае уничтожения предыдущего – например, обработав сигнал SIGNAL_KILLED. Вы можете указать критерии по которым будет отбираться лидер. Выбор можно сделать по классу корабля, по силе корабля или по минимальной скорости. Например: имеется патрульный скрипт где патрулирование осуществляет группа кораблей разного класса. В бою лидер группировки был уничтожен, что бы выбрать для корабля нового лидера из кораблей
<RetVar/IF> = <ship> -> has formation ships
Возвращает [TRUE] если корабль <ship> имеет сопровождение, и [FALSE] если сопровождения нет.
<retvar>= <ship> -> give formation leadership to <newleader>
Эта инструкция позволяет изменить лидера группы. Возвращает [TRUE] если удалось и [FALSE] если нет.
<RefObj> set tactical to <Var/Number>
<RetVar>=<RefObj> get tactical
Не используются.
<RetVar/IF> get player tracking aim
Возвращает объект, который находится в прицеле корабля игрока. Вернет null, если в прицеле ничего нет.
<RetVar/IF> <ship> is <target> in firing range of turret <turretid>
Эта инструкция проверяет находится ли <target> в зоне поражения турели <turretid>. Проверяется расстояние до цели и дальность стрельбы из оружия установленного на указанной турели. Также можно использовать для определения находится ли цель в зоне поражения из основных орудий, достаточно указать turreted=0.
Возвращаемые значения [TRUE] если цель доступна и [FALSE] если нет.
<RetVar>=<ship> find enemy in firing range of turret <turretid>
Найти врага в зоне поражения указанной турели <turretid> корабля <ship>. Если цель находиться в зоне поражения турели (расстояние зависит от установленного оружия, если на турели не установлены пушки, то вернет null) то инструкция вернет значение [TRUE], если не одна цель не найдена вернет значение [FALSE]. Цель выбирается из установок корабля (свой-чужой), так что учтите что врагами могут оказаться и не враги. Например, в начале игры из-за недостатка рейтинга все их объекты сплитов отражаются как чужой (красный цвет) хотя сами по себе они нейтральны к игроку. Если использовать эту инструкцию, то все объекты сплитов будут оцениваться как враги.
<object> set command: <Object Command> target=<target1> target2=<target2> par1=<Value> par2=<Value>
Эта команда объединяет в себе целый набор информативных команд таких как set command и set target … target2 и позволяет задать еще два дополнительных параметра par1 и par2. Например команда GET_WARE помещает в дополнительные параметры количество покупаемого товара, и максимальную цену.
<RetVar/IF> <ship> fire missile <missile> on <target>
Команда для <ship> запустить 1 ракету типа <missile> в цель <target>. Ракеты должны быть в трюме, но устанавливать их не обязательно, выстрелит и так.
<RetVar/IF> <ship> get current missile
Возвращает тип активных в данный момент ракет для корабля <ship>. Если нет установленных ракет возвращает null.
<RetVar/IF> <ship> find best missile for target <value>
Возвращает тип ракеты из тех ракет, что есть в трюме <ship>, лучшую с точки зрения компьютера, для поражения цели <target>.
<RetVar> = best missile type for target <target>
Возвращает тип ракеты, которая по мнению компьютера, лучше всего подходит для поражения цели <Value>.
<RetVar/IF> <ship> launch <dronecount> fight drones: protect me or attack target=<target>
Команда запускает <dronecount> Дронов (если они есть в трюме <ship>) для защиты или атаки. Если установить <target> равным 0, дроны осуществляют защиту <ship>. Если <target> корабль, то дроны будут атаковать.
<RetVar/IF> <ship> is missile <missile> ready to fire
Возвращает [TRUE] если корабль <ship> готов к выстрелу ракетой <missile> (то есть ракеты имеются), и [FALSE] если нет.
<RetVar/IF> <ship> should a missile be fired
Возвращает [TRUE] если вероятность попадания ракеты по текущей цели высока и [FALSE] если вероятность низка. Команда просто делает анализ, наличие ракет значения не имеет. В основном альтернативой этой инструкции является инструкция check, select fire missile.
<RetVar>=<ship> get fire missile probability
Возвращает заданную в процентах вероятность пуска ракет для объекта <ship>.
<RetVar>=<RefObj> get fire missile time difference in seconds
<RefObj> set fire missile time difference to <time> s
???
<ship> set fire missile probability to <probability>
Устанавливает вероятность пуска ракет <probability> процентах, для объекта <ship>.
<RetVar/IF> <ship> fits laser <laser> into turret <turret>
Проверяет возможно ли установить пушку <laser> в турель с номером <turret> корабля <ship>. Если возможно - выдает [TRUE], если нет – [FALSE]. Проверяется только возможность установки, соответственно наличие самих пушек не нужно. Если установить turret 0, то проверится возможность установки пушек как носовых орудий.
<RetVar>=<ship> get max. number of lasers in turret <turret>
Получить число лазеров в турели <turret> корабля <ship>. Также, если установить turret=0, то вернет количество носовых орудий.
<RetVar>=<ship> get laser type in turret <turret> at slot <slot>
Возвращает тип пушки установленной на корабле <ship>, на турели <turret>, в слоте <slot>. Нумерация слотов начинается с 0 и идет слева на право. Например, если turret=0 slot=0, то инструкция вернет тип пушки левого носового орудия.
<RetVar>=<ship> get number of turrets
Возвращает количество турелей имеющихся на корабле <ship>. Носовые орудия тоже учитываются.
<RetVar>=get range of missile type <missile>
Возвращает радиус поражения (в метрах) ракеты типа <missile>.
<RetVar>=<ship> find nearest missile aiming to me
Инструкция осуществляет поиск ближайшей запущенной ракеты, наведённой на объект <object>. Данную инструкцию можно использовать только для поиска ракет. Возвращает указатель на ракету или null, если такой ракеты не найдено.
<RetVar/IF> <khaakship> decouple ships
Хаакский кластер <khaakship> после этой команды разваливается на отдельные корабли. Возвращает [TRUE] если кластер распался, [FALSE] если нет.
<RetVar/IF> <khaakship>is decoupled ships leader
Возвращает [TRUE] если хаакский корабль <khaakship> является лидером группы хаакских кораблей после распадения кластера и соответственно [FALSE] если нет.
<RetVar/IF> <ship>get current galaxy flight timestep in ms
Эта инструкция возвращает значение полетного таймстепа для сектора в котором находиться корабль <ship>. Таймстеп - это задержка между обновлениями ситуации в секторах. В секторе за которым идет наблюдение (просмотр карты сектора) таймстеп составляет 5000 миллисекунд, в других секторах (сектора за которыми в данное время нет наблюдения) таймстеп будет составлять 30000 миллисекунд.
<RetVar/IF> <ship>is landing
Эта инструкция проверяет, выполняет ли корабль в данный момент процедуру стыковку. Возвращаемые значения [TRUE] если корабль в данный момент стыкуется и [FALSE] если нет. Процедурой стыковки корабля считается завершающий момент (маневрирование перед входом в док и зам процесс входа), так называемая «завершающая стадия». Еще одна особенность это то, что если данная инструкция застанет корабль в момент входа во врата, то возвращаемое значение тоже будет [TRUE].
<RetVar/IF> <ship> is starting
Возвращает [TRUE] если корабль в данный момент взлетает со станции или носителя и [FALSE] если нет.
<RetVar/IF> <ship> use jump drive: target=<target>
Перемещение корабля с помощью прыжкового двигателя. <target> - это либо указатель на врата, либо на сектор. Если <target> – врата, то <ship> после прыжка появится из этих врат, если сектор, то появится в центре сектора. При выполнении этой команды на кораблях принадлежащих игроку, должен быть установлен прыжковый двигатель и в трюме должно быть необходимое для прыжка кол-во батареек. Для кораблей AL наличие прыжкового двигателя и батареек не обязательно.
Если требуется позиционировать прыжок в заданные координаты, то сразу после использования команды use jump drive следующей строкой должна идти команда set position с указанием необходимых координат. И обратите внимание, что для позиционированного прыжка, сам прыжок должен выполняться не во врата, а в центр сектора. Т.е. <target> для команды use jump drive должен быть сектор.
Команда возвращает один из двух FLRET кодов:
FLRET_WARPED |
Прыжок совершен удачно |
FLRET_ERROR |
прыжок не удался (нет джампдрайва или батареек) |
<RetVar/IF> <ship> needs jamp drive enerjy for jamp to:sector=<sector>
Возвращает количество батареек необходимых кораблю <ship>, для прыжка в сектор <sector>.
<RetVar/IF> <ship>check, select and fire missele on <target>
Эта комплексная команда для стрельбы ракетами, объединяющая в себе несколько функций. Выполняет следующие действия: проверяет доступна ли цель <target> для поражения ракетой, выбирает ракету, запускает ракету.
Возвращает [TRUE] если выстрел произведен, [FALSE] если нет.
<RetVar/IF> <object>add big ship <bigship>
Проверяет имеется ли техническая возможность у объекта <object> принять большой корабль (M6, M2, M1, TL). Имеется в виду рассчитан ли док корабля, на стыковку с большими кораблями.
<RetVar/IF> <object>has a free big ship dock slot
Возвращает [TRUE] если стыковочный док для больших кораблей объекта <object> свободен и может принять корабль, [FALSE] если нет.
<RetVar/IF> <object>can be controlled by race logic
Каждый созданный в игре объект не принадлежащий игроку, подключается ко встроенной логике расы владельца, которая и берет дальнейшее управление объектом в свои руки. Эта инструкция проверяет подключен ко встроенной расовой логике объект или нет.
Возвращаемые значения [TRUE] подключен, [FALSE] если нет.
<object>set race logic control enabled to [TRUE]|[FALSE]
При помощи этой инструкции можно подключить или отключить объект принадлежащий другой расе от встроенной расовой логики. Это удобно использовать для получения контроля над объектом в AL.plugin.
<RetVar/IF> <object>can execute StartAction
В ScE для каждого вновь созданного объекта предусмотрена команда которая дается объекту по умолчанию при его старте после создания, в отличии от расовой логики, стартовые действия объекта зависят только от его класса и расы владельца. В таблице указанны команды, которые получают вновь созданные корабли по умолчанию.
Класс |
Игрок |
Ксеноны, пираты, хааки |
Остальные |
|
M0 |
COMMAND_KILL_ENEMIES |
|||
M1 |
COMMAND_KILL_ENEMIES |
|||
M2 |
COMMAND_KILL_ENEMIES |
|||
M6 |
COMMAND_KILL_ENEMIES |
|||
M3 |
COMMAND_NONE, если имеется лидер, то COMMAND_PROTECT (защищать лидера), если атакован то COMMAND_ATTACK (атаковать агрессора) |
COMMAND_KILL_ENEMIES |
COMMAND_RETURN_HOME |
|
M4 |
COMMAND_NONE, если имеется лидер, то COMMAND_PROTECT (защищать лидера), если атакован то COMMAND_ATTACK (атаковать агрессора) |
COMMAND_KILL_ENEMIES |
COMMAND_RETURN_HOME |
|
M5 |
COMMAND_NONE, если имеется лидер, то COMMAND_PROTECT (защищать лидера), если атакован то COMMAND_ATTACK (атаковать агрессора) |
COMMAND_KILL_ENEMIES |
COMMAND_RETURN_HOME |
|
TS |
COMMAND_NONE |
|
COMMAND_DOCKAT приземлиться на ближайшей верфи |
|
GO |
COMMAND_NONE |
|
COMMAND_PREACH |
|
UFO |
COMMAND_PREACH |
|||
SPACEFLY |
COMMAND_FOLLOW |
|||
Все остальные |
COMMAND_NONE |
|||
Эта команда возвращает получил ли новый объект стартовую команду. [TRUE] получил, [FALSE] нет.
<object> set StartAction enabled to [TRUE]|[FALSE]
Инструкция позволяет указать ScE следует или нет давать стартовую команду вновь созданному кораблю. [TRUE] вновь созданный объект получит стартовую команду, [FALSE] объект не получит никакой команды.
<ship>set as player wingman: [TRUE]|[FALSE]
Сделать корабль игрока ведущим для корабля <ship>. Рядом с именем корабля появиться значок «W». Корабль <ship> получит приказ защищать корабль игрока, и будет сопровождать вас везде, атаковать любых агрессоров, а также тех на кого нападете вы.
<RetVar/IF> <ship>is player wingman
Возвращает [TRUE] если корабль <ship> является ведомым для корабля игрока и соответственно [FALSE] если нет.
Оглавление | Сообщение об ошибках | Ваше мнение о проекте | E-Mail автору |