Как прописать функцию check_used_item(obj) в actor_binder:on_item_take и застави...
Вопрос
Как прописать функцию check_used_item(obj) в actor_binder:on_item_take и заставить её работать?
Ответ
Для того чтобы функция check_used_item(obj) начала корректно работать, нужно следующим образом изменить код:
1. В файле bind_stalker.script пропишите следующую строку в функции actor_binder:on_item_take (obj):
```lua
xr_effects.check_used_item(obj)
- Создайте или убедитесь, что файл check_used_item.lua находится в директории gamedata\scripts и содержит правильный код для проверки предметов:
function on_item_take(item)
if item:section() == separator then return end
if (inventory_open == false) then
if (separator_spawned == true) then
db.actor:inventory_for_each(del_separator)
separator_spawned = false
end
belt_need_update = true
end
end
- Создайте файл check_used_item.lua и добавьте в него следующий код для проверки предметов:
function check_used_item(obj)
local info = nil
local sect = obj:section()
if sect == "z1" then
db.actor:give_info_portion("have_a_pda")
end
end
- Пропишите вызов функции check_used_item(obj) в actor_binder:on_item_take (obj), как было указано в шаге 1.
После выполнения этих шагов функция check_used_item(obj) должна корректно проверять предметы и выдавать соответствующие инфопорции.