---
title: Mission Director: cues и события
summary: Структура MD-скрипта, повторяемые обработчики и причины, по которым cue не срабатывает.
section: scripting
kind: guide
status: example
tags: ["md","cue","events","Mission Director","instantiate"]
sources: ["https://wiki.egosoft.com/X%20Rebirth%20Wiki/Modding%20support/Mission%20Director%20Guide/"]
---
## Структура скрипта
MD хранит обработчики внутри `mdscript` → `cues` → `cue`. Действия находятся в `actions`. Cue без условий подходит для короткой инициализации.
```xml
```
Это самостоятельная учебная заготовка. Переменная принадлежит контексту cue; подробнее - [переменные и области видимости](wiki:md-variables).
## Обработчик события
Для повторяющихся UI-событий используется следующий шаблон. Фрагмент размещается внутри `cues`:
```xml
```
`instantiate="true"` позволяет обрабатывать повторяющиеся события отдельными экземплярами. Не сохраняйте изменяемые данные разных запросов в общей переменной без явной причины.
## Условие без события
При `check_value` без события задайте режим проверки, например `checkinterval` или `onfail`, согласно контракту cue. В проекте отсутствие режима прошло XSD, но вызвало отказ парсера игры.
Не используйте `return` как универсальный выход из обычного cue: в нашем сценарии X4 9.00 это было отвергнуто движком. Для раннего ограничения действий использовались условные блоки; возврат результата оставался внутри соответствующей library.
## Отладка
Отделяйте три вопроса: загрузился ли файл, пришло ли событие, произошёл ли эффект. Одна строка в логе отвечает только на тот вопрос, для которого её поставили.
См. [мост Lua ↔ MD](wiki:md-lua-bridge) и [проверку поведения в игре](wiki:testing).