diff --git a/_maps/outpost/hangar/nt_ice_20x20.dmm b/_maps/outpost/hangar/nt_ice_20x20.dmm
index 06e76cbe6b5b..03321bfceaa3 100644
--- a/_maps/outpost/hangar/nt_ice_20x20.dmm
+++ b/_maps/outpost/hangar/nt_ice_20x20.dmm
@@ -837,7 +837,7 @@
/obj/effect/turf_decal/siding/white/corner{
dir = 4
},
-/obj/machinery/atmospherics/components/binary/pressure_valve,
+/obj/machinery/atmospherics/components/binary/volume_pump,
/turf/open/floor/plasteel/patterned/brushed{
light_color = "#1B1D2E";
light_range = 2;
diff --git a/_maps/outpost/hangar/nt_ice_40x20.dmm b/_maps/outpost/hangar/nt_ice_40x20.dmm
index defafdc3b085..dc4366bfd54b 100644
--- a/_maps/outpost/hangar/nt_ice_40x20.dmm
+++ b/_maps/outpost/hangar/nt_ice_40x20.dmm
@@ -305,7 +305,7 @@
/obj/effect/turf_decal/siding/white/corner{
dir = 4
},
-/obj/machinery/atmospherics/components/binary/pressure_valve,
+/obj/machinery/atmospherics/components/binary/volume_pump,
/turf/open/floor/plasteel/patterned/brushed{
light_color = "#1B1D2E";
light_range = 2;
diff --git a/_maps/outpost/hangar/nt_ice_40x40.dmm b/_maps/outpost/hangar/nt_ice_40x40.dmm
index 62c3858641a5..69d81767fd7f 100644
--- a/_maps/outpost/hangar/nt_ice_40x40.dmm
+++ b/_maps/outpost/hangar/nt_ice_40x40.dmm
@@ -1398,7 +1398,7 @@
/obj/effect/turf_decal/siding/white/corner{
dir = 4
},
-/obj/machinery/atmospherics/components/binary/pressure_valve,
+/obj/machinery/atmospherics/components/binary/volume_pump,
/turf/open/floor/plasteel/patterned/brushed{
light_color = "#1B1D2E";
light_range = 2;
diff --git a/_maps/outpost/hangar/nt_ice_56x20.dmm b/_maps/outpost/hangar/nt_ice_56x20.dmm
index 08deb1360025..0966a1e60fa2 100644
--- a/_maps/outpost/hangar/nt_ice_56x20.dmm
+++ b/_maps/outpost/hangar/nt_ice_56x20.dmm
@@ -322,20 +322,6 @@
planetary_atmos = 1
},
/area/hangar)
-"hD" = (
-/obj/effect/turf_decal/siding/white{
- dir = 1
- },
-/obj/machinery/atmospherics/components/binary/volume_pump{
- dir = 4
- },
-/obj/effect/turf_decal/industrial/shutoff,
-/obj/structure/railing{
- dir = 1;
- layer = 2.8
- },
-/turf/open/floor/plasteel/tech,
-/area/hangar)
"if" = (
/obj/machinery/door/airlock/outpost,
/obj/machinery/atmospherics/pipe/simple/yellow/hidden,
@@ -934,7 +920,7 @@
/obj/effect/turf_decal/siding/white/corner{
dir = 4
},
-/obj/machinery/atmospherics/components/binary/pressure_valve,
+/obj/machinery/atmospherics/components/binary/volume_pump,
/turf/open/floor/plasteel/patterned/brushed{
light_color = "#1B1D2E";
light_range = 2;
@@ -3996,7 +3982,7 @@ Hr
ag
yh
nD
-hD
+TK
AZ
Vu
OZ
diff --git a/_maps/outpost/hangar/nt_ice_56x40.dmm b/_maps/outpost/hangar/nt_ice_56x40.dmm
index d484671d2f94..b89f435a4a8c 100644
--- a/_maps/outpost/hangar/nt_ice_56x40.dmm
+++ b/_maps/outpost/hangar/nt_ice_56x40.dmm
@@ -443,7 +443,7 @@
/obj/effect/turf_decal/siding/white/corner{
dir = 4
},
-/obj/machinery/atmospherics/components/binary/pressure_valve,
+/obj/machinery/atmospherics/components/binary/volume_pump,
/turf/open/floor/plasteel/patterned/brushed{
light_color = "#1B1D2E";
light_range = 2;
@@ -1185,20 +1185,6 @@
planetary_atmos = 1
},
/area/hangar)
-"Eo" = (
-/obj/effect/turf_decal/siding/white{
- dir = 1
- },
-/obj/machinery/atmospherics/components/binary/volume_pump{
- dir = 4
- },
-/obj/effect/turf_decal/industrial/shutoff,
-/obj/structure/railing{
- dir = 1;
- layer = 2.8
- },
-/turf/open/floor/plasteel/tech,
-/area/hangar)
"Eu" = (
/obj/structure/catwalk/over/plated_catwalk,
/obj/machinery/atmospherics/pipe/simple/orange/hidden,
@@ -5258,7 +5244,7 @@ tj
aH
Zj
qN
-Eo
+AW
pa
Od
aK
diff --git a/_maps/shuttles/nanotrasen/nanotrasen_skipper.dmm b/_maps/shuttles/nanotrasen/nanotrasen_skipper.dmm
index f9aeea662f05..802756c19d04 100644
--- a/_maps/shuttles/nanotrasen/nanotrasen_skipper.dmm
+++ b/_maps/shuttles/nanotrasen/nanotrasen_skipper.dmm
@@ -440,6 +440,7 @@
/area/ship/hallway/central)
"dO" = (
/obj/machinery/atmospherics/components/trinary/mixer/flipped/layer4,
+/obj/item/paper/guides/jobs/engi/combustion_thruster,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"dS" = (
@@ -3365,9 +3366,6 @@
/obj/structure/cable{
icon_state = "1-2"
},
-/obj/item/paper/crumpled{
- default_raw_text = "66% Oxy (Node 1) to 34% Plasma (Node 2) works great at 500 kPa."
- },
/obj/machinery/atmospherics/components/binary/pump{
dir = 8;
name = "engine fuel pump"
diff --git a/_maps/shuttles/solgov/solgov_inkwell.dmm b/_maps/shuttles/solgov/solgov_inkwell.dmm
index cb683d981ab0..f2cf61f1f33b 100644
--- a/_maps/shuttles/solgov/solgov_inkwell.dmm
+++ b/_maps/shuttles/solgov/solgov_inkwell.dmm
@@ -2282,6 +2282,7 @@
dir = 4;
name = "Fuel Mixer"
},
+/obj/item/paper/guides/jobs/engi/combustion_thruster,
/turf/open/floor/plasteel/tech,
/area/ship/maintenance/starboard)
"oH" = (
diff --git a/_maps/shuttles/syndicate/syndicate_gorlex_komodo.dmm b/_maps/shuttles/syndicate/syndicate_gorlex_komodo.dmm
index bfbdc4e43e04..2d17c44761e8 100644
--- a/_maps/shuttles/syndicate/syndicate_gorlex_komodo.dmm
+++ b/_maps/shuttles/syndicate/syndicate_gorlex_komodo.dmm
@@ -2475,6 +2475,7 @@
/obj/machinery/atmospherics/components/trinary/mixer/flipped{
dir = 1
},
+/obj/item/paper/guides/jobs/engi/combustion_thruster,
/turf/open/floor/plasteel/tech,
/area/ship/engineering)
"wJ" = (
diff --git a/code/game/machinery/outpost_electrolyzer.dm b/code/game/machinery/outpost_electrolyzer.dm
index 29a37c4f95e8..b91160c7e1c8 100644
--- a/code/game/machinery/outpost_electrolyzer.dm
+++ b/code/game/machinery/outpost_electrolyzer.dm
@@ -38,16 +38,6 @@
var/obj/machinery/mineral/electrolyzer/linked_electrolyzer
-/obj/machinery/computer/electrolyzer_console/Initialize()
- . = ..()
- find_electrolyzer()
-
-/obj/machinery/computer/electrolyzer_console/proc/find_electrolyzer()
- for(var/obj/machinery/mineral/electrolyzer/potential in oview(3,src))
- if(linked_electrolyzer == null)
- linked_electrolyzer = potential
- potential.linked_console = src
-
/obj/machinery/computer/electrolyzer_console/proc/electrolyze_item(obj/item/I)
var/obj/item/stack/ore/ice/S = I
var/meritval = round(S.get_amount() * MERITS_PER_ICE * OUTPOST_HYDROGEN_CUT,1) // causes a bit of surplus in the "outpost" supply, even if they use all of these merits for hydrogen.
@@ -61,6 +51,7 @@
var/obj/item/multitool/multi = item
if(istype(multi.buffer, /obj/machinery/mineral/electrolyzer))
linked_electrolyzer = multi.buffer
+ linked_electrolyzer.linked_console = src
visible_message("Linked to [linked_electrolyzer]!")
return
return ..()
@@ -88,7 +79,17 @@
)
AddElement(/datum/element/connect_loc, loc_connections)
-/obj/machinery/computer/electrolyzer_console/attackby(item,mob/user)
+/obj/machinery/mineral/electrolyzer/proc/find_electrolyzer()
+ if(linked_console)
+ return TRUE
+ for(var/obj/machinery/computer/electrolyzer_console/potential in oview(3,src))
+ if(linked_console == null)
+ linked_console = potential
+ potential.linked_electrolyzer = src
+ return TRUE
+ return FALSE
+
+/obj/machinery/mineral/electrolyzer/attackby(item,mob/user)
if(istype(item, /obj/item/multitool))
var/obj/item/multitool/multi = item
multi.buffer = src
@@ -108,6 +109,10 @@
INVOKE_ASYNC(src, PROC_REF(electrolyze), AM)
/obj/machinery/mineral/electrolyzer/proc/electrolyze(atom/movable/electrolyze_target, sound=TRUE)
+ if(!find_electrolyzer())
+ visible_message("[src] doesn't have a linked console!")
+ playsound(src, 'sound/machines/buzz-sigh.ogg', 50, FALSE, 1)
+ return
if(istype(electrolyze_target, /obj/effect) || !linked_console || !isturf(electrolyze_target.loc) || (machine_stat & (BROKEN|NOPOWER)))
return
if(!istype(electrolyze_target, /obj/item/stack/ore/ice))
@@ -448,15 +453,15 @@
return ..()
/obj/item/merit/bundle/attack_self(mob/user)
+ if(!Adjacent(user))
+ to_chat(user, "You need to be in arm's reach for that!")
+ return
+
var/cashamount = input(user, "How many merits do you want to take? (0 to [value])", "Take Merits", 20) as num
cashamount = round(clamp(cashamount, 0, value))
if(!cashamount)
return
- if(!Adjacent(user))
- to_chat(user, "You need to be in arm's reach for that!")
- return
-
value -= cashamount
if(!value)
user.dropItemToGround(src)
@@ -464,18 +469,20 @@
var/obj/item/merit/bundle/bundle = new (user.loc)
bundle.value = cashamount
+ bundle.update_appearance()
+ user.put_in_hands(bundle)
update_appearance()
/obj/item/merit/bundle/AltClick(mob/living/user)
+ if(!Adjacent(user))
+ to_chat(user, "You need to be in arm's reach for that!")
+ return
+
var/cashamount = input(user, "How many merits do you want to take? (0 to [value])", "Take Merits", 20) as num
cashamount = round(clamp(cashamount, 0, value))
if(!cashamount)
return
- else if(!Adjacent(user))
- to_chat(user, "You need to be in arm's reach for that!")
- return
-
value -= cashamount
if(!value)
user.dropItemToGround(src)
diff --git a/code/modules/atmospherics/auxgm/gas_types.dm b/code/modules/atmospherics/auxgm/gas_types.dm
index fb0d7026a6d1..835edafc4cb8 100644
--- a/code/modules/atmospherics/auxgm/gas_types.dm
+++ b/code/modules/atmospherics/auxgm/gas_types.dm
@@ -165,5 +165,6 @@
color = "#ffe"
fusion_power = 0
fire_products = list(GAS_H2O = 1)
+ enthalpy = FIRE_HYDROGEN_ENERGY_RELEASED
fire_burn_rate = 2
fire_temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST - 50
diff --git a/icons/obj/nutanks.dmi b/icons/obj/nutanks.dmi
index 4365bdb86771..327bafa81706 100644
Binary files a/icons/obj/nutanks.dmi and b/icons/obj/nutanks.dmi differ
diff --git a/tgui/packages/tgui/constants.ts b/tgui/packages/tgui/constants.ts
index 270ce9873bd6..d11d5bdec83f 100644
--- a/tgui/packages/tgui/constants.ts
+++ b/tgui/packages/tgui/constants.ts
@@ -239,7 +239,7 @@ const GASES = [
color: 'paleturquoise',
},
{
- id: 'hydrogen',
+ id: 'h2',
path: '/datum/gas/hydrogen',
name: 'Hydrogen',
label: 'Hâ‚‚',