Adds the proximity monitor component. Performance improvement for turf/Entered (#14196)

* proximity monitor

* Update code/__HELPERS/unsorted.dm

Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>

* farie review tweaks

* actually I need this

Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
This commit is contained in:
SteelSlayer
2020-09-20 13:31:16 -04:00
committed by GitHub
co-authored by AffectedArc07
parent ead6e898a3
commit 01da8413de
19 changed files with 252 additions and 24 deletions
+4
View File
@@ -12,6 +12,10 @@
var/obj/item/tank/bombtank = null //the second part of the bomb is a plasma tank
origin_tech = "materials=1;engineering=1"
/obj/item/onetankbomb/ComponentInitialize()
. = ..()
AddComponent(/datum/component/proximity_monitor)
/obj/item/onetankbomb/examine(mob/user)
. = ..()
. += bombtank.examine(user)
+8 -2
View File
@@ -41,19 +41,25 @@
if(!A1.remove_item_from_storage(src))
if(user)
user.remove_from_mob(A1)
A1.loc = src
A1.forceMove(src)
if(!A2.remove_item_from_storage(src))
if(user)
user.remove_from_mob(A2)
A2.loc = src
A2.forceMove(src)
A1.holder = src
A2.holder = src
a_left = A1
a_right = A2
if(has_prox_sensors())
AddComponent(/datum/component/proximity_monitor)
name = "[A1.name]-[A2.name] assembly"
update_icon()
return TRUE
/obj/item/assembly_holder/proc/has_prox_sensors()
if(istype(a_left, /obj/item/assembly/prox_sensor) || istype(a_right, /obj/item/assembly/prox_sensor))
return TRUE
return FALSE
/obj/item/assembly_holder/update_icon()
overlays.Cut()
+4
View File
@@ -13,6 +13,10 @@
var/timing = 0
var/time = 10
/obj/item/assembly/prox_sensor/ComponentInitialize()
. = ..()
AddComponent(/datum/component/proximity_monitor)
/obj/item/assembly/prox_sensor/describe()
if(timing)
return "<span class='notice'>The proximity sensor is arming.</span>"