Тайники — различия между версиями
RayTwitty (обсуждение | вклад) |
RedPython (обсуждение | вклад) (→Тайники) |
||
Строка 29: | Строка 29: | ||
В ЧН тайники такого вида наполняются скриптом (например, когда на них дадут наводку). Соответственно в их custom data ничего указывать не нужно. | В ЧН тайники такого вида наполняются скриптом (например, когда на них дадут наводку). Соответственно в их custom data ничего указывать не нужно. | ||
+ | После того, как спавн-объект тайника добавлен на карту и переименован во что-то осмысленное, например, '''esc_backpack''', нужно зарегистрировать его в файле типа '''configs/misc/treasure_escape.ltx''': | ||
+ | <syntaxhighlight lang="ini">[list_treasure_escape] | ||
+ | esc_backpack | ||
+ | |||
+ | [esc_backpack] | ||
+ | target = esc_backpack ; имя тайника в LE | ||
+ | name = esc_backpack_name ; заголовок описания в XML | ||
+ | description = esc_backpack_descr ; тело описания в XML | ||
+ | items = af_cristall, 1, af_night_star, 1 ; содержимое тайника | ||
+ | community = stalker ; при обыске тела сталкера какой фракции выдавать тайник | ||
+ | condlist = {=actor_on_level(escape)} true, false ; условия выдачи тайника</syntaxhighlight> | ||
+ | Затем нужно добавить описание тайника в configs\text\rus\st_treasures.xml: | ||
+ | <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="windows-1251" ?> | ||
+ | <string_table> | ||
+ | <string id="esc_house_of_rising_bed_backpack_name"> | ||
+ | <text>Бандитская нычка</text> | ||
+ | </string> | ||
+ | <string id="esc_house_of_rising_bed_backpack_descr"> | ||
+ | <text>Где-то здесь сховал награбленное матёрый бандит, порешивший сталкера-одиночку.</text> | ||
+ | </string> | ||
+ | </string_table></syntaxhighlight> | ||
+ | Теперь после обыска тела сталкера с некоторой долей вероятности выпадет тайничок. | ||
== Ящики с сюрпризом == | == Ящики с сюрпризом == |
Версия 10:29, 26 февраля 2021
Тайники бывают двух видов:
- собственно тайники (inventory_box)
- ящики с сюрпризом (drop_box)
Первые состоят из двух элементов: статический меш (ящик, электрошкаф, пень и т.п.) и spawn-объекта inventory_box.
Вторые представляют собой разрушаемый объект, из обломков которого выпадают ценные предметы.
Тайники
Чтобы добавить тайник, нужно поставить Spawn -> devices -> inventory_box, и в его custom data указать примерно следующее:
[logic]
cfg = scripts\treasure_inventory_box.ltx
Если ничего не указывать, то тайник останется пуст. Однако можно добавить его в опции ближайшего смарттеррейна:
[smart_terrain]
type = esc_lager
capacity = 13
squad = 1
groups = 5
respawn = esc_respawn_inventory_box ; здесь
И в опции респавна:
[respawn]
respawn_section = wpn_pm,2,vodka,2,medkit,1,energy_drink,2,ammo_9x18_fmj,3
idle_spawn = -1
parent = 2000
item_spawn = true
max_count = 7
В ЧН тайники такого вида наполняются скриптом (например, когда на них дадут наводку). Соответственно в их custom data ничего указывать не нужно.
После того, как спавн-объект тайника добавлен на карту и переименован во что-то осмысленное, например, esc_backpack, нужно зарегистрировать его в файле типа configs/misc/treasure_escape.ltx:
[list_treasure_escape]
esc_backpack
[esc_backpack]
target = esc_backpack ; имя тайника в LE
name = esc_backpack_name ; заголовок описания в XML
description = esc_backpack_descr ; тело описания в XML
items = af_cristall, 1, af_night_star, 1 ; содержимое тайника
community = stalker ; при обыске тела сталкера какой фракции выдавать тайник
condlist = {=actor_on_level(escape)} true, false ; условия выдачи тайника
Затем нужно добавить описание тайника в configs\text\rus\st_treasures.xml:
<?xml version="1.0" encoding="windows-1251" ?>
<string_table>
<string id="esc_house_of_rising_bed_backpack_name">
<text>Бандитская нычка</text>
</string>
<string id="esc_house_of_rising_bed_backpack_descr">
<text>Где-то здесь сховал награбленное матёрый бандит, порешивший сталкера-одиночку.</text>
</string>
</string_table>
Теперь после обыска тела сталкера с некоторой долей вероятности выпадет тайничок.
Ящики с сюрпризом
Представляют собой обычный разрушаемый объект с необычной custom data.
Добавляются так: Spawn -> physics -> destroyable_object, в свойствах которого указыватся подходящий visual и custom data примерно такого вида:
; для ТЧ
[drop_box]
community = small_box_army
items = ammo_5.45x39_fmj, 3
; для ЧН
[logic]
active = nil
[drop_box]
items = energy_drink,1,conserva,1
community — устанавливает случайный набор предметов, который будет заспавнен при разрушении объекта. По умолчанию установлена секция def_box, которая ничего не спавнит.
items — задает набор предметов, которые будут гарантировано заспавнены при разрушении объекта. Указываются секции предметов и их количество.