From 6c465c84dc779cb6d94691eba2156f2e24feb840 Mon Sep 17 00:00:00 2001 From: AffectedArc07 Date: Tue, 16 Jun 2020 14:39:58 +0100 Subject: [PATCH] Use onTransitZ --- code/game/atoms_movable.dm | 1 - .../mission_code/UO71-terrorspiders.dm | 22 +++++++------------ 2 files changed, 8 insertions(+), 15 deletions(-) diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index 908fa397c06..70926d7ba2b 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -278,7 +278,6 @@ return 1 /atom/movable/proc/onTransitZ(old_z,new_z) - SEND_SIGNAL(src, COMSIG_MOVABLE_Z_CHANGED, old_z, new_z) for(var/item in src) // Notify contents of Z-transition. This can be overridden if we know the items contents do not care. var/atom/movable/AM = item AM.onTransitZ(old_z,new_z) diff --git a/code/modules/awaymissions/mission_code/UO71-terrorspiders.dm b/code/modules/awaymissions/mission_code/UO71-terrorspiders.dm index f396b57e3ee..8f562846e87 100644 --- a/code/modules/awaymissions/mission_code/UO71-terrorspiders.dm +++ b/code/modules/awaymissions/mission_code/UO71-terrorspiders.dm @@ -191,31 +191,25 @@ origin_tech = null selfcharge = 1 can_charge = 0 - var/inawaymission = TRUE + // Selfcharge is enabled and disabled, and used as the away mission tracker + selfcharge = TRUE /obj/item/gun/energy/laser/awaymission_aeg/Initialize(mapload) . = ..() - RegisterSignal(src, list(COMSIG_MOVABLE_Z_CHANGED), .proc/updateZ) // Force update it incase it spawns outside an away mission and shouldnt be charged - updateZ() + onTransitZ(new_z=loc.z) -/obj/item/gun/energy/laser/awaymission_aeg/process() - // Only call the self-recharge proc if inside an away mission - if(inawaymission) - ..() - -/obj/item/gun/energy/laser/awaymission_aeg/proc/updateZ() - var/turf/my_loc = get_turf(src) - if(is_away_level(my_loc.z)) +/obj/item/gun/energy/laser/awaymission_aeg/onTransitZ(old_z, new_z) + if(is_away_level(new_z)) if(ismob(loc)) to_chat(loc, "Your [src] activates, starting to draw power from a nearby wireless power source.") - inawaymission = TRUE + selfcharge = TRUE else - if(inawaymission) + if(selfcharge) if(ismob(loc)) to_chat(loc, "Your [src] deactivates, as it is out of range from its power source.") cell.charge = 0 - inawaymission = FALSE + selfcharge = FALSE update_icon() /obj/item/reagent_containers/glass/beaker/terror_black_toxin