Fixes check plumbing admin verb (#59263)

* - fixes check plumbing admin verb

* oof

Co-authored-by: norill <4>
This commit is contained in:
norill
2021-05-26 14:25:57 +02:00
committed by GitHub
co-authored by norill <4>
parent 7553355ecd
commit 6047ff9c38
2 changed files with 24 additions and 26 deletions
+9 -6
View File
@@ -11,15 +11,18 @@
if(pipe.z && (!pipe.nodes || !pipe.nodes.len || (null in pipe.nodes)))
to_chat(usr, "Unconnected [pipe.name] located at [ADMIN_VERBOSEJMP(pipe)]", confidential = TRUE)
//Manifolds
for(var/obj/machinery/atmospherics/pipe/smart/manifold4w/pipe in GLOB.machines)
//Pipes
for(var/obj/machinery/atmospherics/pipe/pipe in GLOB.machines)
if(istype(pipe, /obj/machinery/atmospherics/pipe/smart) || istype(pipe, /obj/machinery/atmospherics/pipe/layer_manifold))
continue
if(pipe.z && (!pipe.nodes || !pipe.nodes.len || (null in pipe.nodes)))
to_chat(usr, "Unconnected [pipe.name] located at [ADMIN_VERBOSEJMP(pipe)]", confidential = TRUE)
//Pipes
for(var/obj/machinery/atmospherics/pipe/smart/manifold4w/pipe in GLOB.machines)
if(pipe.z && (!pipe.nodes || !pipe.nodes.len || (null in pipe.nodes)))
to_chat(usr, "Unconnected [pipe.name] located at [ADMIN_VERBOSEJMP(pipe)]", confidential = TRUE)
//Nodes
for(var/obj/machinery/atmospherics/node1 in GLOB.machines)
for(var/obj/machinery/atmospherics/node2 in node1.nodes)
if(!(node1 in node2.nodes))
to_chat(usr, "One-way connection in [node1.name] located at [ADMIN_VERBOSEJMP(node1)]", confidential = TRUE)
/client/proc/powerdebug()
set category = "Mapping"
@@ -27,16 +27,12 @@
return ..()
/obj/machinery/atmospherics/pipe/layer_manifold/proc/nullifyAllNodes()
var/list/obj/machinery/atmospherics/needs_nullifying = get_all_connected_nodes()
for(var/obj/machinery/atmospherics/A in nodes)
A.disconnect(src)
SSair.add_to_rebuild_queue(A)
front_nodes = null
back_nodes = null
nodes = list()
for(var/obj/machinery/atmospherics/A in needs_nullifying)
A.disconnect(src)
SSair.add_to_rebuild_queue(A)
/obj/machinery/atmospherics/pipe/layer_manifold/proc/get_all_connected_nodes()
return front_nodes + back_nodes + nodes
/obj/machinery/atmospherics/pipe/layer_manifold/update_layer()
layer = initial(layer) + (PIPING_LAYER_MAX * PIPING_LAYER_LCHANGE) //This is above everything else.
@@ -77,18 +73,18 @@
/obj/machinery/atmospherics/pipe/layer_manifold/proc/findAllConnections()
front_nodes = list()
back_nodes = list()
var/list/new_nodes = list()
nodes = list()
for(var/iter in PIPING_LAYER_MIN to PIPING_LAYER_MAX)
var/obj/machinery/atmospherics/foundfront = findConnecting(dir, iter)
var/obj/machinery/atmospherics/foundback = findConnecting(turn(dir, 180), iter)
front_nodes += foundfront
back_nodes += foundback
if(foundfront && !QDELETED(foundfront))
new_nodes += foundfront
nodes += foundfront
if(foundback && !QDELETED(foundback))
new_nodes += foundback
nodes += foundback
update_appearance()
return new_nodes
return nodes
/obj/machinery/atmospherics/pipe/layer_manifold/atmosinit()
normalize_cardinal_directions()
@@ -98,21 +94,20 @@
piping_layer = PIPING_LAYER_DEFAULT
/obj/machinery/atmospherics/pipe/layer_manifold/pipeline_expansion()
return get_all_connected_nodes()
return nodes
/obj/machinery/atmospherics/pipe/layer_manifold/disconnect(obj/machinery/atmospherics/reference)
if(istype(reference, /obj/machinery/atmospherics/pipe))
var/obj/machinery/atmospherics/pipe/P = reference
P.destroy_network()
while(reference in get_all_connected_nodes())
if(reference in nodes)
var/i = nodes.Find(reference)
nodes[i] = null
if(reference in front_nodes)
var/i = front_nodes.Find(reference)
while(reference in nodes)
var/i = nodes.Find(reference)
nodes[i] = null
i = front_nodes.Find(reference)
if(i)
front_nodes[i] = null
if(reference in back_nodes)
var/i = back_nodes.Find(reference)
i = back_nodes.Find(reference)
if(i)
back_nodes[i] = null
update_appearance()