Как выдать инфопоршень при поднятии артефакта?
Вопрос
Как выдать инфопоршень при поднятии артефакта?
Ответ
Для выдачи инфопоршня при поднятии артефакта, можно использовать следующий подход:
1. В скрипте `bind_stalker.script` добавьте вызов функции в метод `on_item_take`, который проверяет, является ли объект артефактом:
```lua
function actor_binder:on_item_take(obj)
if isArtefact(obj) then
af_info.check_info(obj)
end
end
- Создайте файл скрипта
af_info.scriptс необходимыми функциями для выдачи информации:
info_by_section = {
af_fuzz_kolobok = kolobok_info,
af_medusa = medusa_info,
af_gold_fish = gold_fish_info,
}
function check_info(obj)
if not obj then return end
local info = info_by_section[obj.section and obj:section() or obj.section_name and obj:section_name()]
if not info then return end
if not has_alife_info(info) then
give_info(info)
-- log(string.format("info %s given", info))
end
end
- Добавьте логи, чтобы проверить выполнение функций, например:
function check_info(obj)
if not obj then return end
local info = info_by_section[obj.section and obj:section() or obj.section_name and obj:section_name()]
if not info then return end
if not has_alife_info(info) then
give_info(info)
-- log(string.format("info %s given", info))
end
end
- Убедитесь, что у вас есть необходимые функции
has_alife_info,give_infoи другие поддерживаемые вами функции для работы с информацией об объектах.