From 0a241e779e648524284e261418622367626a4837 Mon Sep 17 00:00:00 2001 From: Leshana Date: Mon, 19 Feb 2018 20:43:20 -0500 Subject: [PATCH] Allow mapped in pipes on openspace turfs with catwalks etc. - Pipes have been deleting themselves in update_icons() This is crazy, don't do it. - The only real reason they have been doing this is to prevent pipes from disconnected on both ends because no icon states existed for it. So I just made icon states. --- code/ATMOSPHERICS/pipes.dm | 110 ++++++++++++++----------------------- icons/atmos/pipes.dmi | Bin 3657 -> 4383 bytes 2 files changed, 42 insertions(+), 68 deletions(-) diff --git a/code/ATMOSPHERICS/pipes.dm b/code/ATMOSPHERICS/pipes.dm index 14693c311b..9f025138a1 100644 --- a/code/ATMOSPHERICS/pipes.dm +++ b/code/ATMOSPHERICS/pipes.dm @@ -241,15 +241,7 @@ overlays.Cut() - if(!node1 && !node2) - var/turf/T = get_turf(src) - new /obj/item/pipe(loc, make_from=src) - for (var/obj/machinery/meter/meter in T) - if (meter.target == src) - new /obj/item/pipe_meter(T) - qdel(meter) - qdel(src) - else if(node1 && node2) + if(node1 && node2) overlays += icon_manager.get_atmos_icon("pipe", , pipe_color, "[pipe_icon]intact[icon_connect_type]") else overlays += icon_manager.get_atmos_icon("pipe", , pipe_color, "[pipe_icon]exposed[node1?1:0][node2?1:0][icon_connect_type]") @@ -489,34 +481,25 @@ alpha = 255 - if(!node1 && !node2 && !node3) - var/turf/T = get_turf(src) - new /obj/item/pipe(loc, make_from=src) - for (var/obj/machinery/meter/meter in T) - if (meter.target == src) - new /obj/item/pipe_meter(T) - qdel(meter) - qdel(src) - else - overlays.Cut() - overlays += icon_manager.get_atmos_icon("manifold", , pipe_color, "core" + icon_connect_type) - overlays += icon_manager.get_atmos_icon("manifold", , , "clamps" + icon_connect_type) - underlays.Cut() + overlays.Cut() + overlays += icon_manager.get_atmos_icon("manifold", , pipe_color, "core" + icon_connect_type) + overlays += icon_manager.get_atmos_icon("manifold", , , "clamps" + icon_connect_type) + underlays.Cut() - var/turf/T = get_turf(src) - var/list/directions = list(NORTH, SOUTH, EAST, WEST) - var/node1_direction = get_dir(src, node1) - var/node2_direction = get_dir(src, node2) - var/node3_direction = get_dir(src, node3) + var/turf/T = get_turf(src) + var/list/directions = list(NORTH, SOUTH, EAST, WEST) + var/node1_direction = get_dir(src, node1) + var/node2_direction = get_dir(src, node2) + var/node3_direction = get_dir(src, node3) - directions -= dir + directions -= dir - directions -= add_underlay(T,node1,node1_direction,icon_connect_type) - directions -= add_underlay(T,node2,node2_direction,icon_connect_type) - directions -= add_underlay(T,node3,node3_direction,icon_connect_type) + directions -= add_underlay(T,node1,node1_direction,icon_connect_type) + directions -= add_underlay(T,node2,node2_direction,icon_connect_type) + directions -= add_underlay(T,node3,node3_direction,icon_connect_type) - for(var/D in directions) - add_underlay(T,,D,icon_connect_type) + for(var/D in directions) + add_underlay(T,,D,icon_connect_type) /obj/machinery/atmospherics/pipe/manifold/update_underlays() @@ -744,49 +727,40 @@ alpha = 255 - if(!node1 && !node2 && !node3 && !node4) - var/turf/T = get_turf(src) - new /obj/item/pipe(loc, make_from=src) - for (var/obj/machinery/meter/meter in T) - if (meter.target == src) - new /obj/item/pipe_meter(T) - qdel(meter) - qdel(src) - else - overlays.Cut() - overlays += icon_manager.get_atmos_icon("manifold", , pipe_color, "4way" + icon_connect_type) - overlays += icon_manager.get_atmos_icon("manifold", , , "clamps_4way" + icon_connect_type) - underlays.Cut() + overlays.Cut() + overlays += icon_manager.get_atmos_icon("manifold", , pipe_color, "4way" + icon_connect_type) + overlays += icon_manager.get_atmos_icon("manifold", , , "clamps_4way" + icon_connect_type) + underlays.Cut() - /* - var/list/directions = list(NORTH, SOUTH, EAST, WEST) + /* + var/list/directions = list(NORTH, SOUTH, EAST, WEST) - directions -= add_underlay(node1) - directions -= add_underlay(node2) - directions -= add_underlay(node3) - directions -= add_underlay(node4) + directions -= add_underlay(node1) + directions -= add_underlay(node2) + directions -= add_underlay(node3) + directions -= add_underlay(node4) - for(var/D in directions) - add_underlay(,D) - */ + for(var/D in directions) + add_underlay(,D) + */ - var/turf/T = get_turf(src) - var/list/directions = list(NORTH, SOUTH, EAST, WEST) - var/node1_direction = get_dir(src, node1) - var/node2_direction = get_dir(src, node2) - var/node3_direction = get_dir(src, node3) - var/node4_direction = get_dir(src, node4) + var/turf/T = get_turf(src) + var/list/directions = list(NORTH, SOUTH, EAST, WEST) + var/node1_direction = get_dir(src, node1) + var/node2_direction = get_dir(src, node2) + var/node3_direction = get_dir(src, node3) + var/node4_direction = get_dir(src, node4) - directions -= dir + directions -= dir - directions -= add_underlay(T,node1,node1_direction,icon_connect_type) - directions -= add_underlay(T,node2,node2_direction,icon_connect_type) - directions -= add_underlay(T,node3,node3_direction,icon_connect_type) - directions -= add_underlay(T,node4,node4_direction,icon_connect_type) + directions -= add_underlay(T,node1,node1_direction,icon_connect_type) + directions -= add_underlay(T,node2,node2_direction,icon_connect_type) + directions -= add_underlay(T,node3,node3_direction,icon_connect_type) + directions -= add_underlay(T,node4,node4_direction,icon_connect_type) - for(var/D in directions) - add_underlay(T,,D,icon_connect_type) + for(var/D in directions) + add_underlay(T,,D,icon_connect_type) /obj/machinery/atmospherics/pipe/manifold4w/update_underlays() diff --git a/icons/atmos/pipes.dmi b/icons/atmos/pipes.dmi index 6bd0b15f618d614aee81dd2187f761c3b8db011f..8134604e8a66888f2df5934c6811401f4357f606 100644 GIT binary patch delta 4198 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 J+BV?k{{R30>ihrz delta 3466 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 Zakhv!z2mM>dQXD59`kf=IvRHA{{XIHG9CZ`