From e20c3094942e1a92b3f7d06fd0261ed97303ce9d Mon Sep 17 00:00:00 2001 From: Matt Atlas Date: Tue, 10 Jan 2023 18:53:55 +0100 Subject: [PATCH] Fixes the pipe dispenser dispending random pipes. (#15557) --- code/game/machinery/pipe/construction.dm | 74 +++++++++---------- code/game/machinery/pipe/pipe_dispenser.dm | 64 ++++++++-------- ...tlas-NEVERTOUCHINGTHISFUCKINGCODEAGAIN.yml | 41 ++++++++++ 3 files changed, 110 insertions(+), 69 deletions(-) create mode 100644 html/changelogs/mattatlas-NEVERTOUCHINGTHISFUCKINGCODEAGAIN.yml diff --git a/code/game/machinery/pipe/construction.dm b/code/game/machinery/pipe/construction.dm index 96976b79b70..0faf942a6e1 100644 --- a/code/game/machinery/pipe/construction.dm +++ b/code/game/machinery/pipe/construction.dm @@ -13,44 +13,44 @@ Buildable meters #define PIPE_MVALVE 8 #define PIPE_PUMP 9 #define PIPE_SCRUBBER 10 -#define PIPE_GAS_FILTER 13 -#define PIPE_GAS_MIXER 14 -#define PIPE_PASSIVE_GATE 15 -#define PIPE_VOLUME_PUMP 16 -#define PIPE_HEAT_EXCHANGE 17 -#define PIPE_MTVALVE 18 -#define PIPE_MANIFOLD4W 19 -#define PIPE_CAP 20 +#define PIPE_GAS_FILTER 11 +#define PIPE_GAS_MIXER 12 +#define PIPE_PASSIVE_GATE 13 +#define PIPE_VOLUME_PUMP 14 +#define PIPE_HEAT_EXCHANGE 15 +#define PIPE_MTVALVE 16 +#define PIPE_MANIFOLD4W 17 +#define PIPE_CAP 18 ///// Z-Level stuff -#define PIPE_UP 21 -#define PIPE_DOWN 22 +#define PIPE_UP 19 +#define PIPE_DOWN 20 ///// Z-Level stuff -#define PIPE_GAS_FILTER_M 23 -#define PIPE_GAS_MIXER_T 24 -#define PIPE_GAS_MIXER_M 25 -#define PIPE_OMNI_MIXER 26 -#define PIPE_OMNI_FILTER 27 +#define PIPE_GAS_FILTER_M 21 +#define PIPE_GAS_MIXER_T 22 +#define PIPE_GAS_MIXER_M 23 +#define PIPE_OMNI_MIXER 24 +#define PIPE_OMNI_FILTER 25 ///// Supply, scrubbers and universal pipes -#define PIPE_UNIVERSAL 28 -#define PIPE_SUPPLY_STRAIGHT 29 -#define PIPE_SUPPLY_BENT 30 -#define PIPE_SCRUBBERS_STRAIGHT 31 -#define PIPE_SCRUBBERS_BENT 32 -#define PIPE_SUPPLY_MANIFOLD 33 -#define PIPE_SCRUBBERS_MANIFOLD 34 -#define PIPE_SUPPLY_MANIFOLD4W 35 -#define PIPE_SCRUBBERS_MANIFOLD4W 36 -#define PIPE_SUPPLY_UP 37 -#define PIPE_SCRUBBERS_UP 38 -#define PIPE_SUPPLY_DOWN 39 -#define PIPE_SCRUBBERS_DOWN 40 -#define PIPE_SUPPLY_CAP 41 -#define PIPE_SCRUBBERS_CAP 42 +#define PIPE_UNIVERSAL 26 +#define PIPE_SUPPLY_STRAIGHT 27 +#define PIPE_SUPPLY_BENT 28 +#define PIPE_SCRUBBERS_STRAIGHT 29 +#define PIPE_SCRUBBERS_BENT 30 +#define PIPE_SUPPLY_MANIFOLD 31 +#define PIPE_SCRUBBERS_MANIFOLD 32 +#define PIPE_SUPPLY_MANIFOLD4W 33 +#define PIPE_SCRUBBERS_MANIFOLD4W 34 +#define PIPE_SUPPLY_UP 35 +#define PIPE_SCRUBBERS_UP 36 +#define PIPE_SUPPLY_DOWN 37 +#define PIPE_SCRUBBERS_DOWN 38 +#define PIPE_SUPPLY_CAP 39 +#define PIPE_SCRUBBERS_CAP 40 ///// Mirrored T-valve ~ because I couldn't be bothered re-sorting all of the defines -#define PIPE_MTVALVEM 43 +#define PIPE_MTVALVEM 41 -#define PIPE_PASSIVE_GATE_SCRUBBER 44 -#define PIPE_PASSIVE_GATE_SUPPLY 45 +#define PIPE_PASSIVE_GATE_SCRUBBER 42 +#define PIPE_PASSIVE_GATE_SUPPLY 43 /obj/item/pipe name = "pipe" @@ -68,7 +68,7 @@ Buildable meters level = 2 obj_flags = OBJ_FLAG_ROTATABLE -/obj/item/pipe/New(var/loc, var/pipe_type as num, var/dir as num, var/obj/machinery/atmospherics/make_from = null) +/obj/item/pipe/New(var/loc, var/pipe_type, var/dir, var/obj/machinery/atmospherics/make_from) ..() if (make_from) src.set_dir(make_from.dir) @@ -183,17 +183,17 @@ Buildable meters else src.pipe_type = pipe_type src.set_dir(dir) - if (pipe_type == 29 || pipe_type == 30 || pipe_type == 33 || pipe_type == 35 || pipe_type == 37 || pipe_type == 39 || pipe_type == 41) + if (pipe_type == 27 || pipe_type == 28 || pipe_type == 31 || pipe_type == 33 || pipe_type == 35 || pipe_type == 37 || pipe_type == 39) connect_types = CONNECT_TYPE_SUPPLY src.color = PIPE_COLOR_BLUE - else if (pipe_type == 31 || pipe_type == 32 || pipe_type == 34 || pipe_type == 36 || pipe_type == 38 || pipe_type == 40 || pipe_type == 42) + else if (pipe_type == 29 || pipe_type == 30 || pipe_type == 32 || pipe_type == 34 || pipe_type == 36 || pipe_type == 38 || pipe_type == 40) connect_types = CONNECT_TYPE_SCRUBBER src.color = PIPE_COLOR_RED else if (pipe_type == 2 || pipe_type == 3) connect_types = CONNECT_TYPE_HE else if (pipe_type == 6) connect_types = CONNECT_TYPE_REGULAR|CONNECT_TYPE_HE - else if (pipe_type == 28) + else if (pipe_type == 26) connect_types = CONNECT_TYPE_REGULAR|CONNECT_TYPE_SUPPLY|CONNECT_TYPE_SCRUBBER //src.pipe_dir = get_pipe_dir() update() diff --git a/code/game/machinery/pipe/pipe_dispenser.dm b/code/game/machinery/pipe/pipe_dispenser.dm index aa106fd3c84..9b78eb5da4e 100644 --- a/code/game/machinery/pipe/pipe_dispenser.dm +++ b/code/game/machinery/pipe/pipe_dispenser.dm @@ -21,51 +21,51 @@ Bent Pipe
Manifold
Manual Valve
- Pipe Cap
- 4-Way Manifold
- Manual T-Valve
- Manual T-Valve - Mirrored
- Upward Pipe
- Downward Pipe
+ Pipe Cap
+ 4-Way Manifold
+ Manual T-Valve
+ Manual T-Valve - Mirrored
+ Upward Pipe
+ Downward Pipe
Supply pipes:
+ Pipe
+ Bent Pipe
+ Manifold
+ Pipe Cap
+ 4-Way Manifold
+ Upward Pipe
+ Downward Pipe
+ Scrubbers pipes:
Pipe
Bent Pipe
- Manifold
- Pipe Cap
- 4-Way Manifold
- Upward Pipe
- Downward Pipe
- Scrubbers pipes:
- Pipe
- Bent Pipe
- Manifold
- Pipe Cap
- 4-Way Manifold
- Upward Pipe
- Downward Pipe
+ Manifold
+ Pipe Cap
+ 4-Way Manifold
+ Upward Pipe
+ Downward Pipe
Devices:
- Universal pipe adapter
+ Universal pipe adapter
Connector
Unary Vent
Gas Pump
- Pressure Regulator
- Scrubbers Pressure Regulator
- Supply Pressure Regulator
- High Power Gas Pump
+ Pressure Regulator
+ Scrubbers Pressure Regulator
+ Supply Pressure Regulator
+ High Power Gas Pump
Scrubber
Meter
- Gas Filter
- Gas Filter - Mirrored
- Gas Mixer
- Gas Mixer - Mirrored
- Gas Mixer - T
- Omni Gas Mixer
- Omni Gas Filter
+ Gas Filter
+ Gas Filter - Mirrored
+ Gas Mixer
+ Gas Mixer - Mirrored
+ Gas Mixer - T
+ Omni Gas Mixer
+ Omni Gas Filter
Heat exchange:
Pipe
Bent Pipe
Junction
- Heat Exchanger
+ Heat Exchanger
"} //What number the make points to is in the define # at the top of construction.dm in same folder diff --git a/html/changelogs/mattatlas-NEVERTOUCHINGTHISFUCKINGCODEAGAIN.yml b/html/changelogs/mattatlas-NEVERTOUCHINGTHISFUCKINGCODEAGAIN.yml new file mode 100644 index 00000000000..b47ea8d45d3 --- /dev/null +++ b/html/changelogs/mattatlas-NEVERTOUCHINGTHISFUCKINGCODEAGAIN.yml @@ -0,0 +1,41 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: MattAtlas + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - bugfix: "Fixed the pipe dispenser dispensing the wrong pipes."