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

Как решить проблему с повторным спавном предметов НПС?

Вопрос

Как решить проблему с повторным спавном предметов НПС?

Ответ

Проблема может быть связана с тем, что метод load не вызывается для объекта motivator_binder. Для исправления этой проблемы можно добавить функцию OnSaveGame и OnLoadGame в класс motivator_binder. Также следует убедиться, что self.spawned_items правильно сохраняется и загружается при перезагрузке игры. Пример кода:

```lua
function motivator_binder : __init ( obj )
super ( obj )
self . spawned_items = false
end

function motivator_binder : net_spawn ( sobject )
if not self . spawned_items then
self . spawned_items = true -- тут происходит спавн предметов
end
end

function motivator_binder : OnSaveGame ( packet )
packet: w_bool ( self . spawned_items )
end

function motivator_binder : OnLoadGame ( reader )
self . spawned_items = reader: r_bool ()
end

Эти функции позволят правильно сохранять и загружать состояние объекта motivator_binder.