Divergent/mods/Redone Collection/gamedata/scripts/redone_remove_labx16_object...

41 lines
1.0 KiB
Plaintext

local HI = has_alife_info
local GI = give_info
function NI(str)
return not (has_alife_info(str))
end
local storage_data = {}
function clean_mess(actor,smart,p)
if (HI("remove_objects")) then
return
end
local zone = db.zone_by_name["yan_attack_zombies_space_restrictor"]
if (smart and zone) then
local section_list = {
["physic_destroyable_object"] = true,
["explosive_fuelcan"] = true,
}
for id = 1,65534 do
local se = alife():object(id)
if (se and section_list[se:section_name()] and simulation_objects.is_on_the_same_level(se,smart) and zone:inside(se.position)) then
safe_release_manager.release(se)
printf("Release [%s]",se:name())
end
end
GI("remove_objects")
end
end
function save_state(m_data)
m_data.gameplay_labx16_redone_storage_data = storage_data
end
function load_state(m_data)
storage_data = m_data.gameplay_labx16_redone_storage_data or {}
end
function on_game_start()
RegisterScriptCallback("save_state",save_state)
RegisterScriptCallback("load_state",load_state)
end