From d882485376dd9eee0ce50fcbf1aa68621871a51b Mon Sep 17 00:00:00 2001 From: Bone White Date: Sat, 16 Aug 2014 08:46:48 +0100 Subject: [PATCH] T-Ray scanner var improvement Allows tray scanner range and pulse duration to be controlled by vars. Added three upgraded tray scanners, with increased range, increased pulse duration, and both of these features. --- code/game/objects/items/devices/scanners.dm | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index a4f2b29e8b9..121f4d9e098 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -19,6 +19,21 @@ REAGENT SCANNER item_state = "electronic" m_amt = 150 origin_tech = "magnets=1;engineering=1" + var/scan_range = 1 + var/pulse_duration = 10 + +/obj/item/device/t_scanner/longer_pulse + origin_tech = "magnets=2;engineering=2" + pulse_duration = 50 + +/obj/item/device/t_scanner/extended_range + origin_tech = "magnets=1;engineering=3" + scan_range = 3 + +/obj/item/device/t_scanner/extended_range/longer_pulse + origin_tech = "magnets=2;engineering=3" + scan_range = 3 + pulse_duration = 50 /obj/item/device/t_scanner/Destroy() if(on) @@ -39,7 +54,7 @@ REAGENT SCANNER processing_objects.Remove(src) return null - for(var/turf/T in range(1, src.loc) ) + for(var/turf/T in range(scan_range, src.loc) ) if(!T.intact) continue @@ -51,7 +66,7 @@ REAGENT SCANNER if(O.invisibility == 101) O.invisibility = 0 - spawn(10) + spawn(pulse_duration) if(O) var/turf/U = O.loc if(U.intact) @@ -65,6 +80,7 @@ REAGENT SCANNER M.alpha = oldalpha var/mob/living/M = locate() in T + if(M && M.invisibility == 2) M.invisibility = 0 spawn(2)