32 lines
1.3 KiB
Text
32 lines
1.3 KiB
Text
class "se_artefact" (cse_alife_item_artefact)
|
|
|
|
function se_artefact:__init (section) super (section)
|
|
end
|
|
|
|
|
|
function se_artefact:on_register()
|
|
cse_alife_item_artefact.on_register(self)
|
|
-- Ïðîâåðÿåì êàñòîìäàòó îáüåêòà íà íàëè÷èå ñòîðè àéäè.
|
|
story_objects.check_spawn_ini_for_story_id(self)
|
|
end
|
|
|
|
function se_artefact:on_unregister()
|
|
unregister_story_object_by_id(self.id)
|
|
cse_alife_item_artefact.on_unregister(self)
|
|
end
|
|
--------------------
|
|
function se_artefact:can_switch_offline ()
|
|
-- printf("id [%s] can_switch_offline called, can it [%s]", tostring(self.id), tostring(cse_alife_item_artefact.can_switch_offline (self)))
|
|
if alife():actor() and (alife():actor().position:distance_to(self.position) <= 150) then
|
|
-- printf("af_id [%s] can not go offline, distance [%s]", tostring(self.id), tostring(db.actor:position():distance_to(self.position)))
|
|
return false
|
|
end
|
|
-- printf("af_id [%s] can go offline, distance [%s]", tostring(self.id), tostring(db.actor:position():distance_to(self.position)))
|
|
return cse_alife_item_artefact.can_switch_offline (self)
|
|
end
|
|
--------------------
|
|
function se_artefact:can_switch_online ()
|
|
-- printf("id [%s] can_switch_online called, can it [%s]", tostring(self.id), tostring(cse_alife_item_artefact.can_switch_online (self)))
|
|
return cse_alife_item_artefact.can_switch_online (self)
|
|
end
|
|
--------------------
|