Значение#
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. Ограничения базового типа продолжают действовать.
Пример и результат#
<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 |