From 61988210c7420e67762c441c391954272059f793 Mon Sep 17 00:00:00 2001 From: forest2001 Date: Mon, 7 Aug 2023 03:35:16 +0100 Subject: [PATCH] Multiple in, multiple out. --- code/game/objects/items/storage/backpack.dm | 10 ++++++---- code/modules/cm_phone/phone.dm | 11 ++++++++--- maps/map_files/LV624/standalone/clfship.dmm | 8 ++++---- 3 files changed, 18 insertions(+), 11 deletions(-) diff --git a/code/game/objects/items/storage/backpack.dm b/code/game/objects/items/storage/backpack.dm index 3bf3656f4bd2..37320aca0133 100644 --- a/code/game/objects/items/storage/backpack.dm +++ b/code/game/objects/items/storage/backpack.dm @@ -497,7 +497,7 @@ GLOBAL_LIST_EMPTY_TYPED(radio_packs, /obj/item/storage/backpack/marine/satchel/r var/obj/structure/transmitter/internal/internal_transmitter var/phone_category = PHONE_MARINE - var/network_receive = FACTION_MARINE + var/list/networks_receive = list(FACTION_MARINE) var/list/networks_transmit = list(FACTION_MARINE) var/base_icon @@ -523,7 +523,7 @@ GLOBAL_LIST_EMPTY_TYPED(radio_packs, /obj/item/storage/backpack/marine/satchel/r internal_transmitter.relay_obj = src internal_transmitter.phone_category = phone_category internal_transmitter.enabled = FALSE - internal_transmitter.network_receive = network_receive + internal_transmitter.networks_receive = networks_receive internal_transmitter.networks_transmit = networks_transmit RegisterSignal(internal_transmitter, COMSIG_TRANSMITTER_UPDATE_ICON, PROC_REF(check_for_ringing)) GLOB.radio_packs += src @@ -593,7 +593,8 @@ GLOBAL_LIST_EMPTY_TYPED(radio_packs, /obj/item/storage/backpack/marine/satchel/r . = ..() /obj/item/storage/backpack/marine/satchel/rto/upp_net - network_receive = FACTION_UPP + name = "\improper UPP Radio Telephone Pack" + networks_receive = list(FACTION_UPP) networks_transmit = list(FACTION_UPP) /obj/item/storage/backpack/marine/satchel/rto/small @@ -602,7 +603,8 @@ GLOBAL_LIST_EMPTY_TYPED(radio_packs, /obj/item/storage/backpack/marine/satchel/r /obj/item/storage/backpack/marine/satchel/rto/small/upp_net - network_receive = FACTION_UPP + name = "\improper UPP Radio Telephone Pack" + networks_receive = list(FACTION_UPP) networks_transmit = list(FACTION_UPP) phone_category = PHONE_UPP_SOLDIER diff --git a/code/modules/cm_phone/phone.dm b/code/modules/cm_phone/phone.dm index b3e0ecd87206..b7fdc2b24735 100644 --- a/code/modules/cm_phone/phone.dm +++ b/code/modules/cm_phone/phone.dm @@ -31,7 +31,7 @@ GLOBAL_LIST_EMPTY_TYPED(transmitters, /obj/structure/transmitter) var/timeout_timer_id var/timeout_duration = 30 SECONDS - var/network_receive = FACTION_MARINE + var/list/networks_receive = list(FACTION_MARINE) var/list/networks_transmit = list(FACTION_MARINE) /obj/structure/transmitter/hidden @@ -82,7 +82,12 @@ GLOBAL_LIST_EMPTY_TYPED(transmitters, /obj/structure/transmitter) var/obj/structure/transmitter/target_phone = possible_phone if(TRANSMITTER_UNAVAILABLE(target_phone) || !target_phone.callable) // Phone not available continue - if(!(target_phone.network_receive in networks_transmit)) + var/net_link = FALSE + for(var/network in networks_transmit) + if(network in target_phone.networks_receive) + net_link = TRUE + continue + if(!net_link) continue var/id = target_phone.phone_id @@ -540,7 +545,7 @@ GLOBAL_LIST_EMPTY_TYPED(transmitters, /obj/structure/transmitter) /obj/structure/transmitter/colony_net - network_receive = FACTION_COLONIST + networks_receive = list(FACTION_COLONIST) networks_transmit = list(FACTION_COLONIST) /obj/structure/transmitter/colony_net/rotary diff --git a/maps/map_files/LV624/standalone/clfship.dmm b/maps/map_files/LV624/standalone/clfship.dmm index 362eef00fd21..7e1b6f16b94f 100644 --- a/maps/map_files/LV624/standalone/clfship.dmm +++ b/maps/map_files/LV624/standalone/clfship.dmm @@ -162,7 +162,7 @@ /area/lv624/lazarus/crashed_ship) "fA" = ( /obj/structure/transmitter/colony_net{ - network_receive = "CLF"; + networks_receive = list("CLF"); networks_transmit = list("CLF"); phone_category = "CR-116"; phone_id = "Armoury"; @@ -667,7 +667,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/effect/spawner/random/toolbox, /obj/structure/transmitter/colony_net/rotary{ - network_receive = "CLF"; + networks_receive = list("CLF"); networks_transmit = list("CLF"); phone_category = "CR-116"; phone_color = "yellow"; @@ -1662,7 +1662,7 @@ "Qj" = ( /obj/structure/machinery/body_scanconsole, /obj/structure/transmitter/colony_net{ - network_receive = "CLF"; + networks_receive = list("CLF"); networks_transmit = list("CLF"); phone_category = "CR-116"; phone_color = "green"; @@ -1994,7 +1994,7 @@ /area/lv624/lazarus/crashed_ship) "XM" = ( /obj/structure/transmitter/colony_net{ - network_receive = "CLF"; + networks_receive = list("CLF"); networks_transmit = list("CLF"); phone_category = "CR-116"; phone_id = "Cargo Bay";