From 42835d82edf3097cf81950826145d00bba3a4464 Mon Sep 17 00:00:00 2001 From: ihatethisengine Date: Sun, 5 May 2024 19:53:51 +0300 Subject: [PATCH 1/5] init --- code/game/machinery/telecomms/presets.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/game/machinery/telecomms/presets.dm b/code/game/machinery/telecomms/presets.dm index 459eddc4a544..14bd5a852043 100644 --- a/code/game/machinery/telecomms/presets.dm +++ b/code/game/machinery/telecomms/presets.dm @@ -313,6 +313,9 @@ GLOBAL_LIST_EMPTY(all_static_telecomms_towers) if(corrupted) return + if(!inoperable()) + return + if(!weeded_turf.weeds) return From bd81372bbb644a91cf042ab456eb63d1d37a6cfb Mon Sep 17 00:00:00 2001 From: ihatethisengine Date: Sun, 5 May 2024 19:59:01 +0300 Subject: [PATCH 2/5] er --- code/game/machinery/telecomms/presets.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/machinery/telecomms/presets.dm b/code/game/machinery/telecomms/presets.dm index 14bd5a852043..1c8b7a3f9eed 100644 --- a/code/game/machinery/telecomms/presets.dm +++ b/code/game/machinery/telecomms/presets.dm @@ -313,7 +313,7 @@ GLOBAL_LIST_EMPTY(all_static_telecomms_towers) if(corrupted) return - if(!inoperable()) + if(!inoperable() || on) return if(!weeded_turf.weeds) From 1a81754080920c01d6cf94c527fb1136ce5aa384 Mon Sep 17 00:00:00 2001 From: ihatethisengine <115417687+ihatethisengine@users.noreply.github.com> Date: Mon, 6 May 2024 12:03:19 +0300 Subject: [PATCH 3/5] Update code/game/machinery/telecomms/presets.dm Co-authored-by: Drathek <76988376+Drulikar@users.noreply.github.com> --- code/game/machinery/telecomms/presets.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/machinery/telecomms/presets.dm b/code/game/machinery/telecomms/presets.dm index 1c8b7a3f9eed..ad7333761038 100644 --- a/code/game/machinery/telecomms/presets.dm +++ b/code/game/machinery/telecomms/presets.dm @@ -313,7 +313,7 @@ GLOBAL_LIST_EMPTY(all_static_telecomms_towers) if(corrupted) return - if(!inoperable() || on) + if(operable()) return if(!weeded_turf.weeds) From e51ae8547f765c046c82b2dd0606fb597a023cdf Mon Sep 17 00:00:00 2001 From: ihatethisengine <115417687+ihatethisengine@users.noreply.github.com> Date: Mon, 6 May 2024 09:32:33 +0000 Subject: [PATCH 4/5] aaaa --- code/game/machinery/telecomms/presets.dm | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/code/game/machinery/telecomms/presets.dm b/code/game/machinery/telecomms/presets.dm index ad7333761038..026da48a971b 100644 --- a/code/game/machinery/telecomms/presets.dm +++ b/code/game/machinery/telecomms/presets.dm @@ -306,6 +306,11 @@ GLOBAL_LIST_EMPTY(all_static_telecomms_towers) else update_icon() +/obj/structure/machinery/telecomms/relay/preset/tower/mapcomms/update_state() + ..() + if(inoperable()) + handle_xeno_acquisition(get_turf(src)) + /// Handles xenos corrupting the tower when weeds touch the turf it is located on /obj/structure/machinery/telecomms/relay/preset/tower/mapcomms/proc/handle_xeno_acquisition(turf/weeded_turf) SIGNAL_HANDLER @@ -313,9 +318,6 @@ GLOBAL_LIST_EMPTY(all_static_telecomms_towers) if(corrupted) return - if(operable()) - return - if(!weeded_turf.weeds) return @@ -331,6 +333,9 @@ GLOBAL_LIST_EMPTY(all_static_telecomms_towers) if(SSticker.mode.is_in_endgame) return + if(operable()) + return + if(ROUND_TIME < XENO_COMM_ACQUISITION_TIME) addtimer(CALLBACK(src, PROC_REF(handle_xeno_acquisition), weeded_turf), (XENO_COMM_ACQUISITION_TIME - ROUND_TIME)) return From 1b1849e13ea3a12e3b5685fe7c9e4e5d4ef0acea Mon Sep 17 00:00:00 2001 From: ihatethisengine <115417687+ihatethisengine@users.noreply.github.com> Date: Sat, 11 May 2024 10:38:13 +0300 Subject: [PATCH 5/5] Update presets.dm --- code/game/machinery/telecomms/presets.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/machinery/telecomms/presets.dm b/code/game/machinery/telecomms/presets.dm index 026da48a971b..2e792bdff09a 100644 --- a/code/game/machinery/telecomms/presets.dm +++ b/code/game/machinery/telecomms/presets.dm @@ -337,11 +337,11 @@ GLOBAL_LIST_EMPTY(all_static_telecomms_towers) return if(ROUND_TIME < XENO_COMM_ACQUISITION_TIME) - addtimer(CALLBACK(src, PROC_REF(handle_xeno_acquisition), weeded_turf), (XENO_COMM_ACQUISITION_TIME - ROUND_TIME)) + addtimer(CALLBACK(src, PROC_REF(handle_xeno_acquisition), weeded_turf), (XENO_COMM_ACQUISITION_TIME - ROUND_TIME), TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_NO_HASH_WAIT) return if(!COOLDOWN_FINISHED(src, corruption_delay)) - addtimer(CALLBACK(src, PROC_REF(handle_xeno_acquisition), weeded_turf), (COOLDOWN_TIMELEFT(src, corruption_delay))) + addtimer(CALLBACK(src, PROC_REF(handle_xeno_acquisition), weeded_turf), (COOLDOWN_TIMELEFT(src, corruption_delay)), TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_NO_HASH_WAIT) return var/obj/effect/alien/weeds/node/pylon/cluster/parent_node = weeded_turf.weeds.parent