Перейти к основному содержимому

Как использовать скрипт для удаления случайного предмета из инвентаря игрока, ис...

Вопрос​

Как использовать скрипт для удаления случайного предмета из инвентаря игрока, исключая важные предметы?

Ответ​

Для удаления случайного предмета из инвентаря игрока, но исключения важных предметов, можно использовать следующий скрипт:

```lua
function remove_random_item()
local important_objects = {
-- Здесь предметы, которые нельзя удалять
["bolt"] = true,
["device_pda"] = true,
}
local tbl = {}
db.actor:iterate_inventory(function(dummy, obj)
if obj and not important_objects[obj:section()]
then table.insert(tbl, obj:id())
end
end)
local rnd = tbl[math.random(#tbl)]
local sobj = alife():object(rnd)
if sobj then
news_manager.relocate_item(db.actor, "out", sobj:section_name())
alife():release(sobj, true)
end
end

Сохраните этот код в файл с расширением .lua и подключите его через диалог или другой механизм моддинга. Убедитесь, что вы добавили все необходимые предметы в таблицу important_objects, чтобы избежать их удаления.