Значение#

lvalueexpression: Выражение, обозначающее место для записи результата, например переменную MD. Это адрес назначения, а не возвращаемое значение Lua.

Тип XSD ограничивает XML, а не объявляет результат Lua или тип полезной нагрузки event.param. Прохождение схемы не доказывает игровой эффект.

Структура схемы#

libraries/common.xsd

Свойство Значение
Конструкция restriction
Базовый тип xs:string
Ограничение Значение
pattern *[$][a-zA-Z0-9_]+ *
pattern *[A-Za-z_$(]([A-Za-z0-9_$!?@=<>,.+\-*/%\^(){}\[\] ]|(#?'([^'\\]|\\.)*'))*\. *((\{([A-Za-z0-9_$!?@=<>,.+\-*/%\^(){}\[\] ]|(#?'([^'\\]|\\.)*'))+\})|([$][a-zA-Z0-9_]+)|(last)) *
pattern *(stat|userdata) *\. *[a-zA-Z_][a-zA-Z0-9_]* *

restriction уточняет базовый тип; union разрешает один из вариантов; list описывает элементы, разделённые пробелами. Значения enumeration одного ограничения являются альтернативами. pattern использует регулярные выражения XML Schema, а не Lua или JavaScript. Ограничения базового типа продолжают действовать.

Пример и результат#

XML
<set_value name="$Count" exact="3" />

Что произойдёт: После set_value переменная $Count содержит 3. Печати в журнал нет.

Переменные объектов и групп должны быть заранее подготовлены в подходящем контексте MD / AI. Это учебные фрагменты, а не готовая миссия.

Где используется#

Элемент Атрибут Схема
add_actor_to_room result libraries/common.xsd
add_cargo result libraries/common.xsd
assign_control_entity result libraries/common.xsd
assign_hired_actor success libraries/common.xsd
assign_hired_actor failed libraries/common.xsd
can_safely_extend_build_plot result libraries/common.xsd
check_any counter libraries/aiscripts.xsd
check_any counter libraries/md.xsd
create_group groupname libraries/common.xsd
create_loadout result libraries/common.xsd
create_trade_computer result libraries/common.xsd
do_all counter libraries/aiscripts.xsd
do_all counter libraries/md.xsd
do_for_each counter libraries/aiscripts.xsd
do_for_each name libraries/aiscripts.xsd
do_for_each valuename libraries/aiscripts.xsd
do_for_each counter libraries/md.xsd
do_for_each name libraries/md.xsd
do_for_each valuename libraries/md.xsd
drop_cargo groupname libraries/common.xsd
drop_cargo wares libraries/common.xsd
drop_cargo amounts libraries/common.xsd
find_closest_resource zone libraries/common.xsd
find_closest_resource sector libraries/common.xsd
find_closest_resource distance libraries/common.xsd
find_closest_resource position libraries/common.xsd
find_closest_resource resourcearea libraries/common.xsd
find_resource_area name libraries/common.xsd
find_sector_in_range distances libraries/common.xsd
get_loadout result libraries/common.xsd
get_ship_definition macro libraries/common.xsd
get_ship_definition reference libraries/common.xsd
launch_countermeasures result libraries/common.xsd
move_order result libraries/common.xsd
play_cutscene result libraries/common.xsd
remove_cargo result libraries/common.xsd
reserve_build_plot result libraries/common.xsd
result killed libraries/common.xsd
result module libraries/common.xsd
result surfaceelement libraries/common.xsd
result sequence libraries/common.xsd
result removed libraries/common.xsd
result cost libraries/common.xsd
result context libraries/common.xsd
result position libraries/common.xsd
result room libraries/common.xsd
result tags libraries/common.xsd
result total libraries/common.xsd
result hullshield libraries/common.xsd
result hullonly libraries/common.xsd
result shieldonly libraries/common.xsd
result hullnoshield libraries/common.xsd
result shielddisruption libraries/common.xsd
result trader libraries/common.xsd
result tradepartner libraries/common.xsd
transfer_money result libraries/common.xsd

Все типы схем · Типы значений Lua / MD