mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-26 14:31:59 +01:00
Refactored movement observable away (#20083)
Refactored movement observable away, use only the signal. Some tweaks to the signal.
This commit is contained in:
@@ -78,18 +78,18 @@ This is /obj/machinery level code to properly manage power usage from the area.
|
||||
/obj/machinery/Initialize(mapload, d = 0, populate_components = TRUE, is_internal = FALSE)
|
||||
internal = is_internal
|
||||
REPORT_POWER_CONSUMPTION_CHANGE(0, get_power_usage())
|
||||
GLOB.moved_event.register(src, src, PROC_REF(update_power_on_move))
|
||||
RegisterSignal(src, COMSIG_MOVABLE_MOVED, PROC_REF(update_power_on_move))
|
||||
power_init_complete = TRUE
|
||||
. = ..()
|
||||
|
||||
// Or in Destroy at all, but especially after the ..().
|
||||
/obj/machinery/Destroy()
|
||||
GLOB.moved_event.unregister(src, src, PROC_REF(update_power_on_move))
|
||||
UnregisterSignal(src, COMSIG_MOVABLE_MOVED)
|
||||
REPORT_POWER_CONSUMPTION_CHANGE(get_power_usage(), 0)
|
||||
. = ..()
|
||||
|
||||
/obj/machinery/proc/update_power_on_move(atom/movable/mover, atom/old_loc, atom/new_loc)
|
||||
area_changed(get_area(old_loc), get_area(new_loc))
|
||||
/obj/machinery/proc/update_power_on_move(atom/movable/mover, atom/old_loc, dir, forced, list/old_locs)
|
||||
area_changed(get_area(old_loc), get_area(src))
|
||||
|
||||
/obj/machinery/proc/area_changed(area/old_area, area/new_area)
|
||||
if(old_area == new_area)
|
||||
|
||||
@@ -31,9 +31,6 @@
|
||||
|
||||
/obj/singularity/energy_ball/Destroy()
|
||||
walk(src, 0) // Stop walking
|
||||
if(orbiting && istype(orbiting.orbiting, /obj/singularity/energy_ball))
|
||||
var/obj/singularity/energy_ball/EB = orbiting.orbiting
|
||||
EB.orbiting_balls -= src
|
||||
|
||||
for(var/ball in orbiting_balls)
|
||||
var/obj/singularity/energy_ball/EB = ball
|
||||
@@ -257,10 +254,6 @@
|
||||
. = ..()
|
||||
|
||||
/obj/singularity/energy_ball/stop_orbit()
|
||||
if (orbiting && istype(orbiting.orbiting, /obj/singularity/energy_ball))
|
||||
var/obj/singularity/energy_ball/orbitingball = orbiting.orbiting
|
||||
orbitingball.orbiting_balls -= src
|
||||
orbitingball.dissipate_strength = orbitingball.orbiting_balls.len
|
||||
. = ..()
|
||||
if (!loc && !QDELETED(src))
|
||||
qdel(src)
|
||||
|
||||
Reference in New Issue
Block a user