Функции для работы с группировками
Материал из S.T.A.L.K.E.R. Inside Wiki
Содержание
- 1 Функции эффектов
- 2 Функции условий
- 2.1 smart_captured(имя_смарта:имя_смарта:имя_смарта…)
- 2.2 science_level(уровень_науки)
- 2.3 wealth_level(уровень_богатства)
- 2.4 squad_quantity(количество_отрядов)
- 2.5 smart_quantity(количество_лагерей)
- 2.6 smart_captured_by_faction(имя_смарта:имя_группировки)
- 2.7 squad_exist(имя_отряда)
- 2.8 squad_in_zone(идентификатор_отряда:имя_спейс_рестриктора)
Функции эффектов
create_squad(имя_отряда:имя_смарта)
Создаёт в смарте с именем имя_смарта отряд с именем имя_отряда, параметры которого описаны в файле локальная_папка_аддона\gamedata\configs\misc\squad_descr.ltx. Отряд описывается в этом файле как:
[имя_отряда] faction = имя_группировки npc = спаун-секция_представителя_группировки, спаун-секция_представителя_группировки... target_smart = {кондлист} имя_целевого_смарта:имя_целевого_смарта, {кондлист} имя_целевого_смарта:имя_целевого_смарта... spawn_point = точка_появления
имя_отряда – может быть любым, лишь бы оно совпадало в файле настроек отрядов и в вызове функции.
имя_группировки – группировка, которой принадлежит создаваемый отряд (можно взять из файла game_relations.ltx).
спаун-секция_представителя_группировки – имя секции из файла spawn_sections.ltx, задаёт одного из бойцов отряда. Возможно задать до пяти бойцов (через запятую).
target_smart – указание лагерей, в который отправится отряд. Возможно (через двоеточия) указать отряду последовательность лагерей, которые, один за другим, он должен посетить. Если следующий лагерь не указан – отряд останется удерживать нынешний лагерь. Если вместо следующего лагеря стоит nil, то отряд уйдёт под контроль симуляции. В этом параметре возможно использование кондлиста, например:
{+info_test} smart_1:smart_2, smart_3:nil
То есть, если выдан инфопоршн info_test, то отряд пойдёт в smart_1, а потом – в smart_2, где и останется, иначе отряд пойдёт в smart_3, а по его достижению уйдёт под контроль симуляции.
точка_появления – (опционально) имя пути, в нулевой точке которого появится отряд.
remove_squad(имя_отряда)
Уничтожает отряд с именем имя_отряда, которое можно взять из файла локальная_папка_аддона\gamedata\configs\misc\squad_descr.ltx.
Функции условий
smart_captured(имя_смарта:имя_смарта:имя_смарта…)
Принадлежит ли группировке лагерь с именем имя_смарта. Можно указать несколько лагерей через двоеточие. Только для использования в файле настроек группировки.
science_level(уровень_науки)
Не меньше ли у группировки уровень науки, чем уровень_науки. Только для использования в файле настроек группировки.
wealth_level(уровень_богатства)
Не меньше ли у группировки уровень богатства, чем уровень_богатства. Только для использования в файле настроек группировки.
squad_quantity(количество_отрядов)
Есть ли у группировки количество отрядов, не меньшее чем количество_отрядов. Эта функция пока неоптимальна, потому часто её использовать не следует. Только для использования в файле настроек группировки.
smart_quantity(количество_лагерей)
Есть ли у группировки количество лагерей, не меньшее чем количество_лагерей. Эта функция пока неоптимальна, потому часто её использовать не следует. Только для использования в файле настроек группировки.
smart_captured_by_faction(имя_смарта:имя_группировки)
Принадлежит ли группировке с именем имя_группировки лагерь с именем имя_смарта.
squad_exist(имя_отряда)
Существует ли отряд с именем имя_отряда. Имя можно взять из файла локальная_папка_аддона\gamedata\configs\misc\squad_descr.ltx.
squad_in_zone(идентификатор_отряда:имя_спейс_рестриктора)
Находится ли отряд идентификатор_отряда в спейс-рестрикторе имя_спейс_рестриктора.