diff --git a/_maps/RandomRuins/BeachRuins/beach_ocean_town.dmm b/_maps/RandomRuins/BeachRuins/beach_ocean_town.dmm
index 3a7fb09aa5f6..a751740c08a2 100644
--- a/_maps/RandomRuins/BeachRuins/beach_ocean_town.dmm
+++ b/_maps/RandomRuins/BeachRuins/beach_ocean_town.dmm
@@ -1859,15 +1859,8 @@
pixel_y = -32;
pixel_x = 32
},
-/obj/item/reagent_containers/food/drinks/britcup{
- desc = "A cup with a strange flag emblazoned on it.";
- pixel_y = 4;
- pixel_x = 9
- },
-/obj/item/reagent_containers/food/drinks/britcup{
- desc = "A cup with a strange flag emblazoned on it.";
- pixel_y = -2
- },
+/obj/item/reagent_containers/food/drinks/mug,
+/obj/item/reagent_containers/food/drinks/mug,
/obj/item/reagent_containers/food/drinks/bottle/wine{
pixel_y = 10;
pixel_x = -9
diff --git a/_maps/RandomRuins/BeachRuins/beach_treasure_cove.dmm b/_maps/RandomRuins/BeachRuins/beach_treasure_cove.dmm
index 0f122c15c94b..6e70a81ace49 100644
--- a/_maps/RandomRuins/BeachRuins/beach_treasure_cove.dmm
+++ b/_maps/RandomRuins/BeachRuins/beach_treasure_cove.dmm
@@ -565,7 +565,7 @@
/turf/open/floor/wood/walnut,
/area/ruin/beach/treasure_cove)
"sd" = (
-/obj/structure/guncase,
+/obj/structure/guncloset,
/obj/effect/turf_decal/industrial/warning{
dir = 4;
color = "#808080"
diff --git a/_maps/RandomRuins/IceRuins/icemoon_crashed_holemaker.dmm b/_maps/RandomRuins/IceRuins/icemoon_crashed_holemaker.dmm
index d17c4f371728..82c054f8fabf 100644
--- a/_maps/RandomRuins/IceRuins/icemoon_crashed_holemaker.dmm
+++ b/_maps/RandomRuins/IceRuins/icemoon_crashed_holemaker.dmm
@@ -1480,7 +1480,7 @@
},
/obj/effect/decal/cleanable/dirt/dust,
/obj/structure/table/wood,
-/obj/item/reagent_containers/food/drinks/soda_cans/pwr_game{
+/obj/item/reagent_containers/food/drinks/soda_cans/pacfuel{
pixel_y = 12;
pixel_x = -7
},
diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_village.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_village.dmm
index aabd7f476996..06d6a8e9fd27 100644
--- a/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_village.dmm
+++ b/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_village.dmm
@@ -437,7 +437,6 @@
/obj/item/clothing/under/rank/cargo/miner,
/obj/item/clothing/suit/hooded/wintercoat/miner,
/obj/item/clothing/shoes/winterboots,
-/obj/item/card/id/mining,
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/wood,
/area/ruin/powered)
diff --git a/_maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm b/_maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm
index 5c4e6c34e7a1..781ae59a84f4 100644
--- a/_maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm
+++ b/_maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm
@@ -1364,7 +1364,7 @@
/turf/open/floor/plasteel/patterned/cargo_one,
/area/ruin/jungle/cavecrew/cargo)
"qz" = (
-/obj/structure/guncase,
+/obj/structure/guncloset,
/obj/effect/turf_decal/industrial/hatch/yellow,
/obj/effect/turf_decal/industrial/warning{
dir = 10
diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_wrecked_factory.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_wrecked_factory.dmm
index f4f938f0b7b4..0064e874017d 100644
--- a/_maps/RandomRuins/LavaRuins/lavaland_surface_wrecked_factory.dmm
+++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_wrecked_factory.dmm
@@ -1157,7 +1157,7 @@
/obj/effect/turf_decal/corner/opaque/red/border{
dir = 5
},
-/obj/structure/guncase,
+/obj/structure/guncloset,
/obj/item/gun/energy/e_gun,
/turf/open/floor/plasteel/dark,
/area/ruin/lavaland/factory/adminstrative)
@@ -2716,7 +2716,7 @@
/obj/item/ammo_box/magazine/smgm9mm{
start_empty = 1
},
-/obj/item/gun/ballistic/automatic/smg/proto,
+/obj/item/gun/ballistic/automatic/smg/skm_carbine/inteq/proto,
/turf/open/floor/plasteel/dark,
/area/ruin/lavaland/factory/dorms)
"zC" = (
diff --git a/_maps/RandomRuins/RockRuins/rockplanet_shippingdock.dmm b/_maps/RandomRuins/RockRuins/rockplanet_shippingdock.dmm
index f4307cf7a84b..6bb4f2e48c99 100644
--- a/_maps/RandomRuins/RockRuins/rockplanet_shippingdock.dmm
+++ b/_maps/RandomRuins/RockRuins/rockplanet_shippingdock.dmm
@@ -2068,7 +2068,7 @@
"sa" = (
/obj/effect/turf_decal/rechargefloor,
/obj/effect/turf_decal/industrial/warning/dust,
-/obj/effect/spawner/lootdrop/whiteship_cere_ripley,
+/obj/effect/spawner/lootdrop/ripley,
/turf/open/floor/plasteel/mono/dark,
/area/ruin/rockplanet/shippingdockwarehouse)
"sc" = (
diff --git a/_maps/RandomRuins/SandRuins/whitesands_surface_pubbyslopcrash.dmm b/_maps/RandomRuins/SandRuins/whitesands_surface_pubbyslopcrash.dmm
index e664dfec8d96..397dff3689ee 100644
--- a/_maps/RandomRuins/SandRuins/whitesands_surface_pubbyslopcrash.dmm
+++ b/_maps/RandomRuins/SandRuins/whitesands_surface_pubbyslopcrash.dmm
@@ -1156,10 +1156,7 @@
/turf/closed/wall/mineral/titanium/nodiagonal,
/area/ruin/whitesands/pubbycrash/engine_room)
"Ak" = (
-/obj/item/reagent_containers/food/drinks/britcup{
- pixel_x = 9;
- pixel_y = -3
- },
+/obj/item/reagent_containers/food/drinks/mug,
/obj/item/trash/pistachios{
pixel_y = 5
},
diff --git a/_maps/RandomRuins/SpaceRuins/singularity_lab.dmm b/_maps/RandomRuins/SpaceRuins/singularity_lab.dmm
index 28f84c6dfea9..45591d25dde5 100644
--- a/_maps/RandomRuins/SpaceRuins/singularity_lab.dmm
+++ b/_maps/RandomRuins/SpaceRuins/singularity_lab.dmm
@@ -3821,7 +3821,7 @@
pixel_x = 5;
pixel_y = -5
},
-/obj/item/reagent_containers/food/drinks/soda_cans/dr_gibb{
+/obj/item/reagent_containers/food/drinks/soda_cans/tadrixx{
pixel_x = -4;
pixel_y = 2
},
@@ -4180,7 +4180,7 @@
/area/ruin/space/has_grav/singularitylab/civvie)
"qt" = (
/obj/structure/table,
-/obj/item/reagent_containers/food/drinks/soda_cans/space_mountain_wind{
+/obj/item/reagent_containers/food/drinks/soda_cans/comet_trail{
pixel_x = -6
},
/obj/item/radio/intercom/directional/east,
@@ -13228,7 +13228,7 @@
default_raw_text = "Whatever happens. Happens."
},
/obj/item/pen,
-/obj/item/reagent_containers/food/drinks/soda_cans/starkist{
+/obj/item/reagent_containers/food/drinks/soda_cans/lunapunch{
pixel_x = 10;
pixel_y = 4
},
diff --git a/_maps/RandomRuins/SpaceRuins/spacemall.dmm b/_maps/RandomRuins/SpaceRuins/spacemall.dmm
index 05d9a042df56..0f5d01fb7de8 100644
--- a/_maps/RandomRuins/SpaceRuins/spacemall.dmm
+++ b/_maps/RandomRuins/SpaceRuins/spacemall.dmm
@@ -5554,11 +5554,11 @@
/obj/item/reagent_containers/food/drinks/soda_cans/cola{
pixel_x = 5
},
-/obj/item/reagent_containers/food/drinks/soda_cans/starkist{
+/obj/item/reagent_containers/food/drinks/soda_cans/lunapunch{
pixel_x = -5
},
-/obj/item/reagent_containers/food/drinks/soda_cans/starkist,
-/obj/item/reagent_containers/food/drinks/soda_cans/starkist{
+/obj/item/reagent_containers/food/drinks/soda_cans/lunapunch,
+/obj/item/reagent_containers/food/drinks/soda_cans/lunapunch{
pixel_x = 5
},
/obj/item/storage/box/drinkingglasses,
@@ -9901,12 +9901,12 @@
"Lx" = (
/obj/structure/rack,
/obj/effect/turf_decal/corner/opaque/blue/half,
-/obj/item/clothing/accessory/talisman,
-/obj/item/clothing/accessory/wolftalisman,
-/obj/item/clothing/accessory/talisman,
-/obj/item/clothing/accessory/talisman,
-/obj/item/clothing/accessory/wolftalisman,
-/obj/item/clothing/accessory/wolftalisman,
+/obj/item/clothing/accessory/bonearmlet,
+/obj/item/clothing/neck/fangnecklace,
+/obj/item/clothing/accessory/bonearmlet,
+/obj/item/clothing/accessory/bonearmlet,
+/obj/item/clothing/neck/fangnecklace,
+/obj/item/clothing/neck/fangnecklace,
/obj/item/clothing/accessory/skilt,
/obj/item/clothing/accessory/skilt,
/obj/item/clothing/accessory/skilt,
diff --git a/_maps/RandomRuins/WasteRuins/wasteplanet_lab.dmm b/_maps/RandomRuins/WasteRuins/wasteplanet_lab.dmm
index 81a8e67a3456..b90bfbe776bd 100644
--- a/_maps/RandomRuins/WasteRuins/wasteplanet_lab.dmm
+++ b/_maps/RandomRuins/WasteRuins/wasteplanet_lab.dmm
@@ -95,7 +95,7 @@
/area/ruin/powered)
"fq" = (
/obj/structure/table,
-/obj/item/ammo_box/c45_speedloader,
+/obj/item/ammo_box/a44roum_speedloader,
/turf/open/floor/plasteel/mono/white,
/area/ruin/powered)
"fJ" = (
diff --git a/_maps/RandomRuins/WasteRuins/wasteplanet_pandora.dmm b/_maps/RandomRuins/WasteRuins/wasteplanet_pandora.dmm
index 207d91d4219a..f422e4ef1eb8 100644
--- a/_maps/RandomRuins/WasteRuins/wasteplanet_pandora.dmm
+++ b/_maps/RandomRuins/WasteRuins/wasteplanet_pandora.dmm
@@ -271,7 +271,7 @@
/turf/open/floor/mineral/titanium/white,
/area/ruin/wasteplanet)
"kV" = (
-/obj/structure/guncase,
+/obj/structure/guncloset,
/turf/open/floor/mineral/titanium/white,
/area/ruin/wasteplanet)
"kZ" = (
@@ -797,7 +797,7 @@
/turf/open/floor/wood/waste,
/area/ruin/wasteplanet)
"Fn" = (
-/obj/item/gun/ballistic/automatic/smg/proto{
+/obj/item/gun/ballistic/automatic/smg/skm_carbine/inteq/proto{
pixel_y = -18
},
/obj/item/ammo_casing/spent{
diff --git a/_maps/configs/srm_elder.json b/_maps/configs/srm_elder.json
index 82e104096b00..03caf7196183 100644
--- a/_maps/configs/srm_elder.json
+++ b/_maps/configs/srm_elder.json
@@ -22,17 +22,30 @@
"officer": true,
"slots": 1
},
+ "Hunter Colligne": {
+ "outfit": "/datum/outfit/job/roumain/hop",
+ "officer": true,
+ "slots": 1
+ },
"Hunter Doctor": {
"outfit": "/datum/outfit/job/roumain/doctor",
"slots": 1
},
+ "Machinist": {
+ "outfit": "/datum/outfit/job/roumain/engineer",
+ "slots": 1
+ },
"Hunter": {
"outfit": "/datum/outfit/job/roumain/security",
"slots": 3
},
+ "Flamebearer": {
+ "outfit": "/datum/outfit/job/roumain/flamebearer",
+ "slots": 1
+ },
"Shadow": {
"outfit": "/datum/outfit/job/roumain/assistant",
- "slots": 3
+ "slots": 2
}
},
"enabled": true
diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm
index 0f8565b7ecec..b37a44a0c8f6 100644
--- a/_maps/map_files/generic/CentCom.dmm
+++ b/_maps/map_files/generic/CentCom.dmm
@@ -4179,7 +4179,7 @@
"aNr" = (
/obj/structure/table/reinforced,
/obj/machinery/door/firedoor,
-/obj/item/reagent_containers/food/drinks/britcup,
+/obj/item/reagent_containers/food/drinks/mug,
/obj/structure/window/reinforced{
dir = 8
},
@@ -4527,7 +4527,7 @@
/obj/item/reagent_containers/food/condiment/peppermill{
pixel_x = -8
},
-/obj/item/reagent_containers/food/drinks/britcup,
+/obj/item/reagent_containers/food/drinks/mug,
/obj/effect/turf_decal/industrial/outline/yellow,
/turf/open/floor/plasteel,
/area/tdome/tdomeobserve)
diff --git a/_maps/outpost/hangar/indie_space_20x20.dmm b/_maps/outpost/hangar/indie_space_20x20.dmm
index 24c00395b2f6..d0a327297d30 100644
--- a/_maps/outpost/hangar/indie_space_20x20.dmm
+++ b/_maps/outpost/hangar/indie_space_20x20.dmm
@@ -66,10 +66,11 @@
/turf/closed/indestructible/reinforced,
/area/hangar)
"az" = (
-/obj/effect/turf_decal/arrows{
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
dir = 4
},
-/turf/open/floor/plasteel{
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
@@ -78,7 +79,11 @@
pixel_y = 25
},
/obj/effect/landmark/outpost/elevator_machine,
-/turf/open/floor/plasteel{
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
@@ -133,12 +138,10 @@
},
/area/hangar)
"aO" = (
-/obj/machinery/atmospherics/components/unary/passive_vent{
+/obj/structure/railing{
dir = 1
},
-/turf/open/floor/plasteel{
- planetary_atmos = 1
- },
+/turf/open/floor/plasteel/tech/techmaint,
/area/hangar)
"aP" = (
/obj/effect/turf_decal/trimline/opaque/yellow/filled/corner{
@@ -149,20 +152,58 @@
},
/area/hangar)
"aT" = (
-/obj/effect/turf_decal/arrows{
- dir = 1
- },
-/turf/open/floor/plasteel{
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
"aY" = (
/obj/effect/landmark/outpost/hangar_numbers,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 10
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"aZ" = (
/turf/open/floor/plasteel{
planetary_atmos = 1
},
/area/hangar)
-"aZ" = (
+"dR" = (
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"fT" = (
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"fU" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"gu" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 5
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"iT" = (
+/obj/structure/railing/corner{
+ dir = 4
+ },
/turf/open/floor/plasteel{
planetary_atmos = 1
},
@@ -178,9 +219,138 @@
planetary_atmos = 1
},
/area/hangar)
+"qO" = (
+/obj/structure/table/reinforced,
+/obj/structure/sign/warning/nosmoking/burnt{
+ pixel_y = 28
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
"rQ" = (
-/obj/machinery/atmospherics/pipe/simple/general,
-/turf/closed/indestructible/reinforced,
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 8
+ },
+/obj/effect/turf_decal/industrial/outline/yellow,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"un" = (
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"zH" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold4w/orange/hidden,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Af" = (
+/obj/machinery/door/airlock/maintenance{
+ req_access_txt = "101"
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Aj" = (
+/obj/machinery/computer/hydrogen_exchange,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"An" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 9
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"DI" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Ie" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 6
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"IW" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Ks" = (
+/obj/effect/turf_decal/industrial/shutoff,
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Li" = (
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"Oa" = (
+/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Sr" = (
+/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning{
+ dir = 1
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"VO" = (
+/obj/structure/railing/corner{
+ dir = 1;
+ layer = 4.1
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"Wk" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Xu" = (
+/obj/machinery/atmospherics/components/unary/hydrogen_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/industrial/outline/yellow,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"Xy" = (
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/industrial/shutoff,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
/area/hangar)
(1,1,1) = {"
@@ -255,7 +425,7 @@ aH
aH
am
aZ
-aZ
+fU
aM
ac
ac
@@ -278,7 +448,7 @@ aC
ac
ac
ao
-aZ
+fU
aZ
am
"}
@@ -288,7 +458,7 @@ aH
aH
am
aZ
-aZ
+fU
aM
ad
ad
@@ -311,7 +481,7 @@ ad
ad
ad
ao
-aZ
+fU
aZ
am
"}
@@ -321,7 +491,7 @@ aH
aH
am
aZ
-aZ
+fU
aM
aJ
aJ
@@ -344,7 +514,7 @@ aJ
aJ
aB
ao
-aZ
+fU
aZ
am
"}
@@ -354,7 +524,7 @@ aH
aH
am
aZ
-aZ
+fU
aM
aJ
aJ
@@ -377,7 +547,7 @@ aJ
aJ
aJ
ao
-aZ
+fU
aZ
am
"}
@@ -387,7 +557,7 @@ aH
aH
am
aZ
-az
+fU
aM
ap
aJ
@@ -410,7 +580,7 @@ aJ
aJ
ap
ao
-az
+fU
aZ
am
"}
@@ -420,8 +590,8 @@ aH
aH
am
aZ
-aZ
-aM
+Ie
+Oa
aJ
aJ
aJ
@@ -442,8 +612,8 @@ aJ
aJ
aJ
aJ
-ao
-aZ
+Sr
+gu
aZ
am
"}
@@ -453,7 +623,7 @@ aH
aH
am
aZ
-aZ
+az
av
aJ
aJ
@@ -476,7 +646,7 @@ aJ
aJ
aJ
aq
-aZ
+Wk
aZ
am
"}
@@ -486,7 +656,7 @@ aH
aH
am
aZ
-aZ
+az
aM
aJ
aJ
@@ -509,7 +679,7 @@ aJ
aJ
aJ
ao
-aZ
+Wk
aZ
am
"}
@@ -519,7 +689,7 @@ aH
aH
am
aZ
-aZ
+az
aM
aJ
aJ
@@ -542,7 +712,7 @@ aJ
aJ
aJ
ao
-aZ
+Wk
aZ
am
"}
@@ -575,7 +745,7 @@ aJ
aJ
ap
ao
-az
+Wk
aZ
am
"}
@@ -585,7 +755,7 @@ aH
aH
am
aZ
-aZ
+az
aM
aJ
aJ
@@ -608,7 +778,7 @@ aJ
aJ
aJ
ao
-aZ
+Wk
aZ
am
"}
@@ -618,7 +788,7 @@ aH
aH
am
aZ
-aZ
+az
aM
aJ
aJ
@@ -641,7 +811,7 @@ aJ
aJ
aJ
ao
-aZ
+Wk
aZ
am
"}
@@ -651,7 +821,7 @@ aH
aH
am
aZ
-aZ
+az
aM
aJ
aJ
@@ -674,7 +844,7 @@ aJ
aJ
aJ
ao
-aZ
+Wk
aZ
am
"}
@@ -684,7 +854,7 @@ aH
aH
am
aZ
-aZ
+az
aM
aJ
aJ
@@ -707,7 +877,7 @@ aJ
aJ
aJ
ao
-aZ
+Wk
aZ
am
"}
@@ -740,17 +910,17 @@ aJ
aJ
ap
ao
-az
+Wk
aZ
am
"}
(18,1,1) = {"
aH
aH
-aH
am
-aZ
-aZ
+am
+iT
+az
aM
aJ
aJ
@@ -773,17 +943,17 @@ aJ
aJ
aJ
ao
-aZ
+Wk
aZ
am
"}
(19,1,1) = {"
-aH
-aH
-aH
am
-aZ
-aZ
+am
+am
+Xu
+aO
+az
av
aJ
aJ
@@ -806,17 +976,17 @@ aJ
aJ
aJ
aq
-aZ
+Wk
aZ
am
"}
(20,1,1) = {"
-aH
-aH
-aH
am
-aZ
-aZ
+Af
+un
+Xy
+VO
+az
aM
aJ
aJ
@@ -839,18 +1009,18 @@ aJ
aJ
aJ
ao
-aZ
+Wk
aZ
am
"}
(21,1,1) = {"
-aH
-aH
-aH
am
-aZ
-aZ
-aM
+am
+Aj
+DI
+aT
+zH
+Oa
aJ
aJ
aJ
@@ -871,17 +1041,17 @@ aJ
aJ
aJ
aJ
-ao
-aZ
+Sr
+IW
aZ
am
"}
(22,1,1) = {"
aH
-aH
-aH
am
-aZ
+qO
+Ks
+Li
az
aM
ap
@@ -905,17 +1075,17 @@ aJ
aJ
ap
ao
-az
+Wk
aZ
am
"}
(23,1,1) = {"
aH
-aH
-aH
+am
+am
rQ
aO
-aZ
+dR
aM
aJ
aJ
@@ -938,7 +1108,7 @@ aJ
aJ
aJ
ao
-aZ
+Wk
aZ
am
"}
@@ -971,7 +1141,7 @@ aJ
aJ
aJ
ao
-aZ
+Wk
aZ
am
"}
@@ -981,7 +1151,7 @@ qz
qz
jk
ax
-aZ
+fT
al
aN
aN
@@ -1004,7 +1174,7 @@ aN
aN
aN
aP
-aZ
+Wk
aZ
am
"}
@@ -1015,29 +1185,29 @@ qz
qz
ax
aY
-aZ
-aZ
-aZ
aT
-aZ
-aZ
-aZ
-aZ
aT
-aZ
-aZ
-aZ
-aZ
aT
-aZ
-aZ
-aZ
-aZ
aT
-aZ
-aZ
-aZ
-aZ
+aT
+aT
+aT
+aT
+aT
+aT
+aT
+aT
+aT
+aT
+aT
+aT
+aT
+aT
+aT
+aT
+aT
+aT
+An
aZ
am
"}
@@ -1047,7 +1217,7 @@ qz
qz
qz
ax
-aZ
+un
aZ
aZ
aE
diff --git a/_maps/outpost/hangar/indie_space_40x20.dmm b/_maps/outpost/hangar/indie_space_40x20.dmm
index b3d80e6103bc..35c8c8f6e11c 100644
--- a/_maps/outpost/hangar/indie_space_40x20.dmm
+++ b/_maps/outpost/hangar/indie_space_40x20.dmm
@@ -12,9 +12,10 @@
/area/hangar)
"af" = (
/obj/effect/landmark/outpost/hangar_numbers,
-/turf/open/floor/plasteel{
- planetary_atmos = 1
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 10
},
+/turf/open/floor/plasteel/tech/techmaint,
/area/hangar)
"ai" = (
/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning,
@@ -51,20 +52,25 @@
},
/area/hangar)
"as" = (
-/obj/effect/turf_decal/arrows{
- dir = 1
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
+ planetary_atmos = 1
},
-/turf/open/floor/plasteel{
+/area/hangar)
+"at" = (
+/obj/machinery/door/airlock/maintenance{
+ req_access_txt = "101"
+ },
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
"av" = (
-/obj/machinery/atmospherics/components/unary/passive_vent{
+/obj/structure/railing{
dir = 1
},
-/turf/open/floor/plasteel{
- planetary_atmos = 1
- },
+/turf/open/floor/plasteel/tech/techmaint,
/area/hangar)
"aw" = (
/obj/effect/turf_decal/arrows{
@@ -134,7 +140,11 @@
pixel_y = 25
},
/obj/effect/landmark/outpost/elevator_machine,
-/turf/open/floor/plasteel{
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
@@ -150,14 +160,24 @@
planetary_atmos = 1
},
/area/hangar)
-"aX" = (
-/obj/effect/turf_decal/arrows{
+"aV" = (
+/obj/effect/turf_decal/industrial/shutoff,
+/obj/machinery/atmospherics/components/binary/volume_pump{
dir = 4
},
/turf/open/floor/plasteel{
planetary_atmos = 1
},
/area/hangar)
+"aX" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
"aY" = (
/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning{
dir = 1
@@ -167,6 +187,108 @@
planetary_atmos = 1
},
/area/hangar)
+"cr" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 5
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"fT" = (
+/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"id" = (
+/obj/machinery/computer/hydrogen_exchange,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"kN" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"oo" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 6
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"pb" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"pf" = (
+/obj/structure/railing/corner{
+ dir = 1
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"qK" = (
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"yq" = (
+/obj/structure/table/reinforced,
+/obj/structure/sign/warning/nosmoking/burnt{
+ pixel_y = 28
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"AH" = (
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/industrial/shutoff,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Ek" = (
+/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning{
+ dir = 1
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Ey" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 9
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"IY" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
"JT" = (
/turf/open/floor/plasteel/elevatorshaft{
planetary_atmos = 1
@@ -178,9 +300,56 @@
planetary_atmos = 1
},
/area/hangar)
+"Pk" = (
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"SR" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"TQ" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold4w/orange/hidden,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
"TX" = (
-/obj/machinery/atmospherics/pipe/simple/general,
-/turf/closed/indestructible/reinforced,
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 8
+ },
+/obj/effect/turf_decal/industrial/outline/yellow,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"UV" = (
+/obj/machinery/atmospherics/components/unary/hydrogen_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/industrial/outline/yellow,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"Wp" = (
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"XP" = (
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"Yu" = (
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plasteel/tech/techmaint,
/area/hangar)
(1,1,1) = {"
@@ -255,7 +424,7 @@ aP
aP
ab
aj
-aj
+IY
aL
aH
aH
@@ -278,7 +447,7 @@ aw
aH
aH
al
-aj
+IY
aj
ab
"}
@@ -288,7 +457,7 @@ aP
aP
ab
aj
-aj
+IY
aL
am
am
@@ -311,7 +480,7 @@ am
am
am
al
-aj
+IY
aj
ab
"}
@@ -321,7 +490,7 @@ aP
aP
ab
aj
-aj
+IY
aL
aD
aD
@@ -344,7 +513,7 @@ aD
aD
ap
al
-aj
+IY
aj
ab
"}
@@ -354,7 +523,7 @@ aP
aP
ab
aj
-aj
+IY
aL
aD
aD
@@ -377,7 +546,7 @@ aD
aD
aD
al
-aj
+IY
aj
ab
"}
@@ -387,7 +556,7 @@ aP
aP
ab
aj
-aX
+IY
aL
aG
aD
@@ -410,7 +579,7 @@ aD
aD
aG
al
-aX
+IY
aj
ab
"}
@@ -420,8 +589,8 @@ aP
aP
ab
aj
-aj
-aL
+oo
+fT
aD
aD
aD
@@ -442,8 +611,8 @@ aD
aD
aD
aD
-al
-aj
+Ek
+cr
aj
ab
"}
@@ -453,7 +622,7 @@ aP
aP
ab
aj
-aj
+aX
ai
aD
aD
@@ -476,7 +645,7 @@ aD
aD
aD
aY
-aj
+kN
aj
ab
"}
@@ -486,7 +655,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -509,7 +678,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -519,7 +688,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -542,7 +711,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -575,7 +744,7 @@ aD
aD
aG
al
-aX
+kN
aj
ab
"}
@@ -585,7 +754,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -608,7 +777,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -618,7 +787,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -641,7 +810,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -651,7 +820,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -674,7 +843,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -684,7 +853,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -707,7 +876,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -740,7 +909,7 @@ aD
aD
aG
al
-aX
+kN
aj
ab
"}
@@ -750,7 +919,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -773,7 +942,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -783,7 +952,7 @@ aP
aP
ab
aj
-aj
+aX
ai
aD
aD
@@ -806,7 +975,7 @@ aD
aD
aD
aY
-aj
+kN
aj
ab
"}
@@ -816,7 +985,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -839,7 +1008,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -849,7 +1018,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -872,7 +1041,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -905,7 +1074,7 @@ aD
aD
aG
al
-aX
+kN
aj
ab
"}
@@ -915,7 +1084,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -938,7 +1107,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -948,8 +1117,8 @@ aP
aP
ab
aj
-aj
-aL
+pb
+fT
aD
aD
aD
@@ -970,8 +1139,8 @@ aD
aD
aD
aD
-al
-aj
+Ek
+SR
aj
ab
"}
@@ -981,7 +1150,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -1004,7 +1173,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -1014,7 +1183,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -1037,7 +1206,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -1070,7 +1239,7 @@ aD
aD
aG
al
-aX
+kN
aj
ab
"}
@@ -1080,7 +1249,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -1103,7 +1272,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -1113,7 +1282,7 @@ aP
aP
ab
aj
-aj
+aX
ai
aD
aD
@@ -1136,7 +1305,7 @@ aD
aD
aD
aY
-aj
+kN
aj
ab
"}
@@ -1146,7 +1315,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -1169,7 +1338,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -1179,7 +1348,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -1202,7 +1371,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -1235,7 +1404,7 @@ aD
aD
aG
al
-aX
+kN
aj
ab
"}
@@ -1245,7 +1414,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -1268,7 +1437,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -1278,7 +1447,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -1301,7 +1470,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -1311,7 +1480,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -1334,7 +1503,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -1344,7 +1513,7 @@ aP
aP
ab
aj
-aj
+aX
aL
aD
aD
@@ -1367,7 +1536,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -1400,17 +1569,17 @@ aD
aD
aG
al
-aX
+kN
aj
ab
"}
(38,1,1) = {"
aP
aP
-aP
ab
-aj
-aj
+ab
+Pk
+aX
aL
aD
aD
@@ -1433,17 +1602,17 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
(39,1,1) = {"
-aP
-aP
-aP
ab
-aj
-aj
+ab
+ab
+UV
+av
+aX
ai
aD
aD
@@ -1466,17 +1635,17 @@ aD
aD
aD
aY
-aj
+kN
aj
ab
"}
(40,1,1) = {"
-aP
-aP
-aP
ab
-aj
-aj
+at
+Wp
+AH
+pf
+aX
aL
aD
aD
@@ -1499,18 +1668,18 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
(41,1,1) = {"
-aP
-aP
-aP
ab
-aj
-aj
-aL
+ab
+id
+pb
+as
+TQ
+fT
aD
aD
aD
@@ -1531,17 +1700,17 @@ aD
aD
aD
aD
-al
-aj
+Ek
+SR
aj
ab
"}
(42,1,1) = {"
aP
-aP
-aP
ab
-aj
+yq
+aV
+XP
aX
aL
aG
@@ -1565,17 +1734,17 @@ aD
aD
aG
al
-aX
+kN
aj
ab
"}
(43,1,1) = {"
aP
-aP
-aP
+ab
+ab
TX
av
-aj
+qK
aL
aD
aD
@@ -1598,7 +1767,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -1631,7 +1800,7 @@ aD
aD
aD
al
-aj
+kN
aj
ab
"}
@@ -1641,7 +1810,7 @@ JT
JT
OP
aF
-aj
+Yu
aM
aU
aU
@@ -1664,7 +1833,7 @@ aU
aU
aU
ae
-aj
+kN
aj
ab
"}
@@ -1675,29 +1844,29 @@ JT
JT
aF
af
-aj
-aj
-aj
as
-aj
-aj
-aj
-aj
as
-aj
-aj
-aj
-aj
as
-aj
-aj
-aj
-aj
as
-aj
-aj
-aj
-aj
+as
+as
+as
+as
+as
+as
+as
+as
+as
+as
+as
+as
+as
+as
+as
+as
+as
+as
+Ey
aj
ab
"}
@@ -1707,7 +1876,7 @@ JT
JT
JT
aF
-aj
+Wp
aj
aj
aA
diff --git a/_maps/outpost/hangar/indie_space_40x40.dmm b/_maps/outpost/hangar/indie_space_40x40.dmm
index 9818aa943330..01e75c51ee8a 100644
--- a/_maps/outpost/hangar/indie_space_40x40.dmm
+++ b/_maps/outpost/hangar/indie_space_40x40.dmm
@@ -46,7 +46,11 @@
pixel_y = 25
},
/obj/effect/landmark/outpost/elevator_machine,
-/turf/open/floor/plasteel{
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
@@ -79,10 +83,9 @@
/turf/template_noop,
/area/template_noop)
"aw" = (
-/obj/effect/turf_decal/arrows{
- dir = 1
- },
-/turf/open/floor/plasteel{
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
@@ -94,10 +97,11 @@
},
/area/hangar)
"ay" = (
-/obj/effect/turf_decal/arrows{
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
dir = 4
},
-/turf/open/floor/plasteel{
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
@@ -122,9 +126,10 @@
/area/hangar)
"aP" = (
/obj/effect/landmark/outpost/hangar_numbers,
-/turf/open/floor/plasteel{
- planetary_atmos = 1
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 10
},
+/turf/open/floor/plasteel/tech/techmaint,
/area/hangar)
"aQ" = (
/obj/effect/turf_decal/trimline/opaque/yellow/warning{
@@ -154,12 +159,10 @@
},
/area/hangar)
"aY" = (
-/obj/machinery/atmospherics/components/unary/passive_vent{
+/obj/structure/railing{
dir = 1
},
-/turf/open/floor/plasteel{
- planetary_atmos = 1
- },
+/turf/open/floor/plasteel/tech/techmaint,
/area/hangar)
"aZ" = (
/obj/machinery/door/airlock,
@@ -167,14 +170,135 @@
/obj/structure/lattice/catwalk,
/turf/open/floor/engine,
/area/hangar)
+"fM" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"hX" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 6
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"iR" = (
+/obj/effect/turf_decal/industrial/shutoff,
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
"jY" = (
/turf/open/floor/plasteel/elevatorshaft{
planetary_atmos = 1
},
/area/hangar)
+"kN" = (
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"mS" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold4w/orange/hidden,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"qA" = (
+/obj/structure/table/reinforced,
+/obj/structure/sign/warning/nosmoking/burnt{
+ pixel_y = 28
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"wm" = (
+/obj/machinery/computer/hydrogen_exchange,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"xH" = (
+/obj/machinery/atmospherics/components/unary/hydrogen_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/industrial/outline/yellow,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"yn" = (
+/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning{
+ dir = 8
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital{
+ dir = 4
+ },
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
"BE" = (
-/obj/machinery/atmospherics/pipe/simple/general,
-/turf/closed/indestructible/reinforced,
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 8
+ },
+/obj/effect/turf_decal/industrial/outline/yellow,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"Ev" = (
+/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Fb" = (
+/obj/structure/railing/corner{
+ dir = 1;
+ layer = 4.1
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"Fj" = (
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/industrial/shutoff,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Fm" = (
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"Hs" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"HB" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
/area/hangar)
"JI" = (
/obj/effect/landmark/outpost/elevator,
@@ -182,6 +306,72 @@
planetary_atmos = 1
},
/area/hangar)
+"KC" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 5
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Ol" = (
+/obj/machinery/door/airlock/maintenance{
+ req_access_txt = "101"
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Pk" = (
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"PN" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 9
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"RL" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Se" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Wc" = (
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"XA" = (
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"XZ" = (
+/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning{
+ dir = 1
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
(1,1,1) = {"
au
@@ -295,7 +485,7 @@ au
au
aa
aT
-aT
+Se
ah
at
at
@@ -338,7 +528,7 @@ as
at
at
ab
-aT
+Se
aT
aa
"}
@@ -348,7 +538,7 @@ au
au
aa
aT
-aT
+Se
ah
aQ
aQ
@@ -391,7 +581,7 @@ aQ
aQ
aQ
ab
-aT
+Se
aT
aa
"}
@@ -401,7 +591,7 @@ au
au
aa
aT
-aT
+Se
ah
aF
aF
@@ -444,7 +634,7 @@ aF
aF
aH
ab
-aT
+Se
aT
aa
"}
@@ -454,7 +644,7 @@ au
au
aa
aT
-aT
+Se
ah
aF
aF
@@ -497,7 +687,7 @@ aF
aF
aF
ab
-aT
+Se
aT
aa
"}
@@ -507,7 +697,7 @@ au
au
aa
aT
-ay
+Se
ah
ac
aF
@@ -550,7 +740,7 @@ aF
aF
ac
ab
-ay
+Se
aT
aa
"}
@@ -560,8 +750,8 @@ au
au
aa
aT
-aT
-ah
+hX
+Ev
aF
aF
aF
@@ -602,8 +792,8 @@ aF
aF
aF
aF
-ab
-aT
+XZ
+KC
aT
aa
"}
@@ -613,7 +803,7 @@ au
au
aa
aT
-aT
+ay
ax
aF
aF
@@ -656,7 +846,7 @@ aF
aF
aF
ak
-aT
+fM
aT
aa
"}
@@ -666,7 +856,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -709,7 +899,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -719,7 +909,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -762,7 +952,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -815,7 +1005,7 @@ aF
aF
ac
ab
-ay
+fM
aT
aa
"}
@@ -825,7 +1015,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -868,7 +1058,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -878,7 +1068,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -921,7 +1111,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -931,7 +1121,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -974,7 +1164,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -984,7 +1174,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -1027,7 +1217,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -1080,7 +1270,7 @@ aF
aF
ac
ab
-ay
+fM
aT
aa
"}
@@ -1090,7 +1280,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -1133,7 +1323,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -1143,7 +1333,7 @@ au
au
aa
aT
-aT
+ay
ax
aF
aF
@@ -1186,7 +1376,7 @@ aF
aF
aF
ak
-aT
+fM
aT
aa
"}
@@ -1196,7 +1386,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -1239,7 +1429,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -1249,7 +1439,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -1292,7 +1482,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -1345,7 +1535,7 @@ aF
aF
ac
ab
-ay
+fM
aT
aa
"}
@@ -1355,7 +1545,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -1398,7 +1588,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -1408,8 +1598,8 @@ au
au
aa
aT
-aT
-ah
+HB
+Ev
aF
aF
aF
@@ -1450,8 +1640,8 @@ aF
aF
aF
aF
-ab
-aT
+XZ
+RL
aT
aa
"}
@@ -1461,7 +1651,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -1504,7 +1694,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -1514,7 +1704,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -1557,7 +1747,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -1610,7 +1800,7 @@ aF
aF
ac
ab
-ay
+fM
aT
aa
"}
@@ -1620,7 +1810,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -1663,7 +1853,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -1673,7 +1863,7 @@ au
au
aa
aT
-aT
+ay
ax
aF
aF
@@ -1716,7 +1906,7 @@ aF
aF
aF
ak
-aT
+fM
aT
aa
"}
@@ -1726,7 +1916,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -1769,7 +1959,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -1779,7 +1969,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -1822,7 +2012,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -1875,7 +2065,7 @@ aF
aF
ac
ab
-ay
+fM
aT
aa
"}
@@ -1885,7 +2075,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -1928,7 +2118,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -1938,7 +2128,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -1981,7 +2171,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -1991,7 +2181,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -2034,7 +2224,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -2044,7 +2234,7 @@ au
au
aa
aT
-aT
+ay
ah
aF
aF
@@ -2087,7 +2277,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -2140,17 +2330,17 @@ aF
aF
ac
ab
-ay
+fM
aT
aa
"}
(38,1,1) = {"
au
au
-au
aa
-aT
-aT
+aa
+kN
+ay
ah
aF
aF
@@ -2193,17 +2383,17 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
(39,1,1) = {"
-au
-au
-au
aa
-aT
-aT
+aa
+aa
+xH
+aY
+ay
ax
aF
aF
@@ -2246,17 +2436,17 @@ aF
aF
aF
ak
-aT
+fM
aT
aa
"}
(40,1,1) = {"
-au
-au
-au
aa
-aT
-aT
+Ol
+Pk
+Fj
+Fb
+ay
ah
aF
aF
@@ -2299,18 +2489,18 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
(41,1,1) = {"
-au
-au
-au
aa
-aT
-aT
-ah
+aa
+wm
+HB
+aw
+mS
+Ev
aF
aF
aF
@@ -2351,17 +2541,17 @@ aF
aF
aF
aF
-ab
-aT
+XZ
+RL
aT
aa
"}
(42,1,1) = {"
au
-au
-au
aa
-aT
+qA
+iR
+Fm
ay
ah
ac
@@ -2405,17 +2595,17 @@ aF
aF
ac
ab
-ay
+fM
aT
aa
"}
(43,1,1) = {"
au
-au
-au
+aa
+aa
BE
aY
-aT
+XA
ah
aF
aF
@@ -2458,7 +2648,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -2511,7 +2701,7 @@ aF
aF
aF
ab
-aT
+fM
aT
aa
"}
@@ -2521,7 +2711,7 @@ jY
jY
JI
aZ
-aT
+Wc
aC
ag
ag
@@ -2535,6 +2725,7 @@ ag
ag
ag
ag
+yn
ag
ag
ag
@@ -2549,8 +2740,7 @@ ag
ag
ag
ag
-ag
-ag
+yn
ag
ag
ag
@@ -2564,7 +2754,7 @@ ag
ag
ag
aX
-aT
+fM
aT
aa
"}
@@ -2575,49 +2765,49 @@ jY
jY
aZ
aP
-aT
-aT
-aT
aw
-aT
-aT
-aT
-aT
aw
-aT
-aT
-aT
-aT
aw
-aT
-aT
-aT
-aT
aw
-aT
-aT
-aT
-aT
aw
-aT
-aT
-aT
-aT
aw
-aT
-aT
-aT
-aT
aw
-aT
-aT
-aT
-aT
aw
-aT
-aT
-aT
-aT
+aw
+aw
+aw
+aw
+aw
+Hs
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+Hs
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+aw
+PN
aT
aa
"}
@@ -2627,7 +2817,7 @@ jY
jY
jY
aZ
-aT
+Pk
aT
aS
aT
diff --git a/_maps/outpost/hangar/indie_space_56x20.dmm b/_maps/outpost/hangar/indie_space_56x20.dmm
index 93842d2587a5..ad3aeb33fe8a 100644
--- a/_maps/outpost/hangar/indie_space_56x20.dmm
+++ b/_maps/outpost/hangar/indie_space_56x20.dmm
@@ -17,6 +17,12 @@
"ag" = (
/turf/closed/indestructible/reinforced,
/area/hangar)
+"ah" = (
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
"ai" = (
/obj/effect/turf_decal/arrows{
dir = 1
@@ -65,7 +71,11 @@
pixel_y = 25
},
/obj/effect/landmark/outpost/elevator_machine,
-/turf/open/floor/plasteel{
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
@@ -78,18 +88,17 @@
},
/area/hangar)
"ay" = (
-/obj/machinery/atmospherics/components/unary/passive_vent{
+/obj/structure/railing{
dir = 1
},
-/turf/open/floor/plasteel{
- planetary_atmos = 1
- },
+/turf/open/floor/plasteel/tech/techmaint,
/area/hangar)
"aB" = (
/obj/effect/landmark/outpost/hangar_numbers,
-/turf/open/floor/plasteel{
- planetary_atmos = 1
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 10
},
+/turf/open/floor/plasteel/tech/techmaint,
/area/hangar)
"aC" = (
/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning{
@@ -100,10 +109,9 @@
},
/area/hangar)
"aD" = (
-/obj/effect/turf_decal/arrows{
- dir = 1
- },
-/turf/open/floor/plasteel{
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
@@ -116,10 +124,11 @@
},
/area/hangar)
"aG" = (
-/obj/effect/turf_decal/arrows{
- dir = 4
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
},
-/turf/open/floor/plasteel{
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
@@ -173,14 +182,167 @@
planetary_atmos = 1
},
/area/hangar)
+"lA" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 9
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"mV" = (
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
"mX" = (
/turf/open/floor/plasteel/elevatorshaft{
planetary_atmos = 1
},
/area/hangar)
+"pt" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"qG" = (
+/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"rb" = (
+/obj/structure/railing/corner{
+ dir = 4;
+ layer = 4.1
+ },
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"st" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 6
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
"vM" = (
-/obj/machinery/atmospherics/pipe/simple/general,
-/turf/closed/indestructible/reinforced,
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 8
+ },
+/obj/effect/turf_decal/industrial/outline/yellow,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"wb" = (
+/obj/structure/table/reinforced,
+/obj/structure/sign/warning/nosmoking/burnt{
+ pixel_y = 28
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"xG" = (
+/obj/machinery/computer/hydrogen_exchange,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"DF" = (
+/obj/effect/turf_decal/industrial/shutoff,
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"EZ" = (
+/obj/structure/railing/corner{
+ dir = 1
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"GM" = (
+/obj/machinery/door/airlock/maintenance{
+ req_access_txt = "101"
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Jt" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Ld" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold4w/orange/hidden,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"MY" = (
+/obj/machinery/atmospherics/components/unary/hydrogen_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/industrial/outline/yellow,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"Td" = (
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/industrial/shutoff,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"TZ" = (
+/obj/structure/railing/corner{
+ dir = 4;
+ layer = 4.1
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"Ua" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 5
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Ud" = (
+/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning{
+ dir = 1
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"UF" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"WZ" = (
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
/area/hangar)
(1,1,1) = {"
@@ -255,7 +417,7 @@ aZ
aZ
ag
an
-an
+pt
aJ
ae
ae
@@ -278,7 +440,7 @@ ai
ae
ae
aC
-an
+pt
an
ag
"}
@@ -288,7 +450,7 @@ aZ
aZ
ag
an
-an
+pt
aJ
ax
ax
@@ -311,7 +473,7 @@ ax
ax
ax
aC
-an
+pt
an
ag
"}
@@ -321,7 +483,7 @@ aZ
aZ
ag
an
-an
+pt
aJ
aN
aN
@@ -344,7 +506,7 @@ aN
aN
af
aC
-an
+pt
an
ag
"}
@@ -354,7 +516,7 @@ aZ
aZ
ag
an
-an
+pt
aJ
aN
aN
@@ -377,7 +539,7 @@ aN
aN
aN
aC
-an
+pt
an
ag
"}
@@ -387,7 +549,7 @@ aZ
aZ
ag
an
-aG
+pt
aJ
al
aN
@@ -410,7 +572,7 @@ aN
aN
al
aC
-aG
+pt
an
ag
"}
@@ -420,8 +582,8 @@ aZ
aZ
ag
an
-an
-aJ
+st
+qG
aN
aN
aN
@@ -442,8 +604,8 @@ aN
aN
aN
aN
-aC
-an
+Ud
+Ua
an
ag
"}
@@ -453,7 +615,7 @@ aZ
aZ
ag
an
-an
+Jt
aI
aN
aN
@@ -476,7 +638,7 @@ aN
aN
aN
aK
-an
+Jt
an
ag
"}
@@ -486,7 +648,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -509,7 +671,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -519,7 +681,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -542,7 +704,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -552,7 +714,7 @@ aZ
aZ
ag
an
-aG
+Jt
aJ
al
aN
@@ -575,7 +737,7 @@ aN
aN
al
aC
-aG
+Jt
an
ag
"}
@@ -585,7 +747,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -608,7 +770,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -618,7 +780,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -641,7 +803,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -651,7 +813,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -674,7 +836,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -684,7 +846,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -707,7 +869,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -717,7 +879,7 @@ aZ
aZ
ag
an
-aG
+Jt
aJ
al
aN
@@ -740,7 +902,7 @@ aN
aN
al
aC
-aG
+Jt
an
ag
"}
@@ -750,7 +912,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -773,7 +935,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -783,7 +945,7 @@ aZ
aZ
ag
an
-an
+Jt
aI
aN
aN
@@ -806,7 +968,7 @@ aN
aN
aN
aK
-an
+Jt
an
ag
"}
@@ -816,7 +978,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -839,7 +1001,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -849,7 +1011,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -872,7 +1034,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -882,7 +1044,7 @@ aZ
aZ
ag
an
-aG
+Jt
aJ
al
aN
@@ -905,7 +1067,7 @@ aN
aN
al
aC
-aG
+Jt
an
ag
"}
@@ -915,7 +1077,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -938,7 +1100,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -948,7 +1110,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -971,7 +1133,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -981,7 +1143,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1004,7 +1166,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1014,7 +1176,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1037,7 +1199,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1048,7 +1210,7 @@ aZ
ag
an
aG
-aJ
+qG
al
aN
aN
@@ -1069,8 +1231,8 @@ aN
aN
aN
al
-aC
-aG
+Ud
+UF
an
ag
"}
@@ -1080,7 +1242,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1103,7 +1265,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1113,7 +1275,7 @@ aZ
aZ
ag
an
-an
+Jt
aI
aN
aN
@@ -1136,7 +1298,7 @@ aN
aN
aN
aK
-an
+Jt
an
ag
"}
@@ -1146,7 +1308,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1169,7 +1331,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1179,7 +1341,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1202,7 +1364,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1212,7 +1374,7 @@ aZ
aZ
ag
an
-aG
+Jt
aJ
al
aN
@@ -1235,7 +1397,7 @@ aN
aN
al
aC
-aG
+Jt
an
ag
"}
@@ -1245,7 +1407,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1268,7 +1430,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1278,7 +1440,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1301,7 +1463,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1311,7 +1473,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1334,7 +1496,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1344,7 +1506,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1367,7 +1529,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1377,7 +1539,7 @@ aZ
aZ
ag
an
-aG
+Jt
aJ
al
aN
@@ -1400,7 +1562,7 @@ aN
aN
al
aC
-aG
+Jt
an
ag
"}
@@ -1410,7 +1572,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1433,7 +1595,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1443,7 +1605,7 @@ aZ
aZ
ag
an
-an
+Jt
aI
aN
aN
@@ -1466,7 +1628,7 @@ aN
aN
aN
aK
-an
+Jt
an
ag
"}
@@ -1476,7 +1638,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1499,7 +1661,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1509,8 +1671,8 @@ aZ
aZ
ag
an
-an
-aJ
+aG
+qG
aN
aN
aN
@@ -1531,8 +1693,8 @@ aN
aN
aN
aN
-aC
-an
+Ud
+UF
an
ag
"}
@@ -1542,7 +1704,7 @@ aZ
aZ
ag
an
-aG
+Jt
aJ
al
aN
@@ -1565,7 +1727,7 @@ aN
aN
al
aC
-aG
+Jt
an
ag
"}
@@ -1575,7 +1737,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1598,7 +1760,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1608,7 +1770,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1631,7 +1793,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1641,7 +1803,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1664,7 +1826,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1674,7 +1836,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1697,7 +1859,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1707,7 +1869,7 @@ aZ
aZ
ag
an
-aG
+Jt
aJ
al
aN
@@ -1730,7 +1892,7 @@ aN
aN
al
aC
-aG
+Jt
an
ag
"}
@@ -1740,7 +1902,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1763,7 +1925,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1773,7 +1935,7 @@ aZ
aZ
ag
an
-an
+Jt
aI
aN
aN
@@ -1796,7 +1958,7 @@ aN
aN
aN
aK
-an
+Jt
an
ag
"}
@@ -1806,7 +1968,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1829,7 +1991,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1839,7 +2001,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1862,7 +2024,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -1872,7 +2034,7 @@ aZ
aZ
ag
an
-aG
+Jt
aJ
al
aN
@@ -1895,7 +2057,7 @@ aN
aN
al
aC
-aG
+Jt
an
ag
"}
@@ -1905,7 +2067,7 @@ aZ
aZ
ag
an
-an
+Jt
aJ
aN
aN
@@ -1928,17 +2090,17 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
(54,1,1) = {"
aZ
aZ
-aZ
ag
-an
-an
+ag
+rb
+Jt
aJ
aN
aN
@@ -1961,17 +2123,17 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
(55,1,1) = {"
-aZ
-aZ
-aZ
ag
-an
-an
+ag
+ag
+MY
+ay
+Jt
aJ
aN
aN
@@ -1994,17 +2156,17 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
(56,1,1) = {"
-aZ
-aZ
-aZ
ag
-an
-an
+GM
+mV
+Td
+EZ
+Jt
aJ
aN
aN
@@ -2027,18 +2189,18 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
(57,1,1) = {"
-aZ
-aZ
-aZ
ag
-an
+ag
+xG
aG
-aJ
+aD
+Ld
+qG
al
aN
aN
@@ -2059,18 +2221,18 @@ aN
aN
aN
al
-aC
-aG
+Ud
+UF
an
ag
"}
(58,1,1) = {"
aZ
-aZ
-aZ
ag
-an
-an
+wb
+DF
+TZ
+Jt
aJ
aN
aN
@@ -2093,17 +2255,17 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
(59,1,1) = {"
aZ
-aZ
-aZ
+ag
+ag
vM
ay
-an
+WZ
aI
aN
aN
@@ -2126,7 +2288,7 @@ aN
aN
aN
aK
-an
+Jt
an
ag
"}
@@ -2159,7 +2321,7 @@ aN
aN
aN
aC
-an
+Jt
an
ag
"}
@@ -2169,7 +2331,7 @@ mX
mX
jJ
aj
-an
+ah
ap
aE
aE
@@ -2192,7 +2354,7 @@ aE
aE
aE
am
-an
+Jt
an
ag
"}
@@ -2203,29 +2365,29 @@ mX
mX
aj
aB
-an
-an
-an
aD
-an
-an
-an
-an
aD
-an
-an
-an
-an
aD
-an
-an
-an
-an
aD
-an
-an
-an
-an
+aD
+aD
+aD
+aD
+aD
+aD
+aD
+aD
+aD
+aD
+aD
+aD
+aD
+aD
+aD
+aD
+aD
+aD
+lA
an
ag
"}
@@ -2235,7 +2397,7 @@ mX
mX
mX
aj
-an
+mV
an
an
aP
diff --git a/_maps/outpost/hangar/indie_space_56x40.dmm b/_maps/outpost/hangar/indie_space_56x40.dmm
index 4adf317b8435..f2c909c23aaf 100644
--- a/_maps/outpost/hangar/indie_space_56x40.dmm
+++ b/_maps/outpost/hangar/indie_space_56x40.dmm
@@ -4,7 +4,11 @@
pixel_y = 25
},
/obj/effect/landmark/outpost/elevator_machine,
-/turf/open/floor/plasteel{
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
@@ -48,17 +52,16 @@
/area/hangar)
"ar" = (
/obj/effect/landmark/outpost/hangar_numbers,
-/turf/open/floor/plasteel{
- planetary_atmos = 1
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 10
},
+/turf/open/floor/plasteel/tech/techmaint,
/area/hangar)
"at" = (
-/obj/machinery/atmospherics/components/unary/passive_vent{
+/obj/structure/railing{
dir = 1
},
-/turf/open/floor/plasteel{
- planetary_atmos = 1
- },
+/turf/open/floor/plasteel/tech/techmaint,
/area/hangar)
"au" = (
/obj/machinery/light/floor/hangar,
@@ -82,10 +85,8 @@
},
/area/hangar)
"aD" = (
-/obj/effect/turf_decal/arrows{
- dir = 4
- },
-/turf/open/floor/plasteel{
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
@@ -161,21 +162,172 @@
/turf/template_noop,
/area/template_noop)
"aZ" = (
-/obj/effect/turf_decal/arrows{
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"ck" = (
+/turf/open/floor/plasteel/elevatorshaft{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"cR" = (
+/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning{
dir = 1
},
+/obj/machinery/atmospherics/components/binary/valve/digital,
/turf/open/floor/plasteel{
planetary_atmos = 1
},
/area/hangar)
-"ck" = (
-/turf/open/floor/plasteel/elevatorshaft{
+"ec" = (
+/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning{
+ dir = 8
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital{
+ dir = 4
+ },
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"el" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 6
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"ho" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold4w/orange/hidden,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"ik" = (
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/industrial/shutoff,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"il" = (
+/obj/machinery/computer/hydrogen_exchange,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"mh" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"mP" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"qn" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"uh" = (
+/obj/structure/table/reinforced,
+/obj/structure/sign/warning/nosmoking/burnt{
+ pixel_y = 28
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"vi" = (
+/obj/structure/railing/corner{
+ dir = 4;
+ layer = 4.1
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"vl" = (
+/obj/effect/turf_decal/industrial/shutoff,
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"vq" = (
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"zp" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 5
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"AN" = (
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"GH" = (
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/obj/structure/catwalk/over/plated_catwalk,
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Hd" = (
+/obj/structure/railing/corner{
+ dir = 1;
+ layer = 4.1
+ },
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"Lx" = (
+/obj/structure/railing/corner{
+ dir = 4;
+ layer = 4.1
+ },
+/turf/open/floor/plasteel{
planetary_atmos = 1
},
/area/hangar)
"MN" = (
-/obj/machinery/atmospherics/pipe/simple/general,
-/turf/closed/indestructible/reinforced,
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 8
+ },
+/obj/effect/turf_decal/industrial/outline/yellow,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"NB" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 9
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
/area/hangar)
"Qi" = (
/obj/effect/landmark/outpost/elevator,
@@ -183,6 +335,37 @@
planetary_atmos = 1
},
/area/hangar)
+"Sw" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"SV" = (
+/obj/machinery/atmospherics/components/unary/hydrogen_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/industrial/outline/yellow,
+/turf/open/floor/plasteel/tech/techmaint,
+/area/hangar)
+"Tt" = (
+/obj/effect/turf_decal/trimline/opaque/yellow/filled/warning,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel{
+ planetary_atmos = 1
+ },
+/area/hangar)
+"WQ" = (
+/obj/machinery/door/airlock/maintenance{
+ req_access_txt = "101"
+ },
+/turf/open/floor/plating{
+ planetary_atmos = 1
+ },
+/area/hangar)
(1,1,1) = {"
aV
@@ -296,7 +479,7 @@ aV
aV
aH
aN
-aN
+aD
aP
aG
aG
@@ -339,7 +522,7 @@ aw
aG
aG
aT
-aN
+aD
aN
aH
"}
@@ -349,7 +532,7 @@ aV
aV
aH
aN
-aN
+aD
aP
ai
ai
@@ -392,7 +575,7 @@ ai
ai
ai
aT
-aN
+aD
aN
aH
"}
@@ -402,7 +585,7 @@ aV
aV
aH
aN
-aN
+aD
aP
aM
aM
@@ -445,7 +628,7 @@ aM
aM
aj
aT
-aN
+aD
aN
aH
"}
@@ -455,7 +638,7 @@ aV
aV
aH
aN
-aN
+aD
aP
aM
aM
@@ -498,7 +681,7 @@ aM
aM
aM
aT
-aN
+aD
aN
aH
"}
@@ -561,8 +744,8 @@ aV
aV
aH
aN
-aN
-aP
+el
+Tt
aM
aM
aM
@@ -603,8 +786,8 @@ aM
aM
aM
aM
-aT
-aN
+cR
+zp
aN
aH
"}
@@ -614,7 +797,7 @@ aV
aV
aH
aN
-aN
+qn
am
aM
aM
@@ -657,7 +840,7 @@ aM
aM
aM
ao
-aN
+qn
aN
aH
"}
@@ -667,7 +850,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -710,7 +893,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -720,7 +903,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -763,7 +946,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -773,7 +956,7 @@ aV
aV
aH
aN
-aD
+qn
aP
aE
aM
@@ -816,7 +999,7 @@ aM
aM
aE
aT
-aD
+qn
aN
aH
"}
@@ -826,7 +1009,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -869,7 +1052,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -879,7 +1062,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -922,7 +1105,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -932,7 +1115,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -975,7 +1158,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -985,7 +1168,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1028,7 +1211,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1038,7 +1221,7 @@ aV
aV
aH
aN
-aD
+qn
aP
aE
aM
@@ -1081,7 +1264,7 @@ aM
aM
aE
aT
-aD
+qn
aN
aH
"}
@@ -1091,7 +1274,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1134,7 +1317,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1144,7 +1327,7 @@ aV
aV
aH
aN
-aN
+qn
am
aM
aM
@@ -1187,7 +1370,7 @@ aM
aM
aM
ao
-aN
+qn
aN
aH
"}
@@ -1197,7 +1380,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1240,7 +1423,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1250,7 +1433,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1293,7 +1476,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1303,7 +1486,7 @@ aV
aV
aH
aN
-aD
+qn
aP
aE
aM
@@ -1346,7 +1529,7 @@ aM
aM
aE
aT
-aD
+qn
aN
aH
"}
@@ -1356,7 +1539,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1399,7 +1582,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1409,7 +1592,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1452,7 +1635,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1462,7 +1645,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1505,7 +1688,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1515,7 +1698,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1558,7 +1741,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1568,8 +1751,8 @@ aV
aV
aH
aN
-aD
-aP
+Sw
+Tt
aE
aM
aM
@@ -1610,8 +1793,8 @@ aM
aM
aM
aE
-aT
-aD
+cR
+mh
aN
aH
"}
@@ -1621,7 +1804,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1664,7 +1847,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1674,7 +1857,7 @@ aV
aV
aH
aN
-aN
+qn
am
aM
aM
@@ -1717,7 +1900,7 @@ aM
aM
aM
ao
-aN
+qn
aN
aH
"}
@@ -1727,7 +1910,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1770,7 +1953,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1780,7 +1963,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1823,7 +2006,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1833,7 +2016,7 @@ aV
aV
aH
aN
-aD
+qn
aP
aE
aM
@@ -1876,7 +2059,7 @@ aM
aM
aE
aT
-aD
+qn
aN
aH
"}
@@ -1886,7 +2069,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1929,7 +2112,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1939,7 +2122,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -1982,7 +2165,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -1992,7 +2175,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -2035,7 +2218,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -2045,7 +2228,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -2088,7 +2271,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -2098,7 +2281,7 @@ aV
aV
aH
aN
-aD
+qn
aP
aE
aM
@@ -2141,7 +2324,7 @@ aM
aM
aE
aT
-aD
+qn
aN
aH
"}
@@ -2151,7 +2334,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -2194,7 +2377,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -2204,7 +2387,7 @@ aV
aV
aH
aN
-aN
+qn
am
aM
aM
@@ -2247,7 +2430,7 @@ aM
aM
aM
ao
-aN
+qn
aN
aH
"}
@@ -2257,7 +2440,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -2300,7 +2483,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -2310,8 +2493,8 @@ aV
aV
aH
aN
-aN
-aP
+Sw
+Tt
aM
aM
aM
@@ -2352,8 +2535,8 @@ aM
aM
aM
aM
-aT
-aN
+cR
+mh
aN
aH
"}
@@ -2363,7 +2546,7 @@ aV
aV
aH
aN
-aD
+qn
aP
aE
aM
@@ -2406,7 +2589,7 @@ aM
aM
aE
aT
-aD
+qn
aN
aH
"}
@@ -2416,7 +2599,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -2459,7 +2642,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -2469,7 +2652,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -2512,7 +2695,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -2522,7 +2705,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -2565,7 +2748,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -2575,7 +2758,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -2618,7 +2801,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -2628,7 +2811,7 @@ aV
aV
aH
aN
-aD
+qn
aP
aE
aM
@@ -2671,7 +2854,7 @@ aM
aM
aE
aT
-aD
+qn
aN
aH
"}
@@ -2681,7 +2864,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -2724,7 +2907,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -2734,7 +2917,7 @@ aV
aV
aH
aN
-aN
+qn
am
aM
aM
@@ -2777,7 +2960,7 @@ aM
aM
aM
ao
-aN
+qn
aN
aH
"}
@@ -2787,7 +2970,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -2830,7 +3013,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -2840,7 +3023,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -2883,7 +3066,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -2893,7 +3076,7 @@ aV
aV
aH
aN
-aD
+qn
aP
aE
aM
@@ -2936,7 +3119,7 @@ aM
aM
aE
aT
-aD
+qn
aN
aH
"}
@@ -2946,7 +3129,7 @@ aV
aV
aH
aN
-aN
+qn
aP
aM
aM
@@ -2989,17 +3172,17 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
(54,1,1) = {"
aV
aV
-aV
aH
-aN
-aN
+aH
+Lx
+qn
aP
aM
aM
@@ -3042,17 +3225,17 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
(55,1,1) = {"
-aV
-aV
-aV
aH
-aN
-aN
+aH
+aH
+SV
+at
+qn
aP
aM
aM
@@ -3095,17 +3278,17 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
(56,1,1) = {"
-aV
-aV
-aV
aH
-aN
-aN
+WQ
+vq
+ik
+Hd
+qn
aP
aM
aM
@@ -3148,18 +3331,18 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
(57,1,1) = {"
-aV
-aV
-aV
aH
-aN
-aD
-aP
+aH
+il
+Sw
+aZ
+ho
+Tt
aE
aM
aM
@@ -3200,18 +3383,18 @@ aM
aM
aM
aE
-aT
-aD
+cR
+mh
aN
aH
"}
(58,1,1) = {"
aV
-aV
-aV
aH
-aN
-aN
+uh
+vl
+vi
+qn
aP
aM
aM
@@ -3254,17 +3437,17 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
(59,1,1) = {"
aV
-aV
-aV
+aH
+aH
MN
at
-aN
+GH
am
aM
aM
@@ -3307,7 +3490,7 @@ aM
aM
aM
ao
-aN
+qn
aN
aH
"}
@@ -3360,7 +3543,7 @@ aM
aM
aM
aT
-aN
+qn
aN
aH
"}
@@ -3370,7 +3553,7 @@ ck
ck
Qi
aA
-aN
+AN
aK
aO
aO
@@ -3384,6 +3567,7 @@ aO
aO
aO
aO
+ec
aO
aO
aO
@@ -3398,8 +3582,7 @@ aO
aO
aO
aO
-aO
-aO
+ec
aO
aO
aO
@@ -3413,7 +3596,7 @@ aO
aO
aO
aI
-aN
+qn
aN
aH
"}
@@ -3424,49 +3607,49 @@ ck
ck
aA
ar
-aN
-aN
-aN
aZ
-aN
-aN
-aN
-aN
aZ
-aN
-aN
-aN
-aN
aZ
-aN
-aN
-aN
-aN
aZ
-aN
-aN
-aN
-aN
aZ
-aN
-aN
-aN
-aN
aZ
-aN
-aN
-aN
-aN
aZ
-aN
-aN
-aN
-aN
aZ
-aN
-aN
-aN
-aN
+aZ
+aZ
+aZ
+aZ
+aZ
+mP
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+mP
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+aZ
+NB
aN
aH
"}
@@ -3476,7 +3659,7 @@ ck
ck
ck
aA
-aN
+vq
aN
au
aN
diff --git a/_maps/outpost/hangar/nt_ice_20x20.dmm b/_maps/outpost/hangar/nt_ice_20x20.dmm
index ec7577ab620f..06e76cbe6b5b 100644
--- a/_maps/outpost/hangar/nt_ice_20x20.dmm
+++ b/_maps/outpost/hangar/nt_ice_20x20.dmm
@@ -191,6 +191,31 @@
planetary_atmos = 1
},
/area/hangar)
+"bv" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"bw" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"bA" = (
/obj/effect/turf_decal/borderfloor{
dir = 4
@@ -264,6 +289,7 @@
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
/turf/open/floor/plating{
light_color = "#1B1D2E";
light_range = 2;
@@ -280,6 +306,17 @@
planetary_atmos = 1
},
/area/hangar)
+"ee" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 6
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"fb" = (
/obj/effect/turf_decal/siding/white{
dir = 6
@@ -289,6 +326,15 @@
planetary_atmos = 1
},
/area/hangar)
+"fT" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"gy" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/effect/turf_decal/industrial/warning{
@@ -350,6 +396,49 @@
light_range = 2
},
/area/hangar)
+"iT" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"ka" = (
+/obj/machinery/atmospherics/pipe/manifold/orange/visible{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/structure/railing{
+ dir = 1;
+ layer = 2.8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"kq" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"me" = (
/obj/effect/turf_decal/siding/white{
dir = 4
@@ -359,6 +448,20 @@
planetary_atmos = 1
},
/area/hangar)
+"mz" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"mR" = (
/obj/machinery/door/airlock/outpost,
/turf/open/floor/plasteel/tech,
@@ -374,6 +477,18 @@
planetary_atmos = 1
},
/area/hangar)
+"nI" = (
+/obj/effect/turf_decal/borderfloor/full,
+/obj/machinery/light/floor,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 9
+ },
+/turf/open/floor/plasteel/patterned/cargo_one{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"nK" = (
/obj/effect/turf_decal/borderfloor{
dir = 1
@@ -399,6 +514,20 @@
light_range = 2
},
/area/hangar)
+"om" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"oA" = (
+/obj/machinery/door/airlock/outpost,
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden,
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"oE" = (
/obj/effect/turf_decal/borderfloor,
/obj/effect/turf_decal/siding/white{
@@ -444,6 +573,26 @@
planetary_atmos = 1
},
/area/hangar)
+"qk" = (
+/obj/effect/turf_decal/siding/white/end{
+ dir = 8
+ },
+/obj/machinery/computer/hydrogen_exchange{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"qV" = (
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
+ dir = 8
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"rj" = (
/turf/open/floor/plating/asteroid/snow/temperatre{
light_color = "#1B1D2E";
@@ -469,6 +618,15 @@
planetary_atmos = 1
},
/area/hangar)
+"sd" = (
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 4
+ },
+/obj/item/toy/plush/moth/firewatch{
+ pixel_y = 3
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"sV" = (
/obj/structure/closet/crate/bin,
/obj/effect/turf_decal/industrial/outline/yellow,
@@ -481,6 +639,18 @@
},
/turf/open/floor/plasteel/dark,
/area/hangar)
+"tt" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"ui" = (
/obj/effect/turf_decal/borderfloor{
dir = 10
@@ -514,6 +684,25 @@
planetary_atmos = 1
},
/area/hangar)
+"xv" = (
+/obj/structure/railing{
+ dir = 5;
+ layer = 2.8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 5
+ },
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/industrial/warning/fulltile,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"xB" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/effect/turf_decal/industrial/warning{
@@ -549,6 +738,32 @@
planetary_atmos = 1
},
/area/hangar)
+"yE" = (
+/obj/structure/flora/grass/both,
+/obj/item/trash/candy{
+ pixel_x = 4;
+ layer = 2.8
+ },
+/turf/open/floor/plating/asteroid/snow/temperatre{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"zs" = (
+/obj/effect/turf_decal/siding/white/end{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/glass,
+/obj/machinery/light/floor{
+ bulb_power = 0.75
+ },
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Aj" = (
/obj/effect/turf_decal/borderfloor/corner,
/obj/effect/turf_decal/siding/white{
@@ -563,6 +778,44 @@
planetary_atmos = 1
},
/area/hangar)
+"AE" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"AI" = (
+/obj/structure/flora/grass/green,
+/obj/item/trash/energybar{
+ layer = 2.8
+ },
+/turf/open/floor/plating/asteroid/snow/temperatre{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"Bw" = (
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
+ dir = 10
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
+"De" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Dh" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/dirt{
@@ -575,6 +828,29 @@
planetary_atmos = 1
},
/area/hangar)
+"Dq" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 4
+ },
+/obj/machinery/atmospherics/components/binary/pressure_valve,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"DK" = (
+/obj/structure/flora/stump,
+/turf/open/floor/plating/asteroid/snow/temperatre{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"ES" = (
/obj/effect/turf_decal/borderfloor{
dir = 6
@@ -604,6 +880,18 @@
planetary_atmos = 1
},
/area/hangar)
+"Fn" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 5
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"FM" = (
/obj/effect/turf_decal/siding/white{
dir = 10
@@ -625,6 +913,7 @@
/obj/effect/turf_decal/borderfloor/full,
/obj/machinery/light/floor,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
/turf/open/floor/plasteel/patterned/cargo_one{
light_color = "#1B1D2E";
light_range = 2
@@ -663,6 +952,20 @@
light_range = 2
},
/area/hangar)
+"HG" = (
+/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)
"Iz" = (
/obj/effect/turf_decal/borderfloor{
dir = 1
@@ -693,12 +996,29 @@
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
/turf/open/floor/plating{
light_color = "#1B1D2E";
light_range = 2;
planetary_atmos = 1
},
/area/hangar)
+"JD" = (
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/turf_decal/industrial/shutoff,
+/obj/structure/railing{
+ dir = 1;
+ layer = 2.8
+ },
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"JU" = (
/obj/effect/turf_decal/siding/white{
dir = 8
@@ -718,6 +1038,17 @@
planetary_atmos = 1
},
/area/hangar)
+"Kw" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"KC" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/oil,
@@ -738,6 +1069,37 @@
light_range = 2
},
/area/hangar)
+"Lu" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Lz" = (
+/obj/structure/railing{
+ dir = 9;
+ layer = 2.8
+ },
+/obj/machinery/atmospherics/components/unary/hydrogen_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 9
+ },
+/obj/effect/turf_decal/industrial/warning/fulltile,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"MI" = (
/obj/structure/flora/grass/both,
/turf/open/floor/plating/asteroid/snow/temperatre{
@@ -768,11 +1130,23 @@
/obj/effect/turf_decal/siding/white{
dir = 1
},
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/decal/cleanable/dirt,
-/obj/structure/railing{
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/structure/railing{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"NH" = (
+/obj/effect/turf_decal/borderfloor{
dir = 1
},
+/obj/effect/turf_decal/siding/white,
+/obj/machinery/atmospherics/components/binary/valve/digital,
/turf/open/floor/plasteel/patterned/brushed{
light_color = "#1B1D2E";
light_range = 2;
@@ -802,6 +1176,36 @@
planetary_atmos = 1
},
/area/hangar)
+"PI" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"PL" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/structure/railing/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Qb" = (
/obj/effect/turf_decal/borderfloor{
dir = 4
@@ -914,6 +1318,44 @@
},
/turf/open/floor/plasteel/tech,
/area/hangar)
+"TU" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/light/small/directional/north{
+ pixel_x = -6;
+ bulb_power = 0.25
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"TX" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/obj/structure/railing/corner{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Ul" = (
/obj/effect/turf_decal/borderfloor{
dir = 8
@@ -942,6 +1384,19 @@
planetary_atmos = 1
},
/area/hangar)
+"UZ" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Vk" = (
/obj/effect/turf_decal/borderfloor{
dir = 8
@@ -971,6 +1426,20 @@
planetary_atmos = 1
},
/area/hangar)
+"WY" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/oil/streak,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Xd" = (
/obj/effect/turf_decal/siding/white{
dir = 8
@@ -987,6 +1456,17 @@
planetary_atmos = 1
},
/area/hangar)
+"Xt" = (
+/obj/effect/turf_decal/borderfloor/full,
+/obj/machinery/light/floor,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 10
+ },
+/turf/open/floor/plasteel/patterned/cargo_one{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"XC" = (
/obj/effect/turf_decal/siding/white{
dir = 6
@@ -1017,6 +1497,33 @@
light_range = 2
},
/area/hangar)
+"Yt" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Yu" = (
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"YN" = (
/obj/effect/turf_decal/borderfloor{
dir = 4
@@ -1051,6 +1558,18 @@
planetary_atmos = 1
},
/area/hangar)
+"Zc" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Ze" = (
/obj/effect/turf_decal/borderfloor{
dir = 1
@@ -1061,6 +1580,18 @@
planetary_atmos = 1
},
/area/hangar)
+"Zf" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Zi" = (
/obj/effect/turf_decal/industrial/traffic{
dir = 4
@@ -1303,7 +1834,7 @@ rj
rj
MI
rj
-rj
+DK
rj
MI
rj
@@ -1316,7 +1847,7 @@ rj
rj
MN
rj
-rj
+DK
rj
rj
rj
@@ -1341,7 +1872,7 @@ rj
rj
rj
rj
-rj
+DK
rj
rj
rj
@@ -1350,7 +1881,7 @@ rj
rj
MN
rj
-rj
+DK
rj
MI
rj
@@ -1473,7 +2004,7 @@ TA
rj
rj
rj
-rj
+DK
rj
rj
rj
@@ -1522,7 +2053,7 @@ rj
rj
rj
rj
-rj
+DK
MI
rj
rj
@@ -1714,7 +2245,7 @@ ac
ac
aM
MN
-rj
+GX
aC
rQ
av
@@ -1755,8 +2286,8 @@ am
am
am
rj
-rj
-MI
+yE
+qk
Fi
ap
av
@@ -1794,14 +2325,14 @@ am
(18,1,1) = {"
am
hg
-hg
+sd
am
+MI
rj
-GX
-rj
-nr
-ap
-av
+Yu
+TX
+ee
+NH
aJ
aJ
aJ
@@ -1822,8 +2353,8 @@ aJ
aJ
aJ
aJ
-nr
-rQ
+De
+Fn
aT
MI
rj
@@ -1836,13 +2367,13 @@ am
(19,1,1) = {"
am
hg
-hg
+qV
am
-rj
-rj
-rj
+bv
+bv
+zs
Fi
-rQ
+tt
av
aJ
aJ
@@ -1865,7 +2396,7 @@ aJ
aJ
aJ
aO
-rQ
+Zc
nK
rj
rj
@@ -1878,13 +2409,13 @@ ac
(20,1,1) = {"
am
hg
-hg
-mR
-rj
-rj
-GX
-aC
-NO
+Bw
+oA
+om
+om
+Lz
+PL
+PI
av
aJ
aJ
@@ -1907,7 +2438,7 @@ aJ
aJ
aJ
nr
-rQ
+Zc
nK
rj
GX
@@ -1922,10 +2453,10 @@ am
hg
hg
am
-MI
-rj
-rj
-aC
+TU
+WY
+HG
+Yt
IG
av
aJ
@@ -1949,7 +2480,7 @@ aJ
aJ
aJ
nr
-NO
+Lu
nK
rj
rj
@@ -1964,10 +2495,10 @@ am
am
am
am
+AI
rj
-MN
-rj
-aC
+ka
+Dq
cI
av
ad
@@ -1991,7 +2522,7 @@ aJ
aJ
ad
nr
-NO
+Lu
nK
MI
rj
@@ -2007,10 +2538,10 @@ ac
ac
ac
rj
-GX
-MN
-aC
-NO
+rj
+JD
+nr
+PI
aT
aJ
aJ
@@ -2033,7 +2564,7 @@ aJ
aJ
aJ
nr
-NO
+Lu
nK
rj
GX
@@ -2049,10 +2580,10 @@ ac
ac
ac
rj
-rj
-rj
-aC
-NO
+MI
+xv
+mz
+PI
aT
aJ
aJ
@@ -2075,7 +2606,7 @@ aJ
aJ
aJ
nr
-NO
+Lu
uC
rj
rj
@@ -2091,10 +2622,10 @@ ac
ac
TA
rj
-MI
+GX
rj
-Fi
-rQ
+aC
+tt
aT
aJ
aJ
@@ -2117,7 +2648,7 @@ aJ
aJ
aJ
nr
-rQ
+Zc
TF
rj
MI
@@ -2134,9 +2665,9 @@ ac
rj
rj
rj
-MI
+rj
aC
-rQ
+tt
av
aJ
aJ
@@ -2159,7 +2690,7 @@ aJ
aJ
aJ
nr
-NO
+Lu
TF
rj
ac
@@ -2174,11 +2705,11 @@ ac
ac
ac
rj
-rj
+MN
rj
rj
aC
-rQ
+tt
av
ad
aJ
@@ -2201,7 +2732,7 @@ aJ
aJ
ad
aO
-ap
+kq
nK
MN
ac
@@ -2220,7 +2751,7 @@ rj
rj
GX
aC
-ap
+Kw
av
aJ
aJ
@@ -2243,7 +2774,7 @@ aJ
aJ
aJ
aO
-rQ
+Zc
nK
rj
ac
@@ -2262,7 +2793,7 @@ MI
rj
rj
aC
-ap
+Kw
av
aJ
aJ
@@ -2285,7 +2816,7 @@ aJ
aJ
aJ
aO
-rQ
+Zc
nK
MI
rj
@@ -2304,7 +2835,7 @@ rj
rj
rj
aC
-ap
+Kw
av
aJ
aJ
@@ -2327,7 +2858,7 @@ aJ
aJ
aJ
nr
-rQ
+Zc
nK
GX
rj
@@ -2346,7 +2877,7 @@ rj
MI
rj
aC
-ap
+Kw
av
aJ
aJ
@@ -2369,7 +2900,7 @@ aJ
aJ
aJ
nr
-NO
+Lu
nK
rj
rj
@@ -2388,7 +2919,7 @@ rj
GX
rj
aC
-rQ
+tt
aT
ad
aJ
@@ -2410,8 +2941,8 @@ aJ
aJ
aJ
ad
-nr
-NO
+De
+iT
nK
rj
MI
@@ -2430,8 +2961,8 @@ rj
MN
rj
Fi
-rQ
-aT
+Zf
+UZ
aJ
aJ
aJ
@@ -2453,7 +2984,7 @@ aJ
aJ
aJ
nr
-rQ
+Zc
nK
rj
GX
@@ -2472,7 +3003,7 @@ rj
rj
GX
Fi
-ap
+Kw
aT
aJ
aJ
@@ -2495,7 +3026,7 @@ ad
aJ
aJ
nr
-ap
+kq
nK
rj
rj
@@ -2514,7 +3045,7 @@ rj
rj
rj
aC
-ap
+Kw
SW
Qb
Qb
@@ -2537,7 +3068,7 @@ Qb
Qb
Qb
ES
-ap
+kq
nK
MI
TA
@@ -2556,30 +3087,30 @@ rj
MI
rj
aC
-hv
-ap
-NO
-rQ
-rQ
-rQ
-ap
-NO
-NO
-rQ
-rQ
-rQ
-FS
-ap
-rQ
-ap
-ap
-ap
-NO
-NO
-rQ
-ap
-ap
+Xt
+fT
+bw
+AE
+AE
+AE
+fT
+bw
+bw
+AE
+AE
+AE
FS
+fT
+AE
+fT
+fT
+fT
+bw
+bw
+AE
+fT
+fT
+nI
uC
rj
ac
diff --git a/_maps/outpost/hangar/nt_ice_40x20.dmm b/_maps/outpost/hangar/nt_ice_40x20.dmm
index a9066a1dcef2..defafdc3b085 100644
--- a/_maps/outpost/hangar/nt_ice_40x20.dmm
+++ b/_maps/outpost/hangar/nt_ice_40x20.dmm
@@ -242,6 +242,21 @@
planetary_atmos = 1
},
/area/hangar)
+"ca" = (
+/obj/machinery/door/airlock/outpost,
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden,
+/turf/open/floor/plasteel/tech,
+/area/hangar)
+"cx" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"dA" = (
/obj/effect/turf_decal/borderfloor{
dir = 1
@@ -281,6 +296,22 @@
planetary_atmos = 1
},
/area/hangar)
+"eg" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 4
+ },
+/obj/machinery/atmospherics/components/binary/pressure_valve,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"es" = (
/obj/effect/decal/fakelattice,
/obj/machinery/light/small/directional/east,
@@ -339,6 +370,21 @@
planetary_atmos = 1
},
/area/hangar)
+"gk" = (
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"hh" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/effect/turf_decal/industrial/warning{
@@ -350,6 +396,15 @@
light_range = 2
},
/area/hangar)
+"hr" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"hX" = (
/obj/effect/landmark/outpost/hangar_dock,
/turf/open/floor/plating{
@@ -387,6 +442,19 @@
light_range = 2
},
/area/hangar)
+"jm" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"jv" = (
/obj/effect/turf_decal/borderfloor{
dir = 8
@@ -429,6 +497,10 @@
planetary_atmos = 1
},
/area/hangar)
+"ln" = (
+/obj/structure/flora/rock/pile/icy,
+/turf/open/floor/plating/asteroid/icerock/temperate,
+/area/hangar)
"lG" = (
/obj/effect/turf_decal/siding/white{
dir = 9
@@ -482,6 +554,48 @@
planetary_atmos = 1
},
/area/hangar)
+"mE" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"mM" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"nE" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"ok" = (
+/obj/effect/turf_decal/borderfloor/full,
+/obj/machinery/light/floor,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plasteel/patterned/cargo_one{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"oA" = (
/obj/effect/turf_decal/borderfloor/corner{
dir = 1
@@ -530,6 +644,32 @@
planetary_atmos = 1
},
/area/hangar)
+"pn" = (
+/obj/effect/turf_decal/siding/white/end{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/glass,
+/obj/machinery/light/floor{
+ bulb_power = 0.75
+ },
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"pu" = (
+/obj/effect/turf_decal/borderfloor/full,
+/obj/machinery/light/floor,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 10
+ },
+/turf/open/floor/plasteel/patterned/cargo_one{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"pv" = (
/obj/structure/flora/grass/both,
/turf/open/floor/plating/asteroid/snow/temperatre{
@@ -537,6 +677,20 @@
light_range = 2
},
/area/hangar)
+"pz" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"qa" = (
/obj/effect/turf_decal/borderfloor,
/obj/effect/turf_decal/siding/white{
@@ -681,12 +835,82 @@
planetary_atmos = 1
},
/area/hangar)
+"tW" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"uk" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"us" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"uv" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/oil/streak,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"uK" = (
+/obj/structure/railing{
+ dir = 9;
+ layer = 2.8
+ },
+/obj/machinery/atmospherics/components/unary/hydrogen_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 9
+ },
+/obj/effect/turf_decal/industrial/warning/fulltile,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"wH" = (
/obj/structure/catwalk/over/plated_catwalk,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
/turf/open/floor/plating{
light_color = "#1B1D2E";
light_range = 2;
@@ -729,6 +953,19 @@
planetary_atmos = 1
},
/area/hangar)
+"yt" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"zT" = (
/obj/structure/flora/tree/dead,
/turf/open/floor/plating/asteroid/snow/temperatre{
@@ -736,6 +973,19 @@
light_range = 2
},
/area/hangar)
+"Af" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"AN" = (
/obj/effect/turf_decal/borderfloor{
dir = 9
@@ -750,6 +1000,34 @@
planetary_atmos = 1
},
/area/hangar)
+"AY" = (
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/turf_decal/industrial/shutoff,
+/obj/structure/railing{
+ dir = 1;
+ layer = 2.8
+ },
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
+"Br" = (
+/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)
"Cg" = (
/obj/effect/turf_decal/borderfloor{
dir = 1
@@ -760,6 +1038,31 @@
planetary_atmos = 1
},
/area/hangar)
+"CQ" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Db" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"DM" = (
/obj/effect/turf_decal/borderfloor{
dir = 1
@@ -778,6 +1081,27 @@
/obj/effect/decal/cleanable/dirt/dust,
/turf/open/floor/plasteel/dark,
/area/hangar)
+"EI" = (
+/obj/machinery/atmospherics/pipe/manifold/orange/visible{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/structure/railing{
+ dir = 1;
+ layer = 2.8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"EJ" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/effect/turf_decal/industrial/warning{
@@ -801,6 +1125,26 @@
planetary_atmos = 1
},
/area/hangar)
+"FO" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/obj/structure/railing/corner{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"FX" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/dirt{
@@ -814,6 +1158,18 @@
planetary_atmos = 1
},
/area/hangar)
+"GG" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"GS" = (
/obj/effect/turf_decal/borderfloor{
dir = 5
@@ -828,15 +1184,45 @@
planetary_atmos = 1
},
/area/hangar)
+"Hw" = (
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
+ dir = 10
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
+"HZ" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Iv" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/machinery/light/floor,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 9
+ },
/turf/open/floor/plasteel/patterned/cargo_one{
light_color = "#1B1D2E";
light_range = 2
},
/area/hangar)
+"IF" = (
+/obj/structure/flora/grass/both,
+/obj/item/trash/raisins{
+ layer = 2.8
+ },
+/turf/open/floor/plating/asteroid/snow/temperatre{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Jb" = (
/obj/effect/turf_decal/borderfloor{
dir = 4
@@ -854,6 +1240,30 @@
planetary_atmos = 1
},
/area/hangar)
+"Je" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Jh" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Js" = (
/obj/effect/turf_decal/corner/opaque/neutral,
/obj/effect/turf_decal/siding/white{
@@ -939,6 +1349,50 @@
"MM" = (
/turf/open/floor/plasteel/tech,
/area/hangar)
+"MV" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"MY" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 5
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Nz" = (
+/obj/structure/flora/grass/green,
+/obj/item/trash/pistachios{
+ layer = 2.8
+ },
+/turf/open/floor/plating/asteroid/snow/temperatre{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"ON" = (
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 4
+ },
+/obj/item/toy/plush/moth/firewatch{
+ pixel_y = 3
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"OP" = (
/obj/effect/turf_decal/borderfloor{
dir = 1
@@ -979,6 +1433,25 @@
planetary_atmos = 1
},
/area/hangar)
+"Rh" = (
+/obj/structure/railing{
+ dir = 5;
+ layer = 2.8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 5
+ },
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/industrial/warning/fulltile,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"RU" = (
/obj/effect/turf_decal/borderfloor{
dir = 8
@@ -992,6 +1465,13 @@
planetary_atmos = 1
},
/area/hangar)
+"Sb" = (
+/obj/structure/flora/stump,
+/turf/open/floor/plating/asteroid/snow/temperatre{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Sh" = (
/obj/effect/turf_decal/siding/white{
dir = 8
@@ -1024,6 +1504,12 @@
planetary_atmos = 1
},
/area/hangar)
+"Td" = (
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
+ dir = 8
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"TX" = (
/obj/effect/decal/fakelattice,
/turf/open/floor/plasteel/elevatorshaft{
@@ -1034,6 +1520,37 @@
/obj/machinery/door/airlock/outpost,
/turf/open/floor/plasteel/tech,
/area/hangar)
+"UH" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/structure/railing/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"UU" = (
+/obj/effect/turf_decal/siding/white/end{
+ dir = 8
+ },
+/obj/machinery/computer/hydrogen_exchange{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Vs" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/dirt{
@@ -1044,6 +1561,17 @@
planetary_atmos = 1
},
/area/hangar)
+"Wa" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Ww" = (
/obj/effect/turf_decal/borderfloor,
/obj/effect/turf_decal/siding/white{
@@ -1063,7 +1591,9 @@
/obj/structure/catwalk/over/plated_catwalk,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
-/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
/turf/open/floor/plating{
light_color = "#1B1D2E";
light_range = 2;
@@ -1091,6 +1621,49 @@
planetary_atmos = 1
},
/area/hangar)
+"XS" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"YG" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 6
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"YV" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/light/small/directional/north{
+ pixel_x = -6;
+ bulb_power = 0.25
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Zc" = (
/obj/effect/turf_decal/siding/white{
dir = 6
@@ -1121,6 +1694,20 @@
light_range = 2
},
/area/hangar)
+"Zl" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"ZK" = (
/obj/effect/turf_decal/siding/white{
dir = 4
@@ -1354,7 +1941,7 @@ aO
as
aO
aO
-aO
+Sb
pv
aO
aO
@@ -1370,7 +1957,7 @@ aO
aO
as
aO
-aO
+Sb
aO
aO
aO
@@ -1405,7 +1992,7 @@ aO
as
aO
aO
-aO
+Sb
pv
aO
aO
@@ -1442,7 +2029,7 @@ aO
aO
aO
aO
-aO
+Sb
aO
aO
aO
@@ -1499,7 +2086,7 @@ aO
aO
aO
aO
-aO
+Sb
aO
aO
aO
@@ -1519,7 +2106,7 @@ aO
aO
as
aO
-aO
+Sb
aO
aO
aO
@@ -1529,7 +2116,7 @@ aO
aO
aO
aO
-aO
+Sb
aO
pv
aO
@@ -1854,8 +2441,8 @@ pv
aO
aO
aL
-aR
-DM
+YG
+uk
ae
ae
ae
@@ -1876,8 +2463,8 @@ ae
ae
ae
ae
-fQ
-WM
+yt
+MY
OP
aO
al
@@ -1896,7 +2483,7 @@ aO
aO
aO
aL
-rI
+nE
DM
ae
ae
@@ -1919,7 +2506,7 @@ ae
ae
ae
fQ
-aR
+Af
lQ
aO
aO
@@ -1938,7 +2525,7 @@ aY
aO
as
aL
-rI
+nE
DM
ae
ae
@@ -1961,7 +2548,7 @@ ae
ae
ae
rq
-am
+MV
OP
aO
aO
@@ -1980,7 +2567,7 @@ aw
al
aO
aL
-rI
+nE
DM
ae
ae
@@ -2003,7 +2590,7 @@ ae
ae
ae
rq
-am
+MV
OP
aO
pv
@@ -2022,7 +2609,7 @@ aY
aO
pv
aL
-rI
+nE
DM
aD
ae
@@ -2045,7 +2632,7 @@ ae
ae
aD
rq
-am
+MV
OP
aO
aO
@@ -2064,7 +2651,7 @@ aY
aO
aO
aL
-rI
+nE
DM
ae
ae
@@ -2087,7 +2674,7 @@ ae
ae
ae
rq
-am
+MV
OP
aO
aO
@@ -2106,7 +2693,7 @@ aY
wR
aO
Ww
-rI
+nE
DM
ae
ae
@@ -2129,7 +2716,7 @@ ae
ae
ae
rq
-am
+MV
OP
aO
al
@@ -2148,7 +2735,7 @@ aY
aY
aO
Ww
-rI
+nE
DM
ae
ae
@@ -2171,7 +2758,7 @@ ae
ae
ae
rq
-am
+MV
OP
aO
as
@@ -2190,7 +2777,7 @@ aY
aY
aO
Ww
-am
+mE
DM
ae
ae
@@ -2213,7 +2800,7 @@ ae
ae
ae
fQ
-am
+MV
OP
pv
aO
@@ -2232,7 +2819,7 @@ aY
pv
aO
Ww
-am
+mE
DM
aD
ae
@@ -2255,7 +2842,7 @@ ae
ae
aD
rq
-aR
+Af
OP
aO
aO
@@ -2274,7 +2861,7 @@ aY
aO
as
Ww
-am
+mE
DM
ae
ae
@@ -2297,7 +2884,7 @@ ae
ae
ae
rq
-rI
+GG
lQ
aO
al
@@ -2316,7 +2903,7 @@ aY
aO
al
aL
-am
+mE
DM
ae
ae
@@ -2339,7 +2926,7 @@ ae
ae
ae
rq
-rI
+GG
lQ
aO
aO
@@ -2358,7 +2945,7 @@ aY
aO
aO
aL
-am
+mE
DM
ae
ae
@@ -2381,7 +2968,7 @@ ae
ae
ae
rq
-rI
+GG
OP
aO
pv
@@ -2400,7 +2987,7 @@ aY
pv
aO
aL
-am
+mE
aM
ae
ae
@@ -2423,7 +3010,7 @@ ae
ae
ae
rq
-rI
+GG
lQ
aO
aO
@@ -2442,7 +3029,7 @@ aY
aO
aO
aL
-rI
+nE
aM
aD
ae
@@ -2465,7 +3052,7 @@ ae
ae
aD
rq
-rI
+GG
lQ
aO
aO
@@ -2480,11 +3067,11 @@ aY
aY
aY
aY
-aw
-as
+aY
+Nz
aO
aL
-rI
+nE
DM
ae
ae
@@ -2507,7 +3094,7 @@ ae
ae
ae
qa
-aR
+Af
lQ
aO
aO
@@ -2522,11 +3109,11 @@ ab
ab
ab
ab
+ln
aO
-aO
-pv
-rq
-rI
+UU
+Ww
+mE
DM
ae
ae
@@ -2549,7 +3136,7 @@ ae
ae
ae
rq
-rI
+GG
DM
aO
aO
@@ -2562,14 +3149,14 @@ ab
(35,1,1) = {"
ab
MM
-MM
+ON
ab
+pv
aO
-al
-aO
-aL
-rI
-DM
+gk
+FO
+HZ
+uk
ae
ae
ae
@@ -2590,8 +3177,8 @@ ae
ae
ae
ae
-rq
-rI
+XS
+Je
lQ
pv
aO
@@ -2604,13 +3191,13 @@ ab
(36,1,1) = {"
ab
MM
-MM
+Td
ab
-aO
-aO
-aO
-aL
-rI
+Zl
+Zl
+pn
+Ww
+nE
DM
ae
ae
@@ -2633,7 +3220,7 @@ ae
ae
ae
rq
-am
+MV
lQ
al
aO
@@ -2646,13 +3233,13 @@ aY
(37,1,1) = {"
ab
MM
-MM
-Uo
-aO
-aO
-al
-Ww
-am
+Hw
+ca
+mM
+mM
+uK
+UH
+WM
DM
aD
ae
@@ -2675,7 +3262,7 @@ ae
ae
aD
rq
-rI
+GG
lQ
aO
aO
@@ -2690,11 +3277,11 @@ ab
MM
MM
ab
-pv
-aO
-aO
-aL
-am
+YV
+uv
+Br
+CQ
+pz
DM
ae
ae
@@ -2717,7 +3304,7 @@ ae
ae
ae
rq
-rI
+GG
OP
aO
aO
@@ -2732,11 +3319,11 @@ ab
ab
ab
ab
-aO
as
aO
-Ww
-rI
+EI
+eg
+jm
DM
ae
ae
@@ -2759,7 +3346,7 @@ ae
ae
ae
fQ
-rI
+GG
lQ
pv
aO
@@ -2773,12 +3360,12 @@ aY
aY
aY
aY
-aY
+ln
aO
-al
-as
-aL
-aR
+aO
+AY
+rq
+WM
DM
ae
ae
@@ -2801,7 +3388,7 @@ ae
ae
ae
rq
-rI
+GG
lQ
aO
al
@@ -2817,9 +3404,9 @@ aY
aY
aY
aO
-aO
-aO
-aL
+IF
+Rh
+Jh
WM
DM
ae
@@ -2843,7 +3430,7 @@ ae
ae
ae
rq
-aR
+Af
lQ
aO
aO
@@ -2857,9 +3444,9 @@ aY
aY
aY
aY
-wR
aO
-pv
+aO
+al
aO
aL
wH
@@ -2885,7 +3472,7 @@ ae
ae
aD
rq
-aR
+Af
lQ
aO
pv
@@ -2902,9 +3489,9 @@ aY
aO
aO
aO
-pv
+as
aL
-aR
+WM
aM
ae
ae
@@ -2927,7 +3514,7 @@ ae
ae
ae
rq
-aR
+Af
lQ
aO
aY
@@ -2942,11 +3529,11 @@ aY
aY
aY
aO
-aO
+pv
aO
aO
aL
-aR
+WM
aM
ae
ae
@@ -2969,7 +3556,7 @@ ae
ae
ae
rq
-aR
+Af
OP
as
aY
@@ -2988,7 +3575,7 @@ aO
aO
al
Ww
-rI
+nE
aM
ae
ae
@@ -3011,7 +3598,7 @@ ae
ae
ae
rq
-rI
+GG
Sn
aO
aY
@@ -3026,11 +3613,11 @@ aY
aY
aw
aO
-pv
+al
aO
aO
aL
-rI
+nE
DM
ae
ae
@@ -3053,7 +3640,7 @@ ae
ae
ae
rq
-aR
+Af
Sn
pv
aO
@@ -3072,7 +3659,7 @@ aO
aO
aO
aL
-rI
+nE
DM
aD
ae
@@ -3095,7 +3682,7 @@ ae
ae
aD
fQ
-am
+MV
lQ
al
aO
@@ -3114,7 +3701,7 @@ aO
pv
aO
aL
-am
+mE
DM
ae
ae
@@ -3137,7 +3724,7 @@ ae
ae
ae
fQ
-rI
+GG
lQ
aO
aO
@@ -3156,7 +3743,7 @@ aO
al
aO
aL
-am
+mE
DM
ae
ae
@@ -3179,7 +3766,7 @@ ae
ae
ae
fQ
-rI
+GG
lQ
aO
pv
@@ -3198,7 +3785,7 @@ aO
as
aO
aL
-am
+mE
DM
ae
ae
@@ -3221,7 +3808,7 @@ ae
ae
ae
rq
-rI
+GG
lQ
aO
al
@@ -3240,7 +3827,7 @@ aO
aO
al
aL
-am
+mE
DM
ae
ae
@@ -3263,7 +3850,7 @@ ae
ae
ae
rq
-aR
+Af
lQ
aO
aO
@@ -3282,8 +3869,8 @@ aO
aO
aO
aL
-rI
-aM
+tW
+Db
aD
ae
ae
@@ -3304,8 +3891,8 @@ ae
ae
ae
aD
-rq
-aR
+XS
+Wa
lQ
pv
wR
@@ -3324,7 +3911,7 @@ aO
pv
aO
Ww
-rI
+nE
aM
ae
ae
@@ -3347,7 +3934,7 @@ ae
ae
ae
rq
-rI
+GG
lQ
aO
aY
@@ -3366,7 +3953,7 @@ aO
aO
aO
Ww
-am
+mE
aM
ae
ae
@@ -3389,7 +3976,7 @@ aD
ae
ae
rq
-am
+MV
lQ
as
aY
@@ -3408,7 +3995,7 @@ al
aO
aO
aL
-am
+mE
GS
af
af
@@ -3431,7 +4018,7 @@ af
af
af
mj
-am
+MV
lQ
pv
aY
@@ -3450,29 +4037,29 @@ pv
aO
aO
aL
-aU
-am
-aR
-rI
-rI
-rI
-am
-aR
-aR
-rI
-rI
-rI
-Iv
-am
-rI
-am
-am
-am
-aR
-aR
-rI
-am
-am
+pu
+hr
+us
+cx
+cx
+cx
+hr
+us
+us
+cx
+cx
+cx
+ok
+hr
+cx
+hr
+hr
+hr
+us
+us
+cx
+hr
+hr
Iv
OP
aO
diff --git a/_maps/outpost/hangar/nt_ice_40x40.dmm b/_maps/outpost/hangar/nt_ice_40x40.dmm
index f2f644dd7dda..62c3858641a5 100644
--- a/_maps/outpost/hangar/nt_ice_40x40.dmm
+++ b/_maps/outpost/hangar/nt_ice_40x40.dmm
@@ -168,6 +168,37 @@
planetary_atmos = 1
},
/area/hangar)
+"aJ" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/light/small/directional/north{
+ pixel_x = -6;
+ bulb_power = 0.25
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"aP" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"aQ" = (
/obj/structure/flora/rock/pile/icy,
/turf/open/floor/plating/asteroid/snow/temperatre{
@@ -201,7 +232,9 @@
/obj/structure/catwalk/over/plated_catwalk,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
-/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
/turf/open/floor/plating{
light_color = "#1B1D2E";
light_range = 2;
@@ -212,6 +245,7 @@
/obj/effect/turf_decal/borderfloor/full,
/obj/machinery/light/floor,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
/turf/open/floor/plasteel/patterned/cargo_one{
light_color = "#1B1D2E";
light_range = 2
@@ -258,6 +292,10 @@
planetary_atmos = 1
},
/area/hangar)
+"cG" = (
+/obj/structure/flora/rock/pile/icy,
+/turf/open/floor/plating/asteroid/icerock/temperate,
+/area/hangar)
"dQ" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/greenglow{
@@ -285,6 +323,17 @@
planetary_atmos = 1
},
/area/hangar)
+"eF" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"eU" = (
/obj/effect/turf_decal/siding/white{
dir = 4
@@ -297,6 +346,17 @@
/obj/effect/decal/cleanable/oil,
/turf/open/floor/plasteel/tech,
/area/hangar)
+"fd" = (
+/obj/effect/turf_decal/borderfloor/full,
+/obj/machinery/light/floor,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 10
+ },
+/turf/open/floor/plasteel/patterned/cargo_one{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"fJ" = (
/obj/effect/turf_decal/industrial/traffic{
dir = 1
@@ -336,6 +396,30 @@
planetary_atmos = 1
},
/area/hangar)
+"gN" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"hh" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 5
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"hr" = (
/obj/effect/turf_decal/borderfloor/corner{
dir = 8
@@ -406,6 +490,19 @@
planetary_atmos = 1
},
/area/hangar)
+"iY" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 6
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"jF" = (
/obj/effect/turf_decal/corner/opaque/neutral,
/obj/effect/turf_decal/siding/white,
@@ -457,6 +554,39 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel/telecomms_floor,
/area/hangar)
+"lb" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/oil/streak,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"lg" = (
+/obj/structure/railing{
+ dir = 5;
+ layer = 2.8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 5
+ },
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/industrial/warning/fulltile,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"lC" = (
/obj/effect/turf_decal/borderfloor,
/obj/effect/turf_decal/siding/white{
@@ -552,13 +682,32 @@
"pd" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/effect/turf_decal/industrial/warning,
-/obj/structure/filingcabinet/double/grey,
/obj/effect/decal/cleanable/dirt,
/obj/machinery/light/small/directional/east,
+/obj/structure/filingcabinet/double/grey{
+ dir = 8;
+ pixel_x = 7
+ },
/turf/open/floor/plating{
planetary_atmos = 1
},
/area/hangar)
+"qS" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 8
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital{
+ dir = 4
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"qW" = (
/obj/effect/turf_decal/siding/white{
dir = 4
@@ -583,6 +732,24 @@
planetary_atmos = 1
},
/area/hangar)
+"rY" = (
+/obj/effect/turf_decal/borderfloor/full,
+/obj/machinery/light/floor,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 9
+ },
+/turf/open/floor/plasteel/patterned/cargo_one{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"so" = (
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
+ dir = 8
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"sS" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/effect/turf_decal/industrial/warning{
@@ -631,6 +798,32 @@
planetary_atmos = 1
},
/area/hangar)
+"tQ" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"tR" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"um" = (
/obj/effect/turf_decal/borderfloor{
dir = 5
@@ -686,6 +879,66 @@
planetary_atmos = 1
},
/area/hangar)
+"xS" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"ym" = (
+/obj/effect/turf_decal/siding/white/end{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/glass,
+/obj/machinery/light/floor{
+ bulb_power = 0.75
+ },
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"yn" = (
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/turf_decal/industrial/shutoff,
+/obj/structure/railing{
+ dir = 1;
+ layer = 2.8
+ },
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
+"yw" = (
+/obj/structure/railing{
+ dir = 9;
+ layer = 2.8
+ },
+/obj/machinery/atmospherics/components/unary/hydrogen_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 9
+ },
+/obj/effect/turf_decal/industrial/warning/fulltile,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"yG" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/dirt{
@@ -706,6 +959,48 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel/telecomms_floor,
/area/hangar)
+"zS" = (
+/obj/structure/flora/stump,
+/turf/open/floor/plating/asteroid/snow/temperatre{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"Au" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"AJ" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"AO" = (
+/obj/structure/flora/grass/green,
+/obj/item/trash/chips{
+ layer = 2.8;
+ pixel_y = 3;
+ pixel_x = -2
+ },
+/turf/open/floor/plating/asteroid/snow/temperatre{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Bf" = (
/obj/structure/flora/tree/dead,
/turf/open/floor/plating/asteroid/snow/temperatre{
@@ -713,6 +1008,18 @@
light_range = 2
},
/area/hangar)
+"Bj" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"BE" = (
/obj/effect/turf_decal/borderfloor{
dir = 8
@@ -741,6 +1048,29 @@
planetary_atmos = 1
},
/area/hangar)
+"Ck" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"CC" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"CG" = (
/obj/effect/turf_decal/siding/white{
dir = 4
@@ -798,6 +1128,17 @@
light_range = 2
},
/area/hangar)
+"Fw" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"FH" = (
/obj/effect/turf_decal/corner/opaque/neutral,
/obj/effect/turf_decal/siding/white{
@@ -839,6 +1180,30 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel/telecomms_floor,
/area/hangar)
+"GW" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Hr" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Hv" = (
/obj/structure/table/reinforced,
/obj/item/flashlight/lamp{
@@ -891,6 +1256,36 @@
planetary_atmos = 1
},
/area/hangar)
+"Is" = (
+/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)
+"IH" = (
+/obj/machinery/door/airlock/outpost,
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden,
+/turf/open/floor/plasteel/tech,
+/area/hangar)
+"Jt" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"JI" = (
/obj/structure/catwalk/over/plated_catwalk,
/turf/open/floor/plating{
@@ -932,6 +1327,18 @@
light_range = 2
},
/area/hangar)
+"Ll" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Lt" = (
/obj/effect/turf_decal/industrial/hatch/yellow,
/obj/machinery/vending/coffee,
@@ -966,6 +1373,12 @@
planetary_atmos = 1
},
/area/hangar)
+"Md" = (
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
+ dir = 10
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"Mm" = (
/obj/effect/turf_decal/siding/white{
dir = 4
@@ -976,6 +1389,22 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel/tech,
/area/hangar)
+"Ms" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 4
+ },
+/obj/machinery/atmospherics/components/binary/pressure_valve,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Mz" = (
/obj/effect/turf_decal/borderfloor{
dir = 8
@@ -992,6 +1421,41 @@
planetary_atmos = 1
},
/area/hangar)
+"Nh" = (
+/obj/machinery/atmospherics/pipe/manifold/orange/visible{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/structure/railing{
+ dir = 1;
+ layer = 2.8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"NG" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"NY" = (
/obj/effect/turf_decal/siding/white{
dir = 6
@@ -1116,6 +1580,15 @@
planetary_atmos = 1
},
/area/hangar)
+"Qk" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Qs" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/effect/turf_decal/industrial/warning{
@@ -1160,6 +1633,20 @@
planetary_atmos = 1
},
/area/hangar)
+"Rr" = (
+/obj/effect/turf_decal/siding/white/end{
+ dir = 8
+ },
+/obj/machinery/computer/hydrogen_exchange{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Rx" = (
/obj/effect/turf_decal/borderfloor{
dir = 10
@@ -1173,12 +1660,27 @@
planetary_atmos = 1
},
/area/hangar)
+"RY" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Sf" = (
/obj/structure/catwalk/over/plated_catwalk,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
/turf/open/floor/plating{
light_color = "#1B1D2E";
light_range = 2;
@@ -1191,11 +1693,23 @@
/turf/open/floor/plasteel/elevatorshaft{
planetary_atmos = 1
},
-/area/hangar)
-"SC" = (
-/obj/machinery/light/floor,
-/obj/effect/decal/cleanable/dirt,
-/turf/open/floor/plating{
+/area/hangar)
+"SC" = (
+/obj/machinery/light/floor,
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Tj" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
light_color = "#1B1D2E";
light_range = 2;
planetary_atmos = 1
@@ -1266,6 +1780,37 @@
planetary_atmos = 1
},
/area/hangar)
+"UJ" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"UR" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/obj/structure/railing/corner{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"VR" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/dirt{
@@ -1355,6 +1900,56 @@
planetary_atmos = 1
},
/area/hangar)
+"Zr" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/structure/railing/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Zx" = (
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 4
+ },
+/obj/item/toy/plush/moth/firewatch{
+ pixel_y = 3
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
+"ZN" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"ZP" = (
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"ZW" = (
/obj/effect/turf_decal/siding/white{
dir = 6
@@ -1636,7 +2231,7 @@ ac
ac
ac
ac
-ac
+zS
ac
ac
ac
@@ -1650,7 +2245,7 @@ ac
ac
ac
ac
-ac
+zS
ac
ac
ac
@@ -1691,7 +2286,7 @@ aQ
ak
ac
ac
-ac
+zS
ac
ak
ac
@@ -1720,7 +2315,7 @@ ac
ac
ac
ac
-ac
+zS
ac
ak
ac
@@ -1953,7 +2548,7 @@ ac
ac
ak
ac
-ac
+zS
ac
ac
ac
@@ -2011,7 +2606,7 @@ ac
ac
ac
ac
-ac
+zS
ac
ac
ac
@@ -2028,7 +2623,7 @@ ac
ac
ac
ac
-ac
+zS
ac
ac
ab
@@ -2428,8 +3023,8 @@ ab
ac
ac
Rk
-hI
-au
+iY
+RY
ah
ah
ah
@@ -2470,8 +3065,8 @@ ah
ah
ah
ah
-ay
-aY
+xS
+hh
bQ
ac
aC
@@ -2490,7 +3085,7 @@ ac
ac
ac
Rk
-an
+Ll
au
ah
ah
@@ -2533,7 +3128,7 @@ ah
ah
ah
ay
-hI
+aP
ax
ac
ac
@@ -2552,7 +3147,7 @@ aT
ac
ak
Rk
-an
+Ll
au
ah
ah
@@ -2595,7 +3190,7 @@ ah
ah
ah
ag
-JI
+eF
bQ
ac
ac
@@ -2614,7 +3209,7 @@ as
aC
ac
Rk
-an
+Ll
au
ah
ah
@@ -2657,7 +3252,7 @@ ah
ah
ah
ag
-JI
+eF
bQ
ac
ab
@@ -2676,7 +3271,7 @@ aT
ac
ab
Rk
-an
+Ll
au
jY
ah
@@ -2719,7 +3314,7 @@ ah
ah
jY
ag
-JI
+eF
bQ
ac
ac
@@ -2738,7 +3333,7 @@ aT
ac
ac
Rk
-an
+Ll
au
ah
ah
@@ -2781,7 +3376,7 @@ ah
ah
ah
ag
-JI
+eF
bQ
ac
ac
@@ -2800,7 +3395,7 @@ aT
aQ
ac
Dd
-an
+Ll
au
ah
ah
@@ -2843,7 +3438,7 @@ ah
ah
ah
ag
-JI
+eF
bQ
ac
aC
@@ -2862,7 +3457,7 @@ aT
aT
ac
Dd
-an
+Ll
au
ah
ah
@@ -2905,7 +3500,7 @@ ah
ah
ah
ag
-JI
+eF
bQ
ac
ak
@@ -2924,7 +3519,7 @@ aT
aT
ac
Dd
-JI
+UJ
au
ah
ah
@@ -2967,7 +3562,7 @@ ah
ah
ah
ay
-JI
+eF
bQ
ab
ac
@@ -2986,7 +3581,7 @@ aT
ab
ac
Dd
-JI
+UJ
au
jY
ah
@@ -3029,7 +3624,7 @@ ah
ah
jY
ag
-hI
+aP
bQ
ac
ac
@@ -3048,7 +3643,7 @@ aT
ac
ak
Dd
-JI
+UJ
au
ah
ah
@@ -3091,7 +3686,7 @@ ah
ah
ah
ag
-an
+Au
ax
ac
aC
@@ -3110,7 +3705,7 @@ aT
ac
aC
Rk
-JI
+UJ
au
ah
ah
@@ -3153,7 +3748,7 @@ ah
ah
ah
ag
-an
+Au
ax
ac
ac
@@ -3172,7 +3767,7 @@ aT
ac
ac
Rk
-JI
+UJ
au
ah
ah
@@ -3215,7 +3810,7 @@ ah
ah
ah
ag
-an
+Au
bQ
ac
ab
@@ -3234,7 +3829,7 @@ aT
ab
ac
Rk
-JI
+UJ
at
ah
ah
@@ -3277,7 +3872,7 @@ ah
ah
ah
ag
-an
+Au
ax
ac
ac
@@ -3296,7 +3891,7 @@ aT
ac
ac
Rk
-an
+Ll
at
jY
ah
@@ -3339,7 +3934,7 @@ ah
ah
jY
ag
-an
+Au
ax
ac
ac
@@ -3354,11 +3949,11 @@ aT
aT
aT
aT
-as
-ak
+aT
ac
+ak
Rk
-an
+Ll
au
ah
ah
@@ -3401,7 +3996,7 @@ ah
ah
ah
lC
-hI
+aP
ax
ac
ac
@@ -3416,11 +4011,11 @@ aa
aa
aa
aa
+cG
ac
-ac
-ab
-ag
-an
+Rr
+Dd
+UJ
au
ah
ah
@@ -3463,7 +4058,7 @@ ah
ah
ah
ag
-an
+Au
au
ac
ac
@@ -3476,14 +4071,14 @@ aa
(35,1,1) = {"
aa
Yt
-Yt
+Zx
aa
+ab
ac
-aC
-ac
-Rk
-an
-au
+ZP
+UR
+Fw
+RY
ah
ah
ah
@@ -3524,8 +4119,8 @@ ah
ah
ah
ah
-ag
-an
+Tj
+gN
ax
ab
ac
@@ -3538,13 +4133,13 @@ aa
(36,1,1) = {"
aa
Yt
-Yt
+so
aa
-ac
-ac
-ac
-Rk
-an
+Tn
+Tn
+ym
+Dd
+Ll
au
ah
ah
@@ -3587,7 +4182,7 @@ ah
ah
ah
ag
-JI
+eF
ax
aC
ac
@@ -3600,13 +4195,13 @@ aT
(37,1,1) = {"
aa
Yt
-Yt
-HH
-ac
-ac
-aC
-Dd
-JI
+Md
+IH
+Qk
+Qk
+yw
+Zr
+aY
au
jY
ah
@@ -3649,7 +4244,7 @@ ah
ah
jY
ag
-an
+Au
ax
ac
ac
@@ -3664,11 +4259,11 @@ aa
Yt
Yt
aa
-ab
-ac
-ac
-Rk
-JI
+aJ
+lb
+Is
+Bj
+NG
au
ah
ah
@@ -3711,7 +4306,7 @@ ah
ah
ah
ag
-an
+Au
bQ
ac
ac
@@ -3727,10 +4322,10 @@ aa
aa
aa
ac
-ak
-ac
-Dd
-an
+AO
+Nh
+Ms
+CC
au
ah
ah
@@ -3773,7 +4368,7 @@ ah
ah
ah
ay
-an
+Au
ax
ab
ac
@@ -3789,10 +4384,10 @@ aT
aT
aT
ac
-aC
-ak
-Rk
-hI
+ac
+yn
+ag
+aY
au
ah
ah
@@ -3835,7 +4430,7 @@ ah
ah
ah
ag
-an
+Au
ax
ac
aC
@@ -3850,10 +4445,10 @@ aT
aT
aT
aT
+ab
ac
-ac
-ac
-Rk
+lg
+tR
aY
au
ah
@@ -3897,7 +4492,7 @@ ah
ah
ah
ag
-hI
+aP
ax
ac
ac
@@ -3913,7 +4508,7 @@ aT
aT
aQ
ac
-ab
+ac
ac
Rk
Sf
@@ -3959,7 +4554,7 @@ ah
ah
jY
ag
-hI
+aP
ax
ac
ab
@@ -3978,7 +4573,7 @@ ac
ac
ab
Rk
-hI
+aP
at
ah
ah
@@ -4021,7 +4616,7 @@ ah
ah
ah
ag
-hI
+aP
ax
ac
aT
@@ -4040,7 +4635,7 @@ aC
ac
ac
Rk
-hI
+aP
at
ah
ah
@@ -4083,7 +4678,7 @@ ah
ah
ah
ag
-hI
+aP
bQ
ak
aT
@@ -4102,7 +4697,7 @@ ac
ac
aC
Dd
-an
+Au
at
ah
ah
@@ -4145,7 +4740,7 @@ ah
ah
ah
ag
-an
+Au
lJ
ac
aT
@@ -4164,7 +4759,7 @@ ab
ac
ac
Rk
-an
+Au
au
ah
ah
@@ -4207,7 +4802,7 @@ ah
ah
ah
ag
-hI
+aP
lJ
ab
ac
@@ -4226,7 +4821,7 @@ ac
ac
ac
Rk
-an
+Au
au
jY
ah
@@ -4269,7 +4864,7 @@ ah
ah
jY
ay
-JI
+eF
ax
aC
ac
@@ -4288,7 +4883,7 @@ ac
ab
ac
Rk
-JI
+eF
au
ah
ah
@@ -4331,7 +4926,7 @@ ah
ah
ah
ay
-an
+Au
ax
ac
ac
@@ -4350,7 +4945,7 @@ ac
aC
ac
Rk
-JI
+eF
au
ah
ah
@@ -4393,7 +4988,7 @@ ah
ah
ah
ay
-an
+Au
ax
ac
ab
@@ -4412,7 +5007,7 @@ ac
ak
ac
Rk
-JI
+eF
au
ah
ah
@@ -4455,7 +5050,7 @@ ah
ah
ah
ag
-an
+Au
ax
ac
aC
@@ -4474,7 +5069,7 @@ ac
ac
aC
Rk
-JI
+eF
au
ah
ah
@@ -4517,7 +5112,7 @@ ah
ah
ah
ag
-hI
+aP
ax
ac
ac
@@ -4536,8 +5131,8 @@ ac
ac
ac
Rk
-an
-at
+tQ
+GW
jY
ah
ah
@@ -4578,8 +5173,8 @@ ah
ah
ah
jY
-ag
-hI
+Tj
+Hr
ax
ab
aQ
@@ -4598,7 +5193,7 @@ ac
ab
ac
Dd
-an
+Au
at
ah
ah
@@ -4641,7 +5236,7 @@ ah
ah
ah
ag
-an
+Au
ax
ac
aT
@@ -4660,7 +5255,7 @@ ac
ab
ac
Dd
-JI
+eF
at
ah
ah
@@ -4703,7 +5298,7 @@ jY
ah
ah
ag
-JI
+eF
ax
ak
aT
@@ -4722,7 +5317,7 @@ aC
ac
ac
Rk
-JI
+eF
um
Tn
aX
@@ -4735,7 +5330,7 @@ aX
aX
aX
aX
-aX
+qS
aX
aX
aX
@@ -4755,7 +5350,7 @@ aX
aX
aX
aX
-aX
+qS
aX
aX
aX
@@ -4765,7 +5360,7 @@ aX
aX
aX
OJ
-JI
+eF
ax
ab
aT
@@ -4784,50 +5379,50 @@ ab
ac
ac
Rk
-am
-JI
-JI
-JI
-JI
-JI
-an
-an
-an
-an
-an
-JI
-JI
-JI
-JI
-an
-an
-hI
-an
-an
-an
-an
-hI
-by
-an
-an
-JI
-hI
-hI
-an
-an
-JI
-JI
-JI
-an
-JI
-JI
-JI
-hI
-hI
-an
-JI
-JI
+fd
+ZN
+ZN
+ZN
+ZN
+ZN
+Ck
+Ck
+Ck
+Ck
+Ck
+ZN
+ZN
+AJ
+ZN
+Ck
+Ck
+Jt
+Ck
+Ck
+Ck
+Ck
+Jt
by
+Ck
+Ck
+ZN
+Jt
+Jt
+Ck
+Ck
+ZN
+ZN
+AJ
+Ck
+ZN
+ZN
+ZN
+Jt
+Jt
+Ck
+ZN
+ZN
+rY
bQ
ac
ac
diff --git a/_maps/outpost/hangar/nt_ice_56x20.dmm b/_maps/outpost/hangar/nt_ice_56x20.dmm
index c7e73652ef0d..08deb1360025 100644
--- a/_maps/outpost/hangar/nt_ice_56x20.dmm
+++ b/_maps/outpost/hangar/nt_ice_56x20.dmm
@@ -174,6 +174,27 @@
/obj/effect/decal/cleanable/dirt/dust,
/turf/open/floor/plasteel/dark,
/area/hangar)
+"bK" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"cu" = (
+/obj/structure/flora/grass/green,
+/obj/item/trash/energybar{
+ layer = 2.8
+ },
+/turf/open/floor/plating/asteroid/snow/temperatre{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"cY" = (
/obj/effect/turf_decal/borderfloor/corner,
/obj/effect/turf_decal/siding/white{
@@ -201,6 +222,27 @@
},
/turf/open/floor/plasteel/tech,
/area/hangar)
+"dN" = (
+/obj/machinery/atmospherics/pipe/manifold/orange/visible{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/structure/railing{
+ dir = 1;
+ layer = 2.8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"ez" = (
/obj/effect/turf_decal/industrial/traffic{
dir = 1
@@ -211,6 +253,40 @@
planetary_atmos = 1
},
/area/hangar)
+"eS" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"fj" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/obj/structure/railing/corner{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"fC" = (
/obj/effect/turf_decal/borderfloor{
dir = 1
@@ -221,6 +297,19 @@
planetary_atmos = 1
},
/area/hangar)
+"gk" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 5
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"gQ" = (
/obj/effect/turf_decal/borderfloor{
dir = 9
@@ -233,6 +322,37 @@
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,
+/turf/open/floor/plasteel/tech,
+/area/hangar)
+"is" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"iY" = (
/obj/effect/turf_decal/borderfloor,
/obj/effect/turf_decal/siding/white{
@@ -249,6 +369,15 @@
planetary_atmos = 1
},
/area/hangar)
+"ji" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"jk" = (
/obj/effect/turf_decal/siding/white{
dir = 4
@@ -264,6 +393,38 @@
planetary_atmos = 1
},
/area/hangar)
+"kt" = (
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 4
+ },
+/obj/item/toy/plush/moth/firewatch{
+ pixel_y = 3
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
+"kH" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"la" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"ll" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/sprayweb{
@@ -274,6 +435,20 @@
planetary_atmos = 1
},
/area/hangar)
+"lH" = (
+/obj/effect/turf_decal/siding/white/end{
+ dir = 8
+ },
+/obj/machinery/computer/hydrogen_exchange{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"mu" = (
/obj/effect/turf_decal/borderfloor{
dir = 9
@@ -288,6 +463,28 @@
planetary_atmos = 1
},
/area/hangar)
+"my" = (
+/obj/structure/flora/grass/green,
+/obj/item/trash/candy{
+ pixel_x = 4;
+ layer = 2.8
+ },
+/turf/open/floor/plating/asteroid/snow/temperatre{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"mP" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"mX" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/effect/turf_decal/industrial/warning{
@@ -300,6 +497,20 @@
light_range = 2
},
/area/hangar)
+"nD" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/oil/streak,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"oq" = (
/obj/effect/turf_decal/borderfloor,
/obj/effect/turf_decal/siding/white{
@@ -340,7 +551,23 @@
/obj/structure/catwalk/over/plated_catwalk,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"pm" = (
+/obj/structure/catwalk/over/plated_catwalk,
/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
/turf/open/floor/plating{
light_color = "#1B1D2E";
light_range = 2
@@ -383,6 +610,9 @@
/obj/effect/turf_decal/borderfloor/full,
/obj/machinery/light/floor,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 9
+ },
/turf/open/floor/plasteel/patterned/cargo_one{
light_color = "#1B1D2E";
light_range = 2
@@ -401,6 +631,17 @@
planetary_atmos = 1
},
/area/hangar)
+"qR" = (
+/obj/effect/turf_decal/borderfloor/full,
+/obj/machinery/light/floor,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 10
+ },
+/turf/open/floor/plasteel/patterned/cargo_one{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"sp" = (
/obj/effect/turf_decal/borderfloor{
dir = 4
@@ -440,6 +681,17 @@
planetary_atmos = 1
},
/area/hangar)
+"sW" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"uy" = (
/obj/effect/turf_decal/borderfloor{
dir = 8
@@ -494,6 +746,34 @@
planetary_atmos = 1
},
/area/hangar)
+"wK" = (
+/obj/effect/turf_decal/siding/white/end{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/glass,
+/obj/machinery/light/floor{
+ bulb_power = 0.75
+ },
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"xp" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"xt" = (
/obj/effect/turf_decal/borderfloor{
dir = 8
@@ -545,6 +825,24 @@
planetary_atmos = 1
},
/area/hangar)
+"yh" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/light/small/directional/north{
+ pixel_x = -6;
+ bulb_power = 0.25
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"zG" = (
/obj/effect/turf_decal/borderfloor{
dir = 1
@@ -571,6 +869,18 @@
light_range = 2
},
/area/hangar)
+"AZ" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Bh" = (
/obj/machinery/door/airlock/outpost,
/turf/open/floor/plasteel/tech,
@@ -592,6 +902,57 @@
planetary_atmos = 1
},
/area/hangar)
+"Cg" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"Cj" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Ck" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 4
+ },
+/obj/machinery/atmospherics/components/binary/pressure_valve,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Cn" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Cs" = (
/obj/structure/catwalk/over/plated_catwalk,
/obj/effect/decal/cleanable/dirt,
@@ -708,6 +1069,45 @@
planetary_atmos = 1
},
/area/hangar)
+"HJ" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/structure/railing/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"HR" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"HT" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Jh" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/dirt{
@@ -718,6 +1118,18 @@
planetary_atmos = 1
},
/area/hangar)
+"JW" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"KH" = (
/obj/structure/flora/grass/both,
/turf/open/floor/plating/asteroid/snow/temperatre{
@@ -725,6 +1137,31 @@
light_range = 2
},
/area/hangar)
+"Lh" = (
+/obj/structure/railing{
+ dir = 5;
+ layer = 2.8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 5
+ },
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/industrial/warning/fulltile,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"Li" = (
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
+ dir = 8
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"Ms" = (
/obj/effect/turf_decal/corner/opaque/neutral,
/obj/effect/turf_decal/siding/white,
@@ -796,6 +1233,18 @@
planetary_atmos = 1
},
/area/hangar)
+"Pp" = (
+/obj/effect/turf_decal/borderfloor/full,
+/obj/machinery/light/floor,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/cargo_one{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Pu" = (
/obj/effect/turf_decal/borderfloor{
dir = 8
@@ -809,6 +1258,18 @@
planetary_atmos = 1
},
/area/hangar)
+"PL" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"PW" = (
/obj/effect/turf_decal/borderfloor/corner{
dir = 1
@@ -875,6 +1336,18 @@
planetary_atmos = 1
},
/area/hangar)
+"Si" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 6
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Sk" = (
/obj/effect/turf_decal/siding/white{
dir = 9
@@ -884,6 +1357,19 @@
planetary_atmos = 1
},
/area/hangar)
+"Sr" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"SC" = (
/obj/effect/turf_decal/borderfloor,
/obj/effect/turf_decal/siding/white{
@@ -895,6 +1381,16 @@
planetary_atmos = 1
},
/area/hangar)
+"SJ" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"SS" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/dirt{
@@ -908,6 +1404,12 @@
planetary_atmos = 1
},
/area/hangar)
+"Tb" = (
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
+ dir = 10
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"Tj" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/effect/turf_decal/industrial/warning{
@@ -921,6 +1423,32 @@
light_range = 2
},
/area/hangar)
+"TK" = (
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/turf_decal/industrial/shutoff,
+/obj/structure/railing{
+ dir = 1;
+ layer = 2.8
+ },
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
+"TR" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Uo" = (
/obj/structure/chair{
dir = 1
@@ -958,7 +1486,21 @@
/obj/structure/railing{
dir = 1
},
-/turf/open/floor/plasteel/patterned/brushed{
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Vu" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
light_color = "#1B1D2E";
light_range = 2;
planetary_atmos = 1
@@ -1007,6 +1549,24 @@
planetary_atmos = 1
},
/area/hangar)
+"WL" = (
+/obj/structure/railing{
+ dir = 9;
+ layer = 2.8
+ },
+/obj/machinery/atmospherics/components/unary/hydrogen_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 9
+ },
+/obj/effect/turf_decal/industrial/warning/fulltile,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"WP" = (
/obj/effect/turf_decal/siding/white{
dir = 10
@@ -1028,6 +1588,31 @@
planetary_atmos = 1
},
/area/hangar)
+"Xf" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"Xs" = (
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"XO" = (
/obj/effect/turf_decal/siding/white{
dir = 6
@@ -1106,6 +1691,20 @@
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"ZF" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
/turf/open/floor/plating{
light_color = "#1B1D2E";
light_range = 2
@@ -1127,6 +1726,29 @@
planetary_atmos = 1
},
/area/hangar)
+"ZR" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"ZX" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"ZZ" = (
/obj/effect/turf_decal/borderfloor,
/obj/effect/turf_decal/siding/white{
@@ -1864,8 +2486,8 @@ NE
aG
KH
UJ
-Cs
-OZ
+Si
+JW
aN
aN
aN
@@ -1886,8 +2508,8 @@ aN
aN
aN
aN
-vM
-pb
+ZR
+gk
zG
KH
aG
@@ -1906,7 +2528,7 @@ KH
aG
aG
UJ
-Dn
+pb
OZ
aN
aN
@@ -1929,7 +2551,7 @@ aN
aN
aN
vM
-Cs
+TR
ay
aG
aG
@@ -1948,7 +2570,7 @@ aG
aG
aG
UJ
-Dn
+pb
OZ
aN
aN
@@ -1971,7 +2593,7 @@ aN
aN
aN
SC
-as
+Cg
zG
KH
aG
@@ -1990,7 +2612,7 @@ aG
aG
aG
UJ
-Dn
+YT
OZ
aN
aN
@@ -2013,7 +2635,7 @@ aN
aN
aN
SC
-as
+Cg
zG
aG
aG
@@ -2032,7 +2654,7 @@ aG
NE
KH
UJ
-Dn
+is
OZ
ax
aN
@@ -2055,7 +2677,7 @@ aN
aN
ax
SC
-as
+Cg
zG
aG
aG
@@ -2074,7 +2696,7 @@ KH
aG
aG
UJ
-Dn
+is
OZ
aN
aN
@@ -2097,7 +2719,7 @@ aN
aN
aN
SC
-as
+Cg
zG
aG
NE
@@ -2116,7 +2738,7 @@ aG
KH
aG
Dk
-Dn
+bK
OZ
aN
aN
@@ -2139,7 +2761,7 @@ aN
aN
aN
SC
-as
+Cg
zG
KH
aG
@@ -2158,7 +2780,7 @@ NE
aG
aG
Dk
-Dn
+bK
OZ
aN
aN
@@ -2181,7 +2803,7 @@ aN
aN
aN
SC
-as
+Cg
zG
aG
aG
@@ -2200,7 +2822,7 @@ aG
aG
NE
Dk
-as
+bK
OZ
aN
aN
@@ -2223,7 +2845,7 @@ aN
aN
aN
vM
-as
+Cg
zG
ap
aG
@@ -2242,7 +2864,7 @@ ap
KH
aG
Dk
-as
+HR
OZ
ax
aN
@@ -2265,7 +2887,7 @@ aN
aN
ax
SC
-Cs
+TR
zG
aG
KH
@@ -2284,7 +2906,7 @@ aG
aG
KH
Dk
-as
+HR
OZ
aN
aN
@@ -2307,7 +2929,7 @@ aN
aN
aN
SC
-Dn
+ZF
ay
aG
aG
@@ -2326,7 +2948,7 @@ aG
ap
aG
UJ
-as
+HR
OZ
aN
aN
@@ -2349,7 +2971,7 @@ aN
aN
aN
SC
-Dn
+ZF
ay
KH
aG
@@ -2368,7 +2990,7 @@ KH
aG
NE
UJ
-as
+HR
OZ
aN
aN
@@ -2391,7 +3013,7 @@ aN
aN
aN
SC
-Dn
+ZF
zG
aG
aG
@@ -2410,7 +3032,7 @@ aG
aG
KH
UJ
-as
+bK
Rs
aN
aN
@@ -2433,7 +3055,7 @@ aN
aN
aN
SC
-Dn
+ZF
ay
aG
aG
@@ -2452,7 +3074,7 @@ aG
NE
aG
UJ
-Cs
+pb
Rs
ax
aN
@@ -2475,7 +3097,7 @@ aN
aN
ax
SC
-Dn
+ZF
zG
aG
aG
@@ -2494,7 +3116,7 @@ aG
ap
aG
UJ
-Cs
+pb
aX
aN
aN
@@ -2517,7 +3139,7 @@ aN
aN
aN
SC
-Cs
+TR
zG
ap
aG
@@ -2536,7 +3158,7 @@ KH
aG
ap
UJ
-Cs
+PL
OZ
aN
aN
@@ -2559,7 +3181,7 @@ aN
aN
aN
vM
-pb
+Sr
zG
aG
NE
@@ -2578,8 +3200,8 @@ aG
aG
aG
UJ
-Dn
-OZ
+pm
+JW
aN
aN
aN
@@ -2600,8 +3222,8 @@ aN
aN
aN
aN
-vM
-Cs
+ZR
+SJ
ay
aG
aG
@@ -2620,7 +3242,7 @@ al
aG
ap
UJ
-Dn
+is
OZ
aN
aN
@@ -2643,7 +3265,7 @@ aN
aN
aN
SC
-as
+Cg
zG
aG
aG
@@ -2662,7 +3284,7 @@ ae
NE
aG
UJ
-Dn
+is
OZ
ax
aN
@@ -2685,7 +3307,7 @@ aN
aN
ax
SC
-as
+Cg
zG
aG
KH
@@ -2704,7 +3326,7 @@ al
aG
KH
UJ
-Dn
+HR
OZ
aN
aN
@@ -2727,7 +3349,7 @@ aN
aN
aN
SC
-as
+Cg
zG
aG
aG
@@ -2746,7 +3368,7 @@ al
ap
aG
UJ
-Dn
+HR
OZ
aN
aN
@@ -2769,7 +3391,7 @@ aN
aN
aN
SC
-as
+Cg
zG
aG
aG
@@ -2788,7 +3410,7 @@ al
Fs
aG
Dk
-Dn
+pb
OZ
aN
aN
@@ -2811,7 +3433,7 @@ aN
aN
aN
SC
-as
+Cg
zG
aG
NE
@@ -2830,7 +3452,7 @@ al
al
aG
Dk
-Dn
+pb
OZ
aN
aN
@@ -2853,7 +3475,7 @@ aN
aN
aN
SC
-as
+Cg
zG
aG
ap
@@ -2872,7 +3494,7 @@ al
al
aG
Dk
-as
+YT
OZ
ax
aN
@@ -2895,7 +3517,7 @@ aN
aN
ax
vM
-as
+Cg
zG
KH
aG
@@ -2914,7 +3536,7 @@ al
KH
aG
Dk
-as
+is
OZ
aN
aN
@@ -2937,7 +3559,7 @@ aN
aN
aN
SC
-Cs
+TR
zG
aG
aG
@@ -2956,7 +3578,7 @@ al
aG
ap
Dk
-as
+is
OZ
aN
aN
@@ -2979,7 +3601,7 @@ aN
aN
aN
SC
-Dn
+ZF
ay
aG
NE
@@ -2998,7 +3620,7 @@ al
aG
NE
UJ
-as
+bK
OZ
aN
aN
@@ -3021,7 +3643,7 @@ aN
aN
aN
SC
-Dn
+ZF
ay
aG
aG
@@ -3040,7 +3662,7 @@ al
aG
aG
UJ
-as
+bK
OZ
aN
aN
@@ -3063,7 +3685,7 @@ aN
aN
aN
SC
-Dn
+ZF
zG
aG
KH
@@ -3082,7 +3704,7 @@ al
KH
aG
UJ
-as
+bK
Rs
ax
aN
@@ -3105,7 +3727,7 @@ aN
aN
ax
SC
-Dn
+ZF
ay
aG
aG
@@ -3124,7 +3746,7 @@ al
aG
aG
UJ
-Dn
+HR
Rs
aN
aN
@@ -3147,7 +3769,7 @@ aN
aN
aN
SC
-Dn
+ZF
ay
aG
aG
@@ -3163,10 +3785,10 @@ al
al
al
ae
-ap
+my
aG
UJ
-Dn
+HR
OZ
aN
aN
@@ -3189,7 +3811,7 @@ aN
aN
aN
ZZ
-Cs
+TR
ay
aG
aG
@@ -3206,9 +3828,9 @@ ag
ag
aG
aG
-KH
-SC
-Dn
+lH
+Dk
+HR
OZ
aN
aN
@@ -3231,7 +3853,7 @@ aN
aN
aN
SC
-Dn
+ZF
OZ
aG
aG
@@ -3244,14 +3866,14 @@ ag
(51,1,1) = {"
ag
Hr
-Hr
+kt
ag
+KH
aG
-NE
-aG
-UJ
-Dn
-OZ
+Xs
+fj
+Xf
+JW
aN
aN
aN
@@ -3272,8 +3894,8 @@ aN
aN
aN
aN
-SC
-Dn
+HT
+ji
ay
KH
aG
@@ -3286,13 +3908,13 @@ ag
(52,1,1) = {"
ag
Hr
-Hr
+Li
ag
-aG
-aG
-aG
-UJ
-Dn
+kH
+kH
+wK
+Dk
+PL
OZ
ax
aN
@@ -3315,7 +3937,7 @@ aN
aN
ax
SC
-as
+Cg
ay
NE
aG
@@ -3328,13 +3950,13 @@ al
(53,1,1) = {"
ag
Hr
-Hr
-Bh
-aG
-aG
-NE
-Dk
-as
+Tb
+if
+la
+la
+WL
+HJ
+pb
OZ
aN
aN
@@ -3357,7 +3979,7 @@ aN
aN
aN
SC
-Dn
+ZF
ay
aG
aG
@@ -3372,11 +3994,11 @@ ag
Hr
Hr
ag
-KH
-aG
-aG
-UJ
-as
+yh
+nD
+hD
+AZ
+Vu
OZ
aN
aN
@@ -3399,7 +4021,7 @@ aN
aN
aN
SC
-Dn
+ZF
zG
aG
aG
@@ -3414,11 +4036,11 @@ ag
ag
ag
ag
+cu
aG
-ap
-aG
-Dk
-Dn
+dN
+Ck
+xp
OZ
aN
aN
@@ -3441,7 +4063,7 @@ aN
aN
aN
vM
-Dn
+ZF
ay
KH
aG
@@ -3457,10 +4079,10 @@ al
al
al
aG
-NE
-ap
-UJ
-Cs
+aG
+TK
+SC
+pb
OZ
aN
aN
@@ -3483,7 +4105,7 @@ aN
aN
aN
SC
-Dn
+ZF
ay
aG
NE
@@ -3499,9 +4121,9 @@ al
al
al
aG
-aG
-aG
-UJ
+KH
+Lh
+eS
pb
OZ
ax
@@ -3525,7 +4147,7 @@ aN
aN
ax
SC
-Cs
+TR
ay
aG
aG
@@ -3541,7 +4163,7 @@ al
al
Fs
aG
-KH
+aG
aG
UJ
YT
@@ -3567,7 +4189,7 @@ aN
aN
aN
SC
-Cs
+TR
ay
aG
KH
@@ -3586,7 +4208,7 @@ aG
aG
KH
UJ
-Cs
+is
Rs
aN
aN
@@ -3609,7 +4231,7 @@ aN
aN
aN
SC
-Cs
+TR
ay
aG
al
@@ -3628,7 +4250,7 @@ NE
aG
aG
UJ
-Cs
+is
Rs
aN
aN
@@ -3651,7 +4273,7 @@ aN
aN
aN
SC
-Cs
+TR
zG
ap
al
@@ -3670,7 +4292,7 @@ aG
aG
NE
Dk
-Dn
+bK
Rs
aN
aN
@@ -3693,7 +4315,7 @@ aN
aN
aN
SC
-Dn
+ZF
OC
aG
al
@@ -3712,7 +4334,7 @@ KH
aG
aG
UJ
-Dn
+bK
OZ
ax
aN
@@ -3735,7 +4357,7 @@ aN
aN
ax
SC
-Cs
+TR
OC
KH
aG
@@ -3754,7 +4376,7 @@ aG
aG
aG
UJ
-Dn
+bK
OZ
aN
aN
@@ -3777,7 +4399,7 @@ aN
aN
aN
vM
-as
+Cg
ay
NE
aG
@@ -3796,7 +4418,7 @@ aG
KH
aG
UJ
-as
+HR
OZ
aN
aN
@@ -3819,7 +4441,7 @@ aN
aN
aN
vM
-Dn
+ZF
ay
aG
aG
@@ -3838,7 +4460,7 @@ aG
NE
aG
UJ
-as
+HR
OZ
aN
aN
@@ -3861,7 +4483,7 @@ aN
aN
aN
vM
-Dn
+ZF
ay
aG
KH
@@ -3880,7 +4502,7 @@ aG
ap
aG
UJ
-as
+HR
OZ
aN
aN
@@ -3903,7 +4525,7 @@ aN
aN
aN
SC
-Dn
+ZF
ay
aG
NE
@@ -3922,7 +4544,7 @@ aG
aG
NE
UJ
-as
+HR
OZ
aN
aN
@@ -3945,7 +4567,7 @@ aN
aN
aN
SC
-Cs
+TR
ay
aG
aG
@@ -3964,8 +4586,8 @@ aG
aG
aG
UJ
-Dn
-Rs
+sW
+Cj
ax
aN
aN
@@ -3986,8 +4608,8 @@ aN
aN
aN
ax
-SC
-Cs
+HT
+SJ
ay
KH
Fs
@@ -4006,7 +4628,7 @@ aG
KH
aG
Dk
-Dn
+bK
Rs
aN
aN
@@ -4029,7 +4651,7 @@ aN
aN
aN
SC
-Dn
+ZF
ay
aG
al
@@ -4048,7 +4670,7 @@ aG
aG
aG
Dk
-as
+HR
Rs
aN
aN
@@ -4071,7 +4693,7 @@ ax
aN
aN
SC
-as
+Cg
ay
ap
al
@@ -4090,7 +4712,7 @@ NE
aG
aG
UJ
-as
+HR
HC
RC
RC
@@ -4113,7 +4735,7 @@ RC
RC
RC
vl
-as
+Cg
ay
KH
al
@@ -4132,29 +4754,29 @@ KH
aG
aG
UJ
-aE
-as
-Cs
-Dn
-Dn
-Dn
-as
-Cs
-Cs
-Dn
-Dn
-as
-pM
-as
-Dn
-as
-as
-as
-Cs
-Cs
-Dn
-as
-as
+qR
+ZX
+Cn
+mP
+mP
+mP
+ZX
+Cn
+Cn
+mP
+mP
+ZX
+Pp
+ZX
+mP
+ZX
+ZX
+ZX
+Cn
+Cn
+mP
+ZX
+ZX
pM
zG
aG
diff --git a/_maps/outpost/hangar/nt_ice_56x40.dmm b/_maps/outpost/hangar/nt_ice_56x40.dmm
index 90841c2cf6a1..d484671d2f94 100644
--- a/_maps/outpost/hangar/nt_ice_56x40.dmm
+++ b/_maps/outpost/hangar/nt_ice_56x40.dmm
@@ -234,6 +234,17 @@
light_range = 2
},
/area/hangar)
+"cb" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"ck" = (
/turf/open/floor/plating{
light_color = "#1B1D2E";
@@ -279,6 +290,17 @@
planetary_atmos = 1
},
/area/hangar)
+"dn" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"ds" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/effect/turf_decal/industrial/warning{
@@ -292,6 +314,17 @@
light_range = 2
},
/area/hangar)
+"dQ" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"dT" = (
/obj/effect/turf_decal/industrial/traffic{
dir = 1
@@ -319,9 +352,12 @@
"eZ" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/effect/turf_decal/industrial/warning,
-/obj/structure/filingcabinet/double/grey,
/obj/effect/decal/cleanable/dirt,
/obj/machinery/light/small/directional/east,
+/obj/structure/filingcabinet/double/grey{
+ dir = 8;
+ pixel_x = 7
+ },
/turf/open/floor/plating{
planetary_atmos = 1
},
@@ -353,6 +389,18 @@
planetary_atmos = 1
},
/area/hangar)
+"fT" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"gc" = (
/obj/machinery/light/floor,
/obj/effect/decal/cleanable/dirt,
@@ -370,6 +418,38 @@
},
/turf/open/floor/plasteel/telecomms_floor,
/area/hangar)
+"ia" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 8
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital{
+ dir = 4
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"iG" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 4
+ },
+/obj/machinery/atmospherics/components/binary/pressure_valve,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"iJ" = (
/obj/effect/turf_decal/borderfloor/full,
/obj/effect/turf_decal/industrial/warning{
@@ -394,6 +474,15 @@
light_range = 2
},
/area/hangar)
+"jF" = (
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 4
+ },
+/obj/item/toy/plush/moth/firewatch{
+ pixel_y = 3
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"jS" = (
/obj/effect/turf_decal/borderfloor/corner{
dir = 8
@@ -422,6 +511,19 @@
planetary_atmos = 1
},
/area/hangar)
+"kr" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"kH" = (
/obj/effect/turf_decal/borderfloor{
dir = 9
@@ -436,6 +538,15 @@
planetary_atmos = 1
},
/area/hangar)
+"ln" = (
+/obj/structure/flora/rock/pile/icy,
+/turf/open/floor/plating/asteroid/icerock/temperate,
+/area/hangar)
+"lo" = (
+/obj/machinery/door/airlock/outpost,
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden,
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"lu" = (
/obj/effect/decal/fakelattice,
/turf/open/floor/plasteel/elevatorshaft{
@@ -517,6 +628,23 @@
light_range = 2
},
/area/hangar)
+"ne" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/structure/railing/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"nC" = (
/obj/effect/turf_decal/borderfloor{
dir = 1
@@ -535,6 +663,18 @@
planetary_atmos = 1
},
/area/hangar)
+"nZ" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 1
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"oc" = (
/obj/effect/turf_decal/siding/white{
dir = 8
@@ -551,6 +691,53 @@
planetary_atmos = 1
},
/area/hangar)
+"pa" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"pi" = (
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white/corner,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"ps" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white/corner{
+ dir = 1
+ },
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/obj/structure/railing/corner{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"pD" = (
/obj/effect/turf_decal/borderfloor,
/obj/effect/turf_decal/siding/white{
@@ -575,6 +762,20 @@
},
/turf/open/floor/plasteel/tech,
/area/hangar)
+"qN" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/oil/streak,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"qX" = (
/obj/effect/turf_decal/borderfloor{
dir = 6
@@ -601,6 +802,16 @@
/obj/effect/decal/cleanable/oil,
/turf/open/floor/plasteel/tech,
/area/hangar)
+"sd" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"sw" = (
/obj/effect/turf_decal/borderfloor{
dir = 1
@@ -636,6 +847,31 @@
"tj" = (
/turf/open/floor/plasteel/tech,
/area/hangar)
+"ts" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"tF" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"tR" = (
/obj/effect/turf_decal/borderfloor{
dir = 1
@@ -709,6 +945,29 @@
planetary_atmos = 1
},
/area/hangar)
+"vT" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"wG" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/structure/railing/corner{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"wT" = (
/obj/effect/turf_decal/siding/white{
dir = 4
@@ -720,6 +979,18 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel/tech,
/area/hangar)
+"wZ" = (
+/obj/effect/turf_decal/borderfloor,
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"yU" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/dirt{
@@ -732,6 +1003,32 @@
planetary_atmos = 1
},
/area/hangar)
+"AU" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"AW" = (
+/obj/effect/turf_decal/siding/white{
+ dir = 1
+ },
+/obj/effect/turf_decal/industrial/shutoff,
+/obj/structure/railing{
+ dir = 1;
+ layer = 2.8
+ },
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"Be" = (
/obj/effect/turf_decal/borderfloor{
dir = 8
@@ -877,6 +1174,50 @@
light_range = 2
},
/area/hangar)
+"El" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ 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,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Fi" = (
+/obj/structure/flora/grass/both,
+/obj/item/trash/raisins{
+ layer = 2.8
+ },
+/turf/open/floor/plating/asteroid/snow/temperatre{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Fn" = (
/obj/structure/closet/crate/bin,
/obj/effect/turf_decal/industrial/outline/yellow,
@@ -889,6 +1230,19 @@
},
/turf/open/floor/plasteel/dark,
/area/hangar)
+"Fw" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"FS" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/dirt{
@@ -902,6 +1256,32 @@
planetary_atmos = 1
},
/area/hangar)
+"Ht" = (
+/obj/effect/turf_decal/siding/white/end{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/glass,
+/obj/machinery/light/floor{
+ bulb_power = 0.75
+ },
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"HF" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"HV" = (
/obj/effect/turf_decal/borderfloor{
dir = 10
@@ -920,11 +1300,20 @@
planetary_atmos = 1
},
/area/hangar)
+"HY" = (
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
+ dir = 8
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
"Iz" = (
/obj/structure/catwalk/over/plated_catwalk,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 8
+ },
/turf/open/floor/plating{
light_color = "#1B1D2E";
light_range = 2;
@@ -983,6 +1372,9 @@
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
/turf/open/floor/plating{
light_color = "#1B1D2E";
light_range = 2;
@@ -1069,6 +1461,20 @@
planetary_atmos = 1
},
/area/hangar)
+"Mk" = (
+/obj/effect/turf_decal/siding/white/end{
+ dir = 8
+ },
+/obj/machinery/computer/hydrogen_exchange{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Mt" = (
/obj/machinery/computer/secure_data{
icon_state = "computer-left";
@@ -1105,6 +1511,39 @@
planetary_atmos = 1
},
/area/hangar)
+"Od" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Oj" = (
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
+ dir = 10
+ },
+/turf/open/floor/plasteel/tech,
+/area/hangar)
+"Or" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/components/binary/valve/digital,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"OW" = (
/obj/effect/turf_decal/industrial/traffic{
dir = 4
@@ -1197,6 +1636,24 @@
planetary_atmos = 1
},
/area/hangar)
+"SR" = (
+/obj/structure/railing{
+ dir = 9;
+ layer = 2.8
+ },
+/obj/machinery/atmospherics/components/unary/hydrogen_pump{
+ dir = 4
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 9
+ },
+/obj/effect/turf_decal/industrial/warning/fulltile,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"Ts" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/dirt{
@@ -1222,6 +1679,27 @@
planetary_atmos = 1
},
/area/hangar)
+"UV" = (
+/obj/machinery/atmospherics/pipe/manifold/orange/visible{
+ dir = 1
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/structure/railing{
+ dir = 1;
+ layer = 2.8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
"UZ" = (
/obj/effect/turf_decal/siding/white{
dir = 10
@@ -1239,13 +1717,76 @@
planetary_atmos = 1
},
/area/hangar)
-"Vu" = (
-/obj/effect/turf_decal/borderfloor{
- dir = 9
- },
-/obj/effect/turf_decal/siding/white,
+"Vu" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 9
+ },
+/obj/effect/turf_decal/siding/white,
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"VK" = (
+/obj/effect/turf_decal/borderfloor/full,
+/obj/machinery/light/floor,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 10
+ },
+/turf/open/floor/plasteel/patterned/cargo_one{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"Wm" = (
+/obj/structure/railing{
+ dir = 5;
+ layer = 2.8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 5
+ },
+/obj/machinery/atmospherics/components/unary/portables_connector{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/industrial/warning/fulltile,
+/turf/open/floor/plasteel/patterned{
+ planetary_atmos = 1;
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"WY" = (
+/obj/effect/turf_decal/borderfloor/full,
+/obj/machinery/light/floor,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 9
+ },
+/turf/open/floor/plasteel/patterned/cargo_one{
+ light_color = "#1B1D2E";
+ light_range = 2
+ },
+/area/hangar)
+"Xf" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/manifold/orange/hidden,
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
+"Xq" = (
+/obj/structure/catwalk/over/plated_catwalk,
/obj/effect/decal/cleanable/dirt,
-/turf/open/floor/plasteel/patterned/brushed{
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
+/turf/open/floor/plating{
light_color = "#1B1D2E";
light_range = 2;
planetary_atmos = 1
@@ -1271,6 +1812,20 @@
},
/turf/open/floor/plasteel/telecomms_floor,
/area/hangar)
+"XS" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 5
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Yb" = (
/obj/effect/turf_decal/borderfloor{
dir = 4
@@ -1288,6 +1843,19 @@
planetary_atmos = 1
},
/area/hangar)
+"Ye" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"Yn" = (
/obj/effect/decal/fakelattice,
/obj/effect/decal/cleanable/dirt{
@@ -1329,11 +1897,25 @@
/obj/effect/turf_decal/borderfloor/full,
/obj/machinery/light/floor,
/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden,
/turf/open/floor/plasteel/patterned/cargo_one{
light_color = "#1B1D2E";
light_range = 2
},
/area/hangar)
+"YW" = (
+/obj/structure/catwalk/over/plated_catwalk,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 6
+ },
+/turf/open/floor/plating{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"YX" = (
/obj/structure/flora/tree/dead,
/turf/open/floor/plating/asteroid/snow/temperatre{
@@ -1341,6 +1923,24 @@
light_range = 2
},
/area/hangar)
+"Zj" = (
+/obj/effect/turf_decal/borderfloor{
+ dir = 8
+ },
+/obj/effect/turf_decal/siding/white{
+ dir = 4
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/light/small/directional/north{
+ pixel_x = -6;
+ bulb_power = 0.25
+ },
+/turf/open/floor/plasteel/patterned/brushed{
+ light_color = "#1B1D2E";
+ light_range = 2;
+ planetary_atmos = 1
+ },
+/area/hangar)
"ZE" = (
/obj/effect/turf_decal/industrial/hatch/yellow,
/obj/machinery/vending/coffee,
@@ -2428,8 +3028,8 @@ ao
aE
aZ
aj
-fM
-aK
+YW
+AU
ck
ck
ck
@@ -2470,8 +3070,8 @@ ck
ck
ck
ck
-aN
-Iz
+ts
+XS
am
aZ
aE
@@ -2490,7 +3090,7 @@ aZ
aE
aE
aj
-aw
+fT
aK
ck
ck
@@ -2533,7 +3133,7 @@ ck
ck
ck
aN
-fM
+kr
tR
aE
aE
@@ -2552,7 +3152,7 @@ aE
aE
ao
aj
-aw
+fT
aK
ck
ck
@@ -2595,7 +3195,7 @@ ck
ck
ck
pD
-ad
+dQ
am
aZ
aE
@@ -2614,7 +3214,7 @@ aE
aE
aE
aj
-aw
+fT
aK
ck
ck
@@ -2657,7 +3257,7 @@ ck
ck
ck
pD
-ad
+dQ
am
aE
aE
@@ -2676,7 +3276,7 @@ aE
ao
aZ
aj
-aw
+fT
aK
aG
ck
@@ -2719,7 +3319,7 @@ ck
ck
aG
pD
-ad
+dQ
am
aE
aE
@@ -2738,7 +3338,7 @@ aZ
aE
aE
aj
-aw
+fT
aK
ck
ck
@@ -2781,7 +3381,7 @@ ck
ck
ck
pD
-ad
+dQ
am
aE
ao
@@ -2800,7 +3400,7 @@ aE
aZ
aE
aD
-aw
+fT
aK
ck
ck
@@ -2843,7 +3443,7 @@ ck
ck
ck
pD
-ad
+dQ
am
aZ
aE
@@ -2862,7 +3462,7 @@ ao
aE
aE
aD
-aw
+fT
aK
ck
ck
@@ -2905,7 +3505,7 @@ ck
ck
ck
pD
-ad
+dQ
am
aE
aE
@@ -2924,7 +3524,7 @@ aE
aE
ao
aD
-ad
+El
aK
ck
ck
@@ -2967,7 +3567,7 @@ ck
ck
ck
aN
-ad
+dQ
am
ai
aE
@@ -2986,7 +3586,7 @@ ai
aZ
aE
aD
-ad
+El
aK
aG
ck
@@ -3029,7 +3629,7 @@ ck
ck
aG
pD
-fM
+kr
am
aE
aZ
@@ -3048,7 +3648,7 @@ aE
ao
aZ
aD
-ad
+El
aK
ck
ck
@@ -3091,7 +3691,7 @@ ck
ck
ck
pD
-aw
+tF
tR
aE
aE
@@ -3110,7 +3710,7 @@ aE
ai
aE
aj
-ad
+El
aK
ck
ck
@@ -3153,7 +3753,7 @@ ck
ck
ck
pD
-aw
+tF
tR
aZ
aE
@@ -3172,7 +3772,7 @@ aZ
aE
ao
aj
-ad
+El
aK
ck
ck
@@ -3215,7 +3815,7 @@ ck
ck
ck
pD
-aw
+tF
am
aE
aE
@@ -3234,7 +3834,7 @@ aE
aE
aZ
aj
-ad
+El
kd
ck
ck
@@ -3277,7 +3877,7 @@ ck
ck
ck
pD
-aw
+tF
tR
aE
aE
@@ -3296,7 +3896,7 @@ aE
ao
aE
aj
-fM
+Ye
kd
ck
ck
@@ -3339,7 +3939,7 @@ ck
ck
ck
pD
-aw
+tF
am
aE
aE
@@ -3358,7 +3958,7 @@ aE
ai
aE
aj
-fM
+Ye
sw
aG
ck
@@ -3401,7 +4001,7 @@ ck
ck
aG
pD
-fM
+kr
am
ai
aE
@@ -3420,7 +4020,7 @@ aZ
aE
ai
aj
-fM
+Ye
aK
ck
ck
@@ -3482,8 +4082,8 @@ aE
aE
aE
aj
-aw
-aK
+nZ
+AU
ck
ck
ck
@@ -3524,8 +4124,8 @@ ck
ck
ck
ck
-aN
-fM
+ts
+cb
tR
aE
aE
@@ -3544,7 +4144,7 @@ aI
aE
ai
aj
-aw
+fT
aK
ck
ck
@@ -3587,7 +4187,7 @@ ck
ck
ck
pD
-ad
+dQ
am
aE
aE
@@ -3606,7 +4206,7 @@ au
ao
aE
aj
-aw
+fT
aK
ck
ck
@@ -3649,7 +4249,7 @@ ck
ck
ck
pD
-ad
+dQ
am
aE
aZ
@@ -3668,7 +4268,7 @@ aI
aE
aZ
aj
-aw
+fT
aK
aG
ck
@@ -3711,7 +4311,7 @@ ck
ck
aG
pD
-ad
+dQ
am
aE
aE
@@ -3730,7 +4330,7 @@ aI
ai
aE
aj
-aw
+fT
aK
ck
ck
@@ -3773,7 +4373,7 @@ ck
ck
ck
pD
-ad
+dQ
am
aE
aE
@@ -3792,7 +4392,7 @@ aI
aT
aE
aD
-aw
+fT
aK
ck
ck
@@ -3835,7 +4435,7 @@ ck
ck
ck
pD
-ad
+dQ
am
aE
ao
@@ -3854,7 +4454,7 @@ aI
aI
aE
aD
-aw
+fT
aK
ck
ck
@@ -3897,7 +4497,7 @@ ck
ck
ck
pD
-ad
+dQ
am
aE
ai
@@ -3916,7 +4516,7 @@ aI
aI
aE
aD
-ad
+El
aK
ck
ck
@@ -3959,7 +4559,7 @@ ck
ck
ck
aN
-ad
+dQ
am
aZ
aE
@@ -3978,7 +4578,7 @@ aI
aZ
aE
aD
-ad
+El
aK
aG
ck
@@ -4021,7 +4621,7 @@ ck
ck
aG
pD
-fM
+kr
am
aE
aE
@@ -4040,7 +4640,7 @@ aI
aE
ai
aD
-ad
+El
aK
ck
ck
@@ -4083,7 +4683,7 @@ ck
ck
ck
pD
-aw
+tF
tR
aE
ao
@@ -4102,7 +4702,7 @@ aI
aE
ao
aj
-ad
+El
aK
ck
ck
@@ -4145,7 +4745,7 @@ ck
ck
ck
pD
-aw
+tF
tR
aE
aE
@@ -4164,7 +4764,7 @@ aI
aE
aE
aj
-ad
+El
aK
ck
ck
@@ -4207,7 +4807,7 @@ ck
ck
ck
pD
-aw
+tF
am
aE
aZ
@@ -4226,7 +4826,7 @@ aI
aZ
aE
aj
-ad
+El
kd
ck
ck
@@ -4269,7 +4869,7 @@ ck
ck
ck
pD
-aw
+tF
tR
aE
aE
@@ -4288,7 +4888,7 @@ aI
aE
aE
aj
-aw
+fT
kd
aG
ck
@@ -4331,7 +4931,7 @@ ck
ck
aG
pD
-aw
+tF
tR
aE
aE
@@ -4350,7 +4950,7 @@ au
ai
aE
aj
-aw
+fT
aK
ck
ck
@@ -4393,7 +4993,7 @@ ck
ck
ck
Ck
-fM
+kr
tR
aE
aE
@@ -4408,11 +5008,11 @@ aH
aH
aH
aH
+ln
aE
-aE
-aZ
-pD
-aw
+Mk
+aD
+El
aK
ck
ck
@@ -4455,7 +5055,7 @@ ck
ck
ck
pD
-aw
+tF
aK
aE
aE
@@ -4468,14 +5068,14 @@ aH
(51,1,1) = {"
aH
tj
-tj
+jF
aH
+aZ
aE
-ao
-aE
-aj
-aw
-aK
+pi
+ps
+dn
+AU
ck
ck
ck
@@ -4516,8 +5116,8 @@ ck
ck
ck
ck
-pD
-aw
+wZ
+Xf
tR
aZ
aE
@@ -4530,13 +5130,13 @@ aH
(52,1,1) = {"
aH
tj
-tj
+HY
aH
-aE
-aE
-aE
-aj
-aw
+Mj
+Mj
+Ht
+aD
+fT
aK
ck
ck
@@ -4579,7 +5179,7 @@ ck
ck
ck
pD
-ad
+dQ
tR
ao
aE
@@ -4592,13 +5192,13 @@ aI
(53,1,1) = {"
aH
tj
-tj
-sB
-aE
-aE
-ao
-aD
-ad
+Oj
+lo
+vT
+vT
+SR
+ne
+Ye
aK
aG
ck
@@ -4641,7 +5241,7 @@ ck
ck
aG
pD
-aw
+tF
tR
aE
aE
@@ -4656,11 +5256,11 @@ aH
tj
tj
aH
-aZ
-aE
-aE
-aj
-ad
+Zj
+qN
+Eo
+pa
+Od
aK
ck
ck
@@ -4703,7 +5303,7 @@ ck
ck
ck
pD
-aw
+tF
am
aE
aE
@@ -4718,11 +5318,11 @@ aH
aH
aH
aH
-aE
ai
aE
-aD
-aw
+UV
+iG
+Fw
aK
ck
ck
@@ -4765,7 +5365,7 @@ ck
ck
ck
aN
-aw
+tF
tR
aZ
aE
@@ -4779,12 +5379,12 @@ aI
aI
aI
aI
-aI
+ln
aE
-ao
-ai
-aj
-fM
+aE
+AW
+pD
+Ye
aK
ck
ck
@@ -4827,7 +5427,7 @@ ck
ck
ck
pD
-aw
+tF
tR
aE
ao
@@ -4843,10 +5443,10 @@ aI
aI
aI
aE
-aE
-aE
-aj
-Iz
+Fi
+Wm
+wG
+Ye
aK
ck
ck
@@ -4889,7 +5489,7 @@ ck
ck
ck
pD
-fM
+kr
tR
aE
aE
@@ -4951,7 +5551,7 @@ ck
ck
aG
pD
-fM
+kr
tR
aE
aZ
@@ -4970,7 +5570,7 @@ aE
aE
aZ
aj
-fM
+Ye
kd
ck
ck
@@ -5013,7 +5613,7 @@ ck
ck
ck
pD
-fM
+kr
tR
aE
aI
@@ -5032,7 +5632,7 @@ ao
aE
aE
aj
-fM
+Ye
kd
ck
ck
@@ -5075,7 +5675,7 @@ ck
ck
ck
pD
-fM
+kr
am
ai
aI
@@ -5094,7 +5694,7 @@ aE
aE
ao
aD
-aw
+fT
kd
ck
ck
@@ -5137,7 +5737,7 @@ ck
ck
ck
pD
-aw
+tF
aO
aE
aI
@@ -5156,7 +5756,7 @@ aZ
aE
aE
aj
-aw
+fT
aK
ck
ck
@@ -5199,7 +5799,7 @@ ck
ck
ck
pD
-fM
+kr
aO
aZ
aE
@@ -5218,7 +5818,7 @@ aE
aE
aE
aj
-aw
+fT
aK
aG
ck
@@ -5261,7 +5861,7 @@ ck
ck
aG
aN
-ad
+dQ
tR
ao
aE
@@ -5280,7 +5880,7 @@ aE
aZ
aE
aj
-ad
+El
aK
ck
ck
@@ -5323,7 +5923,7 @@ ck
ck
ck
aN
-aw
+tF
tR
aE
aE
@@ -5342,7 +5942,7 @@ aE
ao
aE
aj
-ad
+El
aK
ck
ck
@@ -5385,7 +5985,7 @@ ck
ck
ck
aN
-aw
+tF
tR
aE
aZ
@@ -5404,7 +6004,7 @@ aE
ai
aE
aj
-ad
+El
aK
ck
ck
@@ -5447,7 +6047,7 @@ ck
ck
ck
pD
-aw
+tF
tR
aE
ao
@@ -5466,7 +6066,7 @@ aE
aE
ao
aj
-ad
+El
aK
ck
ck
@@ -5509,7 +6109,7 @@ ck
ck
ck
pD
-fM
+kr
tR
aE
aE
@@ -5528,8 +6128,8 @@ aE
aE
aE
aj
-aw
-kd
+nZ
+Or
aG
ck
ck
@@ -5570,8 +6170,8 @@ ck
ck
ck
aG
-pD
-fM
+wZ
+cb
tR
aZ
aT
@@ -5590,7 +6190,7 @@ aE
aZ
aE
aD
-aw
+fT
kd
ck
ck
@@ -5633,7 +6233,7 @@ ck
ck
ck
pD
-aw
+tF
tR
aE
aI
@@ -5652,7 +6252,7 @@ aE
aE
aE
aD
-ad
+El
kd
ck
ck
@@ -5695,7 +6295,7 @@ aG
ck
ck
pD
-ad
+dQ
tR
ai
aI
@@ -5714,7 +6314,7 @@ ao
aE
aE
aj
-ad
+El
cX
Mj
ar
@@ -5727,7 +6327,7 @@ ar
ar
ar
ar
-ar
+ia
ar
ar
ar
@@ -5747,7 +6347,7 @@ ar
ar
ar
ar
-ar
+ia
ar
ar
ar
@@ -5757,7 +6357,7 @@ ar
ar
ar
qX
-ad
+dQ
tR
aZ
aI
@@ -5776,50 +6376,50 @@ aZ
aE
aE
aj
-Cb
-ad
-ad
-ad
-ad
-ad
-aw
-aw
-aw
-aw
-aw
-ad
-ad
-ad
-ad
-aw
-aw
-fM
-aw
-aw
-aw
-aw
-fM
-YA
-aw
-aw
-ad
-fM
-fM
-aw
-aw
-ad
-ad
-ad
-aw
-ad
-ad
-ad
-fM
-fM
-aw
-ad
-ad
+VK
+Eu
+Eu
+Eu
+Eu
+Eu
+sd
+sd
+sd
+sd
+sd
+Eu
+Eu
+HF
+Eu
+sd
+sd
+Xq
+sd
+sd
+sd
+sd
+Xq
YA
+sd
+sd
+Eu
+Xq
+Xq
+sd
+sd
+Eu
+Eu
+HF
+sd
+Eu
+Eu
+Eu
+Xq
+Xq
+sd
+Eu
+Eu
+WY
am
aE
aE
diff --git a/_maps/outpost/indie_space.dmm b/_maps/outpost/indie_space.dmm
index d7debf2a5dc7..7560d2921d2c 100644
--- a/_maps/outpost/indie_space.dmm
+++ b/_maps/outpost/indie_space.dmm
@@ -182,17 +182,16 @@
/turf/open/floor/plasteel,
/area/outpost/maintenance/fore)
"bi" = (
-/obj/machinery/mineral/processing_unit_console{
- pixel_y = -31;
- machinedir = 1;
- output_dir = 1
- },
/obj/structure/railing{
dir = 1
},
/obj/effect/turf_decal/corner/opaque/brown{
dir = 10
},
+/obj/machinery/computer/electrolyzer_console{
+ pixel_y = -31;
+ density = 0
+ },
/turf/open/floor/plasteel/patterned,
/area/outpost/cargo)
"bn" = (
@@ -728,11 +727,10 @@
/turf/open/floor/plasteel/tech/techmaint,
/area/outpost/maintenance/fore)
"fd" = (
-/obj/machinery/mineral/processing_unit{
- input_dir = 8;
- output_dir = 1
+/obj/machinery/conveyor/inverted{
+ id = "outpost1";
+ dir = 10
},
-/obj/effect/turf_decal/industrial/outline/yellow,
/turf/open/floor/plasteel/patterned/cargo_one,
/area/outpost/cargo)
"fh" = (
@@ -2541,6 +2539,13 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4,
/turf/open/floor/plasteel,
/area/outpost/hallway/central)
+"rk" = (
+/obj/effect/turf_decal/industrial/outline/yellow,
+/obj/machinery/mineral/electrolyzer{
+ output_dir = 4
+ },
+/turf/open/floor/plasteel/patterned/cargo_one,
+/area/outpost/cargo)
"rm" = (
/obj/effect/turf_decal/corner/opaque/grey/full,
/obj/effect/turf_decal/corner/opaque/neutral{
@@ -5032,10 +5037,8 @@
},
/area/outpost/crew/bar)
"FE" = (
-/obj/machinery/mineral/unloading_machine{
- dir = 1
- },
/obj/effect/turf_decal/industrial/outline/yellow,
+/obj/machinery/mineral/electrolyzer_unloader,
/turf/open/floor/plasteel/patterned/cargo_one,
/area/outpost/cargo)
"FF" = (
@@ -7064,13 +7067,13 @@
/obj/structure/railing{
dir = 6
},
+/obj/effect/decal/cleanable/dirt,
/obj/machinery/conveyor_switch{
id = "outpost1";
layer = 3.11;
pixel_y = 4;
pixel_x = 5
},
-/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel/patterned,
/area/outpost/cargo)
"RU" = (
@@ -17438,8 +17441,8 @@ Dp
tI
tI
RO
-gO
-BZ
+rk
+bi
Uw
HD
HD
@@ -17562,7 +17565,7 @@ ca
ca
ca
fd
-bi
+BZ
Uw
HD
HD
diff --git a/_maps/outpost/nanotrasen_asteroid.dmm b/_maps/outpost/nanotrasen_asteroid.dmm
index a55df014f4f9..d1a184d736fc 100644
--- a/_maps/outpost/nanotrasen_asteroid.dmm
+++ b/_maps/outpost/nanotrasen_asteroid.dmm
@@ -3689,10 +3689,7 @@
pixel_y = -5;
pixel_x = -9
},
-/obj/item/reagent_containers/food/drinks/britcup{
- pixel_x = -7;
- pixel_y = 10
- },
+/obj/item/reagent_containers/food/drinks/mug,
/obj/effect/turf_decal/trimline/opaque/blue/filled/line{
dir = 4
},
@@ -9793,7 +9790,7 @@
pixel_y = -3
},
/obj/item/reagent_containers/food/snacks/meatbun,
-/obj/item/reagent_containers/food/drinks/soda_cans/lemon_lime{
+/obj/item/reagent_containers/food/drinks/soda_cans/orange_soda{
pixel_y = 12;
pixel_x = -8
},
@@ -12833,7 +12830,7 @@
/obj/item/reagent_containers/food/snacks/nachos{
pixel_y = 9
},
-/obj/item/reagent_containers/food/drinks/soda_cans/pwr_game{
+/obj/item/reagent_containers/food/drinks/soda_cans/pacfuel{
pixel_x = 8;
pixel_y = 3
},
diff --git a/_maps/outpost/nanotrasen_ice.dmm b/_maps/outpost/nanotrasen_ice.dmm
index 696342178b2d..d029c3dc86a8 100644
--- a/_maps/outpost/nanotrasen_ice.dmm
+++ b/_maps/outpost/nanotrasen_ice.dmm
@@ -554,8 +554,8 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{
dir = 4
},
-/obj/structure/closet/crate,
/obj/effect/turf_decal/box,
+/obj/structure/closet/crate,
/turf/open/floor/plasteel/patterned,
/area/outpost/cargo/smeltery)
"dM" = (
@@ -2851,10 +2851,9 @@
"td" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/turf_decal/industrial/hatch/yellow,
-/obj/machinery/mineral/processing_unit_console{
- machinedir = 8;
- output_dir = 1;
- pixel_x = 32
+/obj/machinery/computer/electrolyzer_console{
+ pixel_x = 32;
+ density = 0
},
/turf/open/floor/plasteel/patterned,
/area/outpost/cargo/smeltery)
@@ -2958,8 +2957,8 @@
},
/area/outpost/exterior)
"tM" = (
-/obj/machinery/mineral/unloading_machine,
/obj/effect/turf_decal/industrial/outline/yellow,
+/obj/machinery/mineral/electrolyzer_unloader,
/turf/open/floor/plasteel/patterned/cargo_one,
/area/outpost/cargo/smeltery)
"tO" = (
@@ -6342,11 +6341,10 @@
/turf/open/floor/plasteel/patterned,
/area/outpost/crew/bathroom)
"Rg" = (
-/obj/machinery/mineral/processing_unit{
- output_dir = 4;
- input_dir = 8
- },
/obj/effect/turf_decal/industrial/outline/yellow,
+/obj/machinery/mineral/electrolyzer{
+ output_dir = 4
+ },
/turf/open/floor/plasteel/dark,
/area/outpost/cargo/smeltery)
"Rh" = (
diff --git a/_maps/shuttles/independent/independent_beluga.dmm b/_maps/shuttles/independent/independent_beluga.dmm
index 3975c649b490..1eae63fcac48 100644
--- a/_maps/shuttles/independent/independent_beluga.dmm
+++ b/_maps/shuttles/independent/independent_beluga.dmm
@@ -1341,10 +1341,7 @@
pixel_x = 8;
pixel_y = 7
},
-/obj/item/reagent_containers/food/drinks/britcup{
- pixel_x = -6;
- pixel_y = -1
- },
+/obj/item/reagent_containers/food/drinks/mug,
/obj/item/phone{
pixel_x = 9;
pixel_y = -2
@@ -3155,10 +3152,7 @@
pixel_x = 4;
pixel_y = 1
},
-/obj/item/reagent_containers/food/drinks/britcup{
- pixel_x = -5;
- pixel_y = 7
- },
+/obj/item/reagent_containers/food/drinks/mug,
/obj/effect/turf_decal/siding/wood,
/obj/item/lipstick{
pixel_x = -5;
@@ -4831,9 +4825,7 @@
dir = 4
},
/obj/structure/table/wood/reinforced,
-/obj/item/reagent_containers/food/drinks/britcup{
- pixel_x = 9
- },
+/obj/item/reagent_containers/food/drinks/mug,
/turf/open/floor/plasteel/sepia,
/area/ship/crew/canteen)
"VK" = (
diff --git a/_maps/shuttles/independent/independent_dwayne.dmm b/_maps/shuttles/independent/independent_dwayne.dmm
index 262ac034dc5a..ef1435cb1558 100644
--- a/_maps/shuttles/independent/independent_dwayne.dmm
+++ b/_maps/shuttles/independent/independent_dwayne.dmm
@@ -138,11 +138,10 @@
/obj/structure/cable{
icon_state = "4-8"
},
-/obj/machinery/atmospherics/components/binary/pump{
- dir = 8;
- name = "engine fuel pump"
- },
/obj/structure/catwalk/over,
+/obj/machinery/atmospherics/components/trinary/mixer{
+ dir = 8
+ },
/turf/open/floor/plating,
/area/ship/engineering)
"bW" = (
@@ -287,7 +286,7 @@
/turf/open/floor/plasteel/tech/techmaint,
/area/ship/engineering)
"gF" = (
-/obj/machinery/power/shuttle/engine/fueled/plasma{
+/obj/machinery/power/shuttle/engine/fire{
dir = 4
},
/turf/open/floor/plating/airless,
@@ -346,9 +345,6 @@
/turf/open/floor/plating/airless,
/area/ship/external)
"hK" = (
-/obj/machinery/atmospherics/components/unary/shuttle/heater{
- dir = 4
- },
/obj/structure/window/reinforced{
dir = 8
},
@@ -356,16 +352,20 @@
dir = 4;
name = "Engine Access"
},
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater{
+ dir = 4
+ },
/turf/open/floor/plating,
/area/ship/engineering)
"hZ" = (
/obj/structure/cable{
icon_state = "2-8"
},
+/obj/item/radio/intercom/directional/east,
/obj/machinery/atmospherics/components/unary/portables_connector{
dir = 8
},
-/obj/item/radio/intercom/directional/east,
+/obj/machinery/portable_atmospherics/canister/hydrogen,
/turf/open/floor/plating,
/area/ship/engineering)
"ig" = (
@@ -477,9 +477,10 @@
/turf/open/floor/plating/airless,
/area/ship/external)
"kQ" = (
-/obj/machinery/atmospherics/components/unary/tank/toxins{
+/obj/machinery/atmospherics/components/unary/portables_connector{
dir = 8
},
+/obj/machinery/portable_atmospherics/canister/oxygen,
/turf/open/floor/plating,
/area/ship/engineering)
"ls" = (
@@ -1203,15 +1204,12 @@
/area/ship/cargo)
"CD" = (
/obj/effect/decal/cleanable/dirt/dust,
-/obj/machinery/atmospherics/pipe/manifold/orange/visible{
- dir = 1
+/obj/machinery/atmospherics/pipe/simple/orange/visible{
+ dir = 10
},
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering)
"CO" = (
-/obj/machinery/atmospherics/components/unary/shuttle/heater{
- dir = 4
- },
/obj/structure/window/reinforced{
dir = 8
},
@@ -1219,6 +1217,9 @@
dir = 4;
name = "Engine Access"
},
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater{
+ dir = 4
+ },
/turf/open/floor/plating,
/area/ship/engineering)
"CP" = (
@@ -1625,16 +1626,6 @@
},
/turf/open/floor/plasteel/tech/techmaint,
/area/ship/engineering)
-"Mk" = (
-/obj/machinery/power/port_gen/pacman,
-/obj/structure/cable/yellow{
- icon_state = "0-4"
- },
-/obj/machinery/atmospherics/pipe/simple/orange/hidden,
-/obj/item/stack/sheet/mineral/plasma/five,
-/obj/effect/decal/cleanable/dirt/dust,
-/turf/open/floor/plasteel/tech/grid,
-/area/ship/engineering)
"Mn" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{
dir = 8
@@ -1893,6 +1884,8 @@
/obj/structure/cable{
icon_state = "1-2"
},
+/obj/structure/closet/crate/large,
+/obj/machinery/portable_atmospherics/canister/hydrogen,
/turf/open/floor/plating,
/area/ship/cargo)
"QI" = (
@@ -2096,7 +2089,7 @@
/obj/effect/turf_decal/corner/opaque/yellow/three_quarters{
dir = 4
},
-/obj/structure/guncase/shotgun,
+/obj/structure/guncloset/shotgun,
/obj/item/gun/ballistic/shotgun/flamingarrow,
/obj/item/gun/ballistic/shotgun/flamingarrow,
/obj/item/gun/ballistic/shotgun/flamingarrow,
@@ -2124,9 +2117,9 @@
pixel_x = 6;
pixel_y = 7
},
-/obj/machinery/atmospherics/pipe/simple/orange/hidden,
/obj/machinery/light/directional/west,
/obj/item/storage/box/lights/mixed,
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering)
"WZ" = (
@@ -2206,12 +2199,11 @@
/turf/open/floor/plasteel/mono,
/area/ship/medical)
"YE" = (
-/obj/machinery/atmospherics/components/binary/pump{
- dir = 8;
- name = "engine fuel pump"
- },
/obj/structure/catwalk/over,
/obj/machinery/computer/helm/viewscreen/directional/north,
+/obj/machinery/atmospherics/pipe/simple/orange/visible{
+ dir = 6
+ },
/turf/open/floor/plating,
/area/ship/engineering)
"YJ" = (
@@ -2381,7 +2373,7 @@ tq
CD
vn
WL
-Mk
+IF
IF
as
kf
diff --git a/_maps/shuttles/independent/independent_tranquility.dmm b/_maps/shuttles/independent/independent_tranquility.dmm
index 1ac7b7fb0d33..08738bbe821f 100644
--- a/_maps/shuttles/independent/independent_tranquility.dmm
+++ b/_maps/shuttles/independent/independent_tranquility.dmm
@@ -995,9 +995,9 @@
name = "Minifridge"
},
/obj/item/reagent_containers/food/drinks/soda_cans/molten,
-/obj/item/reagent_containers/food/drinks/soda_cans/lemon_lime,
-/obj/item/reagent_containers/food/drinks/soda_cans/pwr_game,
-/obj/item/reagent_containers/food/drinks/soda_cans/pwr_game,
+/obj/item/reagent_containers/food/drinks/soda_cans/orange_soda,
+/obj/item/reagent_containers/food/drinks/soda_cans/pacfuel,
+/obj/item/reagent_containers/food/drinks/soda_cans/pacfuel,
/obj/item/reagent_containers/food/drinks/soda_cans/random,
/obj/item/reagent_containers/food/drinks/soda_cans/random,
/obj/item/reagent_containers/food/drinks/soda_cans/sodawater,
diff --git a/_maps/shuttles/nanotrasen/nanotrasen_heron.dmm b/_maps/shuttles/nanotrasen/nanotrasen_heron.dmm
index 3f761da4dd08..b92747f3a3e2 100644
--- a/_maps/shuttles/nanotrasen/nanotrasen_heron.dmm
+++ b/_maps/shuttles/nanotrasen/nanotrasen_heron.dmm
@@ -3374,13 +3374,13 @@
"mt" = (
/obj/structure/window/reinforced/spawner,
/obj/structure/rack,
-/obj/item/gun/ballistic/automatic/smg/proto{
+/obj/item/gun/ballistic/automatic/smg/skm_carbine/inteq/proto{
pixel_y = 3
},
-/obj/item/gun/ballistic/automatic/smg/proto{
+/obj/item/gun/ballistic/automatic/smg/skm_carbine/inteq/proto{
pixel_y = -2
},
-/obj/item/gun/ballistic/automatic/smg/proto{
+/obj/item/gun/ballistic/automatic/smg/skm_carbine/inteq/proto{
pixel_y = -7
},
/turf/open/floor/plasteel/tech,
@@ -11028,10 +11028,7 @@
pixel_x = -5;
pixel_y = -12
},
-/obj/item/reagent_containers/food/drinks/britcup{
- pixel_x = 8;
- pixel_y = -4
- },
+/obj/item/reagent_containers/food/drinks/mug,
/obj/item/newspaper{
pixel_x = -8;
pixel_y = 5
@@ -11536,7 +11533,7 @@
/turf/open/floor/plasteel,
/area/ship/hallway/aft)
"Rs" = (
-/obj/structure/guncase,
+/obj/structure/guncloset,
/obj/item/gun/ballistic/automatic/pistol/candor/no_mag,
/obj/item/gun/ballistic/automatic/pistol/candor/no_mag,
/turf/open/floor/plasteel/tech,
diff --git a/_maps/shuttles/nanotrasen/nanotrasen_ranger.dmm b/_maps/shuttles/nanotrasen/nanotrasen_ranger.dmm
index 288fd6235cf8..a106a307bb18 100644
--- a/_maps/shuttles/nanotrasen/nanotrasen_ranger.dmm
+++ b/_maps/shuttles/nanotrasen/nanotrasen_ranger.dmm
@@ -184,15 +184,14 @@
/obj/item/clothing/suit/armor/vest/security,
/obj/item/clothing/mask/gas/sechailer,
/obj/item/gps,
-/obj/item/gun/ballistic/automatic/pistol/commander,
/obj/structure/railing{
dir = 4
},
/obj/item/ammo_box/c9mm,
/obj/item/ammo_box/c9mm,
/obj/item/ammo_box/magazine/co9mm,
-/obj/item/ammo_box/magazine/co9mm,
/obj/item/storage/belt/security/webbing,
+/obj/item/storage/pistolcase/commander,
/turf/open/floor/wood,
/area/ship/security)
"bD" = (
@@ -3115,9 +3114,6 @@
/area/ship/engineering)
"Ha" = (
/obj/structure/closet/secure_closet/lp/lieutenant,
-/obj/item/gun/energy/e_gun{
- pixel_y = 1
- },
/obj/item/stock_parts/cell/gun,
/obj/item/melee/classic_baton/telescopic,
/obj/item/kitchen/knife/combat/survival,
@@ -3131,12 +3127,12 @@
pixel_x = 7;
pixel_y = -20
},
-/obj/item/gun/ballistic/automatic/pistol/commander,
/obj/item/ammo_box/c9mm,
/obj/item/ammo_box/c9mm,
/obj/item/ammo_box/c9mm/rubbershot,
/obj/item/ammo_box/magazine/co9mm,
-/obj/item/ammo_box/magazine/co9mm,
+/obj/item/storage/pistolcase/commander,
+/obj/item/storage/pistolcase/egun,
/turf/open/floor/wood,
/area/ship/crew/dorm)
"Hd" = (
diff --git a/_maps/shuttles/nanotrasen/nanotrasen_skipper.dmm b/_maps/shuttles/nanotrasen/nanotrasen_skipper.dmm
index 93c59445ee41..f910af5043c8 100644
--- a/_maps/shuttles/nanotrasen/nanotrasen_skipper.dmm
+++ b/_maps/shuttles/nanotrasen/nanotrasen_skipper.dmm
@@ -72,7 +72,7 @@
/turf/open/floor/plating/rust,
/area/ship/crew/toilet)
"aQ" = (
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4,
+/obj/machinery/atmospherics/pipe/simple/brown/hidden/layer4,
/turf/open/floor/plasteel,
/area/ship/cargo)
"aR" = (
@@ -97,6 +97,15 @@
/obj/machinery/light/directional/east,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
+"bh" = (
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/brown/hidden/layer4{
+ dir = 4
+ },
+/turf/open/floor/carpet/nanoweave,
+/area/ship/hallway/central)
"bk" = (
/obj/machinery/atmospherics/components/unary/outlet_injector/atmos/incinerator_input{
dir = 4
@@ -153,17 +162,17 @@
/turf/open/floor/carpet/nanoweave,
/area/ship/hallway/central)
"bz" = (
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{
- dir = 1
+/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
+ dir = 4
},
-/turf/open/floor/plasteel/tech,
-/area/ship/engineering/atmospherics)
+/obj/machinery/atmospherics/pipe/simple/brown/hidden/layer4{
+ dir = 10
+ },
+/turf/open/floor/carpet/nanoweave,
+/area/ship/hallway/central)
"bA" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4,
-/obj/machinery/atmospherics/pipe/simple/cyan/visible{
- dir = 9
- },
/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
dir = 6
},
@@ -173,9 +182,6 @@
/turf/open/floor/engine,
/area/ship/engineering/atmospherics)
"bG" = (
-/obj/machinery/atmospherics/components/unary/shuttle/heater{
- dir = 4
- },
/obj/structure/window/reinforced/spawner/west,
/obj/machinery/door/poddoor{
dir = 4;
@@ -184,13 +190,15 @@
/obj/machinery/door/window/eastleft{
name = "Engine Access"
},
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater{
+ dir = 4
+ },
/turf/open/floor/plating,
/area/ship/engineering/atmospherics)
"bI" = (
-/obj/machinery/atmospherics/pipe/simple/purple/visible,
-/obj/structure/grille,
-/obj/structure/window/plasma/reinforced/fulltile,
-/turf/open/floor/plating,
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
+/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"bO" = (
/obj/structure/table/reinforced,
@@ -224,10 +232,10 @@
/obj/structure/cable{
icon_state = "1-2"
},
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{
+/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2,
+/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{
dir = 8
},
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4,
/turf/open/floor/plasteel,
/area/ship/cargo)
"cd" = (
@@ -269,7 +277,6 @@
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4,
-/obj/machinery/atmospherics/pipe/simple/cyan/visible,
/obj/machinery/door/firedoor/border_only{
dir = 1
},
@@ -432,17 +439,15 @@
/turf/open/floor/carpet/nanoweave,
/area/ship/hallway/central)
"dO" = (
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 10
- },
+/obj/machinery/atmospherics/components/trinary/mixer/flipped/layer4,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"dS" = (
-/obj/machinery/atmospherics/pipe/manifold/cyan/visible{
- dir = 8
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4{
+ dir = 9
+ },
+/obj/machinery/atmospherics/pipe/simple/cyan/visible{
+ dir = 5
},
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
@@ -466,9 +471,6 @@
/turf/open/floor/plasteel/white,
/area/ship/medical)
"dZ" = (
-/obj/machinery/atmospherics/pipe/layer_manifold{
- dir = 4
- },
/obj/structure/fireaxecabinet{
pixel_y = -29
},
@@ -806,6 +808,16 @@
/obj/machinery/newscaster/directional/east,
/turf/open/floor/carpet/red,
/area/ship/hallway/central)
+"fQ" = (
+/obj/effect/turf_decal/industrial/warning{
+ dir = 1
+ },
+/obj/machinery/atmospherics/components/binary/pump/layer4{
+ dir = 1;
+ name = "Fuel Pump"
+ },
+/turf/open/floor/plasteel/mono/dark,
+/area/ship/cargo)
"fT" = (
/obj/machinery/atmospherics/pipe/simple/dark/visible{
dir = 9
@@ -941,7 +953,7 @@
"gO" = (
/obj/machinery/atmospherics/components/binary/pump{
dir = 8;
- name = "engine fuel pump"
+ name = "thruster fuel pump"
},
/obj/machinery/atmospherics/pipe/simple/green/visible,
/obj/structure/catwalk/over/plated_catwalk/dark,
@@ -1515,18 +1527,14 @@
/turf/open/floor/wood,
/area/ship/crew/crewthree)
"lg" = (
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
/obj/structure/disposalpipe/segment{
dir = 10
},
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
- },
/obj/effect/turf_decal/techfloor{
dir = 4
},
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering/atmospherics)
"lh" = (
@@ -1606,9 +1614,7 @@
dir = 1
},
/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2,
-/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{
- dir = 8
- },
+/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"lY" = (
@@ -1661,7 +1667,7 @@
/turf/open/floor/plasteel/showroomfloor,
/area/ship/crew/toilet)
"mF" = (
-/obj/machinery/power/shuttle/engine/fueled/plasma{
+/obj/machinery/power/shuttle/engine/fire{
dir = 4
},
/turf/open/floor/plating/airless,
@@ -1702,7 +1708,6 @@
/turf/open/floor/wood,
/area/ship/crew/dorm)
"mS" = (
-/obj/machinery/atmospherics/pipe/simple/cyan/visible,
/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden/layer4,
/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer2{
dir = 8
@@ -1803,13 +1808,12 @@
/obj/machinery/atmospherics/pipe/layer_manifold{
dir = 4
},
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
/obj/structure/cable{
icon_state = "1-2"
},
/obj/structure/catwalk/over/plated_catwalk/dark,
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
/turf/open/floor/plating,
/area/ship/engineering/atmospherics)
"np" = (
@@ -1876,6 +1880,9 @@
/obj/machinery/door/firedoor/border_only{
dir = 4
},
+/obj/machinery/atmospherics/pipe/simple/brown/hidden/layer4{
+ dir = 4
+ },
/turf/open/floor/plasteel/dark,
/area/ship/engineering/atmospherics)
"ok" = (
@@ -1911,7 +1918,6 @@
/obj/machinery/atmospherics/pipe/simple/cyan/visible{
dir = 8
},
-/obj/machinery/atmospherics/pipe/simple/green/visible,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 9
},
@@ -2066,6 +2072,9 @@
/obj/machinery/door/firedoor/border_only{
dir = 4
},
+/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
+ dir = 4
+ },
/turf/open/floor/plasteel/dark,
/area/ship/engineering/atmospherics)
"pT" = (
@@ -2125,20 +2134,15 @@
/turf/open/floor/plasteel,
/area/ship/cargo)
"qF" = (
-/obj/machinery/power/shuttle/engine/fueled/plasma{
+/obj/machinery/power/shuttle/engine/fire{
dir = 4
},
/turf/open/floor/plating,
/area/ship/external)
"qK" = (
-/obj/machinery/atmospherics/components/binary/pump{
- dir = 1;
- name = "Plasma to Engines and Mix"
- },
-/obj/effect/turf_decal/atmos/plasma{
- dir = 1
- },
-/turf/open/floor/plasteel/tech,
+/obj/machinery/atmospherics/pipe/layer_manifold,
+/obj/structure/catwalk/over/plated_catwalk/dark,
+/turf/open/floor/plating,
/area/ship/engineering/atmospherics)
"qR" = (
/obj/machinery/door/airlock/mining{
@@ -2350,6 +2354,9 @@
dir = 4
},
/obj/structure/extinguisher_cabinet/directional/south,
+/obj/machinery/atmospherics/pipe/simple/brown/hidden/layer4{
+ dir = 4
+ },
/turf/open/floor/plasteel,
/area/ship/engineering/atmospherics)
"sD" = (
@@ -2359,13 +2366,18 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 6
},
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
+ dir = 5
+ },
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"sJ" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4,
/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
dir = 5
},
+/obj/machinery/atmospherics/pipe/simple/orange/visible{
+ dir = 10
+ },
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"sK" = (
@@ -2483,14 +2495,10 @@
/turf/closed/wall,
/area/ship/crew/office)
"tF" = (
-/obj/machinery/atmospherics/pipe/simple/cyan/visible,
/obj/machinery/atmospherics/components/binary/pump/layer4{
dir = 1;
name = "Emergency Recycling Override"
},
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 4
- },
/obj/structure/catwalk/over/plated_catwalk/dark,
/turf/open/floor/plating,
/area/ship/engineering/atmospherics)
@@ -2527,24 +2535,23 @@
/turf/open/floor/plasteel/white,
/area/ship/medical)
"ub" = (
-/obj/machinery/atmospherics/pipe/manifold/purple/visible{
- dir = 4
- },
/obj/structure/disposalpipe/segment{
dir = 2
},
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
- },
/obj/effect/turf_decal/techfloor/corner{
dir = 4
},
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering/atmospherics)
"ug" = (
/obj/structure/cable{
icon_state = "4-8"
},
+/obj/machinery/atmospherics/pipe/simple/brown/hidden/layer4{
+ dir = 9
+ },
/turf/open/floor/plasteel,
/area/ship/cargo)
"uh" = (
@@ -2644,9 +2651,6 @@
/turf/open/floor/wood,
/area/ship/crew/dorm)
"uM" = (
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 5
- },
/obj/structure/cable{
icon_state = "1-2"
},
@@ -2805,9 +2809,6 @@
/turf/open/floor/wood,
/area/ship/crew/office)
"vW" = (
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 4
- },
/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer2{
dir = 1
},
@@ -2850,6 +2851,7 @@
icon_state = "1-2"
},
/obj/effect/decal/cleanable/oil/slippery,
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"wg" = (
@@ -2880,8 +2882,13 @@
/turf/open/floor/wood,
/area/ship/crew/crewtwo)
"wt" = (
-/obj/machinery/atmospherics/pipe/simple/cyan/visible,
-/turf/open/floor/plasteel/tech,
+/obj/machinery/atmospherics/pipe/simple/green/visible,
+/obj/structure/catwalk/over/plated_catwalk/dark,
+/obj/machinery/atmospherics/components/binary/pump{
+ dir = 8;
+ name = "thruster fuel pump"
+ },
+/turf/open/floor/plating,
/area/ship/engineering/atmospherics)
"ww" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
@@ -2932,7 +2939,7 @@
/obj/machinery/atmospherics/components/unary/outlet_injector/atmos/toxin_input{
dir = 1
},
-/turf/open/floor/engine/plasma,
+/turf/open/floor/engine/airless,
/area/ship/engineering/atmospherics)
"wG" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
@@ -3071,10 +3078,10 @@
/turf/open/floor/plasteel,
/area/ship/crew/canteen/kitchen)
"yh" = (
-/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{
+/obj/item/radio/intercom/directional/east,
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{
dir = 8
},
-/obj/item/radio/intercom/directional/east,
/turf/open/floor/plasteel,
/area/ship/cargo)
"yj" = (
@@ -3106,11 +3113,9 @@
/turf/open/floor/wood,
/area/ship/crew/dorm)
"yF" = (
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
+/obj/machinery/atmospherics/pipe/manifold/orange/visible{
+ dir = 8
},
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
@@ -3206,11 +3211,11 @@
/turf/open/floor/plasteel,
/area/ship/cargo)
"zy" = (
+/obj/structure/catwalk/over/plated_catwalk/dark,
/obj/machinery/atmospherics/components/binary/pump{
dir = 8;
- name = "engine fuel pump"
+ name = "thruster fuel pump"
},
-/obj/structure/catwalk/over/plated_catwalk/dark,
/turf/open/floor/plating,
/area/ship/engineering/atmospherics)
"zC" = (
@@ -3240,11 +3245,9 @@
/area/ship/crew/toilet)
"zK" = (
/obj/machinery/light/directional/east,
-/obj/structure/table,
-/obj/machinery/cell_charger,
-/obj/item/stock_parts/cell/high/empty,
-/obj/item/stock_parts/cell/high/empty,
-/obj/item/stock_parts/cell/high/empty,
+/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4,
+/obj/machinery/atmospherics/components/unary/portables_connector,
+/obj/effect/turf_decal/industrial/outline/orange,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"zM" = (
@@ -3362,13 +3365,13 @@
/obj/structure/cable{
icon_state = "1-2"
},
-/obj/machinery/atmospherics/components/trinary/mixer/flipped{
- dir = 4;
- name = "Chamber Mixer"
- },
/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"
+ },
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering/engine)
"AP" = (
@@ -3589,6 +3592,9 @@
dir = 4
},
/obj/machinery/light/directional/south,
+/obj/machinery/atmospherics/pipe/simple/brown/hidden/layer4{
+ dir = 4
+ },
/turf/open/floor/plasteel,
/area/ship/engineering/atmospherics)
"CB" = (
@@ -3603,7 +3609,6 @@
"CE" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4,
-/obj/machinery/atmospherics/pipe/simple/cyan/visible,
/obj/structure/cable{
icon_state = "2-4"
},
@@ -3630,12 +3635,10 @@
/turf/open/floor/plasteel/dark,
/area/ship/crew/cryo)
"CR" = (
-/obj/machinery/atmospherics/pipe/manifold/purple/visible{
+/obj/machinery/atmospherics/pipe/manifold/orange/visible{
dir = 4
},
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
- },
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"CV" = (
@@ -3718,7 +3721,7 @@
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/atmos/toxin_output{
dir = 1
},
-/turf/open/floor/engine/plasma,
+/turf/open/floor/engine/hydrogen,
/area/ship/engineering/atmospherics)
"DL" = (
/obj/effect/decal/cleanable/food/flour,
@@ -3813,9 +3816,6 @@
/turf/open/floor/carpet/nanoweave/beige,
/area/ship/bridge)
"EE" = (
-/obj/machinery/atmospherics/components/unary/shuttle/heater{
- dir = 4
- },
/obj/structure/window/reinforced/spawner/west,
/obj/machinery/door/poddoor{
dir = 4;
@@ -3824,6 +3824,9 @@
/obj/machinery/door/window/eastright{
name = "Engine Access"
},
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater{
+ dir = 4
+ },
/turf/open/floor/plating,
/area/ship/engineering/atmospherics)
"EF" = (
@@ -3852,16 +3855,12 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 10
},
-/obj/machinery/atmospherics/pipe/simple/cyan/visible,
/obj/effect/turf_decal/techfloor{
dir = 6
},
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering/atmospherics)
"EP" = (
-/obj/machinery/atmospherics/pipe/simple/green/visible{
- dir = 9
- },
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"ES" = (
@@ -4062,15 +4061,13 @@
/turf/open/floor/plasteel,
/area/ship/crew/canteen/kitchen)
"Hm" = (
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 6
- },
/obj/structure/cable{
icon_state = "1-2"
},
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
+/obj/machinery/atmospherics/components/binary/pump/layer4{
+ name = "Oxygen to Mix"
+ },
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"Hq" = (
@@ -4088,10 +4085,13 @@
/turf/open/floor/carpet/nanoweave,
/area/ship/hallway/central)
"Hu" = (
-/obj/machinery/atmospherics/pipe/manifold/purple/visible,
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
+/obj/machinery/atmospherics/pipe/simple/orange/visible{
+ dir = 9
+ },
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4{
dir = 5
},
+/obj/effect/turf_decal/atmos/mix,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"HA" = (
@@ -4141,7 +4141,6 @@
/obj/machinery/atmospherics/pipe/simple/dark/visible{
dir = 4
},
-/obj/machinery/atmospherics/pipe/simple/cyan/visible,
/obj/structure/cable{
icon_state = "1-2"
},
@@ -4179,24 +4178,20 @@
/turf/open/floor/wood,
/area/ship/crew/dorm)
"IV" = (
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
/obj/structure/cable{
icon_state = "4-8"
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
dir = 8
},
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
- },
/obj/structure/cable{
icon_state = "1-4"
},
/obj/effect/turf_decal/techfloor{
dir = 4
},
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering/atmospherics)
"Jj" = (
@@ -4204,12 +4199,15 @@
/turf/open/floor/carpet/nanoweave,
/area/ship/hallway/central)
"Jk" = (
-/obj/machinery/atmospherics/pipe/manifold/purple/visible{
- dir = 4
- },
/obj/structure/cable{
icon_state = "1-2"
},
+/obj/machinery/atmospherics/pipe/manifold/orange/visible{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4{
+ dir = 6
+ },
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"Jm" = (
@@ -4217,9 +4215,6 @@
icon_state = "1-2"
},
/obj/machinery/airalarm/directional/west,
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering/engine)
"Jn" = (
@@ -4322,12 +4317,12 @@
/turf/open/floor/carpet/nanoweave,
/area/ship/hallway/central)
"Kd" = (
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 10
- },
/obj/structure/cable{
icon_state = "1-2"
},
+/obj/machinery/atmospherics/pipe/simple/orange/visible{
+ dir = 10
+ },
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"Kf" = (
@@ -4481,6 +4476,7 @@
/obj/machinery/door/firedoor/border_only{
dir = 1
},
+/obj/machinery/atmospherics/pipe/simple/brown/hidden/layer4,
/turf/open/floor/plasteel,
/area/ship/cargo)
"Lv" = (
@@ -4496,15 +4492,9 @@
/turf/open/floor/plating,
/area/ship/engineering/engine)
"Lz" = (
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{
dir = 1
},
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
- },
/obj/structure/cable{
icon_state = "1-2"
},
@@ -4512,6 +4502,8 @@
dir = 1
},
/obj/machinery/door/firedoor/border_only,
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering/atmospherics)
"LA" = (
@@ -4601,6 +4593,9 @@
/obj/machinery/atmospherics/pipe/simple/yellow/hidden{
dir = 4
},
+/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
+ dir = 6
+ },
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"Mr" = (
@@ -4660,16 +4655,12 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 5
},
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
- },
/obj/structure/cable{
icon_state = "1-2"
},
/obj/effect/turf_decal/techfloor/corner,
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering/atmospherics)
"MP" = (
@@ -4784,21 +4775,20 @@
/obj/structure/cable{
icon_state = "2-8"
},
+/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{
+ dir = 1
+ },
/turf/open/floor/plasteel,
/area/ship/cargo)
"NH" = (
/obj/machinery/atmospherics/pipe/simple/dark/visible{
dir = 4
},
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
- },
/obj/effect/turf_decal/techfloor{
dir = 4
},
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering/atmospherics)
"NK" = (
@@ -4828,19 +4818,15 @@
/turf/open/floor/plasteel,
/area/ship/cargo)
"Oo" = (
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
/obj/structure/disposalpipe/segment{
dir = 5
},
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
- },
/obj/machinery/door/firedoor/border_only,
/obj/machinery/door/firedoor/border_only{
dir = 1
},
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering/atmospherics)
"Op" = (
@@ -4903,6 +4889,16 @@
},
/turf/open/floor/plating,
/area/ship/engineering/atmospherics)
+"OQ" = (
+/obj/machinery/door/poddoor{
+ id = "amogusdoors";
+ name = "Cargo Bay Blast Door"
+ },
+/obj/effect/turf_decal/industrial/warning,
+/obj/machinery/door/firedoor,
+/obj/machinery/atmospherics/pipe/layer_manifold,
+/turf/open/floor/plating,
+/area/ship/cargo)
"OT" = (
/obj/effect/turf_decal/corner/opaque/white/mono,
/turf/open/floor/plasteel,
@@ -4944,6 +4940,9 @@
/obj/structure/cable{
icon_state = "1-4"
},
+/obj/machinery/atmospherics/pipe/simple/brown/hidden/layer4{
+ dir = 6
+ },
/turf/open/floor/plasteel,
/area/ship/cargo)
"Px" = (
@@ -5072,9 +5071,6 @@
/obj/machinery/atmospherics/pipe/simple/green/visible{
dir = 4
},
-/obj/machinery/atmospherics/components/binary/pump{
- name = "Oxygen to Mix"
- },
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 10
},
@@ -5099,9 +5095,11 @@
/turf/open/floor/plating,
/area/ship/engineering/atmospherics)
"Rv" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4,
-/turf/open/floor/plasteel,
-/area/ship/cargo)
+/obj/structure/grille,
+/obj/structure/window/plasma/reinforced/fulltile,
+/obj/machinery/atmospherics/pipe/simple/brown/visible,
+/turf/open/floor/plating,
+/area/ship/engineering/atmospherics)
"Rw" = (
/obj/structure/railing{
dir = 8
@@ -5120,12 +5118,6 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 8
},
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
- },
/obj/structure/cable{
icon_state = "1-2"
},
@@ -5133,6 +5125,8 @@
dir = 8
},
/obj/structure/catwalk/over/plated_catwalk/dark,
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
/turf/open/floor/plating,
/area/ship/engineering/atmospherics)
"RK" = (
@@ -5278,6 +5272,11 @@
/obj/effect/turf_decal/techfloor/corner{
dir = 4
},
+/obj/structure/table,
+/obj/machinery/cell_charger,
+/obj/item/stock_parts/cell/high/empty,
+/obj/item/stock_parts/cell/high/empty,
+/obj/item/stock_parts/cell/high/empty,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"Th" = (
@@ -5321,7 +5320,6 @@
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"TG" = (
-/obj/machinery/atmospherics/pipe/simple/green/visible,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 6
},
@@ -5402,18 +5400,14 @@
/turf/open/floor/plasteel/dark,
/area/ship/cargo/office)
"Uk" = (
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
/obj/structure/disposalpipe/segment{
dir = 2
},
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
- },
/obj/effect/turf_decal/techfloor{
dir = 4
},
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering/atmospherics)
"Uo" = (
@@ -5430,12 +5424,12 @@
/turf/open/floor/plasteel/dark,
/area/ship/crew/office)
"Uu" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
- dir = 9
- },
/obj/structure/cable{
icon_state = "1-8"
},
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{
+ dir = 4
+ },
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 9
},
@@ -5647,7 +5641,6 @@
"Ws" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4,
-/obj/machinery/atmospherics/pipe/simple/cyan/visible,
/obj/structure/cable{
icon_state = "1-2"
},
@@ -5733,14 +5726,13 @@
/turf/closed/wall,
/area/ship/crew/cryo)
"Xe" = (
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 4
},
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
+/obj/machinery/atmospherics/pipe/simple/orange/visible,
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
+ dir = 8
},
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
@@ -5753,12 +5745,6 @@
"Xp" = (
/turf/closed/wall/r_wall,
/area/ship/cargo/office)
-"Xs" = (
-/obj/structure/grille,
-/obj/machinery/atmospherics/pipe/simple/green/visible,
-/obj/structure/window/plasma/reinforced/fulltile,
-/turf/open/floor/plating,
-/area/ship/engineering/atmospherics)
"Xt" = (
/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{
dir = 8
@@ -5853,21 +5839,16 @@
/turf/open/floor/plating,
/area/ship/cargo)
"Yn" = (
-/obj/machinery/atmospherics/pipe/simple/purple/visible{
- dir = 1
- },
-/obj/machinery/atmospherics/pipe/simple/cyan/visible{
- dir = 4
- },
/obj/structure/disposalpipe/segment{
dir = 2
},
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 1
- },
/obj/effect/turf_decal/techfloor{
dir = 4
},
+/obj/machinery/atmospherics/pipe/manifold/orange/visible{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/cyan/visible/layer4,
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering/atmospherics)
"Yp" = (
@@ -5890,11 +5871,10 @@
/turf/open/floor/plasteel,
/area/ship/cargo)
"Yv" = (
-/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/plasma{
+/obj/machinery/atmospherics/pipe/simple/green/visible{
dir = 4
},
-/obj/structure/catwalk/over/plated_catwalk/dark,
-/turf/open/floor/plating,
+/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"Yx" = (
/obj/structure/chair/sofa/brown/right/directional/south,
@@ -5959,10 +5939,13 @@
/turf/open/floor/plasteel/dark,
/area/ship/bridge)
"Zr" = (
-/obj/machinery/atmospherics/pipe/simple/brown/visible/layer4{
- dir = 10
- },
/obj/machinery/firealarm/directional/east,
+/obj/machinery/atmospherics/components/binary/volume_pump{
+ name = "Fuel Pump"
+ },
+/obj/machinery/atmospherics/components/binary/valve/on/layer4{
+ name = "Emergency Stop"
+ },
/turf/open/floor/plasteel/tech,
/area/ship/engineering/atmospherics)
"Zu" = (
@@ -6012,7 +5995,10 @@
/obj/structure/cable{
icon_state = "4-8"
},
-/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
+ dir = 8
+ },
+/obj/machinery/atmospherics/pipe/simple/brown/hidden/layer4,
/turf/open/floor/plasteel,
/area/ship/cargo)
"ZJ" = (
@@ -6131,7 +6117,7 @@ fW
kz
kz
JT
-gO
+wt
gO
dJ
xO
@@ -6177,7 +6163,7 @@ Yn
Uk
ub
Oo
-yF
+bI
Xe
yF
CR
@@ -6195,7 +6181,7 @@ kz
pT
At
RK
-wt
+qK
dS
Ra
tF
@@ -6212,10 +6198,10 @@ Kz
Fc
lW
sJ
-bz
+qK
dO
qK
-bI
+Rv
DF
kz
fW
@@ -6247,7 +6233,7 @@ Mq
zK
Zr
Ew
-Xs
+Rv
wC
kz
fW
@@ -6403,14 +6389,14 @@ WZ
rW
cS
sU
-gc
+bh
Fu
Yp
TI
PI
Pq
-JE
-Ym
+fQ
+OQ
fW
"}
(13,1,1) = {"
@@ -6435,10 +6421,10 @@ WZ
tI
xb
hA
-gc
+bz
Ls
aQ
-Rv
+aQ
ZI
ug
jv
diff --git a/_maps/shuttles/pgf/pgf_crying_sun.dmm b/_maps/shuttles/pgf/pgf_crying_sun.dmm
index f06f4e5dbc66..919770509bec 100644
--- a/_maps/shuttles/pgf/pgf_crying_sun.dmm
+++ b/_maps/shuttles/pgf/pgf_crying_sun.dmm
@@ -27,8 +27,8 @@
/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{
dir = 8
},
-/obj/machinery/portable_atmospherics/canister/toxins,
/obj/machinery/light/directional/east,
+/obj/machinery/portable_atmospherics/canister/hydrogen,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/engines/port)
"aw" = (
@@ -141,9 +141,6 @@
/turf/open/floor/plasteel/mono,
/area/ship/hangar/starboard)
"bB" = (
-/obj/machinery/atmospherics/components/unary/shuttle/heater{
- dir = 4
- },
/obj/structure/catwalk/over/plated_catwalk/dark,
/obj/machinery/door/firedoor/border_only{
dir = 4
@@ -151,6 +148,9 @@
/obj/structure/window/plasma/reinforced{
dir = 8
},
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater{
+ dir = 4
+ },
/turf/open/floor/plating,
/area/ship/engineering/engines/starboard)
"bD" = (
@@ -1052,14 +1052,14 @@
/turf/open/floor/plasteel/mono/dark,
/area/ship/hallway/port)
"is" = (
-/obj/machinery/power/shuttle/engine/fueled/plasma{
- dir = 4
- },
/obj/structure/catwalk/over/plated_catwalk/dark,
/obj/machinery/door/poddoor{
dir = 4;
id = "lib_engine_blast"
},
+/obj/machinery/power/shuttle/engine/fire{
+ dir = 4
+ },
/turf/open/floor/plating,
/area/ship/engineering/engines/port)
"it" = (
@@ -1318,7 +1318,7 @@
/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{
dir = 8
},
-/obj/machinery/portable_atmospherics/canister/toxins,
+/obj/machinery/portable_atmospherics/canister/hydrogen,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/engines/starboard)
"kw" = (
@@ -1347,6 +1347,13 @@
},
/turf/open/floor/plasteel/mono,
/area/ship/hangar/starboard)
+"kO" = (
+/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{
+ dir = 8
+ },
+/obj/machinery/portable_atmospherics/canister/oxygen,
+/turf/open/floor/plasteel/tech,
+/area/ship/engineering/engines/starboard)
"kR" = (
/obj/machinery/atmospherics/components/unary/outlet_injector/on/layer2,
/obj/structure/window/plasma/reinforced,
@@ -1898,15 +1905,16 @@
/area/ship/crew/canteen)
"qp" = (
/obj/machinery/atmospherics/pipe/simple/orange/visible,
-/obj/machinery/atmospherics/components/trinary/mixer/flipped/layer2{
- dir = 1
- },
/obj/structure/cable{
icon_state = "1-10"
},
/obj/structure/cable{
icon_state = "1-2"
},
+/obj/machinery/atmospherics/components/trinary/mixer/flipped/layer2{
+ dir = 1
+ },
+/obj/item/paper/guides/jobs/engi/combustion_thruster,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/engines/starboard)
"qy" = (
@@ -1922,6 +1930,13 @@
/obj/machinery/door/firedoor/border_only,
/turf/open/floor/plasteel/dark,
/area/ship/hangar/starboard)
+"qA" = (
+/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{
+ dir = 8
+ },
+/obj/machinery/portable_atmospherics/canister/hydrogen,
+/turf/open/floor/plasteel/tech,
+/area/ship/engineering/engines/port)
"qB" = (
/obj/machinery/door/poddoor/shutters{
id = "lib_armory_1";
@@ -3412,8 +3427,8 @@
/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{
dir = 8
},
-/obj/machinery/portable_atmospherics/canister/toxins,
/obj/machinery/light/directional/east,
+/obj/machinery/portable_atmospherics/canister/hydrogen,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/engines/starboard)
"Dq" = (
@@ -3891,14 +3906,14 @@
/turf/open/floor/engine/hull,
/area/ship/external/dark)
"FN" = (
-/obj/machinery/power/shuttle/engine/fueled/plasma{
- dir = 4
- },
/obj/structure/catwalk/over/plated_catwalk/dark,
/obj/machinery/door/poddoor{
dir = 4;
id = "lib_engine_blast"
},
+/obj/machinery/power/shuttle/engine/fire{
+ dir = 4
+ },
/turf/open/floor/plating,
/area/ship/engineering/engines/starboard)
"FO" = (
@@ -5131,15 +5146,15 @@
/area/ship/engineering)
"Ph" = (
/obj/machinery/atmospherics/pipe/simple/orange/visible,
-/obj/machinery/atmospherics/components/trinary/mixer/layer2{
- dir = 1
- },
/obj/structure/cable{
icon_state = "2-9"
},
/obj/structure/cable{
icon_state = "1-2"
},
+/obj/machinery/atmospherics/components/trinary/mixer/layer2{
+ dir = 1
+ },
/turf/open/floor/plasteel/tech,
/area/ship/engineering/engines/port)
"Pi" = (
@@ -5795,7 +5810,7 @@
/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{
dir = 8
},
-/obj/machinery/portable_atmospherics/canister/toxins,
+/obj/machinery/portable_atmospherics/canister/oxygen,
/turf/open/floor/plasteel/tech,
/area/ship/engineering/engines/port)
"UB" = (
@@ -5863,9 +5878,6 @@
/turf/open/floor/plasteel/mono/dark,
/area/ship/hallway/central)
"UM" = (
-/obj/machinery/atmospherics/components/unary/shuttle/heater{
- dir = 4
- },
/obj/structure/catwalk/over/plated_catwalk/dark,
/obj/machinery/door/firedoor/border_only{
dir = 4
@@ -5873,6 +5885,9 @@
/obj/structure/window/plasma/reinforced{
dir = 8
},
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater{
+ dir = 4
+ },
/turf/open/floor/plating,
/area/ship/engineering/engines/port)
"Vc" = (
@@ -6124,6 +6139,9 @@
pixel_y = -9;
pixel_x = -3
},
+/obj/item/clothing/head/helmet/gezena{
+ pixel_y = -11
+ },
/turf/open/floor/plasteel/tech,
/area/ship/crew/dorm/dormtwo)
"Wc" = (
@@ -6802,14 +6820,14 @@ hK
ys
Uw
au
-Uw
+qA
lc
qZ
QI
TV
kq
Dm
-kq
+kO
OS
ps
TV
diff --git a/_maps/shuttles/pirate/pirate_tortuga.dmm b/_maps/shuttles/pirate/pirate_tortuga.dmm
index 1f94be7c5b03..07bd4710a9b1 100644
--- a/_maps/shuttles/pirate/pirate_tortuga.dmm
+++ b/_maps/shuttles/pirate/pirate_tortuga.dmm
@@ -640,7 +640,7 @@
/obj/effect/turf_decal/techfloor{
dir = 10
},
-/obj/structure/guncase{
+/obj/structure/guncloset{
anchored = 1
},
/obj/item/gun/ballistic/automatic/assault/skm/pirate,
@@ -3140,7 +3140,7 @@
/area/ship/maintenance/port)
"Px" = (
/obj/effect/turf_decal/techfloor,
-/obj/structure/guncase{
+/obj/structure/guncloset{
anchored = 1
},
/obj/item/gun/ballistic/automatic/pistol/candor,
diff --git a/_maps/shuttles/roumain/srm_elder.dmm b/_maps/shuttles/roumain/srm_elder.dmm
index 5ea4e25b4687..e4a85560cb67 100644
--- a/_maps/shuttles/roumain/srm_elder.dmm
+++ b/_maps/shuttles/roumain/srm_elder.dmm
@@ -1056,12 +1056,12 @@
/area/ship/roumain)
"lA" = (
/obj/machinery/suit_storage_unit/inherit,
-/obj/item/clothing/suit/space/hardsuit/mining/independent,
-/obj/item/clothing/mask/breath,
-/obj/item/tank/internals/emergency_oxygen/double,
/obj/effect/turf_decal/spline/fancy/wood{
dir = 6
},
+/obj/item/clothing/suit/space/hardsuit/solgov/roumain,
+/obj/item/clothing/mask/breath,
+/obj/item/tank/internals/emergency_oxygen/double,
/turf/open/floor/wood/mahogany,
/area/ship/bridge)
"lM" = (
@@ -1250,7 +1250,7 @@
/turf/open/floor/grass/ship/jungle,
/area/ship/hallway/central)
"ox" = (
-/obj/structure/guncase,
+/obj/structure/guncloset,
/obj/machinery/door/window/eastright{
dir = 8
},
@@ -1523,6 +1523,24 @@
/obj/structure/catwalk/over/plated_catwalk/dark,
/turf/open/floor/plating,
/area/ship/engineering/atmospherics)
+"rN" = (
+/obj/item/clothing/under/suit/roumain,
+/obj/item/clothing/suit/armor/roumain/shadow,
+/obj/item/clothing/head/cowboy/sec/roumain/shadow,
+/obj/item/flashlight/lantern,
+/obj/structure/closet/secure_closet/shadow,
+/obj/item/lighter,
+/obj/item/clothing/shoes/cowboy,
+/obj/item/clothing/shoes/cowboy/black,
+/obj/item/clothing/shoes/combat,
+/obj/item/kitchen/knife/hunting,
+/obj/item/gps{
+ pixel_x = -7
+ },
+/obj/item/storage/backpack/satchel/leather,
+/obj/item/clothing/accessory/waistcoat/roumain,
+/turf/open/floor/wood/ebony,
+/area/ship/storage)
"rW" = (
/obj/machinery/smartfridge/drying_rack,
/turf/open/floor/ship/dirt/dark,
@@ -1669,6 +1687,7 @@
/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{
dir = 8
},
+/obj/structure/chair/wood/wings,
/turf/open/floor/wood/mahogany,
/area/ship/bridge)
"up" = (
@@ -1987,8 +2006,8 @@
/obj/item/clothing/shoes/cowboy,
/obj/item/clothing/shoes/cowboy/black,
/obj/item/clothing/under/suit/roumain,
-/obj/item/clothing/suit/armor/hos/roumain/montagne,
-/obj/item/clothing/head/HoS/cowboy/montagne,
+/obj/item/clothing/suit/armor/roumain/montagne,
+/obj/item/clothing/head/cowboy/sec/roumain/montagne,
/obj/item/flashlight/lantern,
/obj/item/storage/fancy/candle_box{
pixel_y = 3;
@@ -2005,11 +2024,10 @@
/obj/item/gps{
pixel_x = -7
},
-/obj/item/gun/ballistic/revolver/montagne,
/obj/item/storage/backpack/satchel/leather,
-/obj/item/ammo_box/c45_speedloader,
-/obj/item/ammo_box/c45_speedloader,
-/obj/item/ammo_box/c45,
+/obj/item/ammo_box/a44roum,
+/obj/item/storage/pistolcase/montagne,
+/obj/item/clothing/accessory/waistcoat/roumain,
/turf/open/floor/wood/mahogany,
/area/ship/bridge)
"zH" = (
@@ -2435,6 +2453,7 @@
/obj/machinery/power/apc/auto_name/directional/east,
/obj/structure/cable,
/obj/structure/catwalk/over/plated_catwalk/dark,
+/obj/structure/destructible/tribal_torch,
/turf/open/floor/plating,
/area/ship/engineering/engine)
"DV" = (
@@ -2629,6 +2648,7 @@
pixel_x = -7
},
/obj/item/storage/backpack/satchel/leather,
+/obj/item/clothing/accessory/waistcoat/roumain,
/turf/open/floor/wood/ebony,
/area/ship/storage)
"HB" = (
@@ -2656,10 +2676,33 @@
/turf/open/floor/wood/maple,
/area/ship/hallway/starboard)
"HO" = (
-/obj/structure/chair/wood/wings,
+/obj/item/clothing/shoes/combat,
+/obj/item/clothing/under/suit/roumain,
+/obj/item/flashlight/lantern,
+/obj/item/storage/fancy/candle_box{
+ pixel_y = 3;
+ pixel_x = 8
+ },
+/obj/item/lighter{
+ pixel_x = -2;
+ pixel_y = 2
+ },
+/obj/item/kitchen/knife/combat,
/obj/effect/turf_decal/spline/fancy/wood{
dir = 5
},
+/obj/item/gps{
+ pixel_x = -7
+ },
+/obj/item/storage/backpack/satchel/leather,
+/obj/item/gun/ballistic/revolver/detective,
+/obj/item/ammo_box/c38,
+/obj/item/ammo_box/c38,
+/obj/item/ammo_box/c38_box,
+/obj/item/clothing/head/cowboy/sec/roumain/colligne,
+/obj/item/clothing/suit/armor/roumain/colligne,
+/obj/structure/closet/secure_closet/collignes,
+/obj/item/clothing/accessory/waistcoat/roumain,
/turf/open/floor/wood/mahogany,
/area/ship/bridge)
"Ii" = (
@@ -3254,17 +3297,26 @@
/turf/open/floor/wood/mahogany,
/area/ship/bridge)
"Od" = (
-/obj/structure/cable{
- icon_state = "1-4"
- },
-/obj/structure/destructible/tribal_torch,
+/obj/item/clothing/head/hardhat/solgov,
+/obj/item/storage/toolbox/mechanical,
+/obj/item/clothing/glasses/welding,
+/obj/item/clothing/head/welding,
+/obj/structure/catwalk/over/plated_catwalk/dark,
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 5
},
+/obj/structure/cable{
+ icon_state = "1-4"
+ },
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 5
},
-/obj/structure/catwalk/over/plated_catwalk/dark,
+/obj/item/clothing/suit/hazardvest/roumain,
+/obj/item/clothing/head/cowboy/sec/roumain/machinist,
+/obj/item/clothing/under/suit/roumain,
+/obj/item/clothing/shoes/workboots/mining,
+/obj/item/storage/belt,
+/obj/structure/closet/secure_closet/machinist,
/turf/open/floor/plating,
/area/ship/engineering/engine)
"Oo" = (
@@ -3595,11 +3647,11 @@
/turf/open/floor/plasteel/white,
/area/ship/medical)
"SR" = (
+/obj/structure/closet/secure_closet/flamebearer,
/obj/item/clothing/under/suit/roumain,
-/obj/item/clothing/suit/armor/roumain/shadow,
-/obj/item/clothing/head/cowboy/sec/roumain/shadow,
+/obj/item/clothing/suit/armor/roumain/flamebearer,
+/obj/item/clothing/head/cowboy/sec/roumain/flamebearer,
/obj/item/flashlight/lantern,
-/obj/structure/closet/secure_closet/shadow,
/obj/item/lighter,
/obj/item/clothing/shoes/cowboy,
/obj/item/clothing/shoes/cowboy/black,
@@ -3609,6 +3661,7 @@
pixel_x = -7
},
/obj/item/storage/backpack/satchel/leather,
+/obj/item/clothing/accessory/waistcoat/roumain,
/turf/open/floor/wood/ebony,
/area/ship/storage)
"Tc" = (
@@ -5069,7 +5122,7 @@ sH
sH
sH
LN
-SR
+rN
sT
ds
LX
@@ -5106,7 +5159,7 @@ sH
sH
sH
LN
-SR
+rN
AN
al
cY
diff --git a/_maps/shuttles/solgov/solgov_chronicle.dmm b/_maps/shuttles/solgov/solgov_chronicle.dmm
index d0359b5ca240..13e78929b4dc 100644
--- a/_maps/shuttles/solgov/solgov_chronicle.dmm
+++ b/_maps/shuttles/solgov/solgov_chronicle.dmm
@@ -271,10 +271,9 @@
/obj/item/stamp/solgov,
/obj/item/clothing/suit/armor/solgov_trenchcoat,
/obj/item/spacecash/bundle/loadsamoney,
-/obj/item/gun/ballistic/automatic/powered/gauss/modelh,
-/obj/item/ammo_box/magazine/modelh,
-/obj/item/ammo_box/magazine/modelh,
/obj/item/clothing/neck/cloak/solgovcap,
+/obj/item/storage/pistolcase/modelh,
+/obj/item/ammo_box/ferroslugbox,
/turf/open/floor/carpet/royalblue,
/area/ship/crew/office)
"cg" = (
@@ -3730,7 +3729,7 @@
/turf/open/floor/wood/walnut,
/area/ship/crew/crewtwo)
"Ks" = (
-/obj/structure/guncase{
+/obj/structure/guncloset{
desc = "A locker that holds weapons.";
name = "weapon locker"
},
diff --git a/_maps/shuttles/solgov/solgov_inkwell.dmm b/_maps/shuttles/solgov/solgov_inkwell.dmm
index 25c1da558e56..da2a6b032eaa 100644
--- a/_maps/shuttles/solgov/solgov_inkwell.dmm
+++ b/_maps/shuttles/solgov/solgov_inkwell.dmm
@@ -826,16 +826,14 @@
/turf/open/floor/wood,
/area/ship/crew/canteen)
"fG" = (
-/obj/structure/reagent_dispensers/watertank,
-/obj/effect/turf_decal/techfloor/orange{
- dir = 5
- },
-/obj/effect/turf_decal/industrial/outline/yellow,
/obj/effect/turf_decal/corner/opaque/solgovblue{
dir = 8
},
-/obj/structure/sign/poster/solgov/random{
- pixel_y = 32
+/obj/effect/turf_decal/techfloor/orange{
+ dir = 4
+ },
+/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer3{
+ dir = 8
},
/turf/open/floor/plasteel/tech,
/area/ship/maintenance/port)
@@ -1441,6 +1439,27 @@
},
/turf/open/floor/plasteel/patterned/cargo_one,
/area/ship/cargo)
+"jJ" = (
+/obj/machinery/light/directional/north,
+/obj/effect/turf_decal/techfloor/orange{
+ dir = 9
+ },
+/obj/machinery/atmospherics/pipe/simple/orange/visible{
+ dir = 6
+ },
+/obj/effect/decal/cleanable/dirt/dust,
+/turf/open/floor/plasteel/tech,
+/area/ship/maintenance/port)
+"jK" = (
+/obj/effect/turf_decal/techfloor/orange{
+ dir = 6
+ },
+/obj/effect/turf_decal/industrial/outline/yellow,
+/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer3{
+ dir = 8
+ },
+/turf/open/floor/plasteel/tech,
+/area/ship/maintenance/starboard)
"jM" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -2255,15 +2274,14 @@
/turf/open/floor/plasteel/patterned,
/area/ship/cargo)
"oG" = (
-/obj/effect/turf_decal/techfloor/orange,
-/obj/machinery/atmospherics/pipe/simple/general/visible/layer2{
- dir = 5
+/obj/effect/decal/cleanable/dirt/dust,
+/obj/effect/turf_decal/techfloor/orange/corner{
+ dir = 8
},
-/obj/machinery/light/directional/south,
-/obj/structure/cable{
- icon_state = "1-8"
+/obj/machinery/atmospherics/components/trinary/mixer/flipped{
+ dir = 4;
+ name = "Fuel Mixer"
},
-/obj/effect/decal/cleanable/dirt/dust,
/turf/open/floor/plasteel/tech,
/area/ship/maintenance/starboard)
"oH" = (
@@ -2602,9 +2620,6 @@
/obj/structure/cable{
icon_state = "2-8"
},
-/obj/structure/cable{
- icon_state = "1-8"
- },
/obj/effect/decal/cleanable/dirt/dust,
/turf/open/floor/plasteel/tech,
/area/ship/maintenance/port)
@@ -3011,6 +3026,25 @@
/obj/machinery/firealarm/directional/north,
/turf/open/floor/carpet/royalblue,
/area/ship/crew/dorm/dormthree)
+"tz" = (
+/obj/effect/turf_decal/techfloor/orange{
+ dir = 8
+ },
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/obj/machinery/door/poddoor{
+ id = "sgi_engine";
+ dir = 4
+ },
+/obj/machinery/door/window/westright{
+ dir = 4
+ },
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech/grid,
+/area/ship/maintenance/starboard)
"tB" = (
/obj/effect/turf_decal/techfloor/corner,
/obj/effect/turf_decal/techfloor/corner{
@@ -3040,6 +3074,12 @@
},
/turf/open/floor/wood/walnut,
/area/ship/crew/dorm/dormtwo)
+"tE" = (
+/obj/effect/decal/cleanable/dirt/dust,
+/obj/structure/closet/crate/large,
+/obj/machinery/portable_atmospherics/canister/hydrogen,
+/turf/open/floor/plasteel/mono,
+/area/ship/cargo)
"tK" = (
/obj/structure/table/wood,
/obj/item/radio/intercom/directional/east,
@@ -3095,6 +3135,17 @@
},
/turf/open/floor/plasteel/white,
/area/ship/engineering)
+"ub" = (
+/obj/machinery/light/directional/south,
+/obj/effect/turf_decal/techfloor/orange{
+ dir = 10
+ },
+/obj/machinery/atmospherics/pipe/simple/orange/visible{
+ dir = 5
+ },
+/obj/effect/decal/cleanable/dirt/dust,
+/turf/open/floor/plasteel/tech,
+/area/ship/maintenance/starboard)
"uc" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{
dir = 1
@@ -3428,6 +3479,16 @@
},
/turf/open/floor/wood,
/area/ship/bridge)
+"vY" = (
+/obj/effect/turf_decal/industrial/warning{
+ dir = 8
+ },
+/obj/machinery/light/floor,
+/obj/machinery/power/shuttle/engine/fire{
+ dir = 4
+ },
+/turf/open/floor/engine/hull,
+/area/ship/maintenance/starboard)
"wb" = (
/turf/closed/wall/mineral/titanium/nodiagonal,
/area/ship/maintenance/starboard)
@@ -4636,6 +4697,20 @@
},
/turf/open/floor/plasteel/patterned/cargo_one,
/area/ship/cargo)
+"DL" = (
+/obj/structure/sign/poster/solgov/random{
+ pixel_y = 32
+ },
+/obj/effect/turf_decal/techfloor/orange{
+ dir = 5
+ },
+/obj/machinery/portable_atmospherics/canister/oxygen,
+/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer3{
+ dir = 8
+ },
+/obj/effect/decal/cleanable/dirt/dust,
+/turf/open/floor/plasteel/tech,
+/area/ship/maintenance/port)
"DP" = (
/obj/effect/turf_decal/corner/opaque/solgovblue{
dir = 10
@@ -5783,10 +5858,9 @@
},
/obj/item/fish_feed,
/obj/item/pen/fountain/solgov,
-/obj/item/gun/ballistic/automatic/powered/gauss/modelh,
-/obj/item/ammo_box/magazine/modelh,
-/obj/item/ammo_box/magazine/modelh,
/obj/item/clothing/neck/cloak/solgovcap,
+/obj/item/storage/pistolcase/modelh,
+/obj/item/ammo_box/ferroslugbox,
/turf/open/floor/wood/maple,
/area/ship/crew/dorm/dormtwo)
"LJ" = (
@@ -5887,6 +5961,25 @@
},
/turf/open/floor/wood/birch,
/area/ship/crew/dorm/dormthree)
+"MA" = (
+/obj/effect/turf_decal/techfloor/orange{
+ dir = 8
+ },
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/obj/machinery/door/poddoor{
+ id = "sgi_engine";
+ dir = 4
+ },
+/obj/machinery/door/window/westright{
+ dir = 4
+ },
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater{
+ dir = 4
+ },
+/turf/open/floor/plasteel/tech/grid,
+/area/ship/maintenance/port)
"MI" = (
/obj/effect/turf_decal/techfloor{
dir = 4
@@ -6295,9 +6388,6 @@
/turf/open/floor/plasteel/stairs/wood/right,
/area/ship/bridge)
"Qt" = (
-/obj/machinery/power/terminal{
- dir = 8
- },
/obj/effect/turf_decal/techfloor/orange{
dir = 10
},
@@ -6311,8 +6401,8 @@
id = "sgi_engine";
name = "engine blast door control"
},
-/obj/structure/cable{
- icon_state = "0-4"
+/obj/machinery/atmospherics/pipe/simple/orange/visible{
+ dir = 4
},
/turf/open/floor/plasteel/tech,
/area/ship/maintenance/starboard)
@@ -6389,16 +6479,13 @@
/turf/open/floor/plasteel/patterned,
/area/ship/cargo)
"QT" = (
-/obj/machinery/atmospherics/pipe/manifold/general/visible/layer2{
- dir = 8
- },
-/obj/structure/cable{
- icon_state = "2-8"
- },
/obj/structure/cable{
icon_state = "1-8"
},
/obj/effect/decal/cleanable/dirt/dust,
+/obj/machinery/atmospherics/pipe/simple/general/visible/layer2{
+ dir = 5
+ },
/turf/open/floor/plasteel/tech,
/area/ship/maintenance/starboard)
"QX" = (
@@ -6718,17 +6805,17 @@
/turf/open/floor/plasteel/mono,
/area/ship/cargo)
"SB" = (
-/obj/machinery/atmospherics/components/unary/tank/air{
- dir = 8;
- piping_layer = 2
- },
-/obj/effect/turf_decal/techfloor/orange{
- dir = 6
- },
/obj/effect/turf_decal/corner/opaque/solgovblue{
dir = 1
},
+/obj/effect/turf_decal/techfloor/orange{
+ dir = 4
+ },
/obj/effect/turf_decal/industrial/outline/yellow,
+/obj/machinery/portable_atmospherics/canister/hydrogen,
+/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer3{
+ dir = 8
+ },
/turf/open/floor/plasteel/tech,
/area/ship/maintenance/starboard)
"SC" = (
@@ -6907,16 +6994,12 @@
/turf/open/floor/engine/hull,
/area/ship/external/dark)
"Ud" = (
-/obj/effect/turf_decal/techfloor/orange{
+/obj/effect/turf_decal/techfloor/orange/corner{
dir = 1
},
-/obj/structure/cable{
- icon_state = "2-8"
- },
-/obj/machinery/light/directional/north,
-/obj/effect/decal/cleanable/dirt/dust,
-/obj/structure/cable{
- icon_state = "0-2"
+/obj/machinery/atmospherics/components/trinary/mixer{
+ dir = 8;
+ name = "Fuel Mixer"
},
/turf/open/floor/plasteel/tech,
/area/ship/maintenance/port)
@@ -6979,6 +7062,16 @@
},
/turf/open/floor/wood/walnut,
/area/ship/crew/canteen/kitchen)
+"UJ" = (
+/obj/effect/turf_decal/industrial/warning{
+ dir = 8
+ },
+/obj/machinery/light/floor,
+/obj/machinery/power/shuttle/engine/fire{
+ dir = 4
+ },
+/turf/open/floor/engine/hull,
+/area/ship/maintenance/port)
"UM" = (
/obj/effect/turf_decal/siding/wood{
dir = 4
@@ -7062,6 +7155,8 @@
/obj/machinery/newscaster/security_unit/directional/west,
/obj/structure/extinguisher_cabinet/directional/south,
/obj/effect/decal/cleanable/dirt/dust,
+/obj/structure/reagent_dispensers/watertank,
+/obj/effect/turf_decal/industrial/outline/yellow,
/turf/open/floor/plasteel/white,
/area/ship/engineering)
"VO" = (
@@ -7375,16 +7470,10 @@
/turf/open/floor/wood/walnut,
/area/ship/crew/canteen/kitchen)
"XQ" = (
-/obj/machinery/power/terminal{
- dir = 8
- },
/obj/effect/turf_decal/techfloor/orange{
dir = 9
},
/obj/effect/turf_decal/corner/opaque/solgovblue,
-/obj/structure/cable{
- icon_state = "0-4"
- },
/obj/machinery/button/door{
pixel_y = 24;
pixel_x = -4;
@@ -7392,6 +7481,9 @@
name = "engine blast door control"
},
/obj/effect/decal/cleanable/dirt/dust,
+/obj/machinery/atmospherics/pipe/simple/orange/visible{
+ dir = 4
+ },
/turf/open/floor/plasteel/tech,
/area/ship/maintenance/port)
"XV" = (
@@ -7752,7 +7844,7 @@
(1,1,1) = {"
iG
hE
-zI
+UJ
Hp
Hp
zI
@@ -7778,7 +7870,7 @@ hE
ni
dv
dv
-ni
+vY
hE
iG
iG
@@ -7786,7 +7878,7 @@ iG
(2,1,1) = {"
iG
Od
-op
+MA
op
op
op
@@ -7812,13 +7904,13 @@ DH
Zj
Zj
Zj
-Zj
+tz
DH
iG
iG
"}
(3,1,1) = {"
-iG
+Od
Od
XQ
ia
@@ -7848,12 +7940,12 @@ FG
FH
Qt
DH
-iG
+DH
iG
"}
(4,1,1) = {"
-iG
Od
+jJ
Ud
rD
Bp
@@ -7881,13 +7973,13 @@ Iw
BQ
QT
oG
+ub
DH
iG
-iG
"}
(5,1,1) = {"
-iG
Od
+DL
fG
xs
Xu
@@ -7915,12 +8007,12 @@ xS
nJ
YE
SB
+jK
DH
iG
-iG
"}
(6,1,1) = {"
-iG
+Od
Od
Od
Od
@@ -7950,7 +8042,7 @@ su
DH
DH
DH
-iG
+DH
iG
"}
(7,1,1) = {"
@@ -8041,7 +8133,7 @@ dH
Nb
Kt
qw
-Rr
+tE
sH
Sf
hl
diff --git a/_maps/shuttles/solgov/solgov_paracelsus.dmm b/_maps/shuttles/solgov/solgov_paracelsus.dmm
index 1eb02eac6a21..b099e500aee9 100644
--- a/_maps/shuttles/solgov/solgov_paracelsus.dmm
+++ b/_maps/shuttles/solgov/solgov_paracelsus.dmm
@@ -3580,10 +3580,9 @@
},
/obj/item/fish_feed,
/obj/item/pen/fountain/solgov,
-/obj/item/gun/ballistic/automatic/powered/gauss/modelh,
-/obj/item/ammo_box/magazine/modelh,
-/obj/item/ammo_box/magazine/modelh,
/obj/item/clothing/neck/cloak/solgovcap,
+/obj/item/storage/pistolcase/modelh,
+/obj/item/ammo_box/ferroslugbox,
/turf/open/floor/carpet/royalblue,
/area/ship/crew)
"IZ" = (
diff --git a/_maps/shuttles/syndicate/syndicate_gorlex_hyena.dmm b/_maps/shuttles/syndicate/syndicate_gorlex_hyena.dmm
index ce77d98f5833..7c7a34fd2690 100644
--- a/_maps/shuttles/syndicate/syndicate_gorlex_hyena.dmm
+++ b/_maps/shuttles/syndicate/syndicate_gorlex_hyena.dmm
@@ -62,11 +62,10 @@
/obj/item/clothing/glasses/hud/security/sunglasses/eyepatch,
/obj/item/clothing/head/ngr/peaked,
/obj/effect/decal/cleanable/dirt/dust,
-/obj/item/gun/ballistic/revolver,
-/obj/item/ammo_box/a357/match,
-/obj/item/ammo_box/a357/match,
/obj/item/ammo_box/a357/match,
/obj/item/pen/edagger,
+/obj/item/storage/pistolcase/a357,
+/obj/item/ammo_box/a357_box,
/turf/open/floor/carpet/black,
/area/ship/bridge)
"bJ" = (
@@ -1655,14 +1654,13 @@
/obj/item/clothing/glasses/welding,
/obj/item/storage/toolbox/syndicate,
/obj/item/wrench/combat,
-/obj/item/ammo_box/magazine/m10mm,
-/obj/item/gun/ballistic/automatic/pistol,
/obj/item/clothing/accessory/holster,
/obj/item/grenade/chem_grenade/metalfoam,
/obj/machinery/airalarm/directional/west,
/obj/item/clothing/suit/ngr,
/obj/item/clothing/head/hardhat/ngr/foreman,
/obj/item/tank/jetpack/suit,
+/obj/item/storage/pistolcase/stechkin,
/turf/open/floor/carpet/red,
/area/ship/cargo/office)
"BB" = (
diff --git a/_maps/shuttles/syndicate/syndicate_gorlex_komodo.dmm b/_maps/shuttles/syndicate/syndicate_gorlex_komodo.dmm
index 445b6391a30d..6a4cf55d36b7 100644
--- a/_maps/shuttles/syndicate/syndicate_gorlex_komodo.dmm
+++ b/_maps/shuttles/syndicate/syndicate_gorlex_komodo.dmm
@@ -43,6 +43,7 @@
},
/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer3,
/obj/effect/turf_decal/industrial/outline/yellow,
+/obj/machinery/portable_atmospherics/canister/hydrogen,
/turf/open/floor/plasteel/tech,
/area/ship/engineering)
"as" = (
@@ -184,7 +185,8 @@
/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{
dir = 8
},
-/obj/effect/spawner/lootdrop/maintenance,
+/obj/structure/closet/crate/large,
+/obj/machinery/portable_atmospherics/canister/hydrogen,
/turf/open/floor/plating/rust,
/area/ship/maintenance/starboard)
"dD" = (
@@ -1270,15 +1272,15 @@
/obj/structure/cable/yellow{
icon_state = "1-2"
},
-/obj/machinery/atmospherics/pipe/manifold/orange/visible{
- dir = 4
- },
/obj/effect/turf_decal/industrial/warning/corner{
dir = 8
},
/obj/machinery/atmospherics/pipe/manifold/cyan/visible/layer2{
dir = 1
},
+/obj/machinery/atmospherics/pipe/simple/orange/visible{
+ dir = 10
+ },
/turf/open/floor/plasteel/tech,
/area/ship/engineering)
"mp" = (
@@ -1968,6 +1970,7 @@
dir = 4
},
/obj/machinery/light/dim/directional/north,
+/obj/effect/spawner/lootdrop/maintenance,
/turf/open/floor/plasteel/tech,
/area/ship/maintenance/starboard)
"sV" = (
@@ -2466,12 +2469,12 @@
/obj/structure/cable{
icon_state = "1-4"
},
-/obj/machinery/atmospherics/components/binary/volume_pump{
- name = "Input to Fuel"
- },
/obj/effect/turf_decal/industrial/shutoff{
dir = 8
},
+/obj/machinery/atmospherics/components/trinary/mixer/flipped{
+ dir = 1
+ },
/turf/open/floor/plasteel/tech,
/area/ship/engineering)
"wJ" = (
@@ -2729,7 +2732,7 @@
/obj/effect/turf_decal/industrial/fire{
dir = 8
},
-/obj/structure/guncase,
+/obj/structure/guncloset,
/obj/structure/railing,
/obj/item/gun/ballistic/automatic/smg/c20r,
/obj/machinery/light/directional/east,
@@ -4006,9 +4009,6 @@
/turf/open/floor/plasteel/dark,
/area/ship/crew/dorm)
"MO" = (
-/obj/machinery/atmospherics/components/unary/shuttle/heater{
- dir = 4
- },
/obj/structure/window/plasma/reinforced/spawner{
dir = 8
},
@@ -4020,6 +4020,9 @@
/obj/machinery/door/window/eastleft{
name = "Engine Access"
},
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater{
+ dir = 4
+ },
/turf/open/floor/plating,
/area/ship/engineering)
"MV" = (
@@ -4248,9 +4251,6 @@
/turf/open/floor/plating,
/area/ship/maintenance/port)
"Pt" = (
-/obj/machinery/atmospherics/components/unary/shuttle/heater{
- dir = 4
- },
/obj/structure/window/plasma/reinforced/spawner{
dir = 8
},
@@ -4262,6 +4262,9 @@
id = "warship_engines";
name = "Thruster Blast Door"
},
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater{
+ dir = 4
+ },
/turf/open/floor/plating,
/area/ship/engineering)
"PA" = (
@@ -4472,10 +4475,10 @@
/obj/structure/cable{
icon_state = "4-8"
},
-/obj/machinery/atmospherics/pipe/simple/orange/visible{
- dir = 6
- },
/obj/effect/turf_decal/industrial/caution,
+/obj/machinery/atmospherics/pipe/simple/orange/hidden{
+ dir = 4
+ },
/turf/open/floor/plasteel/tech,
/area/ship/engineering)
"Rf" = (
@@ -4859,13 +4862,14 @@
/obj/structure/railing{
dir = 1
},
-/obj/machinery/atmospherics/components/unary/tank/toxins{
- dir = 8
- },
/obj/effect/turf_decal/industrial/outline/yellow,
/obj/structure/cable{
icon_state = "2-8"
},
+/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer3{
+ dir = 8
+ },
+/obj/machinery/portable_atmospherics/canister/oxygen,
/turf/open/floor/plasteel/tech/grid,
/area/ship/engineering)
"Vq" = (
@@ -5233,7 +5237,7 @@
/turf/open/floor/engine/hull,
/area/ship/external/dark)
"Yn" = (
-/obj/machinery/power/shuttle/engine/fueled/plasma{
+/obj/machinery/power/shuttle/engine/fire{
dir = 4
},
/turf/open/floor/plating,
diff --git a/_maps/shuttles/syndicate/syndicate_twinkleshine.dmm b/_maps/shuttles/syndicate/syndicate_twinkleshine.dmm
index 6d0b0b423e61..885275c10d50 100644
--- a/_maps/shuttles/syndicate/syndicate_twinkleshine.dmm
+++ b/_maps/shuttles/syndicate/syndicate_twinkleshine.dmm
@@ -107,7 +107,7 @@
/obj/item/megaphone/sec{
name = "syndicate megaphone"
},
-/obj/item/gun/ballistic/automatic/pistol/no_mag,
+/obj/item/storage/pistolcase/stechkin,
/obj/item/clothing/head/HoS/beret/syndicate,
/obj/item/radio/headset/syndicate/alt/leader,
/obj/item/clothing/gloves/krav_maga/combatglovesplus,
@@ -121,6 +121,7 @@
name = "Armory Access";
req_access = list(3,150)
},
+/obj/item/ammo_box/c10mm,
/turf/open/floor/mineral/plastitanium,
/area/ship/security)
"aE" = (
@@ -1792,7 +1793,7 @@
/obj/item/codespeak_manual{
charges = 2
},
-/obj/item/gun/ballistic/revolver,
+/obj/item/storage/pistolcase/a357,
/obj/item/megaphone/sec{
name = "syndicate megaphone"
},
@@ -1804,7 +1805,6 @@
/obj/item/clothing/head/HoS/syndicate,
/obj/item/ammo_box/a357,
/obj/item/ammo_box/a357,
-/obj/item/ammo_box/a357,
/turf/open/floor/carpet/nanoweave/red,
/area/ship/crew/dorm/dormtwo)
"ky" = (
@@ -7330,10 +7330,9 @@
/obj/item/radio/headset/syndicate/alt{
keyslot = null
},
-/obj/item/gun/ballistic/automatic/powered/gauss/modelh,
/obj/item/storage/belt/sabre/solgov,
-/obj/item/ammo_box/magazine/modelh,
-/obj/item/ammo_box/magazine/modelh,
+/obj/item/storage/pistolcase/modelh,
+/obj/item/ammo_box/ferroslugbox,
/turf/open/floor/mineral/plastitanium,
/area/ship/bridge)
"Qv" = (
diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm
index 3057df12ab14..6e99bc182e61 100644
--- a/code/__DEFINES/atmospherics.dm
+++ b/code/__DEFINES/atmospherics.dm
@@ -214,8 +214,10 @@
#define ATMOS_TANK_PLASMA "plasma=70000;TEMP=293.15"
#define ATMOS_TANK_O2 "o2=100000;TEMP=293.15"
#define ATMOS_TANK_N2 "n2=100000;TEMP=293.15"
+#define ATMOS_TANK_HYDROGEN "h2=100000;TEMP=293.15"
#define ATMOS_TANK_AIRMIX "o2=2644;n2=10580;TEMP=293.15"
#define ATMOS_TANK_FUEL "o2=33000;plasma=66000;TEMP=293.15"
+#define ATMOS_TANK_HYDROGEN_FUEL "o2=33000;h2=66000;TEMP=293.15"
//PLANETARY
/// what pressure you have to be under to increase the effect of equipment meant for lavaland
@@ -328,6 +330,7 @@
#define GAS_STIMULUM "stim"
#define GAS_PLUOXIUM "pluox"
#define GAS_FREON "freon"
+#define GAS_HYDROGEN "h2"
#define GAS_FLAG_DANGEROUS (1<<0)
#define GAS_FLAG_BREATH_PROC (1<<1)
diff --git a/code/__DEFINES/is_helpers.dm b/code/__DEFINES/is_helpers.dm
index 2ba7553f823c..241136c297b9 100644
--- a/code/__DEFINES/is_helpers.dm
+++ b/code/__DEFINES/is_helpers.dm
@@ -176,6 +176,8 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list(
#define isidcard(I) (istype(I, /obj/item/card/id))
+#define isbankcard(I) (istype(I, /obj/item/card/bank))
+
#define isstructure(A) (istype(A, /obj/structure))
#define ismachinery(A) (istype(A, /obj/machinery))
diff --git a/code/__HELPERS/names.dm b/code/__HELPERS/names.dm
index 7054c051f707..6f4ec205448c 100644
--- a/code/__HELPERS/names.dm
+++ b/code/__HELPERS/names.dm
@@ -11,10 +11,7 @@
return "[pick(GLOB.squid_names)][pick("-", "", " ")][capitalize(pick(GLOB.squid_names) + pick(GLOB.squid_names))]"
/proc/kepori_name()
- var/first_syllables = list("Fa", "Fe", "Fi", "Ma", "Me", "Mi", "Na", "Ne", "Ni", "Sa", "Se", "Si", "Ta", "Te", "Ti")
- var/second_syllables = list("fa", "fe", "fi", "la", "le", "li", "ma", "me", "mi", "na", "ne", "ni", "ra", "re", "ri", "sa", "se", "si", "sha", "she", "shi", "ta", "te", "ti")
- var/third_syllables = list("ca", "ce", "ci", "fa", "fe", "fi", "la", "le", "li", "ma", "me", "mi", "na", "ne", "ni", "ra", "re", "ri", "sa", "se", "si", "sha", "she", "shi", "ta", "te", "ti")
- return "[pick(first_syllables)][pick(second_syllables)][pick(third_syllables)]"
+ return "[pick(GLOB.kepori_names)] [pick(GLOB.kepori_names)]-[pick(GLOB.kepori_names)]"
/proc/vox_name()
. = ""
diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm
index 59f25efe9823..532ed3f888d7 100644
--- a/code/_globalvars/lists/maintenance_loot.dm
+++ b/code/_globalvars/lists/maintenance_loot.dm
@@ -212,7 +212,7 @@ GLOBAL_LIST_INIT(uncommon_loot, list(//uncommon: useful items
) = 1,
list(//drinks
/obj/item/reagent_containers/food/drinks/bottle/vodka = 1,
- /obj/item/reagent_containers/food/drinks/soda_cans/grey_bull = 1,
+ /obj/item/reagent_containers/food/drinks/soda_cans/crosstalk = 1,
) = 1,
list(//sprayers
/obj/item/reagent_containers/spray = 1,
diff --git a/code/_globalvars/lists/names.dm b/code/_globalvars/lists/names.dm
index 888def7a7182..fe657d56284d 100644
--- a/code/_globalvars/lists/names.dm
+++ b/code/_globalvars/lists/names.dm
@@ -11,6 +11,7 @@ GLOBAL_LIST_INIT(first_names_female, world.file2list("strings/names/first_female
GLOBAL_LIST_INIT(last_names, world.file2list("strings/names/last.txt"))
GLOBAL_LIST_INIT(lizard_names_male, world.file2list("strings/names/lizard_male.txt"))
GLOBAL_LIST_INIT(lizard_names_female, world.file2list("strings/names/lizard_female.txt"))
+GLOBAL_LIST_INIT(kepori_names, world.file2list("strings/names/kepori_names.txt"))
GLOBAL_LIST_INIT(clown_names, world.file2list("strings/names/clown.txt"))
GLOBAL_LIST_INIT(mime_names, world.file2list("strings/names/mime.txt"))
GLOBAL_LIST_INIT(carp_names, world.file2list("strings/names/carp.txt"))
diff --git a/code/_globalvars/misc.dm b/code/_globalvars/misc.dm
index 3386e9952eeb..d6c720380f46 100644
--- a/code/_globalvars/misc.dm
+++ b/code/_globalvars/misc.dm
@@ -11,6 +11,9 @@ GLOBAL_DATUM_INIT(data_core, /datum/datacore, new)
GLOBAL_VAR_INIT(CELLRATE, 0.002) // conversion ratio between a watt-tick and kilojoule
GLOBAL_VAR_INIT(CHARGELEVEL, 0.001) // Cap for how fast cells charge, as a percentage-per-tick (.001 means cellcharge is capped to 1% per second)
+GLOBAL_VAR_INIT(total_merits_exchanged, 0)
+GLOBAL_VAR_INIT(hydrogen_stored, 0) // can be -/+, + meaning surplus
+
GLOBAL_LIST_EMPTY(powernets)
GLOBAL_VAR_INIT(bsa_unlock, FALSE) //BSA unlocked by head ID swipes
diff --git a/code/datums/components/crafting/recipes/tribal.dm b/code/datums/components/crafting/recipes/tribal.dm
index 83e5c03722bc..c831b85d7878 100644
--- a/code/datums/components/crafting/recipes/tribal.dm
+++ b/code/datums/components/crafting/recipes/tribal.dm
@@ -1,18 +1,16 @@
-/datum/crafting_recipe/bonetalisman
- name = "Bone Talisman"
- result = /obj/item/clothing/accessory/talisman
+/datum/crafting_recipe/bonearmlet
+ name = "Bone Armlet"
+ result = /obj/item/clothing/accessory/bonearmlet
time = 20
reqs = list(/obj/item/stack/sheet/bone = 2,
/obj/item/stack/sheet/sinew = 1)
category = CAT_PRIMAL
-/datum/crafting_recipe/bonenecklace
- name = "Hunter's Necklace"
- result = /obj/item/clothing/accessory/wolftalisman
- time = 35
- reqs = list(/obj/item/stack/sheet/bone = 2,
- /obj/item/stack/sheet/sinew = 3,
- /obj/item/mob_trophy/wolf_ear = 2,
+/datum/crafting_recipe/fangnecklace
+ name = "Wolf Fang Necklace"
+ result = /obj/item/clothing/neck/fangnecklace
+ time = 20
+ reqs = list(/obj/item/stack/sheet/sinew = 2,
/obj/item/mob_trophy/fang = 1)
category = CAT_PRIMAL
diff --git a/code/datums/components/edible.dm b/code/datums/components/edible.dm
index cf0199d05e18..b65a2d8b7e32 100644
--- a/code/datums/components/edible.dm
+++ b/code/datums/components/edible.dm
@@ -33,8 +33,10 @@ Behavior that's still missing from this component that original food items had t
var/datum/callback/after_eat
///Last time we checked for food likes
var/last_check_time
+ ///Color we use when stuffed in things
+ var/filling_color = "#FFFFFF"
-/datum/component/edible/Initialize(list/initial_reagents, food_flags = NONE, foodtypes = NONE, volume = 50, eat_time = 30, list/tastes, list/eatverbs = list("bite","chew","nibble","gnaw","gobble","chomp"), bite_consumption = 2, datum/callback/after_eat)
+/datum/component/edible/Initialize(list/initial_reagents, food_flags = NONE, foodtypes = NONE, volume = 50, eat_time = 30, list/tastes, list/eatverbs = list("bite","chew","nibble","gnaw","gobble","chomp"), bite_consumption = 2, filling_color = "#FFFFFF", datum/callback/after_eat)
if(!isatom(parent))
return COMPONENT_INCOMPATIBLE
@@ -52,6 +54,7 @@ Behavior that's still missing from this component that original food items had t
src.eatverbs = eatverbs
src.junkiness = junkiness
src.after_eat = after_eat
+ src.filling_color = filling_color
var/atom/owner = parent
diff --git a/code/datums/components/storage/storage.dm b/code/datums/components/storage/storage.dm
index 5724d4327bee..89831dafab72 100644
--- a/code/datums/components/storage/storage.dm
+++ b/code/datums/components/storage/storage.dm
@@ -258,7 +258,7 @@
return
var/datum/progressbar/progress = new(M, len, I.loc)
var/list/rejections = list()
- while(do_after(M, 10, TRUE, parent, FALSE, CALLBACK(src, PROC_REF(handle_mass_pickup), things, I.loc, rejections, progress)))
+ while(do_after(M, 10, parent, TRUE, FALSE, CALLBACK(src, PROC_REF(handle_mass_pickup), things, I.loc, rejections, progress)))
stoplag(1)
progress.end_progress()
to_chat(M, "You put everything you could [insert_preposition] [parent].")
diff --git a/code/datums/diseases/transformation.dm b/code/datums/diseases/transformation.dm
index 6d3959753a9e..1fc6d09cb2cb 100644
--- a/code/datums/diseases/transformation.dm
+++ b/code/datums/diseases/transformation.dm
@@ -226,43 +226,3 @@
new_form = /mob/living/simple_animal/hostile/morph
infectable_biotypes = MOB_ORGANIC|MOB_MINERAL|MOB_UNDEAD //magic!
transformed_antag_datum = /datum/antagonist/morph
-
-/datum/disease/transformation/gondola
- name = "Gondola Transformation"
- cure_text = "Condensed Capsaicin, ingested or injected." //getting pepper sprayed doesn't help
- cures = list(/datum/reagent/consumable/condensedcapsaicin) //beats the hippie crap right out of your system
- cure_chance = 80
- stage_prob = 5
- agent = "Tranquility"
- desc = "Consuming the flesh of a Gondola comes at a terrible price."
- severity = DISEASE_SEVERITY_BIOHAZARD
- visibility_flags = 0
- stage1 = list("You seem a little lighter in your step.")
- stage2 = list("You catch yourself smiling for no reason.")
- stage3 = list("A cruel sense of calm overcomes you.", "You can't feel your arms!", "You let go of the urge to hurt clowns.")
- stage4 = list("You can't feel your arms. It does not bother you anymore.", "You forgive the clown for hurting you.")
- stage5 = list("You have become a Gondola.")
- new_form = /mob/living/simple_animal/pet/gondola
-
-/datum/disease/transformation/gondola/stage_act()
- ..()
- switch(stage)
- if(2)
- if (prob(5))
- affected_mob.emote("smile")
- if (prob(20))
- affected_mob.reagents.add_reagent_list(list(/datum/reagent/pax = 5))
- if(3)
- if (prob(5))
- affected_mob.emote("smile")
- if (prob(20))
- affected_mob.reagents.add_reagent_list(list(/datum/reagent/pax = 5))
- if(4)
- if (prob(5))
- affected_mob.emote("smile")
- if (prob(20))
- affected_mob.reagents.add_reagent_list(list(/datum/reagent/pax = 5))
- if (prob(2))
- to_chat(affected_mob, "You let go of what you were holding.")
- var/obj/item/I = affected_mob.get_active_held_item()
- affected_mob.dropItemToGround(I)
diff --git a/code/datums/materials/pizza.dm b/code/datums/materials/pizza.dm
index aed6577a5af9..62479d90e0d3 100644
--- a/code/datums/materials/pizza.dm
+++ b/code/datums/materials/pizza.dm
@@ -28,4 +28,4 @@
/datum/material/pizza/proc/make_edible(atom/source, amount, material_flags)
var/nutriment_count = 3 * (amount / MINERAL_MATERIAL_AMOUNT)
var/oil_count = 2 * (amount / MINERAL_MATERIAL_AMOUNT)
- source.AddComponent(/datum/component/edible, list(/datum/reagent/consumable/nutriment = nutriment_count, /datum/reagent/consumable/cooking_oil = oil_count), null, GRAIN | MEAT | DAIRY | VEGETABLES, null, 30, list("crust", "tomato", "cheese", "meat"))
+ source.AddComponent(/datum/component/edible, list(/datum/reagent/consumable/nutriment = nutriment_count, /datum/reagent/consumable/cooking_oil = oil_count), null, GRAIN | MEAT | DAIRY | VEGETABLES, null, 30, list("crust", "tomato", "cheese", "meat"), filling_color = COLOR_YELLOW)
diff --git a/code/datums/outfit.dm b/code/datums/outfit.dm
index 34771af91ed2..15a580a89328 100644
--- a/code/datums/outfit.dm
+++ b/code/datums/outfit.dm
@@ -50,9 +50,13 @@
/// Type path of item to go in the glasses slot
var/glasses = null
+ var/wallet = null
+
/// Type path of item to go in the idcard slot
var/id = null
+ var/bank_card = null
+
/// Type path of item for left pocket slot
var/l_pocket = null
@@ -180,8 +184,13 @@
H.equip_to_slot_or_del(new ears(H),ITEM_SLOT_EARS, TRUE)
if(glasses)
H.equip_to_slot_or_del(new glasses(H),ITEM_SLOT_EYES, TRUE)
- if(id)
- H.equip_to_slot_or_del(new id(H),ITEM_SLOT_ID, TRUE)
+ if(!visualsOnly)
+ if(wallet)
+ H.equip_to_slot_or_del(new wallet(H),ITEM_SLOT_ID, TRUE)
+ if(id)
+ H.equip_to_slot_or_del(new id(H),ITEM_SLOT_ID, TRUE)
+ if(bank_card)
+ H.equip_to_slot_or_del(new bank_card(H),ITEM_SLOT_ID, TRUE)
if(suit_store)
H.equip_to_slot_or_del(new suit_store(H),ITEM_SLOT_SUITSTORE, TRUE)
diff --git a/code/game/MapData/shuttles/srm_elder.dm b/code/game/MapData/shuttles/srm_elder.dm
index db6561b6550c..97805731ec2f 100644
--- a/code/game/MapData/shuttles/srm_elder.dm
+++ b/code/game/MapData/shuttles/srm_elder.dm
@@ -20,15 +20,38 @@
name = "shadow's locker"
desc = "The closet of equipment and attire for the aspiring shadow."
icon_state = "cabinet"
+ open_sound = 'sound/machines/wooden_closet_open.ogg'
+ close_sound = 'sound/machines/wooden_closet_close.ogg'
+
+/obj/structure/closet/secure_closet/flamebearer
+ name = "flamebearer's locker"
+ desc = "The closet of equipment an ascetic Flamebearer would require."
+ icon_state = "cabinet"
+ open_sound = 'sound/machines/wooden_closet_open.ogg'
+ close_sound = 'sound/machines/wooden_closet_close.ogg'
/obj/structure/closet/secure_closet/hunter
name = "hunter's locker"
desc = "Everything a hunter will need, held in one secure closet."
icon_state = "cabinet"
req_access = list(ACCESS_SECURITY)
+ open_sound = 'sound/machines/wooden_closet_open.ogg'
+ close_sound = 'sound/machines/wooden_closet_close.ogg'
+
+/obj/structure/closet/secure_closet/machinist
+ name = "machinist's Locker"
+ desc = "The personal closet with tools of a Machinist."
+ req_access = list(ACCESS_ENGINE)
+ icon_state = "eng_secure"
+
+/obj/structure/closet/secure_closet/collignes
+ name = "\proper hunter colligne's locker"
+ desc = "The posessions of the Hunter Colligne aboard the vessel."
+ req_access = list(ACCESS_HOP)
+ icon_state = "hop"
/obj/structure/closet/secure_closet/montagnes
- name = "\proper Hunter Montagnes Locker"
+ name = "\proper hunter montagne's locker"
desc = "The posessions of the owning Hunter Montagnes."
req_access = list(ACCESS_HOS)
icon_state = "hos"
diff --git a/code/game/machinery/_machinery.dm b/code/game/machinery/_machinery.dm
index 4cddf93b2478..3e3939620f3c 100644
--- a/code/game/machinery/_machinery.dm
+++ b/code/game/machinery/_machinery.dm
@@ -436,6 +436,7 @@ Class Procs:
for(var/obj/item/I in component_parts)
I.forceMove(loc)
component_parts.Cut()
+ SEND_SIGNAL(src, COMSIG_OBJ_DECONSTRUCT, disassembled)
qdel(src)
/**
diff --git a/code/game/machinery/Beacon.dm b/code/game/machinery/beacon.dm
similarity index 100%
rename from code/game/machinery/Beacon.dm
rename to code/game/machinery/beacon.dm
diff --git a/code/game/machinery/bounty_board.dm b/code/game/machinery/bounty_board.dm
index b0991110e80d..4cc3413fe9d9 100644
--- a/code/game/machinery/bounty_board.dm
+++ b/code/game/machinery/bounty_board.dm
@@ -33,8 +33,8 @@ GLOBAL_LIST_EMPTY(request_list)
/obj/machinery/bounty_board/attackby(obj/item/I, mob/living/user, params)
. = ..()
- if(istype(I,/obj/item/card/id))
- var/obj/item/card/id/current_card = I
+ if(istype(I,/obj/item/card/bank))
+ var/obj/item/card/bank/current_card = I
if(current_card.registered_account)
current_user = current_card.registered_account
return TRUE
@@ -72,9 +72,9 @@ GLOBAL_LIST_EMPTY(request_list)
if(request.applicants)
for(var/datum/bank_account/j in request.applicants)
formatted_applicants += list(list("name" = j.account_holder, "request_id" = request.owner_account.account_id, "requestee_id" = j.account_id))
- var/obj/item/card/id/id_card = user.get_idcard()
- if(id_card?.registered_account)
- current_user = id_card.registered_account
+ var/obj/item/card/bank/bank_card = user.get_bankcard()
+ if(bank_card?.registered_account)
+ current_user = bank_card.registered_account
if(current_user)
data["accountName"] = current_user.account_holder
data["requests"] = formatted_requests
diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm
index 0fe059653d5c..3916ad0d4b00 100644
--- a/code/game/machinery/computer/cloning.dm
+++ b/code/game/machinery/computer/cloning.dm
@@ -534,9 +534,7 @@
if(ishuman(mob_occupant))
dna = C.has_dna()
- var/obj/item/card/id/I = C.get_idcard(TRUE)
- if(I)
- has_bank_account = I.registered_account
+ has_bank_account = C.get_bank_account()
if(isbrain(mob_occupant))
dna = B.stored_dna
diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm
index 81cb1908ce89..1ab88896accb 100644
--- a/code/game/machinery/doors/firedoor.dm
+++ b/code/game/machinery/doors/firedoor.dm
@@ -104,7 +104,7 @@
if(!welded && !operating && !(machine_stat & NOPOWER) && (!density || allow_hand_open(user)))
user.visible_message("[user] tries to open \the [src] manually.",
"You operate the manual lever on \the [src].")
- if (!do_after(user, 30, TRUE, src))
+ if (!do_after(user, 30, src))
return FALSE
add_fingerprint(user)
if(density)
@@ -174,7 +174,7 @@
if(is_holding_pressure())
// tell the user that this is a bad idea, and have a do_after as well
to_chat(user, "As you begin crowbarring \the [src] a gush of air blows in your face... maybe you should reconsider?")
- if(!do_after(user, 20, TRUE, src)) // give them a few seconds to reconsider their decision.
+ if(!do_after(user, 20, src)) // give them a few seconds to reconsider their decision.
return
log_game("[key_name(user)] has opened a firelock with a pressure difference at [AREACOORD(loc)]")
user.log_message("has opened a firelock with a pressure difference at [AREACOORD(loc)]", LOG_ATTACK)
diff --git a/code/game/machinery/droneDispenser.dm b/code/game/machinery/drone_dispenser.dm
similarity index 100%
rename from code/game/machinery/droneDispenser.dm
rename to code/game/machinery/drone_dispenser.dm
diff --git a/code/game/machinery/hologram.dm b/code/game/machinery/hologram.dm
index 60ded054842a..0e6bc6ed6a6d 100644
--- a/code/game/machinery/hologram.dm
+++ b/code/game/machinery/hologram.dm
@@ -451,11 +451,7 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/
/obj/machinery/holopad/proc/SetLightsAndPower()
var/total_users = LAZYLEN(masters) + LAZYLEN(holo_calls)
- if(total_users > 0)
- set_active_power()
- else
- set_idle_power()
- active_power_usage = initial(active_power_usage) * total_users
+ //active_power_usage = initial(active_power_usage) * total_users
if(total_users || replay_mode)
set_light(2)
else
diff --git a/code/game/machinery/outpost_electrolyzer.dm b/code/game/machinery/outpost_electrolyzer.dm
new file mode 100644
index 000000000000..29a37c4f95e8
--- /dev/null
+++ b/code/game/machinery/outpost_electrolyzer.dm
@@ -0,0 +1,536 @@
+//allows production of hydrogen from ice chunks
+#define MOLS_PER_ICE 50 //1 ice = 50 mols
+#define MOLS_PER_MERIT 10 //10 mols = 1 merit
+#define MERITS_PER_ICE MOLS_PER_ICE / MOLS_PER_MERIT //1 ice = 5 merits
+#define MERITS_USED_PER_TICK 2
+#define H2_PUMP_SHUTOFF_PRESSURE 4000
+#define CREDITS_TO_MERITS 4 // currently 2:5 credits to mols hydrogen. # of credits per merit
+#define OUTPOST_HYDROGEN_CUT 0.8
+#define HYDROGEN_IDEAL 45000 //used for high and low end of merit multiplier
+#define MERIT_EXPONENT 0.95 //used for diminishing returns, values closer to 1 increase returns, lower decrease.
+
+/obj/machinery/mineral/electrolyzer_unloader
+ name = "ice unloading machine"
+ icon = 'icons/obj/machines/mining_machines.dmi'
+ icon_state = "unloader"
+ density = TRUE
+ input_dir = WEST
+ output_dir = EAST
+ needs_item_input = TRUE
+ processing_flags = START_PROCESSING_MANUALLY
+
+/obj/machinery/mineral/electrolyzer_unloader/pickup_item(datum/source, atom/movable/target, atom/oldLoc)
+ if(istype(target, /obj/structure/ore_box))
+ var/obj/structure/ore_box/box = target
+ for(var/obj/item/stack/ore/ice/chunk in box)
+ unload_mineral(chunk)
+ else if(istype(target, /obj/item/stack/ore/ice))
+ var/obj/item/stack/ore/chunk = target
+ unload_mineral(chunk)
+
+// electrolyzer + console
+
+/obj/machinery/computer/electrolyzer_console
+ name = "electrolyzer console"
+ desc = "Deposits hydrogen merits, with 20% going to outpost upkeep."
+ icon = 'icons/obj/machines/mining_machines.dmi'
+ icon_state = "console"
+
+ 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.
+ GLOB.hydrogen_stored += S.get_amount() * MOLS_PER_ICE
+ new /obj/item/merit/bundle(drop_location(), meritval)
+ qdel(I)
+ playsound(src, 'sound/items/poster_being_created.ogg', 20, FALSE)
+
+/obj/machinery/computer/electrolyzer_console/attackby(item,mob/user)
+ if(istype(item, /obj/item/multitool))
+ var/obj/item/multitool/multi = item
+ if(istype(multi.buffer, /obj/machinery/mineral/electrolyzer))
+ linked_electrolyzer = multi.buffer
+ visible_message("Linked to [linked_electrolyzer]!")
+ return
+ return ..()
+
+/obj/machinery/mineral/electrolyzer
+ name = "ice crusher"
+ desc = "Breaks down ice into hydrogen and oxygen."
+ icon = 'icons/obj/recycling.dmi'
+ icon_state = "grinder-o1"
+ input_dir = WEST
+ density = TRUE
+ use_power = IDLE_POWER_USE
+ idle_power_usage = 50
+ active_power_usage = 1000
+ max_integrity = 500
+ var/crush_damage = 1000
+ var/obj/machinery/computer/electrolyzer_console/linked_console
+ var/datum/weakref/attached_output
+
+/obj/machinery/mineral/electrolyzer/Initialize()
+ . = ..()
+ update_appearance()
+ var/static/list/loc_connections = list(
+ COMSIG_ATOM_ENTERED = PROC_REF(on_entered),
+ )
+ AddElement(/datum/element/connect_loc, loc_connections)
+
+/obj/machinery/computer/electrolyzer_console/attackby(item,mob/user)
+ if(istype(item, /obj/item/multitool))
+ var/obj/item/multitool/multi = item
+ multi.buffer = src
+ to_chat(user, "[src] stored in [multi].")
+ return
+ return ..()
+
+/obj/machinery/mineral/electrolyzer/CanAllowThrough(atom/movable/mover, border_dir)
+ . = ..()
+ if(!anchored)
+ return
+ if(border_dir == input_dir)
+ return TRUE
+
+/obj/machinery/mineral/electrolyzer/proc/on_entered(datum/source, atom/movable/AM)
+ SIGNAL_HANDLER
+ INVOKE_ASYNC(src, PROC_REF(electrolyze), AM)
+
+/obj/machinery/mineral/electrolyzer/proc/electrolyze(atom/movable/electrolyze_target, sound=TRUE)
+ 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))
+ playsound(src, 'sound/machines/buzz-sigh.ogg', 50, FALSE, 1)
+ if(isliving(electrolyze_target))
+ crush_living(electrolyze_target)
+ return
+ if(!ismob(electrolyze_target)) //MULCH IT IF IT AINT ICE
+ qdel(electrolyze_target)
+ return
+ else
+ linked_console.electrolyze_item(electrolyze_target)
+
+/obj/machinery/mineral/electrolyzer/proc/crush_living(mob/living/L)
+
+ L.forceMove(loc)
+
+ if(issilicon(L))
+ playsound(src, 'sound/items/welder.ogg', 50, TRUE)
+ else
+ playsound(src, 'sound/effects/splat.ogg', 50, TRUE)
+
+ if(iscarbon(L) && L.stat == CONSCIOUS)
+ L.emote("scream")
+
+ // Instantly lie down, also go unconscious from the pain, before you die.
+ L.Unconscious(100)
+ L.adjustBruteLoss(crush_damage)
+
+//Hydrogen pump stuff
+
+/obj/machinery/atmospherics/components/unary/hydrogen_pump
+ name = "hydrogen pump"
+ desc = "Lets you use merits to buy hydrogen."
+ icon = 'icons/obj/atmos.dmi'
+ icon_state = "hydrogen_pump"
+
+ use_power = IDLE_POWER_USE
+ idle_power_usage = 50
+ active_power_usage = 1000
+
+ density = TRUE
+ max_integrity = 400
+ armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 100, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 30)
+ layer = OBJ_LAYER
+ showpipe = TRUE
+ pipe_flags = PIPING_ONE_PER_TURF | PIPING_DEFAULT_LAYER_ONLY
+ var/not_processing_bug = TRUE//remove when fixed
+ var/merit
+
+/obj/machinery/atmospherics/components/unary/hydrogen_pump/examine(mob/user)
+ . = ..()
+ if(merit)
+ . += "[src] has [merit] merits, equaling [merit * MOLS_PER_MERIT] mols of hydrogen."
+ else
+ . += "[src] has no merits, get some from the electrolyzer or buy them to get hydrogen!"
+ . += "[src] is currently [on ? "on" : "off"], and shuts off above [H2_PUMP_SHUTOFF_PRESSURE] kPa."
+ . += "[src] can be Alt-Clicked to eject merits."
+ if(not_processing_bug == TRUE)
+ . += "[src] is temporarily disabled. Check back later!"
+
+/obj/machinery/atmospherics/components/unary/hydrogen_pump/process_atmos()
+ ..()
+ var/datum/gas_mixture/air = airs[1] //hydrogen out
+ not_processing_bug = FALSE
+ if(!on)
+ return
+ if(!merit || air.return_pressure() > H2_PUMP_SHUTOFF_PRESSURE)
+ on = FALSE
+ visible_message("[src] shuts off!")
+ playsound(src, 'sound/machines/switch2.ogg', 10, FALSE)
+ return
+ var/meritused
+ if(merit >= MERITS_USED_PER_TICK)
+ merit -= MERITS_USED_PER_TICK
+ meritused = MERITS_USED_PER_TICK
+ else
+ meritused = merit
+ merit = 0
+ on = FALSE
+ air.adjust_moles(GAS_HYDROGEN, meritused * MOLS_PER_MERIT)
+ GLOB.hydrogen_stored -= meritused * MOLS_PER_MERIT
+ air.set_temperature(T20C) //hydrogen from adjust_mols takes the temp of the container, and if the container is empty it defaults to 0K. this works for now
+
+/obj/machinery/atmospherics/components/unary/hydrogen_pump/attackby(obj/item/I, mob/user)
+ if(istype(I, /obj/item/merit/bundle))
+ var/obj/item/merit/bundle/C = I
+ merit += C.value
+ to_chat(user, "You deposit [I], for a total of [merit] merits.")
+ qdel(I)
+ return
+ return ..()
+
+/obj/machinery/atmospherics/components/unary/hydrogen_pump/attack_hand(mob/user)
+ if(..())
+ return
+ on = !on
+ if(on)
+ SSair.start_processing_machine(src)
+ playsound(src, 'sound/machines/switch3.ogg', 10, FALSE)
+ to_chat(user, "You toggle the pump [on ? "on" : "off"].")
+ investigate_log("was turned [on ? "on" : "off"] by [key_name(user)]", INVESTIGATE_ATMOS)
+ update_appearance()
+
+/obj/machinery/atmospherics/components/unary/hydrogen_pump/AltClick(mob/user)
+ if(merit)
+ new /obj/item/merit/bundle(drop_location(), merit)
+ merit = FALSE
+ playsound(src, 'sound/items/poster_being_created.ogg', 10, FALSE)
+ to_chat(user, "You retrieve the hydrogen merits.")
+ else
+ to_chat(user, "There were no merits left to retrieve.")
+
+
+//Hydrogen exchange
+
+/obj/machinery/computer/hydrogen_exchange
+ name = "Hydrogen Exchange"
+ desc = "Credits to Merits at reasonable rates!"
+ icon_screen = "exchange"
+ icon_keyboard = "power_key"
+
+ //GLOB.total_merits_exchanged starts at 0
+ var/merits = NONE
+ var/credits = NONE
+
+/obj/machinery/computer/hydrogen_exchange/attackby(obj/item/I, mob/user)
+ var/value = 0
+ if(istype(I, /obj/item/spacecash/bundle))
+ var/obj/item/spacecash/bundle/C = I
+ value = C.value
+ else if(istype(I, /obj/item/holochip))
+ var/obj/item/holochip/H = I
+ value = H.credits
+ if(value)
+ credits += value
+ to_chat(user, "You deposit [I], for a total of [credits] credits.")
+ qdel(I)
+ return
+ if(istype(I, /obj/item/merit/bundle))
+ var/obj/item/merit/bundle/C = I
+ merits += C.value
+ to_chat(user, "You deposit [I], for a total of [merits] merits.")
+ qdel(I)
+ return
+ return ..()
+
+/obj/machinery/computer/hydrogen_exchange/proc/meritmultiplier()
+ var/extra = clamp(((GLOB.hydrogen_stored / HYDROGEN_IDEAL) + 1), 0, 2) * 0.3 //results in a number between 0 and .6
+ var/actual = round((0.4 + extra), 0.01) //.4 on low end, 1 on high end
+ return actual
+
+/obj/machinery/computer/hydrogen_exchange/proc/dispense_funds()
+ var/makenoise
+ if(merits)
+ new /obj/item/merit/bundle(drop_location(), merits)
+ merits = 0
+ makenoise = TRUE
+ if(credits)
+ new /obj/item/spacecash/bundle(drop_location(), credits)
+ credits = 0
+ makenoise = TRUE
+ if(makenoise)
+ playsound(src, 'sound/machines/coindrop.ogg', 20, FALSE)
+
+/obj/machinery/computer/hydrogen_exchange/proc/resetmerits() //debug proc
+ GLOB.total_merits_exchanged = 0
+
+/obj/machinery/computer/hydrogen_exchange/proc/convert_to_credits()
+ if(merits)
+ playsound(src, 'sound/machines/pda_button1.ogg', 20, FALSE)
+ var/oldtotal = GLOB.total_merits_exchanged ** MERIT_EXPONENT
+ var/newtotal = (GLOB.total_merits_exchanged + merits) ** MERIT_EXPONENT
+ var/reducedmerits = newtotal - oldtotal
+ GLOB.total_merits_exchanged += merits
+ credits += round(reducedmerits * CREDITS_TO_MERITS, 1)
+ merits = 0
+ else
+ playsound(src, 'sound/machines/buzz-sigh.ogg', 20, FALSE)
+
+/obj/machinery/computer/hydrogen_exchange/proc/convert_to_merits()
+ if(credits)
+ playsound(src, 'sound/machines/pda_button1.ogg', 20, FALSE)
+ merits += round(credits * meritmultiplier() / CREDITS_TO_MERITS, 1)
+ credits = 0
+ else
+ playsound(src, 'sound/machines/buzz-sigh.ogg', 20, FALSE)
+
+/obj/machinery/computer/hydrogen_exchange/AltClick(mob/user)
+ dispense_funds()
+ to_chat(user, "You force the credits and merits out of the machine.")
+
+/obj/machinery/computer/hydrogen_exchange/ui_interact(mob/user, datum/tgui/ui)
+ ui = SStgui.try_update_ui(user, src, ui)
+ if(!ui)
+ ui = new(user, src, "HydrogenExchange", name)
+ ui.open()
+
+/obj/machinery/computer/hydrogen_exchange/ui_data(mob/user)
+ var/next_merit_rate
+ if(GLOB.total_merits_exchanged)
+ next_merit_rate = round((GLOB.total_merits_exchanged ** MERIT_EXPONENT) / GLOB.total_merits_exchanged * CREDITS_TO_MERITS, 0.01)
+ else
+ next_merit_rate = CREDITS_TO_MERITS
+ var/list/data = list()
+ data["credits"] = credits
+ data["merits"] = merits
+ data["next_merit_rate"] = next_merit_rate
+ data["credits_to_merits"] = CREDITS_TO_MERITS
+ data["credit_tax"] = (1 - meritmultiplier()) * 100
+ return data
+
+/obj/machinery/computer/hydrogen_exchange/ui_act(action, params)
+ . = ..()
+ if(.)
+ return
+
+ switch(action)
+ if("convert_to_credits")
+ convert_to_credits()
+ . = TRUE
+ if("convert_to_merits")
+ convert_to_merits()
+ . = TRUE
+ if("dispense")
+ dispense_funds()
+ . = TRUE
+
+//SCRIP!
+
+/obj/item/merit
+ name = "hydrogen?"
+ desc = "If you can see this, please make a bug report. If you're a mapper, use the bundle subtype!"
+ icon = 'icons/obj/economy.dmi'
+ icon_state = "merit0"
+ throwforce = 1
+ throw_speed = 2
+ throw_range = 2
+ w_class = WEIGHT_CLASS_TINY
+ var/value = 0
+ grind_results = list(/datum/reagent/iron = 10)
+
+/obj/item/merit/Initialize(mapload, amount)
+ . = ..()
+ if(amount)
+ value = amount
+ update_appearance()
+
+/obj/item/merit/attackby(obj/item/I, mob/user)
+ if(!istype(I, /obj/item/merit))
+ return
+ var/obj/item/merit/bundle/bundle
+ if(istype(I, /obj/item/merit/bundle))
+ bundle = I
+ else
+ var/obj/item/merit/cash = I
+ bundle = new (loc)
+ bundle.value = cash.value
+ user.dropItemToGround(cash)
+ qdel(cash)
+
+ bundle.value += value
+ bundle.update_appearance()
+ if(ishuman(user))
+ var/mob/living/carbon/human/H = user
+ H.dropItemToGround(src)
+ H.dropItemToGround(bundle)
+ H.put_in_hands(bundle)
+ to_chat(user, "You add [value] merits worth of money to the bundle.
It now holds [bundle.value] merits.")
+ qdel(src)
+
+/obj/item/merit/Destroy()
+ . = ..()
+ value = 0 // Prevents money from be duplicated anytime.//I'll trust eris on this one
+
+/obj/item/merit/bundle
+ icon_state = "merit16"
+
+/obj/item/merit/bundle/Initialize()
+ . = ..()
+ update_appearance()
+
+/obj/item/merit/bundle/update_appearance()
+ icon_state = "nothing"
+ cut_overlays()
+ var/remaining_value = value
+ var/iteration = 0
+ var/coins_only = TRUE
+ var/list/coin_denominations = list(16, 4, 1)
+ var/list/banknote_denominations = list(4096, 1024, 256, 64)
+ for(var/i in banknote_denominations)
+ while(remaining_value >= i && iteration < 50)
+ remaining_value -= i
+ iteration++
+ var/image/banknote = image('icons/obj/economy.dmi', "merit[i]")
+ var/matrix/M = matrix()
+ M.Translate(rand(-6, 6), rand(-4, 8))
+ banknote.transform = M
+ overlays += banknote
+ coins_only = FALSE
+
+ if(remaining_value)
+ for(var/i in coin_denominations)
+ while(remaining_value >= i && iteration < 50)
+ remaining_value -= i
+ iteration++
+ var/image/coin = image('icons/obj/economy.dmi', "merit[i]")
+ var/matrix/M = matrix()
+ M.Translate(rand(-6, 6), rand(-4, 8))
+ coin.transform = M
+ overlays += coin
+
+ if(coins_only)
+ if(value == 1)
+ name = "one hydrogen merit"
+ desc = "Heavier then it looks."
+ drop_sound = 'sound/items/handling/coin_drop.ogg'
+ pickup_sound = 'sound/items/handling/coin_pickup.ogg'
+ else
+ name = "[value] hydrogen merits"
+ desc = "Heavier than they look."
+ gender = PLURAL
+ drop_sound = 'sound/items/handling/coin_drop.ogg'
+ pickup_sound = 'sound/items/handling/coin_pickup.ogg'
+ else
+ if(value <= 3000)
+ name = "[value] hydrogen merits"
+ gender = NEUTER
+ desc = "Some cold, hard cash."
+ drop_sound = 'sound/items/handling/dosh_drop.ogg'
+ pickup_sound = 'sound/items/handling/dosh_pickup.ogg'
+ else
+ name = "[value] hydrogen merit"
+ gender = NEUTER
+ desc = "That's a lot of dosh."
+ drop_sound = 'sound/items/handling/dosh_drop.ogg'
+ pickup_sound = 'sound/items/handling/dosh_pickup.ogg'
+ return ..()
+
+/obj/item/merit/bundle/attack_self(mob/user)
+ 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)
+ qdel(src)
+
+ var/obj/item/merit/bundle/bundle = new (user.loc)
+ bundle.value = cashamount
+ update_appearance()
+
+/obj/item/merit/bundle/AltClick(mob/living/user)
+ 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)
+ qdel(src)
+
+ 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/attack_hand(mob/user)
+ if(user.get_inactive_held_item() != src)
+ return ..()
+ if(value == 0)//may prevent any edge case duping
+ qdel(src)
+ return
+ value--
+ user.put_in_hands(new /obj/item/merit/bundle(loc, 1))
+ update_appearance()
+
+//bundles for mapping + testing
+
+/obj/item/merit/bundle/m1
+ value = 1
+ icon_state = "merit1"
+
+/obj/item/merit/bundle/m4
+ value = 4
+ icon_state = "merit4"
+
+/obj/item/merit/bundle/m16
+ value = 16
+ icon_state = "merit16"
+
+/obj/item/merit/bundle/m64
+ value = 64
+ icon_state = "merit64"
+
+/obj/item/merit/bundle/m256
+ value = 256
+ icon_state = "merit256"
+
+/obj/item/merit/bundle/m1024
+ value = 1024
+ icon_state = "merit1024"
+
+/obj/item/merit/bundle/m4096
+ value = 4096
+ icon_state = "merit4096"
+
+#undef MOLS_PER_ICE
+#undef MOLS_PER_MERIT
+#undef MERITS_PER_ICE
+#undef MERITS_USED_PER_TICK
+#undef H2_PUMP_SHUTOFF_PRESSURE
+#undef CREDITS_TO_MERITS
+#undef MERIT_EXPONENT
diff --git a/code/game/machinery/roulette_machine.dm b/code/game/machinery/roulette_machine.dm
index 351f1c42ae5e..a36bf79a41b3 100644
--- a/code/game/machinery/roulette_machine.dm
+++ b/code/game/machinery/roulette_machine.dm
@@ -39,7 +39,7 @@
var/chosen_bet_type = "0"
var/last_anti_spam = 0
var/anti_spam_cooldown = 20
- var/obj/item/card/id/my_card
+ var/obj/item/card/bank/my_card
var/playing = FALSE
var/locked = FALSE
var/drop_dir = SOUTH
@@ -81,7 +81,7 @@
data["Spinning"] = playing
if(ishuman(user))
var/mob/living/carbon/human/H = user
- var/obj/item/card/id/C = H.get_idcard(TRUE)
+ var/obj/item/card/bank/C = H.get_bankcard()
if(C)
data["AccountBalance"] = C.registered_account.account_balance
else
@@ -114,7 +114,7 @@
return
if(playing)
return ..()
- if(istype(W, /obj/item/card/id))
+ if(istype(W, /obj/item/card/bank))
playsound(src, 'sound/machines/card_slide.ogg', 50, TRUE)
if(machine_stat & MAINT || !on || locked)
@@ -122,7 +122,7 @@
return FALSE
if(my_card)
- var/obj/item/card/id/player_card = W
+ var/obj/item/card/bank/player_card = W
if(player_card.registered_account.account_balance < chosen_bet_amount) //Does the player have enough funds
audible_message("You do not have the funds to play! Lower your bet or get more money.")
playsound(src, 'sound/machines/buzz-two.ogg', 30, TRUE)
@@ -167,7 +167,7 @@
addtimer(CALLBACK(src, PROC_REF(play), user, player_card, chosen_bet_type, chosen_bet_amount, potential_payout), 4) //Animation first
return TRUE
else
- var/obj/item/card/id/new_card = W
+ var/obj/item/card/bank/new_card = W
if(new_card.registered_account)
var/msg = stripped_input(user, "Name of your roulette wheel:", "Roulette Naming", "Roulette Machine")
if(!msg)
@@ -181,7 +181,7 @@
return ..()
///Proc called when player is going to try and play
-/obj/machinery/roulette/proc/play(mob/user, obj/item/card/id/player_id, bet_type, bet_amount, potential_payout)
+/obj/machinery/roulette/proc/play(mob/user, obj/item/card/bank/player_id, bet_type, bet_amount, potential_payout)
var/payout = potential_payout
@@ -203,7 +203,7 @@
playsound(src, 'sound/machines/piston_lower.ogg', 70)
///Ran after a while to check if the player won or not.
-/obj/machinery/roulette/proc/finish_play(obj/item/card/id/player_id, bet_type, bet_amount, potential_payout, rolled_number)
+/obj/machinery/roulette/proc/finish_play(obj/item/card/bank/player_id, bet_type, bet_amount, potential_payout, rolled_number)
last_spin = rolled_number
var/is_winner = check_win(bet_type, bet_amount, rolled_number) //Predetermine if we won
diff --git a/code/game/machinery/shuttle/shuttle_engine.dm b/code/game/machinery/shuttle/shuttle_engine.dm
index c4fd424d4076..d816b16ca7ff 100644
--- a/code/game/machinery/shuttle/shuttle_engine.dm
+++ b/code/game/machinery/shuttle/shuttle_engine.dm
@@ -8,6 +8,7 @@
desc = "A thruster for shuttles."
circuit = /obj/item/circuitboard/machine/shuttle/engine
CanAtmosPass = FALSE //so people can actually tend to their engines
+ dir = EAST //most ships face east
///Whether or not the engine is enabled and can be used. Controlled from helm consoles and by hitting with a multitool.
var/enabled = TRUE
///How much thrust this engine generates when burned fully.
diff --git a/code/game/machinery/shuttle/shuttle_engine_types.dm b/code/game/machinery/shuttle/shuttle_engine_types.dm
index de9992e106d1..47711bdda3bc 100644
--- a/code/game/machinery/shuttle/shuttle_engine_types.dm
+++ b/code/game/machinery/shuttle/shuttle_engine_types.dm
@@ -82,9 +82,16 @@
if(!found.anchored)
continue
attached_heater = WEAKREF(found)
+ var/obj/machinery/atmospherics/components/unary/shuttle/heater/resolved_heater = attached_heater?.resolve()
+ RegisterSignal(resolved_heater, COMSIG_OBJ_DECONSTRUCT, PROC_REF(remove_heater))
update_icon_state()
return TRUE
+/obj/machinery/power/shuttle/engine/fueled/proc/remove_heater(datum/source, disassembled)
+ SIGNAL_HANDLER
+
+ attached_heater = null
+
/obj/machinery/power/shuttle/engine/fueled/plasma
name = "plasma thruster"
desc = "A thruster that burns plasma from an adjacent heater to create thrust."
@@ -101,6 +108,90 @@
thrust = 15
//All fuel code already handled
+/**
+ * ### Combustion/Fire engines
+ * Engines that use oxidizer and fuel to output thrust. Theoretically works with any mix of fuels and oxiders. Wish me luck.
+*/
+
+/obj/machinery/power/shuttle/engine/fire
+ name = "combustion thruster"
+ desc = "A thruster that burns fuel with oxider that is stored in an adjacent heater."
+ icon_state = "burst_plasma"
+ icon_state_off = "burst_plasma_off"
+ circuit = /obj/item/circuitboard/machine/shuttle/engine/fire
+
+ idle_power_usage = 0
+ ///what portion of the mols in the attached heater to "burn"
+ var/fuel_consumption = 0.0125
+ //multiplier for thrust
+ thrust = 3
+ //used by stockparts, efficiency_multiplier
+ var/consumption_multiplier = 1
+ //If this engine should create heat when burned.
+ var/heat_creation = FALSE
+ //A weakref of the connected engine heater with fuel.
+ var/datum/weakref/attached_heater
+
+
+/obj/machinery/power/shuttle/engine/fire/burn_engine(percentage = 100, deltatime)
+ . = ..()
+ var/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/resolved_heater = attached_heater?.resolve()
+ if(!resolved_heater)
+ return
+ if(heat_creation)
+ heat_engine()
+ var/actual_consumption = fuel_consumption * (percentage / 100) * deltatime * consumption_multiplier
+ return resolved_heater.consume_fuel(actual_consumption) * thrust //this proc returns the min of the fuel/oxy possible burns, multiply by our thrust value
+
+/obj/machinery/power/shuttle/engine/fire/return_fuel()
+ . = ..()
+ var/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/resolved_heater = attached_heater?.resolve()
+ return resolved_heater?.return_gas()
+
+/obj/machinery/power/shuttle/engine/fire/return_fuel_cap()
+ . = ..()
+ var/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/resolved_heater = attached_heater?.resolve()
+ return resolved_heater?.return_gas_capacity()
+
+/obj/machinery/power/shuttle/engine/fire/screwdriver_act(mob/living/user, obj/item/I)
+ . = ..()
+ update_icon_state()
+
+/obj/machinery/power/shuttle/engine/fire/update_engine()
+ if(!..())
+ return
+ if(!attached_heater && !set_heater())
+ thruster_active = FALSE
+ return FALSE
+
+/obj/machinery/power/shuttle/engine/fire/proc/set_heater()
+ for(var/direction in GLOB.cardinals)
+ for(var/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/found in get_step(get_turf(src), direction))
+ if(found.dir != dir)
+ continue
+ if(found.panel_open)
+ continue
+ if(!found.anchored)
+ continue
+ attached_heater = WEAKREF(found)
+ var/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/resolved_heater = attached_heater?.resolve()
+ RegisterSignal(resolved_heater, COMSIG_OBJ_DECONSTRUCT, PROC_REF(remove_heater))
+ update_icon_state()
+ return TRUE
+
+/obj/machinery/power/shuttle/engine/fire/proc/remove_heater(datum/source, disassembled)
+ SIGNAL_HANDLER
+
+ var/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/resolved_heater = attached_heater?.resolve()
+ UnregisterSignal(resolved_heater, COMSIG_OBJ_DECONSTRUCT)
+ attached_heater = null
+
+/obj/machinery/power/shuttle/engine/fire/RefreshParts()
+ var/laz = 0
+ for(var/obj/item/stock_parts/micro_laser/L in component_parts)
+ laz += L.rating
+ consumption_multiplier = laz
+
/**
* ### Ion Engines
* Engines that convert electricity to thrust. Yes, I know that's not how it works, it needs a propellant, but this is a video game.
@@ -133,6 +224,7 @@
name = "electric engine precharger"
desc = "A medium-capacity, high transfer superconducting magnetic energy storage unit specially made for use with shuttle engines."
icon = 'icons/obj/shuttle.dmi'
+ dir = EAST
input_level = 5000
input_level_max = 50000
output_level = 50000
diff --git a/code/game/machinery/shuttle/shuttle_heater.dm b/code/game/machinery/shuttle/shuttle_heater.dm
index 8578e3fb5a23..2b440f926c32 100644
--- a/code/game/machinery/shuttle/shuttle_heater.dm
+++ b/code/game/machinery/shuttle/shuttle_heater.dm
@@ -4,11 +4,32 @@
//but instead of changing temp, it stores plasma and uses
//it for the engine.
//-----------------------------------------------
+
+#define O2_OXIDATION_VALUE 1
+#define NITRYL_OXIDATION_VALUE 1
+#define NITROUS_OXIDATION_VALUE 3
+
+#define PLASMA_THRUSTER_VALUE 1
+#define TRITRIUM_THRUSTER_VALUE 3
+#define HYDROGEN_THRUSTER_VALUE 0.5
+
+#define NITROUS_COOLING_MULTIPIER 500
+#define NITROUS_COOLING_MIN 173
+
+#define DAMAGE_NONE 0
+#define DAMAGE_LOW 1
+#define DAMAGE_MED 2
+#define DAMAGE_HIGH 3
+
+#define PRESSURE_LIMIT 1010 //in kpa
+#define PRESSURE_DAMAGE_MAX 1200 //gives 10 minutes per stage at the pressure limit
+
/obj/machinery/atmospherics/components/unary/shuttle
name = "shuttle atmospherics device"
desc = "This does something to do with shuttle atmospherics"
icon_state = "heater"
icon = 'icons/obj/shuttle.dmi'
+ dir = EAST
/obj/machinery/atmospherics/components/unary/shuttle/heater
name = "engine heater"
@@ -180,3 +201,262 @@
. = ..()
fuel_tank = new /obj/item/tank/internals/plasma/full(src)
use_tank = TRUE
+
+//combustion heater
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater
+ name = "combustion engine heater"
+ desc = "Directs fuel mix into an attached combustion thruster."
+ icon_state = "heater_pipe"
+ var/icon_state_closed = "heater_pipe"
+ var/icon_state_open = "heater_pipe_open"
+ var/gas_amount = 0 //amount of gas used in calculations
+ var/gas_capacity = 0
+ var/efficiency_multiplier = 1
+ var/pressure_damage = 0
+ var/damage_state = 0
+ var/metal_repair = FALSE //used to see if metal's been added during repair step
+ idle_power_usage = 50
+ circuit = /obj/item/circuitboard/machine/shuttle/fire_heater
+
+ density = TRUE
+ max_integrity = 400
+ armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 100, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 30)
+ layer = OBJ_LAYER
+ showpipe = TRUE
+
+ pipe_flags = PIPING_ONE_PER_TURF
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/on_construction(obj_color, set_layer)
+ var/obj/item/circuitboard/machine/shuttle/fire_heater/board = circuit
+ if(board)
+ piping_layer = board.pipe_layer
+ set_layer = piping_layer
+ ..()
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/New()
+ . = ..()
+ SetInitDirections()
+ update_adjacent_engines()
+ update_gas_stats()
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/Destroy()
+ . = ..()
+ update_adjacent_engines()
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/on_construction()
+ ..(dir, dir)
+ SetInitDirections()
+ update_adjacent_engines()
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/process_atmos()
+ var/datum/gas_mixture/air_contents = airs[1]
+ var/pressure = air_contents.return_pressure()
+ if(pressure > PRESSURE_LIMIT)
+ pressure_damage += pressure / PRESSURE_LIMIT //always more than 1
+ if(rand(1, 48) == 48) //process_atmos() calls around twice a second, so this'll go off on average every 24 seconds.
+ playsound(loc, "hull_creaking", 60, TRUE, 20, pressure_affected = FALSE) // the ship is Not happy
+ if(pressure_damage >= PRESSURE_DAMAGE_MAX)
+ damage_state += 1 //damage state starts at 0, 1 causes temp leak, 2 causes gas leak, 3 causes explosion
+ pressure_damage = 0 // reset our counter here
+ playsound(loc, 'sound/effects/bang.ogg', 240, TRUE, 5)
+ if(damage_state >= DAMAGE_LOW)
+ var/loc_air = loc.return_air()
+ air_contents.temperature_share(loc_air, 0.4) //equalizes temp with its turf
+ if(damage_state >= DAMAGE_MED)
+ assume_air_ratio(air_contents, 0.01) //leaks a bit of its tank
+ if(damage_state >= DAMAGE_HIGH)
+ var/epicenter = loc
+ explosion(epicenter, 2, 2, 3, 3, TRUE, TRUE) //boom
+ update_parents()
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/default_change_direction_wrench(mob/user, obj/item/I)
+ if(!..())
+ return FALSE
+ SetInitDirections()
+ var/obj/machinery/atmospherics/node = nodes[1]
+ if(node)
+ node.disconnect(src)
+ nodes[1] = null
+ if(!parents[1])
+ return
+ nullifyPipenet(parents[1])
+
+ atmosinit()
+ node = nodes[1]
+ if(node)
+ node.atmosinit()
+ node.addMember(src)
+ SSair.add_to_rebuild_queue(src)
+ return TRUE
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/RefreshParts()
+ var/cap = 0
+ var/eff = 0
+ for(var/obj/item/stock_parts/matter_bin/M in component_parts)
+ cap += M.rating
+ for(var/obj/item/stock_parts/micro_laser/L in component_parts)
+ eff += L.rating
+ gas_capacity = 5000 * ((cap - 1) ** 2) + 1000
+ efficiency_multiplier = round(sqrt(eff), 0.1)
+ update_gas_stats()
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/examine(mob/user)
+ . = ..()
+ . += "The engine heater's gas dial reads [return_gas()] kPa."
+ . += "A lightly burnt hazard sticker reports a safe pressure of [PRESSURE_LIMIT] kPa. "
+ if(damage_state == DAMAGE_MED && metal_repair == FALSE)
+ . += "The engine heater's plating could be repaired with metal."
+ if(damage_state == DAMAGE_MED && metal_repair == TRUE)
+ . += "The engine heater's plating is ready to be bolted down."
+ if(damage_state == DAMAGE_LOW)
+ . += "The engine heater's insulation layer could be pried back into place."
+ if(damage_state == DAMAGE_NONE && pressure_damage >= PRESSURE_DAMAGE_MAX / 2)
+ . += "The engine heater's screws seem loose."
+ if(damage_state == DAMAGE_NONE && pressure_damage < PRESSURE_DAMAGE_MAX / 2)
+ . += "The engine heater is in good condition."
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/proc/return_gas()
+ var/datum/gas_mixture/air_contents = airs[1]
+ return air_contents?.return_pressure()
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/proc/return_gas_capacity()
+ var/datum/gas_mixture/air_contents = airs[1]
+ return air_contents?.return_volume()
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/proc/update_gas_stats()
+ var/datum/gas_mixture/air_contents = airs[1]
+ if(!air_contents)
+ return
+ air_contents.set_volume(gas_capacity)
+ air_contents.set_temperature(T20C)
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/proc/has_fuel(required, datum/gas/gas_type)
+ var/datum/gas_mixture/air_contents = airs[1]
+ if(!air_contents)
+ return
+ return air_contents.get_moles(gas_type) >= required
+
+/**
+ * consumes a portion of the mols and checks how much could combust to make thrust.
+ * oxidation_power is the total value of all the oxidizers
+ * fuel_power is ^ but for fuel
+ */
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/proc/consume_fuel(gas_consumed)
+ var/datum/gas_mixture/air_contents = airs[1]
+ if(!air_contents)
+ return
+
+ else
+ var/oxidation_power = 0
+ var/fuel_power = 0
+ var/thrust_power = 0
+ var/gas_amount = 0
+
+ for(var/id in air_contents.get_gases())
+ gas_amount = air_contents.get_moles(id) * gas_consumed //this takes a percent (set by gas_consumed) and multiplies it by the total gas to get the amount of gas used by the calculation.
+
+ switch(id)
+ // adds each oxidizer's power to the total oxidation max
+ if(GAS_O2)
+ oxidation_power += O2_OXIDATION_VALUE * gas_amount
+ if(GAS_NITRYL)
+ oxidation_power += NITRYL_OXIDATION_VALUE * gas_amount
+ if(GAS_NITROUS) //burning nitrous cools down the heater's main tank, just like it cools the intake on real cars.
+ oxidation_power += NITROUS_OXIDATION_VALUE * gas_amount
+ var/heat_capacity = gas_amount * NITROUS_COOLING_MULTIPIER
+ var/air_heat_capacity = air_contents.heat_capacity()
+ var/combined_heat_capacity = heat_capacity + air_heat_capacity
+ if(combined_heat_capacity > 0)
+ var/combined_energy = heat_capacity * NITROUS_COOLING_MIN + air_heat_capacity * air_contents.return_temperature()
+ air_contents.set_temperature(combined_energy / combined_heat_capacity)
+ // adds each fuel gas's power to the fuel max (air.get_fuel_amount is busted, and trit should be Better anyways.)
+ if(GAS_PLASMA)
+ fuel_power += PLASMA_THRUSTER_VALUE * gas_amount
+ if(GAS_TRITIUM)
+ fuel_power += TRITRIUM_THRUSTER_VALUE * gas_amount
+ if(GAS_HYDROGEN)
+ fuel_power += HYDROGEN_THRUSTER_VALUE * gas_amount
+
+ air_contents.adjust_moles(id, -gas_amount)
+ thrust_power = min(oxidation_power, fuel_power) * efficiency_multiplier //"simulates" how much possible thrust either oxidizer or fuel could make, and takes the min
+ return thrust_power
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/attackby(obj/item/I, mob/living/user, params)
+ update_adjacent_engines()
+ if(damage_state == DAMAGE_MED && istype(I, /obj/item/stack/sheet/metal) && metal_repair == FALSE) //fix med damage with metal
+ var/obj/item/stack/sheet/metal/S = I
+ if(S.get_amount() < 2)
+ to_chat(user, "You need at least 2 metal sheets to repair [src].")
+ return
+ to_chat(user, "You start adding new plating.")
+ if(do_after(user, 40, src, TRUE))
+ if(!I.use(2))
+ return
+ to_chat(user, "You add new plating.")
+ I.use(1, FALSE, TRUE)
+ metal_repair = TRUE
+ pressure_damage = 0 //lets be nice and not let them explode while fixing this
+ playsound(loc, 'sound/items/deconstruct.ogg', 50)
+ return
+ return
+
+ if(damage_state == DAMAGE_MED && I.tool_behaviour == TOOL_WRENCH && metal_repair == TRUE)
+ to_chat(user, "You start wrenching down the new plating.")
+ if(I.use_tool(src, user, 60, volume=75))
+ metal_repair = FALSE
+ damage_state = DAMAGE_LOW
+ pressure_damage = 0
+ to_chat(user, "You secure the new plating.")
+ return
+ return
+
+ if(damage_state == DAMAGE_LOW && I.tool_behaviour == TOOL_CROWBAR) //fix low damage with screwdriver
+ to_chat(user, "You start prying in the insulation layer.")
+ if(I.use_tool(src, user, 60, volume=75))
+ damage_state = DAMAGE_NONE
+ pressure_damage = 0
+ to_chat(user, "You secure the insulation layer.")
+ return
+ return
+
+ if(damage_state == DAMAGE_NONE && I.tool_behaviour == TOOL_SCREWDRIVER && pressure_damage >= PRESSURE_DAMAGE_MAX / 2) //lets you fix pressure damage before it increases damage state
+ to_chat(user, "You start tightening loose screws.")
+ if(I.use_tool(src, user, 60, volume=75))
+ pressure_damage = 0
+ to_chat(user, "You tighten the screws.")
+ return
+ return
+
+ if(default_deconstruction_screwdriver(user, icon_state_open, icon_state_closed, I))
+ return
+ if(default_pry_open(I))
+ return
+ if(panel_open)
+ if(default_change_direction_wrench(user, I))
+ return
+ if(default_deconstruction_crowbar(I))
+ return
+ return ..()
+
+/obj/machinery/atmospherics/components/unary/shuttle/fire_heater/proc/update_adjacent_engines()
+ var/engine_turf = get_step(src, dir)
+ if(!isturf(engine_turf))
+ return
+ for(var/obj/machinery/power/shuttle/engine/E in engine_turf)
+ E.update_icon_state()
+
+/obj/item/paper/guides/jobs/engi/combustion_thruster
+ name = "paper- 'Combustion Thruster Safety Instructions'"
+ default_raw_text = {"
Combustion Thruster Basics
+ Firstly, combustion thrusters are delicate machines due to their unique function, and therefore come with certain limits to said function.
+ The specific limit to remember is 1000 kPa, above which your warranty will expire and the combustion heater will begin to take damage, with catastrophic failure inevitable after long periods of high pressure.
+ The second thing to keep in mind is the fuel mix you are using. If you put in the wrong ratio, the thruster will waste the excess and you'll get less thrust.
+ The most notable mixes are a 2:1 ratio of hydrogen to oxygen and a 1:1 ratio of plasma to oxygen.
+ Additionally, nitrous oxide has been known to provide beneficial properties on top of being a potent oxidizer.
+
+ It's making scary noises and leaking!
+ Set your internals, pull a fire alarm, grab a fire suit, and continue with the following steps. Ensure you disable all sources of ignition!
+ - Place two metal sheets over the leak in the heater.
+ - Wrench the new sheets of metal into place to stop the leak.
+ - Pry the insulation layer into place with a crowbar to stop the heat transfer.
+ - For minor damages, tighten loosened screws.
"}
diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/sleeper.dm
similarity index 100%
rename from code/game/machinery/Sleeper.dm
rename to code/game/machinery/sleeper.dm
diff --git a/code/game/mecha/equipment/mecha_equipment.dm b/code/game/mecha/equipment/mecha_equipment.dm
index 3882fe8d5a6f..63d308f69558 100644
--- a/code/game/mecha/equipment/mecha_equipment.dm
+++ b/code/game/mecha/equipment/mecha_equipment.dm
@@ -101,13 +101,13 @@
chassis.use_power(energy_drain)
addtimer(CALLBACK(src, PROC_REF(set_ready_state), 1), equip_cooldown)
-/obj/item/mecha_parts/mecha_equipment/proc/do_after_cooldown(atom/target, mob/user, interaction_key)
+/obj/item/mecha_parts/mecha_equipment/proc/do_after_cooldown(atom/target)
if(!chassis)
return
var/C = chassis.loc
set_ready_state(0)
chassis.use_power(energy_drain)
- . = do_after(user, equip_cooldown, target=target, interaction_key = interaction_key)
+ . = do_after(chassis.occupant, equip_cooldown, target=target)
set_ready_state(1)
if(!chassis || chassis.loc != C || src != chassis.selected || !(get_dir(chassis, target)&chassis.dir))
return 0
diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm
index 88c2ca721da2..48cc0388b508 100644
--- a/code/game/mecha/mecha.dm
+++ b/code/game/mecha/mecha.dm
@@ -158,7 +158,7 @@
return cell
/obj/mecha/Destroy()
- if(occupant)
+ if(occupant && iscarbon(occupant))
occupant.SetSleeping(destruction_sleep_duration)
go_out()
var/mob/living/silicon/ai/AI
diff --git a/code/game/objects/effects/anomalies/_anomalies.dm b/code/game/objects/effects/anomalies/_anomalies.dm
index e62b1e52f7b3..4a85f9321154 100644
--- a/code/game/objects/effects/anomalies/_anomalies.dm
+++ b/code/game/objects/effects/anomalies/_anomalies.dm
@@ -133,7 +133,7 @@
/obj/effect/anomaly/attackby(obj/item/weapon, mob/user, params)
if(weapon.tool_behaviour == TOOL_ANALYZER && aSignal)
to_chat(user, span_notice("You start analyzing [src]."))
- if(do_after(user, 20, TRUE, src))
+ if(do_after(user, 20, src, hidden = TRUE))
to_chat(user, span_notice("[src]'s primary field is fluctuating along frequency [format_frequency(aSignal.frequency)], code [aSignal.code]."))
if(bSignal)
to_chat(user, span_notice("A second field is fluctuating along [format_frequency(bSignal.frequency)], code [bSignal.code]. It is highly unstable." ))
diff --git a/code/game/objects/effects/decals/decal.dm b/code/game/objects/effects/decals/decal.dm
index 975f94102ecf..2dfea3173feb 100644
--- a/code/game/objects/effects/decals/decal.dm
+++ b/code/game/objects/effects/decals/decal.dm
@@ -39,7 +39,7 @@
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/obj/effect/turf_decal
- icon = 'icons/turf/decals.dmi'
+ icon = 'icons/turf/decals/decals.dmi'
icon_state = "warningfulltile"
plane = FLOOR_PLANE
layer = TURF_DECAL_LAYER
diff --git a/code/game/objects/effects/decals/turfdecal/flooring_decals.dm b/code/game/objects/effects/decals/turfdecal/flooring_decals.dm
index 4cd17b47f074..fc23ed89c278 100644
--- a/code/game/objects/effects/decals/turfdecal/flooring_decals.dm
+++ b/code/game/objects/effects/decals/turfdecal/flooring_decals.dm
@@ -418,7 +418,6 @@ TURF_DECAL_COLOR_HELPER(transparent/inteqbrown, "#4b2a18", 140)
/obj/effect/turf_decal/plaque
name = "plaque"
icon_state = "plaque"
- icon = 'icons/turf/decals.dmi'
/obj/effect/turf_decal/chapel
name = "chapel"
@@ -801,10 +800,95 @@ TURF_DECAL_COLOR_HELPER(transparent/inteqbrown, "#4b2a18", 140)
/obj/effect/turf_decal/solgov/all/bottom_right
icon_state = "bottom-right-all"
+// suns
+
/obj/effect/turf_decal/suns
- icon = 'icons/obj/suns_floor.dmi'
+ icon = 'icons/turf/decals/suns_floor.dmi'
icon_state = "suns-columm1-bottom"
+/obj/effect/turf_decal/suns/capital_s
+ icon_state = "capital-s"
+
+/obj/effect/turf_decal/suns/capital_u
+ icon_state = "capital-u"
+
+/obj/effect/turf_decal/suns/capital_n
+ icon_state = "capital-n"
+
+/obj/effect/turf_decal/suns/capital_s/fancy
+ icon_state = "capitalfancy-s"
+
+/obj/effect/turf_decal/suns/capital_u/fancy
+ icon_state = "capitalfancy-u"
+
+/obj/effect/turf_decal/suns/capital_n/fancy
+ icon_state = "capitalfancy-n"
+
+/obj/effect/turf_decal/suns/capital_s/marble
+ icon_state = "capitalmarble-s"
+
+/obj/effect/turf_decal/suns/capital_u/marble
+ icon_state = "capitalmarble-u"
+
+/obj/effect/turf_decal/suns/capital_n/marble
+ icon_state = "capitalmarble-n"
+
+// borders
+
+/obj/effect/turf_decal/suns/line
+ icon_state = "suns-border"
+
+/obj/effect/turf_decal/suns/line/corner
+ icon_state = "suns-bordercorner"
+
+/obj/effect/turf_decal/suns/line/end
+ icon_state = "suns-borderend"
+
+/obj/effect/turf_decal/suns/line/fill
+ icon_state = "suns-fill"
+
+/obj/effect/turf_decal/suns/line/fill/corner
+ icon_state = "suns-fillcorner"
+
+/obj/effect/turf_decal/suns/line/fill/end
+ icon_state = "suns-fillend"
+
+/obj/effect/turf_decal/suns/line/fancy
+ icon_state = "sunsfancy-border"
+
+/obj/effect/turf_decal/suns/line/fancy/corner
+ icon_state = "sunsfancy-bordercorner"
+
+/obj/effect/turf_decal/suns/line/fancy/end
+ icon_state = "sunsfancy-borderend"
+
+/obj/effect/turf_decal/suns/line/fancy/fill
+ icon_state = "sunsfancy-fill"
+
+/obj/effect/turf_decal/suns/line/fancy/fill/corner
+ icon_state = "sunsfancy-fillcorner"
+
+/obj/effect/turf_decal/suns/line/fancy/fill/end
+ icon_state = "sunsfancy-fillend"
+
+/obj/effect/turf_decal/suns/line/marble
+ icon_state = "sunsmarble-border"
+
+/obj/effect/turf_decal/suns/line/marble/corner
+ icon_state = "sunsmarble-bordercorner"
+
+/obj/effect/turf_decal/suns/line/marble/end
+ icon_state = "sunsmarble-borderend"
+
+/obj/effect/turf_decal/suns/line/marble/fill
+ icon_state = "sunsmarble-fill"
+
+/obj/effect/turf_decal/suns/line/marble/fill/corner
+ icon_state = "sunsmarble-fillcorner"
+
+/obj/effect/turf_decal/suns/line/marble/fill/end
+ icon_state = "sunsmarble-fillend"
+
// suns 3x6 decal
/obj/effect/turf_decal/suns/columm1
@@ -852,6 +936,97 @@ TURF_DECAL_COLOR_HELPER(transparent/inteqbrown, "#4b2a18", 140)
/obj/effect/turf_decal/suns/columm6/top
icon_state = "suns-columm6-top"
+/obj/effect/turf_decal/suns/marble/columm1
+ icon_state = "sunsmarble-columm1-bottom"
+
+/obj/effect/turf_decal/suns/marble/columm1/middle
+ icon_state = "sunsmarble-columm1-middle"
+
+/obj/effect/turf_decal/suns/marble/columm1/top
+ icon_state = "sunsmarble-columm1-top"
+
+/obj/effect/turf_decal/suns/marble/columm2
+ icon_state = "sunsmarble-columm2-bottom"
+
+/obj/effect/turf_decal/suns/marble/columm2/middle
+ icon_state = "sunsmarble-columm2-middle"
+
+/obj/effect/turf_decal/suns/marble/columm2/top
+ icon_state = "sunsmarble-columm2-top"
+
+/obj/effect/turf_decal/suns/marble/columm3
+ icon_state = "sunsmarble-columm3-bottom"
+
+/obj/effect/turf_decal/suns/marble/columm3/middle
+ icon_state = "sunsmarble-columm3-middle"
+
+/obj/effect/turf_decal/suns/marble/columm3/top
+ icon_state = "sunsmarble-columm3-top"
+
+/obj/effect/turf_decal/suns/marble/columm4
+ icon_state = "sunsmarble-columm4-middle"
+
+/obj/effect/turf_decal/suns/marble/columm4/top
+ icon_state = "sunsmarble-columm4-top"
+
+/obj/effect/turf_decal/suns/marble/columm5
+ icon_state = "sunsmarble-columm5-middle"
+
+/obj/effect/turf_decal/suns/marble/columm5/top
+ icon_state = "sunsmarble-columm5-top"
+
+/obj/effect/turf_decal/suns/marble/columm6
+ icon_state = "sunsmarble-columm6-middle"
+
+/obj/effect/turf_decal/suns/marble/columm6/top
+ icon_state = "sunsmarble-columm6-top"
+
+/obj/effect/turf_decal/suns/fancy/columm1
+ icon_state = "sunsfancy-columm1-bottom"
+
+/obj/effect/turf_decal/suns/fancy/columm1/middle
+ icon_state = "sunsfancy-columm1-middle"
+
+/obj/effect/turf_decal/suns/fancy/columm1/top
+ icon_state = "sunsfancy-columm1-top"
+
+/obj/effect/turf_decal/suns/fancy/columm2
+ icon_state = "sunsfancy-columm2-bottom"
+
+/obj/effect/turf_decal/suns/fancy/columm2/middle
+ icon_state = "sunsfancy-columm2-middle"
+
+/obj/effect/turf_decal/suns/fancy/columm2/top
+ icon_state = "sunsfancy-columm2-top"
+
+/obj/effect/turf_decal/suns/fancy/columm3
+ icon_state = "sunsfancy-columm3-bottom"
+
+/obj/effect/turf_decal/suns/fancy/columm3/middle
+ icon_state = "sunsfancy-columm3-middle"
+
+/obj/effect/turf_decal/suns/fancy/columm3/top
+ icon_state = "sunsfancy-columm3-top"
+
+/obj/effect/turf_decal/suns/fancy/columm4
+ icon_state = "sunsfancy-columm4-middle"
+
+/obj/effect/turf_decal/suns/fancy/columm4/top
+ icon_state = "sunsfancy-columm4-top"
+
+/obj/effect/turf_decal/suns/fancy/columm5
+ icon_state = "sunsfancy-columm5-middle"
+
+/obj/effect/turf_decal/suns/fancy/columm5/top
+ icon_state = "sunsfancy-columm5-top"
+
+/obj/effect/turf_decal/suns/fancy/columm6
+ icon_state = "sunsfancy-columm6-middle"
+
+/obj/effect/turf_decal/suns/fancy/columm6/top
+ icon_state = "sunsfancy-columm6-top"
+
+
// suns alt decal
/obj/effect/turf_decal/suns/alt
@@ -884,6 +1059,96 @@ TURF_DECAL_COLOR_HELPER(transparent/inteqbrown, "#4b2a18", 140)
/obj/effect/turf_decal/suns/alt/bottom_right
icon_state = "sunsalt-bottom-right"
+/obj/effect/turf_decal/suns/alt/fancy
+ icon_state = "sunsaltfancy-top-left"
+
+/obj/effect/turf_decal/suns/alt/fancy/top_left
+ icon_state = "sunsaltfancy-top-left"
+
+/obj/effect/turf_decal/suns/alt/fancy/top_center
+ icon_state = "sunsaltfancy-top-center"
+
+/obj/effect/turf_decal/suns/alt/fancy/top_right
+ icon_state = "sunsaltfancy-top-right"
+
+/obj/effect/turf_decal/suns/alt/fancy/middle_left
+ icon_state = "sunsaltfancy-middle-left"
+
+/obj/effect/turf_decal/suns/alt/fancy/middle_center
+ icon_state = "sunsaltfancy-middle-center"
+
+/obj/effect/turf_decal/suns/alt/fancy/middle_right
+ icon_state = "sunsaltfancy-middle-right"
+
+/obj/effect/turf_decal/suns/alt/fancy/bottom_left
+ icon_state = "sunsaltfancy-bottom-left"
+
+/obj/effect/turf_decal/suns/alt/fancy/bottom_center
+ icon_state = "sunsaltfancy-bottom-center"
+
+/obj/effect/turf_decal/suns/alt/fancy/bottom_right
+ icon_state = "sunsaltfancy-bottom-right"
+
+/obj/effect/turf_decal/suns/alt/marble
+ icon_state = "sunsaltmarble-top-left"
+
+/obj/effect/turf_decal/suns/alt/marble/top_left
+ icon_state = "sunsaltmarble-top-left"
+
+/obj/effect/turf_decal/suns/alt/marble/top_center
+ icon_state = "sunsaltmarble-top-center"
+
+/obj/effect/turf_decal/suns/alt/marble/top_right
+ icon_state = "sunsaltmarble-top-right"
+
+/obj/effect/turf_decal/suns/alt/marble/middle_left
+ icon_state = "sunsaltmarble-middle-left"
+
+/obj/effect/turf_decal/suns/alt/marble/middle_center
+ icon_state = "sunsaltmarble-middle-center"
+
+/obj/effect/turf_decal/suns/alt/marble/middle_right
+ icon_state = "sunsaltmarble-middle-right"
+
+/obj/effect/turf_decal/suns/alt/marble/bottom_left
+ icon_state = "sunsaltmarble-bottom-left"
+
+/obj/effect/turf_decal/suns/alt/marble/bottom_center
+ icon_state = "sunsaltmarble-bottom-center"
+
+/obj/effect/turf_decal/suns/alt/marble/bottom_right
+ icon_state = "sunsaltmarble-bottom-right"
+
+/obj/effect/turf_decal/suns/alt/transparent
+ icon_state = "sunsalttrans-top-left"
+
+/obj/effect/turf_decal/suns/alt/transparent/top_left
+ icon_state = "sunsalttrans-top-left"
+
+/obj/effect/turf_decal/suns/alt/transparent/top_center
+ icon_state = "sunsalttrans-top-center"
+
+/obj/effect/turf_decal/suns/alt/transparent/top_right
+ icon_state = "sunsalttrans-top-right"
+
+/obj/effect/turf_decal/suns/alt/transparent/middle_left
+ icon_state = "sunsalttrans-middle-left"
+
+/obj/effect/turf_decal/suns/alt/transparent/middle_center
+ icon_state = "sunsalttrans-middle-center"
+
+/obj/effect/turf_decal/suns/alt/transparent/middle_right
+ icon_state = "sunsalttrans-middle-right"
+
+/obj/effect/turf_decal/suns/alt/transparent/bottom_left
+ icon_state = "sunsalttrans-bottom-left"
+
+/obj/effect/turf_decal/suns/alt/transparent/bottom_center
+ icon_state = "sunsalttrans-bottom-center"
+
+/obj/effect/turf_decal/suns/alt/transparent/bottom_right
+ icon_state = "sunsalttrans-bottom-right"
+
// suns 3x6 decal transparent
/obj/effect/turf_decal/suns/transparent/columm1
@@ -931,38 +1196,6 @@ TURF_DECAL_COLOR_HELPER(transparent/inteqbrown, "#4b2a18", 140)
/obj/effect/turf_decal/suns/transparent/columm6/top
icon_state = "sunstrans-columm6-top"
-// suns alt decal
-
-/obj/effect/turf_decal/suns/transparent/alt
- icon_state = "sunsalttrans-top-left"
-
-/obj/effect/turf_decal/suns/transparent/alt/top_left
- icon_state = "sunsalttrans-top-left"
-
-/obj/effect/turf_decal/suns/transparent/alt/top_center
- icon_state = "sunsalttrans-top-center"
-
-/obj/effect/turf_decal/suns/transparent/alt/top_right
- icon_state = "sunsalttrans-top-right"
-
-/obj/effect/turf_decal/suns/transparent/alt/middle_left
- icon_state = "sunsalttrans-middle-left"
-
-/obj/effect/turf_decal/suns/transparent/alt/middle_center
- icon_state = "sunsalttrans-middle-center"
-
-/obj/effect/turf_decal/suns/transparent/alt/middle_right
- icon_state = "sunsalttrans-middle-right"
-
-/obj/effect/turf_decal/suns/transparent/alt/bottom_left
- icon_state = "sunsalttrans-bottom-left"
-
-/obj/effect/turf_decal/suns/transparent/alt/bottom_center
- icon_state = "sunsalttrans-bottom-center"
-
-/obj/effect/turf_decal/suns/transparent/alt/bottom_right
- icon_state = "sunsalttrans-bottom-right"
-
// nanotrasen
/obj/effect/turf_decal/nanotrasen //placeholder for sorting these together, add 3x3 NT and Vigilitas logos later
diff --git a/code/game/objects/effects/decals/turfdecal/markings.dm b/code/game/objects/effects/decals/turfdecal/markings.dm
index e0a0746f5a2d..860f8f0bd2b2 100644
--- a/code/game/objects/effects/decals/turfdecal/markings.dm
+++ b/code/game/objects/effects/decals/turfdecal/markings.dm
@@ -229,32 +229,28 @@
/obj/effect/turf_decal/syndicateemblem/top/right
icon_state = "s3,3"
+/obj/effect/turf_decal/atmos
+ icon = 'icons/turf/decals/decals.dmi'
+
/obj/effect/turf_decal/atmos/oxygen
- icon = 'icons/turf/decals.dmi'
icon_state = "oxygen"
/obj/effect/turf_decal/atmos/carbon_dioxide
- icon = 'icons/turf/decals.dmi'
icon_state = "carbon_dioxide"
/obj/effect/turf_decal/atmos/nitrogen
- icon = 'icons/turf/decals.dmi'
icon_state = "nitrogen"
/obj/effect/turf_decal/atmos/air
- icon = 'icons/turf/decals.dmi'
icon_state = "air"
/obj/effect/turf_decal/atmos/nitrous_oxide
- icon = 'icons/turf/decals.dmi'
icon_state = "nitrous_oxide"
/obj/effect/turf_decal/atmos/plasma
- icon = 'icons/turf/decals.dmi'
icon_state = "plasma"
/obj/effect/turf_decal/atmos/mix
- icon = 'icons/turf/decals.dmi'
icon_state = "mix"
/**
@@ -339,169 +335,129 @@
// centered number decals
+
/obj/effect/turf_decal/number/one
- icon = 'icons/turf/decals.dmi'
icon_state = "1"
/obj/effect/turf_decal/number/two
- icon = 'icons/turf/decals.dmi'
icon_state = "2"
/obj/effect/turf_decal/number/three
- icon = 'icons/turf/decals.dmi'
icon_state = "3"
/obj/effect/turf_decal/number/four
- icon = 'icons/turf/decals.dmi'
icon_state = "4"
/obj/effect/turf_decal/number/five
- icon = 'icons/turf/decals.dmi'
icon_state = "5"
/obj/effect/turf_decal/number/six
- icon = 'icons/turf/decals.dmi'
icon_state = "6"
/obj/effect/turf_decal/number/seven
- icon = 'icons/turf/decals.dmi'
icon_state = "7"
/obj/effect/turf_decal/number/eight
- icon = 'icons/turf/decals.dmi'
icon_state = "8"
/obj/effect/turf_decal/number/nine
- icon = 'icons/turf/decals.dmi'
icon_state = "9"
/obj/effect/turf_decal/number/zero
- icon = 'icons/turf/decals.dmi'
icon_state = "0"
// right-shifted number decals (1s digit)
/obj/effect/turf_decal/number/right_one
- icon = 'icons/turf/decals.dmi'
icon_state = "-1"
/obj/effect/turf_decal/number/right_two
- icon = 'icons/turf/decals.dmi'
icon_state = "-2"
/obj/effect/turf_decal/number/right_three
- icon = 'icons/turf/decals.dmi'
icon_state = "-3"
/obj/effect/turf_decal/number/right_four
- icon = 'icons/turf/decals.dmi'
icon_state = "-4"
/obj/effect/turf_decal/number/right_five
- icon = 'icons/turf/decals.dmi'
icon_state = "-5"
/obj/effect/turf_decal/number/right_six
- icon = 'icons/turf/decals.dmi'
icon_state = "-6"
/obj/effect/turf_decal/number/right_seven
- icon = 'icons/turf/decals.dmi'
icon_state = "-7"
/obj/effect/turf_decal/number/right_eight
- icon = 'icons/turf/decals.dmi'
icon_state = "-8"
/obj/effect/turf_decal/number/right_nine
- icon = 'icons/turf/decals.dmi'
icon_state = "-9"
/obj/effect/turf_decal/number/right_zero
- icon = 'icons/turf/decals.dmi'
icon_state = "-0"
// left-shifted number decals (10s digit)
/obj/effect/turf_decal/number/left_one
- icon = 'icons/turf/decals.dmi'
icon_state = "1-"
/obj/effect/turf_decal/number/left_two
- icon = 'icons/turf/decals.dmi'
icon_state = "2-"
/obj/effect/turf_decal/number/left_three
- icon = 'icons/turf/decals.dmi'
icon_state = "3-"
/obj/effect/turf_decal/number/left_four
- icon = 'icons/turf/decals.dmi'
icon_state = "4-"
/obj/effect/turf_decal/number/left_five
- icon = 'icons/turf/decals.dmi'
icon_state = "5-"
/obj/effect/turf_decal/number/left_six
- icon = 'icons/turf/decals.dmi'
icon_state = "6-"
/obj/effect/turf_decal/number/left_seven
- icon = 'icons/turf/decals.dmi'
icon_state = "7-"
/obj/effect/turf_decal/number/left_eight
- icon = 'icons/turf/decals.dmi'
icon_state = "8-"
/obj/effect/turf_decal/number/left_nine
- icon = 'icons/turf/decals.dmi'
icon_state = "9-"
/obj/effect/turf_decal/number/left_zero
- icon = 'icons/turf/decals.dmi'
icon_state = "0-"
/obj/effect/turf_decal/dept/hop
- icon = 'icons/turf/decals.dmi'
icon_state = "hop"
/obj/effect/turf_decal/dept/bar
- icon = 'icons/turf/decals.dmi'
icon_state = "bar"
/obj/effect/turf_decal/dept/cargo
- icon = 'icons/turf/decals.dmi'
icon_state = "cargo"
/obj/effect/turf_decal/dept/medical
- icon = 'icons/turf/decals.dmi'
icon_state = "med"
/obj/effect/turf_decal/dept/science
- icon = 'icons/turf/decals.dmi'
icon_state = "sci"
/obj/effect/turf_decal/dept/security
- icon = 'icons/turf/decals.dmi'
icon_state = "sec"
/obj/effect/turf_decal/dept/mining
- icon = 'icons/turf/decals.dmi'
icon_state = "mine"
/obj/effect/turf_decal/zoo
- icon = 'icons/turf/decals.dmi'
icon_state = "zoo"
/obj/effect/turf_decal/no
- icon = 'icons/turf/decals.dmi'
icon_state = "no"
/obj/effect/turf_decal/radiation
- icon = 'icons/turf/decals.dmi'
icon_state = "radiation"
/obj/effect/turf_decal/radiation/white
- icon = 'icons/turf/decals.dmi'
icon_state = "radiation-w"
diff --git a/code/game/objects/effects/decals/turfdecal/weather.dm b/code/game/objects/effects/decals/turfdecal/weather.dm
index 04dcf807314a..0c8284b53f8c 100644
--- a/code/game/objects/effects/decals/turfdecal/weather.dm
+++ b/code/game/objects/effects/decals/turfdecal/weather.dm
@@ -13,12 +13,10 @@
/obj/effect/turf_decal/weather/dirt
name = "dirt siding"
- icon = 'icons/turf/decals.dmi'
icon_state = "dirt_side"
/obj/effect/turf_decal/weather/dirt/corner
name = "corner"
- icon = 'icons/turf/decals.dmi'
icon_state = "dirt_side_corner"
/obj/effect/turf_decal/weather/sand
@@ -36,30 +34,24 @@
/obj/effect/turf_decal/weather/asteroid
name = "asteroid siding"
- icon = 'icons/turf/decals.dmi'
icon_state = "asteroid_side"
/obj/effect/turf_decal/weather/asteroid/corner
name = "corner"
- icon = 'icons/turf/decals.dmi'
icon_state = "asteroid_side_corner"
/obj/effect/turf_decal/weather/whitesands
name = "salted sand siding"
- icon = 'icons/turf/decals.dmi'
icon_state = "ws_side"
/obj/effect/turf_decal/weather/whitesands/corner
name = "corner"
- icon = 'icons/turf/decals.dmi'
icon_state = "ws_side_corner"
/obj/effect/turf_decal/weather/rock
name = "rock siding"
- icon = 'icons/turf/decals.dmi'
icon_state = "rock_side"
/obj/effect/turf_decal/weather/rock/corner
name = "corner"
- icon = 'icons/turf/decals.dmi'
icon_state = "rock_side_corner"
diff --git a/code/game/objects/effects/spawners/lootdrop.dm b/code/game/objects/effects/spawners/lootdrop.dm
index d763c46e84e9..08d1514f7bbe 100644
--- a/code/game/objects/effects/spawners/lootdrop.dm
+++ b/code/game/objects/effects/spawners/lootdrop.dm
@@ -468,12 +468,18 @@
/obj/structure/salvageable/destructive_analyzer
)
+/obj/effect/spawner/lootdrop/ripley
+ name = "25% mech 75% wreckage ripley spawner"
+ loot = list(/obj/mecha/working/ripley/mining = 1,
+ /obj/structure/mecha_wreckage/ripley = 5)
+ lootdoubles = FALSE
+
/obj/effect/spawner/lootdrop/salvage_50
name = "50% salvage spawner"
loot = list(
/obj/effect/spawner/lootdrop/maintenance = 13,
/obj/effect/spawner/lootdrop/salvage_machine = 12,
- /obj/effect/spawner/lootdrop/whiteship_cere_ripley = 12,
+ /obj/effect/spawner/lootdrop/ripley = 12,
/obj/structure/closet/crate/secure/loot = 13,
"" = 50
)
diff --git a/code/game/objects/items/bank_card.dm b/code/game/objects/items/bank_card.dm
new file mode 100644
index 000000000000..4a7f2f9d2f21
--- /dev/null
+++ b/code/game/objects/items/bank_card.dm
@@ -0,0 +1,160 @@
+/obj/item/card/bank
+ name = "cash card"
+ desc = "Managed by a bank outside the sector."
+ icon_state = "data_1"
+ var/mining_points = 0 //For redeeming at mining equipment vendors
+
+ var/registered_name = null // The name registered_name on the card
+ var/datum/bank_account/registered_account
+ var/obj/machinery/paystand/my_store
+
+/obj/item/card/bank/Destroy()
+ if (registered_account)
+ registered_account.bank_cards -= src
+ if (my_store && my_store.my_card == src)
+ my_store.my_card = null
+ return ..()
+
+/obj/item/card/bank/attackby(obj/item/W, mob/user, params)
+ if(istype(W, /obj/item/holochip))
+ insert_money(W, user)
+ return
+ else if(istype(W, /obj/item/spacecash/bundle))
+ insert_money(W, user, TRUE)
+ return
+ else if(istype(W, /obj/item/coin))
+ insert_money(W, user, TRUE)
+ return
+ else if(istype(W, /obj/item/storage/bag/money))
+ var/obj/item/storage/bag/money/money_bag = W
+ var/list/money_contained = money_bag.contents
+
+ var/money_added = mass_insert_money(money_contained, user)
+
+ if (money_added)
+ to_chat(user, "You stuff the contents into the card! They disappear in a puff of bluespace smoke, adding [money_added] worth of credits to the linked account.")
+ return
+ else
+ return ..()
+
+/obj/item/card/bank/proc/insert_money(obj/item/I, mob/user, physical_currency)
+ var/cash_money = I.get_item_credit_value()
+ if(!cash_money)
+ to_chat(user, "[I] doesn't seem to be worth anything!")
+ return
+
+ if(!registered_account)
+ to_chat(user, "[src] doesn't have a linked account to deposit [I] into!")
+ return
+
+ registered_account.adjust_money(cash_money)
+ SSblackbox.record_feedback("amount", "credits_inserted", cash_money)
+ log_econ("[cash_money] credits were inserted into [src] owned by [src.registered_name]")
+ if(physical_currency)
+ to_chat(user, "You stuff [I] into [src]. It disappears in a small puff of bluespace smoke, adding [cash_money] credits to the linked account.")
+ else
+ to_chat(user, "You insert [I] into [src], adding [cash_money] credits to the linked account.")
+
+ to_chat(user, "The linked account now reports a balance of [registered_account.account_balance] cr.")
+ qdel(I)
+
+/obj/item/card/bank/proc/mass_insert_money(list/money, mob/user)
+ if (!money || !money.len)
+ return FALSE
+
+ var/total = 0
+
+ for (var/obj/item/physical_money in money)
+ var/cash_money = physical_money.get_item_credit_value()
+
+ total += cash_money
+
+ registered_account.adjust_money(cash_money)
+ SSblackbox.record_feedback("amount", "credits_inserted", total)
+ log_econ("[total] credits were inserted into [src] owned by [src.registered_name]")
+ QDEL_LIST(money)
+
+ return total
+
+/obj/item/card/bank/proc/alt_click_can_use_id(mob/living/user)
+ if(!isliving(user))
+ return
+ if(!user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK))
+ return
+
+ return TRUE
+
+// Returns true if new account was set.
+/obj/item/card/bank/proc/set_new_account(mob/living/user)
+ . = FALSE
+ var/datum/bank_account/old_account = registered_account
+
+ var/new_bank_id = input(user, "Enter your account ID number.", "Account Reclamation", 111111) as num | null
+
+ if (isnull(new_bank_id))
+ return
+
+ if(!alt_click_can_use_id(user))
+ return
+ if(!new_bank_id || new_bank_id < 111111 || new_bank_id > 999999)
+ to_chat(user, "The account ID number needs to be between 111111 and 999999.")
+ return
+ if (registered_account && registered_account.account_id == new_bank_id)
+ to_chat(user, "The account ID was already assigned to this card.")
+ return
+
+ for(var/A in SSeconomy.bank_accounts)
+ var/datum/bank_account/B = A
+ if(B.account_id == new_bank_id)
+ if (old_account)
+ old_account.bank_cards -= src
+
+ B.bank_cards += src
+ registered_account = B
+ to_chat(user, "The provided account has been linked to this ID card.")
+
+ return TRUE
+
+ to_chat(user, "The account ID number provided is invalid.")
+ return
+
+/obj/item/card/bank/AltClick(mob/living/user)
+ if(!alt_click_can_use_id(user))
+ return
+
+ if(!registered_account)
+ set_new_account(user)
+ return
+
+ var/amount_to_remove = FLOOR(input(user, "How much do you want to withdraw? Current Balance: [registered_account.account_balance]", "Withdraw Funds", 5) as num|null, 1)
+
+ if(!amount_to_remove || amount_to_remove < 0)
+ return
+ if(!alt_click_can_use_id(user))
+ return
+ if(registered_account.adjust_money(-amount_to_remove))
+ var/obj/item/holochip/holochip = new (user.drop_location(), amount_to_remove)
+ user.put_in_hands(holochip)
+ to_chat(user, "You withdraw [amount_to_remove] credits into a holochip.")
+ SSblackbox.record_feedback("amount", "credits_removed", amount_to_remove)
+ log_econ("[amount_to_remove] credits were removed from [src] owned by [registered_account.account_holder]")
+ return
+ else
+ var/difference = amount_to_remove - registered_account.account_balance
+ registered_account.bank_card_talk("ERROR: The linked account requires [difference] more credit\s to perform that withdrawal.", TRUE)
+
+/obj/item/card/bank/examine(mob/user)
+ . = ..()
+ if(registered_account)
+ . += "The account linked to the ID belongs to '[registered_account.account_holder]' and reports a balance of [registered_account.account_balance] cr."
+ . += "The card indicates that the holder is [registered_account.holder_age] years old. [(registered_account.holder_age < AGE_MINOR) ? "There's a holographic stripe that reads 'MINOR: DO NOT SERVE ALCOHOL OR TOBACCO' along the bottom of the card." : ""]"
+ . += "Alt-Click the ID to pull money from the linked account in the form of holochips."
+ . += "You can insert credits into the linked account by pressing holochips, cash, or coins against the ID."
+ . += "If you lose this ID card, you can reclaim your account by Alt-Clicking a blank ID card while holding it and entering your account ID number."
+ else
+ . += "There is no registered account linked to this card. Alt-Click to add one."
+ if(mining_points)
+ . += "There's [mining_points] mining equipment redemption point\s loaded onto this card."
+
+/obj/item/card/bank/GetBankCard()
+ return src
diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm
index 110121dc08e2..ae7aa27cdc3f 100644
--- a/code/game/objects/items/cards_ids.dm
+++ b/code/game/objects/items/cards_ids.dm
@@ -149,14 +149,12 @@
slot_flags = ITEM_SLOT_ID
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100)
resistance_flags = FIRE_PROOF | ACID_PROOF
- var/mining_points = 0 //For redeeming at mining equipment vendors
var/list/access = list()
var/list/ship_access = list()
var/registered_name = null // The name registered_name on the card
var/assignment = null
var/access_txt // mapping aid
- var/datum/bank_account/registered_account
- var/obj/machinery/paystand/my_store
+ //var/datum/bank_account/registered_account
var/uses_overlays = TRUE
var/icon/cached_flat_icon
var/registered_age = 18 // default age for ss13 players
@@ -171,13 +169,6 @@
update_appearance()
RegisterSignal(src, COMSIG_ATOM_UPDATED_ICON, PROC_REF(update_in_wallet))
-/obj/item/card/id/Destroy()
- if (registered_account)
- registered_account.bank_cards -= src
- if (my_store && my_store.my_card == src)
- my_store.my_card = null
- return ..()
-
/obj/item/card/id/attack_self(mob/user)
if(Adjacent(user))
var/id_message = "\the [initial(name)] "
@@ -201,173 +192,29 @@
if(NAMEOF(src, assignment),NAMEOF(src, registered_name),NAMEOF(src, registered_age))
update_label()
-/obj/item/card/id/attackby(obj/item/W, mob/user, params)
- if(istype(W, /obj/item/holochip))
- insert_money(W, user)
- return
- else if(istype(W, /obj/item/spacecash/bundle))
- insert_money(W, user, TRUE)
- return
- else if(istype(W, /obj/item/coin))
- insert_money(W, user, TRUE)
- return
- else if(istype(W, /obj/item/storage/bag/money))
- var/obj/item/storage/bag/money/money_bag = W
- var/list/money_contained = money_bag.contents
-
- var/money_added = mass_insert_money(money_contained, user)
-
- if (money_added)
- to_chat(user, "You stuff the contents into the card! They disappear in a puff of bluespace smoke, adding [money_added] worth of credits to the linked account.")
- return
- else
- return ..()
-
-/obj/item/card/id/proc/insert_money(obj/item/I, mob/user, physical_currency)
- var/cash_money = I.get_item_credit_value()
- if(!cash_money)
- to_chat(user, "[I] doesn't seem to be worth anything!")
- return
-
- if(!registered_account)
- to_chat(user, "[src] doesn't have a linked account to deposit [I] into!")
- return
-
- registered_account.adjust_money(cash_money)
- SSblackbox.record_feedback("amount", "credits_inserted", cash_money)
- log_econ("[cash_money] credits were inserted into [src] owned by [src.registered_name]")
- if(physical_currency)
- to_chat(user, "You stuff [I] into [src]. It disappears in a small puff of bluespace smoke, adding [cash_money] credits to the linked account.")
- else
- to_chat(user, "You insert [I] into [src], adding [cash_money] credits to the linked account.")
-
- to_chat(user, "The linked account now reports a balance of [registered_account.account_balance] cr.")
- qdel(I)
-
-/obj/item/card/id/proc/mass_insert_money(list/money, mob/user)
- if (!money || !money.len)
- return FALSE
-
- var/total = 0
-
- for (var/obj/item/physical_money in money)
- var/cash_money = physical_money.get_item_credit_value()
-
- total += cash_money
-
- registered_account.adjust_money(cash_money)
- SSblackbox.record_feedback("amount", "credits_inserted", total)
- log_econ("[total] credits were inserted into [src] owned by [src.registered_name]")
- QDEL_LIST(money)
-
- return total
-
-/obj/item/card/id/proc/alt_click_can_use_id(mob/living/user)
- if(!isliving(user))
- return
- if(!user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK))
- return
-
- return TRUE
-
-// Returns true if new account was set.
-/obj/item/card/id/proc/set_new_account(mob/living/user)
- . = FALSE
- var/datum/bank_account/old_account = registered_account
-
- var/new_bank_id = input(user, "Enter your account ID number.", "Account Reclamation", 111111) as num | null
-
- if (isnull(new_bank_id))
- return
-
- if(!alt_click_can_use_id(user))
- return
- if(!new_bank_id || new_bank_id < 111111 || new_bank_id > 999999)
- to_chat(user, "The account ID number needs to be between 111111 and 999999.")
- return
- if (registered_account && registered_account.account_id == new_bank_id)
- to_chat(user, "The account ID was already assigned to this card.")
- return
-
- for(var/A in SSeconomy.bank_accounts)
- var/datum/bank_account/B = A
- if(B.account_id == new_bank_id)
- if (old_account)
- old_account.bank_cards -= src
-
- B.bank_cards += src
- registered_account = B
- to_chat(user, "The provided account has been linked to this ID card.")
-
- return TRUE
-
- to_chat(user, "The account ID number provided is invalid.")
- return
-
-/obj/item/card/id/AltClick(mob/living/user)
- if(!alt_click_can_use_id(user))
- return
-
- if(!registered_account)
- set_new_account(user)
- return
-
- var/amount_to_remove = FLOOR(input(user, "How much do you want to withdraw? Current Balance: [registered_account.account_balance]", "Withdraw Funds", 5) as num|null, 1)
-
- if(!amount_to_remove || amount_to_remove < 0)
- return
- if(!alt_click_can_use_id(user))
- return
- if(registered_account.adjust_money(-amount_to_remove))
- var/obj/item/holochip/holochip = new (user.drop_location(), amount_to_remove)
- user.put_in_hands(holochip)
- to_chat(user, "You withdraw [amount_to_remove] credits into a holochip.")
- SSblackbox.record_feedback("amount", "credits_removed", amount_to_remove)
- log_econ("[amount_to_remove] credits were removed from [src] owned by [src.registered_name]")
- return
- else
- var/difference = amount_to_remove - registered_account.account_balance
- registered_account.bank_card_talk("ERROR: The linked account requires [difference] more credit\s to perform that withdrawal.", TRUE)
-
/obj/item/card/id/examine(mob/user)
. = ..()
- . += "There's more information below, you can look again to take a closer look..."
-
-/obj/item/card/id/examine_more(mob/user)
- var/list/msg = list("You examine [src] closer, and note the following...")
-
+ . += "
CARD INFO:"
if(registered_name)
- msg += "NAME:"
- msg += "[registered_name]"
+ . += "NAME:"
+ . += "[registered_name]"
if(registered_age)
- msg += "AGE:"
- msg += "[registered_age] years old [(registered_age < AGE_MINOR) ? "There's a holographic stripe that reads 'MINOR: DO NOT SERVE ALCOHOL OR TOBACCO' along the bottom of the card." : ""]"
+ . += "AGE:"
+ . += "[registered_age] years old [(registered_age < AGE_MINOR) ? "There's a holographic stripe that reads 'MINOR: DO NOT SERVE ALCOHOL OR TOBACCO' along the bottom of the card." : ""]"
if(length(ship_access))
- msg += "SHIP ACCESS:"
+ . += "SHIP ACCESS:"
var/list/ship_factions = list()
for(var/datum/overmap/ship/controlled/ship in ship_access)
var/faction = ship.get_faction()
if(!(faction in ship_factions))
ship_factions += faction
- msg += "[ship_factions.Join(", ")]"
+ . += "[ship_factions.Join(", ")]"
var/list/ship_names = list()
for(var/datum/overmap/ship/controlled/ship in ship_access)
ship_names += ship.name
- msg += "[ship_names.Join(", ")]"
-
- if(registered_account)
- msg += "ACCOUNT:"
- msg += "LINKED ACCOUNT HOLDER: '[registered_account.account_holder]'"
- msg += "BALANCE: [registered_account.account_balance] cr."
- msg += "Alt-click the ID to pull money from the account in the form of holochips."
- msg += "You can insert credits into the account by pressing holochips, cash, or coins against the ID."
- if(registered_account.account_holder == user.real_name)
- msg += "If you lose this ID card, you can reclaim your account by Alt-click a blank ID card and entering your account ID number."
- else
- msg += "There is no registered account. Alt-click to add one."
- return msg
+ . += "[ship_names.Join(", ")]"
/obj/item/card/id/GetAccess()
return access
@@ -483,7 +330,7 @@ update_label()
else
return ..()
- var/popup_input = alert(user, "Choose Action", "Agent ID", "Show", "Forge/Reset", "Change Account ID")
+ var/popup_input = alert(user, "Choose Action", "Agent ID", "Show", "Forge/Reset")
if(user.incapacitated())
return
if(popup_input == "Forge/Reset" && !forged)
@@ -513,17 +360,6 @@ update_label()
to_chat(user, "You successfully forge the ID card.")
log_game("[key_name(user)] has forged \the [initial(name)] with name \"[registered_name]\" and occupation \"[assignment]\".")
- // First time use automatically sets the account id to the user.
- if (first_use && !registered_account)
- if(ishuman(user))
- var/mob/living/carbon/human/accountowner = user
-
- for(var/bank_account in SSeconomy.bank_accounts)
- var/datum/bank_account/account = bank_account
- if(account.account_id == accountowner.account_id)
- account.bank_cards += src
- registered_account = account
- to_chat(user, "Your account number has been automatically assigned.")
return
else if (popup_input == "Forge/Reset" && forged)
registered_name = initial(registered_name)
@@ -535,9 +371,6 @@ update_label()
forged = FALSE
to_chat(user, "You successfully reset the ID card.")
return
- else if (popup_input == "Change Account ID")
- set_new_account(user)
- return
return ..()
/obj/item/card/id/syndicate/anyone
@@ -552,7 +385,6 @@ update_label()
icon_state = "syndie"
access = list(ACCESS_SYNDICATE)
uses_overlays = FALSE
- registered_age = null
/obj/item/card/id/syndicate_command/crew_id
assignment = "Operative"
@@ -740,11 +572,6 @@ update_label()
registered_name = "Prisoner #13-007"
icon_state = "prisoner_007"
-/obj/item/card/id/mining
- name = "mining ID"
- access = list(ACCESS_MINING, ACCESS_MINING_STATION, ACCESS_MECH_MINING, ACCESS_MAILSORTING, ACCESS_MINERAL_STOREROOM)
- custom_price = 250
-
/obj/item/card/id/away
name = "\proper a perfectly generic identification card"
desc = "A perfectly generic identification card. Looks like it could use some flavor."
diff --git a/code/game/objects/items/circuitboards/machine_circuitboards.dm b/code/game/objects/items/circuitboards/machine_circuitboards.dm
index 4fbe06343ae5..0a3a6f14d097 100644
--- a/code/game/objects/items/circuitboards/machine_circuitboards.dm
+++ b/code/game/objects/items/circuitboards/machine_circuitboards.dm
@@ -1442,6 +1442,15 @@
/obj/item/stack/cable_coil = 5,
/obj/item/stock_parts/micro_laser = 1)
+/obj/item/circuitboard/machine/shuttle/engine/fire
+ name = "Combustion Thruster (Machine Board)"
+ build_path = /obj/machinery/power/shuttle/engine/fire
+ req_components = list(
+ /obj/item/stock_parts/micro_laser = 1,
+ /obj/item/assembly/igniter = 1,
+ /obj/item/stack/sheet/plasteel = 2
+ )
+
/obj/item/circuitboard/machine/shuttle/engine/electric
name = "Ion Thruster (Machine Board)"
build_path = /obj/machinery/power/shuttle/engine/electric
@@ -1497,6 +1506,26 @@
. = ..()
. += "It is set to layer [pipe_layer]."
+/obj/item/circuitboard/machine/shuttle/fire_heater
+ name = "Combustion Engine Heater (Machine Board)"
+ desc = "You can use mulitool to switch pipe layers"
+ var/pipe_layer = PIPING_LAYER_DEFAULT
+ build_path = /obj/machinery/atmospherics/components/unary/shuttle/fire_heater
+ req_components = list(
+ /obj/item/stock_parts/micro_laser = 1,
+ /obj/item/stock_parts/matter_bin = 1
+ )
+
+/obj/item/circuitboard/machine/shuttle/fire_heater/attackby(obj/item/I, mob/user, params)
+ if(I.tool_behaviour == TOOL_MULTITOOL)
+ pipe_layer = (pipe_layer >= PIPING_LAYER_MAX) ? PIPING_LAYER_MIN : (pipe_layer + 1)
+ to_chat(user, "You change the circuitboard to layer [pipe_layer].")
+ return
+
+/obj/item/circuitboard/machine/shuttle/fire_heater/examine()
+ . = ..()
+ . += "It is set to layer [pipe_layer]."
+
/obj/item/circuitboard/machine/shuttle/smes
name = "Electric Engine Precharger (Machine Board)"
build_path = /obj/machinery/power/smes/shuttle
diff --git a/code/game/objects/items/decal_painter.dm b/code/game/objects/items/decal_painter.dm
index e6043d584a84..7b12190ba581 100644
--- a/code/game/objects/items/decal_painter.dm
+++ b/code/game/objects/items/decal_painter.dm
@@ -201,9 +201,9 @@
to_chat(user, "\The [src] can only be used on flooring.")
return
if(color_disallowed.Find(decal_state))
- F.AddElement(/datum/element/decal, 'icons/turf/decals.dmi', decal_state, decal_dir, FALSE, color, null, null, alpha)
+ F.AddElement(/datum/element/decal, 'icons/turf/decals/decals.dmi', decal_state, decal_dir, FALSE, color, null, null, alpha)
else
- F.AddElement(/datum/element/decal, 'icons/turf/decals.dmi', decal_state, decal_dir, FALSE, decal_color, null, null, alpha)
+ F.AddElement(/datum/element/decal, 'icons/turf/decals/decals.dmi', decal_state, decal_dir, FALSE, decal_color, null, null, alpha)
playsound(src.loc, 'sound/effects/spray2.ogg', 50, TRUE)
/obj/item/decal_painter/attack_self(mob/user)
@@ -215,7 +215,7 @@
/obj/item/decal_painter/interact(mob/user as mob) //TODO: Make TGUI for this because ouch
if(!decal_icon)
- decal_icon = icon('icons/turf/decals.dmi', decal_state, decal_dir)
+ decal_icon = icon('icons/turf/decals/decals.dmi', decal_state, decal_dir)
user << browse_rsc(decal_icon, "floor.png")
var/dat = {"
@@ -288,7 +288,7 @@
decal_color = chosen_colour
- decal_icon = icon('icons/turf/decals.dmi', decal_state, decal_dir)
+ decal_icon = icon('icons/turf/decals/decals.dmi', decal_state, decal_dir)
if(usr)
attack_self(usr)
diff --git a/code/game/objects/items/granters.dm b/code/game/objects/items/granters.dm
index f3cdfb068944..50da920b06f1 100644
--- a/code/game/objects/items/granters.dm
+++ b/code/game/objects/items/granters.dm
@@ -12,7 +12,7 @@
/obj/item/book/granter/proc/turn_page(mob/user)
playsound(user, pick('sound/effects/pageturn1.ogg','sound/effects/pageturn2.ogg','sound/effects/pageturn3.ogg'), 30, TRUE)
- if(do_after(user, 50, TRUE, src))
+ if(do_after(user, 50, src, hidden = TRUE))
if(remarks.len)
to_chat(user, "[pick(remarks)]")
else
@@ -57,7 +57,7 @@
on_reading_stopped()
reading = FALSE
return
- if(do_after(user, 50, TRUE, src))
+ if(do_after(user, 50, src, hidden = TRUE))
on_reading_finished(user)
reading = FALSE
return TRUE
diff --git a/code/game/objects/items/robot/robot_items.dm b/code/game/objects/items/robot/robot_items.dm
index a0e5865e1528..243b84b7e1ec 100644
--- a/code/game/objects/items/robot/robot_items.dm
+++ b/code/game/objects/items/robot/robot_items.dm
@@ -176,7 +176,7 @@
return
to_chat(user, "You connect to [M]'s power line...")
- while(do_after(user, 15, target = M, progress = 0))
+ while(do_after(user, 15, target = M, progress = TRUE))
if(!user || !user.cell || mode != "draw")
return
@@ -210,7 +210,7 @@
to_chat(user, "You connect to [target]'s power port...")
- while(do_after(user, 15, target = target, progress = 0))
+ while(do_after(user, 15, target = target, progress = TRUE))
if(!user || !user.cell || mode != "draw")
return
@@ -248,7 +248,7 @@
to_chat(user, "You connect to [target]'s power port...")
- while(do_after(user, 15, target = target, progress = 0))
+ while(do_after(user, 15, target = target, progress = TRUE))
if(!user || !user.cell || mode != "charge")
return
diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm
index 802eeee2d45f..2904745f25aa 100644
--- a/code/game/objects/items/storage/belt.dm
+++ b/code/game/objects/items/storage/belt.dm
@@ -524,13 +524,12 @@
/obj/item/reagent_containers/food/snacks/rofflewaffles,
/obj/item/reagent_containers/food/snacks/donkpocket,
/obj/item/reagent_containers/food/drinks/soda_cans/cola,
- /obj/item/reagent_containers/food/drinks/soda_cans/space_mountain_wind,
- /obj/item/reagent_containers/food/drinks/soda_cans/dr_gibb,
- /obj/item/reagent_containers/food/drinks/soda_cans/starkist,
+ /obj/item/reagent_containers/food/drinks/soda_cans/comet_trail,
+ /obj/item/reagent_containers/food/drinks/soda_cans/tadrixx,
+ /obj/item/reagent_containers/food/drinks/soda_cans/lunapunch,
/obj/item/reagent_containers/food/drinks/soda_cans/space_up,
- /obj/item/reagent_containers/food/drinks/soda_cans/pwr_game,
- /obj/item/reagent_containers/food/drinks/soda_cans/lemon_lime,
- /obj/item/reagent_containers/food/drinks/drinkingglass/filled/nuka_cola
+ /obj/item/reagent_containers/food/drinks/soda_cans/pacfuel,
+ /obj/item/reagent_containers/food/drinks/soda_cans/orange_soda
))
new rig_snacks(src)
diff --git a/code/game/objects/items/storage/guncases.dm b/code/game/objects/items/storage/guncases.dm
new file mode 100644
index 000000000000..d3b0c468b4b4
--- /dev/null
+++ b/code/game/objects/items/storage/guncases.dm
@@ -0,0 +1,200 @@
+/obj/item/storage/guncase
+ name = "gun case"
+ desc = "A large box designed for holding firearms and magazines safely."
+ icon = 'icons/obj/guncase_48x32.dmi'
+ icon_state = "riflecase"
+ item_state = "infiltrator_case"
+ force = 12
+ throwforce = 12
+ throw_speed = 2
+ throw_range = 7
+ w_class = WEIGHT_CLASS_BULKY
+ attack_verb = list("robusted")
+ hitsound = 'sound/weapons/smash.ogg'
+ drop_sound = 'sound/items/handling/toolbox_drop.ogg'
+ pickup_sound = 'sound/items/handling/toolbox_pickup.ogg'
+
+
+/obj/item/storage/guncase/ComponentInitialize()
+ . = ..()
+ var/datum/component/storage/STR = GetComponent(/datum/component/storage)
+ STR.max_items = 10
+ STR.max_w_class = WEIGHT_CLASS_BULKY
+ STR.set_holdable(list(
+ /obj/item/gun,
+ /obj/item/ammo_box,
+ /obj/item/stock_parts/cell/gun
+ ))
+
+/obj/item/storage/guncase/winchester
+/obj/item/storage/guncase/winchester/PopulateContents()
+ new /obj/item/gun/ballistic/shotgun/flamingarrow/no_mag(src)
+
+/obj/item/storage/guncase/skm
+/obj/item/storage/guncase/skm/PopulateContents()
+ new /obj/item/gun/ballistic/automatic/assault/skm/no_mag(src)
+ new /obj/item/ammo_box/magazine/skm_762_40/empty(src)
+ new /obj/item/ammo_box/magazine/skm_762_40/empty(src)
+
+/obj/item/storage/guncase/p16
+/obj/item/storage/guncase/p16/PopulateContents()
+ new /obj/item/gun/ballistic/automatic/assault/p16/no_mag(src)
+ new /obj/item/ammo_box/magazine/p16/empty(src)
+ new /obj/item/ammo_box/magazine/p16/empty(src)
+
+/obj/item/storage/guncase/beacon
+/obj/item/storage/guncase/beacon/PopulateContents()
+ new /obj/item/gun/ballistic/shotgun/doublebarrel/beacon(src)
+
+/obj/item/storage/guncase/scout
+/obj/item/storage/guncase/scout/PopulateContents()
+ new /obj/item/gun/ballistic/rifle/scout/no_mag(src)
+ new /obj/item/ammo_box/a300/empty(src)
+ new /obj/item/ammo_box/a300/empty(src)
+
+/obj/item/storage/guncase/cobra
+/obj/item/storage/guncase/cobra/PopulateContents()
+ new /obj/item/gun/ballistic/automatic/smg/c20r/cobra/no_mag(src)
+ new /obj/item/ammo_box/magazine/smgm45/empty(src)
+ new /obj/item/ammo_box/magazine/smgm45/empty(src)
+
+
+/obj/item/storage/guncase/hellfire
+/obj/item/storage/guncase/hellfire/PopulateContents()
+ new /obj/item/gun/ballistic/shotgun/hellfire/no_mag(src)
+
+/obj/item/storage/guncase/doublebarrel
+/obj/item/storage/guncase/doublebarrel/PopulateContents()
+ new /obj/item/gun/ballistic/shotgun/doublebarrel/no_mag(src)
+
+/obj/item/storage/guncase/brimstone
+/obj/item/storage/guncase/brimstone/PopulateContents()
+ new /obj/item/gun/ballistic/shotgun/brimstone/no_mag(src)
+
+/obj/item/storage/guncase/illestren
+/obj/item/storage/guncase/illestren/PopulateContents()
+ new /obj/item/gun/ballistic/rifle/illestren/empty(src)
+ new /obj/item/ammo_box/magazine/illestren_a850r/empty(src)
+ new /obj/item/ammo_box/magazine/illestren_a850r/empty(src)
+
+/obj/item/storage/guncase/wt550
+/obj/item/storage/guncase/wt550/PopulateContents()
+ new /obj/item/gun/ballistic/automatic/smg/wt550(src)
+ new /obj/item/ammo_box/magazine/wt550m9/empty(src)
+ new /obj/item/ammo_box/magazine/wt550m9/empty(src)
+
+/obj/item/storage/pistolcase
+ name = "pistol case"
+ desc = "A large box designed for holding pistols and magazines safely."
+ icon = 'icons/obj/guncase.dmi'
+ icon_state = "pistolcase"
+ item_state = "infiltrator_case"
+ force = 12
+ throwforce = 12
+ throw_speed = 2
+ w_class = WEIGHT_CLASS_BULKY
+ attack_verb = list("robusted")
+ hitsound = 'sound/weapons/smash.ogg'
+ drop_sound = 'sound/items/handling/toolbox_drop.ogg'
+ pickup_sound = 'sound/items/handling/toolbox_pickup.ogg'
+
+/obj/item/storage/pistolcase/ComponentInitialize()
+ . = ..()
+ var/datum/component/storage/STR = GetComponent(/datum/component/storage)
+ STR.max_items = 8
+ STR.max_w_class = WEIGHT_CLASS_NORMAL
+ STR.set_holdable(list(
+ /obj/item/gun,
+ /obj/item/ammo_box/,
+ /obj/item/stock_parts/cell/gun
+ ))
+
+/obj/item/storage/pistolcase/modelh
+/obj/item/storage/pistolcase/modelh/PopulateContents()
+ new /obj/item/gun/ballistic/automatic/powered/gauss/modelh/no_mag(src)
+ new /obj/item/ammo_box/magazine/modelh/empty(src)
+ new /obj/item/ammo_box/magazine/modelh/empty(src)
+
+/obj/item/storage/pistolcase/stechkin
+/obj/item/storage/pistolcase/stechkin/PopulateContents()
+ new /obj/item/gun/ballistic/automatic/pistol/no_mag(src)
+ new /obj/item/ammo_box/magazine/m10mm/empty(src)
+ new /obj/item/ammo_box/magazine/m10mm/empty(src)
+
+/obj/item/storage/pistolcase/candor
+/obj/item/storage/pistolcase/candor/PopulateContents()
+ new /obj/item/gun/ballistic/automatic/pistol/candor/no_mag(src)
+ new /obj/item/ammo_box/magazine/m45/empty(src)
+ new /obj/item/ammo_box/magazine/m45/empty(src)
+
+/obj/item/storage/pistolcase/detective
+/obj/item/storage/pistolcase/detective/PopulateContents()
+ new /obj/item/gun/ballistic/revolver/detective/no_mag(src)
+ new /obj/item/ammo_box/c38/empty(src)
+ new /obj/item/ammo_box/c38/empty(src)
+
+/obj/item/storage/pistolcase/shadow
+/obj/item/storage/pistolcase/shadow/PopulateContents()
+ new /obj/item/gun/ballistic/revolver/shadow/no_mag(src)
+
+/obj/item/storage/pistolcase/commander
+/obj/item/storage/pistolcase/commander/PopulateContents()
+ new /obj/item/gun/ballistic/automatic/pistol/commander/no_mag(src)
+ new /obj/item/ammo_box/magazine/co9mm/empty(src)
+ new /obj/item/ammo_box/magazine/co9mm/empty(src)
+
+/obj/item/storage/pistolcase/firebrand
+/obj/item/storage/pistolcase/firebrand/PopulateContents()
+ new /obj/item/gun/ballistic/revolver/firebrand/no_mag(src)
+
+/obj/item/storage/pistolcase/derringer
+/obj/item/storage/pistolcase/derringer/PopulateContents()
+ new /obj/item/gun/ballistic/derringer/no_mag(src)
+
+/obj/item/storage/pistolcase/a357
+/obj/item/storage/pistolcase/a357/PopulateContents()
+ new /obj/item/gun/ballistic/revolver/no_mag(src)
+ new /obj/item/ammo_box/a357/empty(src)
+ new /obj/item/ammo_box/a357/empty(src)
+
+/obj/item/storage/pistolcase/montagne
+/obj/item/storage/pistolcase/montagne/PopulateContents()
+ new /obj/item/gun/ballistic/revolver/montagne/no_mag(src)
+ new /obj/item/ammo_box/a44roum_speedloader/empty(src)
+ new /obj/item/ammo_box/a44roum_speedloader/empty(src)
+
+
+/obj/item/storage/pistolcase/disposable
+/obj/item/storage/pistolcase/disposable/PopulateContents()
+ new /obj/item/gun/ballistic/automatic/pistol/disposable(src)
+ new /obj/item/gun/ballistic/automatic/pistol/disposable(src)
+
+/obj/item/storage/pistolcase/laser
+/obj/item/storage/pistolcase/laser/PopulateContents()
+ new /obj/item/gun/energy/laser/empty_cell(src)
+ new /obj/item/stock_parts/cell/gun(src)
+
+/obj/item/storage/pistolcase/egun
+/obj/item/storage/pistolcase/egun/PopulateContents()
+ new /obj/item/gun/energy/laser/empty_cell(src)
+ new /obj/item/stock_parts/cell/gun(src)
+
+/obj/item/storage/pistolcase/kalixpistol
+/obj/item/storage/pistolcase/kalixpistol/PopulateContents()
+ new /obj/item/gun/energy/kalix/pistol/empty_cell(src)
+ new /obj/item/stock_parts/cell/gun/kalix(src)
+
+/obj/item/storage/guncase/kalixrifle
+/obj/item/storage/guncase/kalixrifle/PopulateContents()
+ new /obj/item/gun/energy/kalix/empty_cell(src)
+ new /obj/item/stock_parts/cell/gun/kalix(src)
+
+/obj/item/storage/pistolcase/miniegun
+/obj/item/storage/pistolcase/miniegun/PopulateContents()
+ new /obj/item/gun/energy/e_gun/empty_cell(src)
+ new /obj/item/stock_parts/cell/gun/mini(src)
+
+/obj/item/storage/pistolcase/iongun
+/obj/item/storage/pistolcase/iongun/PopulateContents()
+ new /obj/item/gun/energy/ionrifle/empty_cell(src)
+ new /obj/item/stock_parts/cell/gun(src)
diff --git a/code/game/objects/items/storage/wallets.dm b/code/game/objects/items/storage/wallets.dm
index 91f47f56cdd5..c031e998cdcc 100644
--- a/code/game/objects/items/storage/wallets.dm
+++ b/code/game/objects/items/storage/wallets.dm
@@ -117,6 +117,11 @@
else
return ..()
+/obj/item/storage/wallet/GetBankCard()
+ for(var/obj/item/card/I in contents)
+ if(istype(I, /obj/item/card/bank))
+ return I
+
/obj/item/storage/wallet/random
icon_state = "random_wallet"
diff --git a/code/game/objects/items/survery_handheld.dm b/code/game/objects/items/survery_handheld.dm
index 547bdc150237..a10097031485 100644
--- a/code/game/objects/items/survery_handheld.dm
+++ b/code/game/objects/items/survery_handheld.dm
@@ -51,7 +51,7 @@
src_turf.visible_message("Warning: unable to locate valuable information in current sector.")
break
- if(!do_after(user, list(src), survey_delay / penalty))
+ if(!do_after(user, survey_delay / penalty, src))
flick(icon_state + "-corrupted", src)
playsound(src, 'sound/machines/buzz-sigh.ogg', 20)
src_turf.visible_message("Warning: results corrupted. Please try again.")
diff --git a/code/game/objects/structures/crates_lockers/crates/secure.dm b/code/game/objects/structures/crates_lockers/crates/secure.dm
index cdd98f22196f..77d75164b185 100644
--- a/code/game/objects/structures/crates_lockers/crates/secure.dm
+++ b/code/game/objects/structures/crates_lockers/crates/secure.dm
@@ -83,10 +83,10 @@
/obj/structure/closet/crate/secure/owned/togglelock(mob/living/user, silent)
if(privacy_lock)
if(!broken)
- var/obj/item/card/id/id_card = user.get_idcard(TRUE)
- if(id_card)
- if(id_card.registered_account)
- if(id_card.registered_account == buyer_account)
+ var/obj/item/card/bank/bank_card = user.get_bankcard()
+ if(bank_card)
+ if(bank_card.registered_account)
+ if(bank_card.registered_account == buyer_account)
if(iscarbon(user))
add_fingerprint(user)
locked = !locked
diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm
index 37c816335977..4e95b5558842 100644
--- a/code/game/objects/structures/displaycase.dm
+++ b/code/game/objects/structures/displaycase.dm
@@ -422,7 +422,7 @@
. = ..()
if(.)
return
- var/obj/item/card/id/potential_acc = usr.get_idcard(hand_first = TRUE)
+ var/obj/item/card/bank/potential_acc = usr.get_bankcard()
switch(action)
if("Buy")
if(!showpiece)
@@ -497,9 +497,9 @@
return TRUE
. = TRUE
/obj/structure/displaycase/forsale/attackby(obj/item/I, mob/living/user, params)
- if(isidcard(I))
+ if(isbankcard(I))
//Card Registration
- var/obj/item/card/id/potential_acc = I
+ var/obj/item/card/bank/potential_acc = I
if(!potential_acc.registered_account)
to_chat(user, "This ID card has no account registered!")
return
diff --git a/code/game/objects/structures/guncase.dm b/code/game/objects/structures/guncase.dm
index cf0d6957e69c..ddcb59466deb 100644
--- a/code/game/objects/structures/guncase.dm
+++ b/code/game/objects/structures/guncase.dm
@@ -1,5 +1,5 @@
//GUNCASES//
-/obj/structure/guncase
+/obj/structure/guncloset
name = "gun locker"
desc = "A locker that holds guns."
icon = 'icons/obj/closet.dmi'
@@ -12,7 +12,7 @@
var/open = TRUE
var/capacity = 4
-/obj/structure/guncase/Initialize(mapload)
+/obj/structure/guncloset/Initialize(mapload)
. = ..()
if(mapload)
for(var/obj/item/I in loc.contents)
@@ -22,7 +22,7 @@
break
update_appearance()
-/obj/structure/guncase/update_overlays()
+/obj/structure/guncloset/update_overlays()
. = ..()
if(case_type && LAZYLEN(contents))
var/mutable_appearance/gun_overlay = mutable_appearance(icon, case_type)
@@ -31,7 +31,7 @@
. += new /mutable_appearance(gun_overlay)
. += "[icon_state]_[open ? "open" : "door"]"
-/obj/structure/guncase/attackby(obj/item/I, mob/user, params)
+/obj/structure/guncloset/attackby(obj/item/I, mob/user, params)
if(iscyborg(user) || isalien(user))
return
if(istype(I, gun_category) && open)
@@ -50,7 +50,7 @@
else
return ..()
-/obj/structure/guncase/attack_hand(mob/user)
+/obj/structure/guncloset/attack_hand(mob/user)
. = ..()
if(.)
return
@@ -68,7 +68,7 @@
* Arguments:
* * user The mob to which we are showing the radial menu
*/
-/obj/structure/guncase/proc/show_menu(mob/user)
+/obj/structure/guncloset/proc/show_menu(mob/user)
if(!LAZYLEN(contents))
return
@@ -100,7 +100,7 @@
* Arguments:
* * user The mob interacting with a menu
*/
-/obj/structure/guncase/proc/check_menu(mob/living/carbon/human/user)
+/obj/structure/guncloset/proc/check_menu(mob/living/carbon/human/user)
if(!open)
return FALSE
if(!istype(user))
@@ -109,10 +109,10 @@
return FALSE
return TRUE
-/obj/structure/guncase/handle_atom_del(atom/A)
+/obj/structure/guncloset/handle_atom_del(atom/A)
update_appearance()
-/obj/structure/guncase/contents_explosion(severity, target)
+/obj/structure/guncloset/contents_explosion(severity, target)
for(var/atom/A in contents)
switch(severity)
if(EXPLODE_DEVASTATE)
@@ -122,13 +122,13 @@
if(EXPLODE_LIGHT)
SSexplosions.lowobj += A
-/obj/structure/guncase/shotgun
+/obj/structure/guncloset/shotgun
name = "shotgun locker"
desc = "A locker that holds shotguns."
case_type = "shotgun"
gun_category = /obj/item/gun/ballistic/shotgun
-/obj/structure/guncase/ecase
+/obj/structure/guncloset/ecase
name = "energy gun locker"
desc = "A locker that holds energy guns."
icon_state = "ecase"
diff --git a/code/game/objects/structures/icemoon/cave_entrance.dm b/code/game/objects/structures/icemoon/cave_entrance.dm
index 91085fe9f104..93cdfcaa9a23 100644
--- a/code/game/objects/structures/icemoon/cave_entrance.dm
+++ b/code/game/objects/structures/icemoon/cave_entrance.dm
@@ -797,9 +797,9 @@ GLOBAL_LIST_INIT(ore_probability, list(
visible_message("You hear a geiger counter click and smell ash.")
playsound(loc,'sound/items/radiostatic.ogg', 100, FALSE, 50, TRUE, TRUE)
if(prob(50))
- new /obj/item/reagent_containers/food/drinks/drinkingglass/filled/nuka_cola(loc)
- new /obj/item/reagent_containers/food/drinks/drinkingglass/filled/nuka_cola(loc)
- new /obj/item/reagent_containers/food/drinks/drinkingglass/filled/nuka_cola(loc)
+ new /obj/item/reagent_containers/food/drinks/drinkingglass/filled/cola(loc)
+ new /obj/item/reagent_containers/food/drinks/drinkingglass/filled/cola(loc)
+ new /obj/item/reagent_containers/food/drinks/drinkingglass/filled/cola(loc)
new /mob/living/simple_animal/hostile/cockroach/glockroach(loc)
if(prob(50))
new /obj/structure/radioactive/stack(loc)
diff --git a/code/game/objects/structures/salvaging.dm b/code/game/objects/structures/salvaging.dm
index 06d59e7390ea..061b5efef57b 100644
--- a/code/game/objects/structures/salvaging.dm
+++ b/code/game/objects/structures/salvaging.dm
@@ -578,7 +578,7 @@
/obj/effect/spawner/lootdrop/random_gun_protolathe_lootdrop
loot = list(
/obj/item/gun/energy/lasercannon = 1,
- /obj/item/gun/ballistic/automatic/smg/proto = 1,
+ /obj/item/gun/ballistic/automatic/smg/skm_carbine/inteq/proto = 1,
/obj/item/gun/energy/temperature/security = 1,
)
/obj/effect/spawner/lootdrop/random_ammo_protolathe_lootdrop
diff --git a/code/game/objects/structures/signs/_signs.dm b/code/game/objects/structures/signs/_signs.dm
index 3684c69c1beb..f96d11703943 100644
--- a/code/game/objects/structures/signs/_signs.dm
+++ b/code/game/objects/structures/signs/_signs.dm
@@ -281,7 +281,7 @@
/obj/structure/sign/number
name = "zero"
desc = "A numeral sign."
- icon = 'icons/turf/decals.dmi'
+ icon = 'icons/turf/decals/decals.dmi'
icon_state = "0"
/obj/structure/sign/number/one
diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm
index 27c10f244c37..4ebd416675b8 100644
--- a/code/game/objects/structures/tables_racks.dm
+++ b/code/game/objects/structures/tables_racks.dm
@@ -106,6 +106,8 @@
return TRUE
if(locate(/obj/structure/table) in get_turf(mover))
return TRUE
+ if(mover.movement_type & FLOATING)
+ return TRUE
/obj/structure/table/CanAStarPass(ID, dir, caller)
. = !density
@@ -372,7 +374,7 @@
check_break(M)
/obj/structure/table/glass/proc/check_break(mob/living/M)
- if(M.has_gravity() && M.mob_size > MOB_SIZE_SMALL && !(M.movement_type & FLYING))
+ if(M.has_gravity() && M.mob_size > MOB_SIZE_SMALL && !(M.movement_type & (FLYING || FLOATING)))
table_shatter(M)
/obj/structure/table/glass/proc/table_shatter(mob/living/L)
diff --git a/code/game/turfs/closed/minerals.dm b/code/game/turfs/closed/minerals.dm
index a7ebeaf57582..33fcf315fc52 100644
--- a/code/game/turfs/closed/minerals.dm
+++ b/code/game/turfs/closed/minerals.dm
@@ -268,6 +268,7 @@
opacity = FALSE
light_range = 2
light_power = 1
+ mineralType = /obj/item/stack/ore/ice
/turf/closed/mineral/random/snow/underground
baseturfs = /turf/open/floor/plating/asteroid/snow/icemoon
diff --git a/code/game/turfs/open/floor/plating/asteroid.dm b/code/game/turfs/open/floor/plating/asteroid.dm
index 89f48aee49a1..996d122a4ac9 100644
--- a/code/game/turfs/open/floor/plating/asteroid.dm
+++ b/code/game/turfs/open/floor/plating/asteroid.dm
@@ -101,7 +101,7 @@
to_chat(user, "There is already a grave there!")
return
to_chat(user, "You start piling the dirt...")
- if(do_after(user,30, target = src))
+ if(do_after(user, 30, target = src))
if(locate(/obj/structure/closet/crate/grave) in dest_turf)
return
if(istype(W, /obj/item/stack/sheet/mineral/wood))
diff --git a/code/game/turfs/open/floor/reinf_floor.dm b/code/game/turfs/open/floor/reinf_floor.dm
index a164b159d6f6..7fb94e541bda 100644
--- a/code/game/turfs/open/floor/reinf_floor.dm
+++ b/code/game/turfs/open/floor/reinf_floor.dm
@@ -133,6 +133,13 @@
name = "fuel mix floor"
initial_gas_mix = ATMOS_TANK_FUEL
+/turf/open/floor/engine/hydrogen
+ name = "\improper hydrogen floor"
+ initial_gas_mix = ATMOS_TANK_HYDROGEN
+
+/turf/open/floor/engine/hydrogen_fuel
+ name = "hydrogen mix floor"
+ initial_gas_mix = ATMOS_TANK_HYDROGEN_FUEL
/turf/open/floor/engine/cult
name = "engraved floor"
diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm
index 4ed4b47297a2..e5cc9709559c 100644
--- a/code/game/turfs/turf.dm
+++ b/code/game/turfs/turf.dm
@@ -461,12 +461,12 @@ GLOBAL_LIST_EMPTY(created_baseturf_lists)
return
if(length(src_object.contents()))
to_chat(usr, "You start dumping out the contents...")
- if(!do_after(usr,20,target=src_object.parent))
+ if(!do_after(usr, 20, target=src_object.parent))
return FALSE
var/list/things = src_object.contents()
var/datum/progressbar/progress = new(user, things.len, src)
- while (do_after(usr, 10, TRUE, src, FALSE, CALLBACK(src_object, TYPE_PROC_REF(/datum/component/storage, mass_remove_from_storage), src, things, progress)))
+ while (do_after(usr, 10, src, TRUE, FALSE, CALLBACK(src_object, TYPE_PROC_REF(/datum/component/storage, mass_remove_from_storage), src, things, progress)))
stoplag(1)
progress.end_progress()
diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm
index 7b147385c556..82e75d63b30e 100644
--- a/code/modules/admin/admin.dm
+++ b/code/modules/admin/admin.dm
@@ -731,7 +731,7 @@
/datum/admins/proc/podspawn_atom(object as text)
set category = "Event.Spawning"
set desc = "(atom path) Spawn an atom via supply drop"
- set name = "Supply drop spawn"
+ set name = "Podspawn"
if(!check_rights(R_SPAWN))
return
diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm
index f4913b6be1e8..9c4f15b9d460 100644
--- a/code/modules/admin/admin_verbs.dm
+++ b/code/modules/admin/admin_verbs.dm
@@ -171,13 +171,10 @@ GLOBAL_PROTECT(admin_verbs_debug)
/client/proc/cmd_display_del_log,
/client/proc/cmd_display_init_log,
/client/proc/cmd_display_overlay_log,
- /client/proc/cmd_admin_grantfullaccess,
- /client/proc/cmd_assume_direct_control, //-errorage
- /client/proc/cmd_give_direct_control,
/client/proc/getserverlogs, /*for accessing server logs*/
/client/proc/getcurrentlogs, /*for accessing server logs for the current round*/
/client/proc/restart_controller,
- /client/proc/disable_debug_verbs,
+ /client/proc/enable_debug_verbs,
/client/proc/callproc,
/client/proc/callproc_datum,
/client/proc/SDQL2_query,
@@ -214,12 +211,6 @@ GLOBAL_PROTECT(admin_verbs_debug)
/datum/admins/proc/overmap_view, /* Opens HTML overmap viewer UI */
/client/proc/toggle_AI_interact, /*toggle admin ability to interact with machines as an AI*/
/client/proc/toggle_cdn,
- /client/proc/check_timer_sources,
- /client/proc/air_status, //Air things
- /client/proc/air_status_loc, //More air things
- /client/proc/manipulate_organs,
- /client/proc/set_server_fps, //allows you to set the ticklag.
- /client/proc/start_singlo,
)
GLOBAL_LIST_INIT(admin_verbs_possess, list(/proc/possess, /proc/release))
GLOBAL_PROTECT(admin_verbs_possess)
@@ -280,7 +271,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, list(
/client/proc/cmd_debug_make_powernets,
/client/proc/cmd_debug_mob_lists,
/client/proc/cmd_debug_del_all,
- /client/proc/disable_debug_verbs,
+ /client/proc/enable_debug_verbs,
/proc/possess,
/proc/release,
/client/proc/reload_admins,
@@ -313,7 +304,7 @@ GLOBAL_PROTECT(admin_verbs_hideable)
if(rights & R_SERVER)
add_verb(src, GLOB.admin_verbs_server)
if(rights & R_DEBUG)
- add_verb(src, list(GLOB.admin_verbs_debug, GLOB.admin_verbs_debug_extra))
+ add_verb(src, GLOB.admin_verbs_debug)
if(rights & R_POSSESS)
add_verb(src, GLOB.admin_verbs_possess)
if(rights & R_PERMISSIONS)
@@ -347,7 +338,7 @@ GLOBAL_PROTECT(admin_verbs_hideable)
GLOB.admin_verbs_spawn,
/*Debug verbs added by "show debug verbs"*/
GLOB.admin_verbs_debug_extra,
- /client/proc/disable_debug_verbs,
+ /client/proc/enable_debug_verbs,
/client/proc/readmin
))
diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm
index ae039c216120..9a226bbcb617 100644
--- a/code/modules/admin/verbs/debug.dm
+++ b/code/modules/admin/verbs/debug.dm
@@ -27,7 +27,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
*/
/client/proc/air_status_loc()
- set category = "Debug"
+ set category = "Debug.Debug"
set name = "Air Status in Location"
if(!mob)
return
@@ -185,7 +185,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
SSblackbox.record_feedback("tally", "admin_verb", 1, "Make Powernets") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/client/proc/cmd_admin_grantfullaccess(mob/M in GLOB.mob_list)
- set category = "Debug"
+ set category = "Debug.Debug"
set name = "Grant Full Access"
if(!SSticker.HasRoundStarted())
@@ -228,7 +228,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
message_admins("[key_name_admin(usr)] has granted [M.key] full access.")
/client/proc/cmd_assume_direct_control(mob/M in GLOB.mob_list)
- set category = "Debug"
+ set category = "Debug.Debug"
set name = "Assume direct control"
set desc = "Direct intervention"
@@ -249,7 +249,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
SSblackbox.record_feedback("tally", "admin_verb", 1, "Assume Direct Control") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/client/proc/cmd_give_direct_control(mob/M in GLOB.mob_list)
- set category = "Debug"
+ set category = "Debug.Debug"
set name = "Give direct control"
if(!M)
@@ -530,7 +530,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
return dresscode
/client/proc/start_singlo()
- set category = "Debug"
+ set category = "Debug.Debug"
set name = "Start Singularity"
set desc = "Sets up the singularity and all machines to get power flowing through the station"
@@ -797,7 +797,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
/// A debug verb to check the sources of currently running timers
/client/proc/check_timer_sources()
- set category = "Debug"
+ set category = "Debug.Debug"
set name = "Check Timer Sources"
set desc = "Checks the sources of the running timers"
if (!check_rights(R_DEBUG))
diff --git a/code/modules/admin/verbs/diagnostics.dm b/code/modules/admin/verbs/diagnostics.dm
index 7e89d542eb2b..469c0cda08f3 100644
--- a/code/modules/admin/verbs/diagnostics.dm
+++ b/code/modules/admin/verbs/diagnostics.dm
@@ -1,5 +1,5 @@
/client/proc/air_status(turf/target)
- set category = "Debug"
+ set category = "Debug.Debug"
set name = "Display Air Status"
if(!isturf(target))
diff --git a/code/modules/admin/verbs/fps.dm b/code/modules/admin/verbs/fps.dm
index a3e7c5f5df0b..8ac8d6b91d44 100644
--- a/code/modules/admin/verbs/fps.dm
+++ b/code/modules/admin/verbs/fps.dm
@@ -1,6 +1,6 @@
//replaces the old Ticklag verb, fps is easier to understand
/client/proc/set_server_fps()
- set category = "Debug"
+ set category = "Debug.Debug"
set name = "Set Server FPS"
set desc = "Sets game speed in frames-per-second. Can potentially break the game"
diff --git a/code/modules/admin/verbs/manipulate_organs.dm b/code/modules/admin/verbs/manipulate_organs.dm
index 0695777a6897..42873241b71b 100644
--- a/code/modules/admin/verbs/manipulate_organs.dm
+++ b/code/modules/admin/verbs/manipulate_organs.dm
@@ -1,6 +1,6 @@
/client/proc/manipulate_organs(mob/living/carbon/C in world)
set name = "Manipulate Organs"
- set category = "Debug"
+ set category = "Debug.Debug"
var/operation = input("Select organ operation.", "Organ Manipulation", "cancel") as null|anything in list("add organ", "add implant", "drop organ/implant", "remove organ/implant", "cancel")
if (!operation)
return
diff --git a/code/modules/admin/verbs/mapping.dm b/code/modules/admin/verbs/mapping.dm
index 6d8bac8adcfc..8f1b69bc831d 100644
--- a/code/modules/admin/verbs/mapping.dm
+++ b/code/modules/admin/verbs/mapping.dm
@@ -43,6 +43,15 @@ GLOBAL_LIST_INIT(admin_verbs_debug_extra, list(
/client/proc/show_line_profiling,
/client/proc/start_line_profiling,
/client/proc/stop_line_profiling,
+ /client/proc/check_timer_sources,
+ /client/proc/air_status, //Air things
+ /client/proc/air_status_loc, //More air things
+ /client/proc/manipulate_organs,
+ /client/proc/set_server_fps, //allows you to set the ticklag.
+ /client/proc/start_singlo,
+ /client/proc/cmd_admin_grantfullaccess,
+ /client/proc/cmd_assume_direct_control, //-errorage
+ /client/proc/cmd_give_direct_control,
))
GLOBAL_PROTECT(admin_verbs_debug_extra)
diff --git a/code/modules/antagonists/changeling/powers/linglink.dm b/code/modules/antagonists/changeling/powers/linglink.dm
index 6036ae1d00f6..f158499d8b0f 100644
--- a/code/modules/antagonists/changeling/powers/linglink.dm
+++ b/code/modules/antagonists/changeling/powers/linglink.dm
@@ -67,7 +67,7 @@
to_chat(user, "We must keep holding on to [target] to sustain the link. ")
while(user.pulling && user.grab_state >= GRAB_NECK)
target.reagents.add_reagent(/datum/reagent/medicine/salbutamol, 0.5) // So they don't choke to death while you interrogate them
- do_after(user, 10 SECONDS, target, TRUE)
+ do_after(user, 10 SECONDS, target, hidden = TRUE)
changeling.islinking = 0
target.mind.linglink = 0
diff --git a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm
index f3d6bb31abf4..648803185661 100644
--- a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm
+++ b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm
@@ -126,7 +126,7 @@
if(istype(I, /obj/item/nuke_core_container))
var/obj/item/nuke_core_container/core_box = I
to_chat(user, "You start loading the plutonium core into [core_box]...")
- if(do_after(user,50,target=src, hidden = TRUE))
+ if(do_after(user, 50, target = src, hidden = TRUE))
if(core_box.load(core, user))
to_chat(user, "You load the plutonium core into [core_box].")
deconstruction_state = NUKESTATE_CORE_REMOVED
diff --git a/code/modules/antagonists/traitor/syndicate_contract.dm b/code/modules/antagonists/traitor/syndicate_contract.dm
index a6edcb075361..d6bbba359303 100644
--- a/code/modules/antagonists/traitor/syndicate_contract.dm
+++ b/code/modules/antagonists/traitor/syndicate_contract.dm
@@ -143,10 +143,10 @@
// Pay contractor their portion of ransom
if (status == CONTRACT_STATUS_COMPLETE)
var/mob/living/carbon/human/H
- var/obj/item/card/id/C
+ var/obj/item/card/bank/C
if(ishuman(contract.owner.current))
H = contract.owner.current
- C = H.get_idcard(TRUE)
+ C = H.get_bankcard()
if(C && C.registered_account)
C.registered_account.adjust_money(ransom * 0.35, "syndicate_contract")
diff --git a/code/modules/atmospherics/auxgm/gas_types.dm b/code/modules/atmospherics/auxgm/gas_types.dm
index e128623f9cb8..fb0d7026a6d1 100644
--- a/code/modules/atmospherics/auxgm/gas_types.dm
+++ b/code/modules/atmospherics/auxgm/gas_types.dm
@@ -155,3 +155,15 @@
gas_overlay = "freon"
moles_visible = MOLES_GAS_VISIBLE *30
fusion_power = -5
+
+/datum/gas/hydrogen
+ id = GAS_HYDROGEN
+ specific_heat = 10
+ name = "Hydrogen"
+ flags = GAS_FLAG_DANGEROUS
+ moles_visible = MOLES_GAS_VISIBLE
+ color = "#ffe"
+ fusion_power = 0
+ fire_products = list(GAS_H2O = 1)
+ fire_burn_rate = 2
+ fire_temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST - 50
diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm
index 895bfdc96cf4..e5a1be0294d6 100644
--- a/code/modules/atmospherics/machinery/airalarm.dm
+++ b/code/modules/atmospherics/machinery/airalarm.dm
@@ -121,7 +121,8 @@
GAS_STIMULUM = new/datum/tlv/dangerous,
GAS_NITRYL = new/datum/tlv/dangerous,
GAS_PLUOXIUM = new/datum/tlv(-1, -1, 5, 6), // Unlike oxygen, pluoxium does not fuel plasma/tritium fires
- GAS_FREON = new/datum/tlv/dangerous
+ GAS_FREON = new/datum/tlv/dangerous,
+ GAS_HYDROGEN = new/datum/tlv/dangerous
)
/obj/machinery/airalarm/server // No checks here.
@@ -140,7 +141,8 @@
GAS_STIMULUM = new/datum/tlv/no_checks,
GAS_NITRYL = new/datum/tlv/no_checks,
GAS_PLUOXIUM = new/datum/tlv/no_checks,
- GAS_FREON = new/datum/tlv/no_checks
+ GAS_FREON = new/datum/tlv/no_checks,
+ GAS_HYDROGEN = new/datum/tlv/no_checks
)
heating_manage = FALSE
@@ -160,7 +162,8 @@
GAS_STIMULUM = new/datum/tlv/dangerous,
GAS_NITRYL = new/datum/tlv/dangerous,
GAS_PLUOXIUM = new/datum/tlv(-1, -1, 1000, 1000), // Unlike oxygen, pluoxium does not fuel plasma/tritium fires
- GAS_FREON = new/datum/tlv/dangerous
+ GAS_FREON = new/datum/tlv/dangerous,
+ GAS_HYDROGEN = new/datum/tlv/dangerous
)
heating_manage = FALSE
@@ -564,7 +567,8 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/airalarm, 27)
GAS_BZ,
GAS_STIMULUM,
GAS_PLUOXIUM,
- GAS_FREON
+ GAS_FREON,
+ GAS_HYDROGEN
),
"scrubbing" = 1,
"widenet" = 1
diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm
index c32a750848da..7416014ee463 100644
--- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm
+++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm
@@ -204,18 +204,18 @@
piping_layer = 2
icon_state = "volpump_map-2"
-/obj/machinery/atmospherics/components/binary/volume_pump/layer2
- piping_layer = 2
- icon_state = "volpump_map-2"
+/obj/machinery/atmospherics/components/binary/volume_pump/layer4
+ piping_layer = 4
+ icon_state = "volpump_map-4"
/obj/machinery/atmospherics/components/binary/volume_pump/on
on = TRUE
- icon_state = "volpump_map-2"
+ icon_state = "volpump_on_map-3"
/obj/machinery/atmospherics/components/binary/volume_pump/on/layer2
piping_layer = 2
- icon_state = "volpump_map-2"
+ icon_state = "volpump_on_map-2"
/obj/machinery/atmospherics/components/binary/volume_pump/on/layer4
piping_layer = 4
- icon_state = "volpump_map-4"
+ icon_state = "volpump_on_map-4"
diff --git a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm
index 3705cb361d82..5ff6b2e396b5 100644
--- a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm
+++ b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm
@@ -299,7 +299,7 @@
close_machine(target)
else
user.visible_message("[user] starts shoving [target] inside [src].", "You start shoving [target] inside [src].")
- if (do_after(user, 25, target=target))
+ if (do_after(user, 25, target = target))
close_machine(target)
/obj/machinery/atmospherics/components/unary/cryo_cell/attackby(obj/item/I, mob/user, params)
diff --git a/code/modules/atmospherics/machinery/other/miner.dm b/code/modules/atmospherics/machinery/other/miner.dm
index ca85e9cc5569..9f5a6a9aa6db 100644
--- a/code/modules/atmospherics/machinery/other/miner.dm
+++ b/code/modules/atmospherics/machinery/other/miner.dm
@@ -178,3 +178,8 @@
name = "\improper Water Vapor Gas Miner"
overlay_color = "#99928E"
spawn_id = GAS_H2O
+
+/obj/machinery/atmospherics/miner/hydrogen
+ name = "\improper Hydrogen Gas Miner"
+ overlay_color = "#ffffffda"
+ spawn_id = GAS_HYDROGEN
diff --git a/code/modules/atmospherics/machinery/portable/canister.dm b/code/modules/atmospherics/machinery/portable/canister.dm
index 6b0f025b6b89..f2e563c07b5e 100644
--- a/code/modules/atmospherics/machinery/portable/canister.dm
+++ b/code/modules/atmospherics/machinery/portable/canister.dm
@@ -52,7 +52,9 @@
"stimulum" = /obj/machinery/portable_atmospherics/canister/stimulum,
"pluoxium" = /obj/machinery/portable_atmospherics/canister/pluoxium,
"caution" = /obj/machinery/portable_atmospherics/canister,
- "freon" = /obj/machinery/portable_atmospherics/canister/freon
+ "freon" = /obj/machinery/portable_atmospherics/canister/freon,
+ "hydrogen" = /obj/machinery/portable_atmospherics/canister/hydrogen,
+ "fuel mix" = /obj/machinery/portable_atmospherics/canister/fuel
)
/obj/machinery/portable_atmospherics/canister/interact(mob/user)
@@ -147,6 +149,27 @@
gas_type = GAS_FREON
filled = 1
+/obj/machinery/portable_atmospherics/canister/hydrogen
+ name = "hydrogen canister"
+ desc = "Hydrogen. Used in thruster fuel."
+ icon_state = "orangews"
+ gas_type = GAS_HYDROGEN
+
+/obj/machinery/portable_atmospherics/canister/fuel
+ name = "fuel canister"
+ desc = "A highly volatile mix of hydrogen and oxygen."
+ icon_state = "orangewshaz"
+
+/obj/machinery/portable_atmospherics/canister/fuel_test
+ name = "test canister"
+ desc = "Hydrogen. Used in thruster fuel."
+ icon_state = "orangewshaz"
+
+/obj/machinery/portable_atmospherics/canister/fuel_test/create_gas()
+ air_contents.set_moles(GAS_O2, 500)
+ air_contents.set_moles(GAS_HYDROGEN, 1000)
+ air_contents.set_temperature(T20C)
+
/obj/machinery/portable_atmospherics/canister/fusion_test
name = "fusion test canister"
desc = "Don't be a badmin."
@@ -216,6 +239,11 @@
air_contents.set_moles(GAS_O2, (O2STANDARD * maximum_pressure * filled) * air_contents.return_volume() / (R_IDEAL_GAS_EQUATION * air_contents.return_temperature()))
air_contents.set_moles(GAS_N2, (N2STANDARD * maximum_pressure * filled) * air_contents.return_volume() / (R_IDEAL_GAS_EQUATION * air_contents.return_temperature()))
+/obj/machinery/portable_atmospherics/canister/fuel/create_gas()
+ air_contents.set_temperature(starter_temp)
+ air_contents.set_moles(GAS_HYDROGEN, (2/3 * maximum_pressure * filled) * air_contents.return_volume() / (R_IDEAL_GAS_EQUATION * air_contents.return_temperature()))
+ air_contents.set_moles((GAS_O2), (1/3 * maximum_pressure * filled) * air_contents.return_volume() / (R_IDEAL_GAS_EQUATION * air_contents.return_temperature()))
+
/obj/machinery/portable_atmospherics/canister/update_icon_state()
if(machine_stat & BROKEN)
icon_state = "[icon_state]-1"
diff --git a/code/modules/atmospherics/machinery/portable/scrubber.dm b/code/modules/atmospherics/machinery/portable/scrubber.dm
index 8e71222ab4d4..7505d2b8789e 100644
--- a/code/modules/atmospherics/machinery/portable/scrubber.dm
+++ b/code/modules/atmospherics/machinery/portable/scrubber.dm
@@ -8,7 +8,7 @@
var/volume_rate = 1000
var/overpressure_m = 80
var/use_overlays = TRUE
- var/list/scrubbing = list(GAS_PLASMA, GAS_CO2, GAS_NITROUS, GAS_BZ, GAS_NITRYL, GAS_TRITIUM, GAS_HYPERNOB, GAS_H2O, GAS_FREON)
+ var/list/scrubbing = list(GAS_PLASMA, GAS_CO2, GAS_NITROUS, GAS_BZ, GAS_NITRYL, GAS_TRITIUM, GAS_HYPERNOB, GAS_H2O, GAS_FREON, GAS_HYDROGEN)
/obj/machinery/portable_atmospherics/scrubber/Destroy()
var/turf/T = get_turf(src)
diff --git a/code/modules/awaymissions/corpse.dm b/code/modules/awaymissions/corpse.dm
index 11358938bd47..0bf0b74c715a 100644
--- a/code/modules/awaymissions/corpse.dm
+++ b/code/modules/awaymissions/corpse.dm
@@ -224,7 +224,7 @@
C.sensor_mode = NO_SENSORS
- var/obj/item/card/id/W = H.wear_id
+ var/obj/item/card/id/W = H.get_idcard()
if(W)
if(H.age)
W.registered_age = H.age
@@ -437,7 +437,7 @@
/datum/outfit/spacebartender/post_equip(mob/living/carbon/human/H, visualsOnly)
. = ..()
- var/obj/item/card/id/W = H.wear_id
+ var/obj/item/card/id/W = H.get_idcard()
if(H.age < AGE_MINOR)
W.registered_age = AGE_MINOR
to_chat(H, "You're not technically old enough to access or serve alcohol, but your ID has been discreetly modified to display your age as [AGE_MINOR]. Try to keep that a secret!")
diff --git a/code/modules/cargo/blackmarket/blackmarket_items/clothing.dm b/code/modules/cargo/blackmarket/blackmarket_items/clothing.dm
index 951574fedfe2..a4c4195beca0 100644
--- a/code/modules/cargo/blackmarket/blackmarket_items/clothing.dm
+++ b/code/modules/cargo/blackmarket/blackmarket_items/clothing.dm
@@ -160,7 +160,7 @@
/datum/blackmarket_item/clothing/ramzi_suit
name = "Rusted Red Hardsuit"
desc = "A vintage ICW Era Gorlex Maruader hardsuit. The previous owner said we could have it when we pried it off their cold dead hands. Dry cleaning not included."
- item = /obj/item/clothing/head/helmet/space/hardsuit/syndi/ramzi
+ item = /obj/item/clothing/suit/space/hardsuit/syndi/ramzi
price_min = 1500
price_max = 2500
diff --git a/code/modules/cargo/blackmarket/blackmarket_items/consumables.dm b/code/modules/cargo/blackmarket/blackmarket_items/consumables.dm
index 6e6551b58e86..e3a20e0e8905 100644
--- a/code/modules/cargo/blackmarket/blackmarket_items/consumables.dm
+++ b/code/modules/cargo/blackmarket/blackmarket_items/consumables.dm
@@ -161,10 +161,10 @@
availability_prob = 80
unlimited = TRUE
-/datum/blackmarket_item/consumable/thirteenloko
- name = "Can of Thirteen Loko"
+/datum/blackmarket_item/consumable/vimukti
+ name = "Can of Vimukti"
desc = "This product was quietly discontinued after multiple health related incidents. But you aren't a coward, are you?"
- item = /obj/item/reagent_containers/food/drinks/soda_cans/thirteenloko
+ item = /obj/item/reagent_containers/food/drinks/soda_cans/vimukti
price_min = 10
price_max = 50
diff --git a/code/modules/cargo/blackmarket/blackmarket_items/weapons.dm b/code/modules/cargo/blackmarket/blackmarket_items/weapons.dm
index 7d22846e123e..3d6b32a67569 100644
--- a/code/modules/cargo/blackmarket/blackmarket_items/weapons.dm
+++ b/code/modules/cargo/blackmarket/blackmarket_items/weapons.dm
@@ -150,7 +150,7 @@
/datum/blackmarket_item/weapon/saber_smg
name = "Saber 9mm SMG"
desc = "A prototype 9mm submachine gun. Most of these never got past the RND phase and into distribution. But we happen know a guy."
- item = /obj/item/gun/ballistic/automatic/smg/proto
+ item = /obj/item/gun/ballistic/automatic/smg/skm_carbine/inteq/proto
pair_item = /datum/blackmarket_item/weapon/saber_mag
price_min = 2500
@@ -209,6 +209,38 @@
stock_max = 3
availability_prob = 30
+/datum/blackmarket_item/weapon/mecha_syringe_gun
+ name = "Mounted Syringe Gun"
+ desc = "We ripped this off an old Nanotrasen exosuit. It's a real advanced piece of equipment. Exosuit not included."
+ item = /obj/item/mecha_parts/mecha_equipment/medical/syringe_gun
+
+ price_min = 5000
+ price_max = 7000
+ stock = 1
+ availability_prob = 15
+
+/datum/blackmarket_item/weapon/mecha_hades
+ name = "Mounted FNX-99 Carbine"
+ desc = "This so called \"Hades\" carbine is sure to burn brightly above the competition! Not to be confused with the \"Hades\" energy rifle. Exosuit not included."
+ item = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/carbine
+ pair_item = /datum/blackmarket_item/weapon/mecha_hades_ammo
+
+ price_min = 2000
+ price_max = 3000
+ stock_max = 2
+ availability_prob = 25
+
+/datum/blackmarket_item/weapon/mecha_hades_ammo
+ name = "FNX-99 Incediary Ammo"
+ desc = "A box of 24 incendiary shells for the FNX-99 mounted carbine."
+ item = /obj/item/mecha_ammo/incendiary
+
+ price_min = 250
+ price_max = 350
+ stock_min = 3
+ stock_max = 5
+ availability_prob = 0
+
/datum/blackmarket_item/weapon/model_h
name = "Model H"
desc = "A Model H slug pistol. The H stands for Hurt. Chambered in ferromagnetic slugs."
diff --git a/code/modules/cargo/bounties/mining.dm b/code/modules/cargo/bounties/mining.dm
index b2df34d8f964..4eb48b09c7cb 100644
--- a/code/modules/cargo/bounties/mining.dm
+++ b/code/modules/cargo/bounties/mining.dm
@@ -41,7 +41,7 @@
description = "Station 14's Research Director claims that pagan bone talismans protect their wearer. Ship them a few so they can start testing."
reward = 7500
required_count = 3
- wanted_types = list(/obj/item/clothing/accessory/talisman)
+ wanted_types = list(/obj/item/clothing/accessory/bonearmlet)
/datum/bounty/item/mining/bone_dagger
name = "Bone Daggers"
diff --git a/code/modules/cargo/bounties/reagent.dm b/code/modules/cargo/bounties/reagent.dm
index a3ece1cce8c6..0fcbbf4f1794 100644
--- a/code/modules/cargo/bounties/reagent.dm
+++ b/code/modules/cargo/bounties/reagent.dm
@@ -71,7 +71,7 @@
/datum/reagent/consumable/ethanol/syndicatebomb,\
/datum/reagent/consumable/ethanol/tequila_sunrise,\
/datum/reagent/consumable/ethanol/manly_dorf,\
- /datum/reagent/consumable/ethanol/thirteenloko,\
+ /datum/reagent/consumable/ethanol/vimukti,\
/datum/reagent/consumable/triple_citrus,\
/datum/reagent/consumable/ethanol/vodkamartini,\
/datum/reagent/consumable/ethanol/whiskeysoda,\
@@ -100,10 +100,7 @@
/datum/reagent/consumable/ethanol/booger,\
/datum/reagent/consumable/ethanol/hippies_delight,\
/datum/reagent/consumable/ethanol/drunkenblumpkin,\
- /datum/reagent/consumable/ethanol/fetching_fizz,\
/datum/reagent/consumable/ethanol/goldschlager,\
- /datum/reagent/consumable/ethanol/manhattan_proj,\
- /datum/reagent/consumable/ethanol/narsour,\
/datum/reagent/consumable/ethanol/neurotoxin,\
/datum/reagent/consumable/ethanol/patron,\
/datum/reagent/consumable/ethanol/quadruple_sec,\
diff --git a/code/modules/cargo/packs/ammo.dm b/code/modules/cargo/packs/ammo.dm
index aa165cbc8149..0b77a0f00afe 100644
--- a/code/modules/cargo/packs/ammo.dm
+++ b/code/modules/cargo/packs/ammo.dm
@@ -9,7 +9,7 @@
/datum/supply_pack/ammo/co9mm_mag
name = "9mm Commander Magazine Crate"
desc = "Contains a 9mm magazine for the standard-issue Commander pistol, containing ten rounds."
- contains = list(/obj/item/ammo_box/magazine/co9mm,)
+ contains = list(/obj/item/ammo_box/magazine/co9mm)
cost = 500
/datum/supply_pack/ammo/m45_mag
@@ -18,10 +18,10 @@
contains = list(/obj/item/ammo_box/magazine/m45)
cost = 500
-/datum/supply_pack/ammo/m45_speedloader
- name = ".45 ACP Speedloader Crate"
- desc = "Contains a .45 ACP speedloader for the HP Montagne, containing six rounds."
- contains = list(/obj/item/ammo_box/c45_speedloader)
+/datum/supply_pack/ammo/a44roum_speedloader
+ name = ".44 Roumain Speedloader Crate"
+ desc = "Contains a .44 Roumain speedloader for the HP Montagne, containing six rounds."
+ contains = list(/obj/item/ammo_box/a44roum_speedloader)
cost = 400
/datum/supply_pack/ammo/c38_mag
@@ -213,7 +213,7 @@
name = "9mm Ammo Box Crate"
desc = "Contains a fifty-round 9mm box for pistols and SMGs such as the Commander or Saber."
contains = list(/obj/item/ammo_box/c9mm)
- cost = 250
+ cost = 200
/datum/supply_pack/ammo/a308_ammo_box
name = "308 Ammo Box Crate"
@@ -225,7 +225,7 @@
name = "9mm AP Ammo Box Crate"
desc = "Contains a fifty-round 9mm box loaded with armor piercing ammo."
contains = list(/obj/item/ammo_box/c9mm/ap)
- cost = 500
+ cost = 400
/datum/supply_pack/ammo/a357match_ammo_box
name = ".357 Match Ammo Box Crate"
@@ -255,7 +255,7 @@
name = "9mm HP Ammo Box Crate"
desc = "Contains a fifty-round 9mm box loaded with hollow point ammo, great against unarmored targets."
contains = list(/obj/item/ammo_box/c9mm/hp)
- cost = 500
+ cost = 400
/datum/supply_pack/ammo/a357hp_ammo_box
name = ".357 HP Ammo Box Crate"
@@ -284,7 +284,7 @@
name = "9mm Rubber Ammo Box Crate"
desc = "Contains a fifty-round 9mm box loaded with less-than-lethal rubber rounds."
contains = list(/obj/item/ammo_box/c9mm/rubbershot)
- cost = 250
+ cost = 200
/datum/supply_pack/ammo/c10mmrubber_ammo_box
name = "10mm Rubber Ammo Box Crate"
@@ -370,3 +370,21 @@
desc = "Contains a fifty-round box for high-powered gauss guns such as the GAR assault rifle."
contains = list(/obj/item/ammo_box/ferrolancebox)
cost = 250
+
+/datum/supply_pack/ammo/a44roum
+ name = ".44 Roumain Ammo Box Crate"
+ desc = "Contains a fifty-round box of .44 roumain ammo for revolvers such as the Shadow and Montagne."
+ contains = list(/obj/item/ammo_box/a44roum)
+ cost = 250
+
+/datum/supply_pack/ammo/a44roum_rubber
+ name = ".44 Roumain Rubber Ammo Box Crate"
+ desc = "Contains a fifty-round box of .44 roumain ammo loaded with less-than-lethal rubber rounds."
+ contains = list(/obj/item/ammo_box/a44roum/rubber)
+ cost = 250
+
+/datum/supply_pack/ammo/a44roum_hp
+ name = ".44 Roumain Hollow Point Ammo Box Crate"
+ desc = "Contains a fifty-round box of .44 roumain hollow point ammo, great against unarmored targets."
+ contains = list(/obj/item/ammo_box/a44roum/hp)
+ cost = 500
diff --git a/code/modules/cargo/packs/food.dm b/code/modules/cargo/packs/food.dm
index bf16fb592e21..7abc0188f9d9 100644
--- a/code/modules/cargo/packs/food.dm
+++ b/code/modules/cargo/packs/food.dm
@@ -184,7 +184,7 @@
cost = 5000
contains = list(/obj/item/stack/sheet/mineral/coal/five,
/obj/machinery/grill/unwrenched,
- /obj/item/reagent_containers/food/drinks/soda_cans/monkey_energy)
+ /obj/item/reagent_containers/food/drinks/soda_cans/xeno_energy)
crate_name = "grilling starter kit crate"
crate_type = /obj/structure/closet/crate/large
diff --git a/code/modules/cargo/packs/gun.dm b/code/modules/cargo/packs/gun.dm
index 3424b48b941a..132e62bb0ada 100644
--- a/code/modules/cargo/packs/gun.dm
+++ b/code/modules/cargo/packs/gun.dm
@@ -9,52 +9,52 @@
/datum/supply_pack/gun/disposable
name = "Disposable Gun Crate"
desc = "In some sectors, these disposable pistols are the only firearms that can be legally sold for less than 200cr. That price is still far too high."
- cost = 150
- contains = list(/obj/item/gun/ballistic/automatic/pistol/disposable)
+ cost = 300
+ contains = list(/obj/item/storage/pistolcase/disposable)
crate_name = "disposable gun crate"
/datum/supply_pack/gun/derringer
name = ".38 Derringer Crate"
desc = "A cheap, concealable pistol manufactured by the reputable Hunter's Pride. At least it's better than a disposable pistol. Chambered in .38 rounds."
cost = 350
- contains = list(/obj/item/gun/ballistic/derringer)
+ contains = list(/obj/item/storage/pistolcase/derringer)
crate_name = "derringer crate"
/datum/supply_pack/gun/commanders
name = "Commander Pistol Crate"
desc = "Contains a modified Candor 'Commander' pistol, produced by Nanotrasen and chambered in 9mm."
cost = 750
- contains = list(/obj/item/gun/ballistic/automatic/pistol/commander)
+ contains = list(/obj/item/storage/pistolcase/commander)
/datum/supply_pack/gun/makarovs
name = "Stechkin Pistol Crate"
desc = "Contains a concealable stechkin pistol, produced by Scarborough Arms and chambered in 10mm."
cost = 1000
- contains = list(/obj/item/gun/ballistic/automatic/pistol)
+ contains = list(/obj/item/storage/pistolcase/stechkin)
/datum/supply_pack/gun/candors
name = "Candor Pistol Crate"
desc = "Contains a Candor pistol, the trusty sidearm of any spacer, produced by Hunter's Pride and chambered in .45 ACP."
cost = 1000
- contains = list(/obj/item/gun/ballistic/automatic/pistol/candor)
+ contains = list(/obj/item/storage/pistolcase/candor)
/datum/supply_pack/gun/pepperbox
name = "HP Firebrand Pepperbox Revolver Crate"
desc = "Contains a concealable pepperbox revolver manufactured by the Saint Roumain Militia, chambered in .357."
cost = 1250
- contains = list(/obj/item/gun/ballistic/revolver/firebrand)
+ contains = list(/obj/item/storage/pistolcase/firebrand)
/datum/supply_pack/gun/detrevolver
name = "Hunter's Pride Detective Revolver Crate"
desc = "Contains a concealable revolver favored by police departments around the sector, chambered in .38."
cost = 600
- contains = list(/obj/item/gun/ballistic/revolver/detective)
+ contains = list(/obj/item/storage/pistolcase/detective)
/datum/supply_pack/gun/shadowrevolver
name = "Shadow Revolver Crate"
- desc = "Contains a concealable Shadow revolver, chambered in .45 ACP."
+ desc = "Contains a concealable Shadow revolver, chambered in .44 Roumain."
cost = 1000
- contains = list(/obj/item/gun/ballistic/revolver/shadow)
+ contains = list(/obj/item/storage/pistolcase/shadow)
/*
@@ -65,21 +65,21 @@
name = "Laser Gun Crate"
desc = "Contains a lethal, high-energy laser gun."
cost = 1000
- contains = list(/obj/item/gun/energy/laser)
+ contains = list(/obj/item/storage/pistolcase/laser)
crate_name = "laser crate"
/datum/supply_pack/gun/mini_energy
name = "Mini Energy Gun Crate"
desc = "Contains a small, versatile energy gun, capable of firing both nonlethal and lethal blasts, but with a limited power cell."
cost = 500
- contains = list(/obj/item/gun/energy/e_gun/mini)
+ contains = list(/obj/item/storage/pistolcase/miniegun)
crate_name = "laser crate"
/datum/supply_pack/gun/energy
name = "Energy Gun Crate"
desc = "Contains a versatile energy gun, capable of firing both nonlethal and lethal blasts of light."
cost = 1250
- contains = list(/obj/item/gun/energy/e_gun)
+ contains = list(/obj/item/storage/pistolcase/egun)
crate_name = "energy gun crate"
crate_type = /obj/structure/closet/crate/secure/plasma
@@ -87,7 +87,7 @@
name = "Ion Rifle Crate"
desc = "Contains a single Mk.I Ion Projector, a special anti-tank rifle designed to disable electronic threats at range."
cost = 10000
- contains = list(/obj/item/gun/energy/ionrifle)
+ contains = list(/obj/item/storage/pistolcase/iongun)
crate_name = "ion rifle crate"
crate_type = /obj/structure/closet/crate/secure/plasma
@@ -95,14 +95,14 @@
name = "Etherbor SG-8 Beam Pistol Crate"
desc = "Contains a single SG-8 Beam Pistol, a civilian-grade sidearm developed in the PGF, manufactured by Etherbor Industries."
cost = 1000
- contains = list(/obj/item/gun/energy/kalix/pistol)
+ contains = list(/obj/item/storage/pistolcase/kalixpistol)
crate_name = "beam pistol crate"
/datum/supply_pack/gun/laser/kalix
name = "Etherbor BG-12 Beam Rifle Crate"
desc = "Contains a single BG-12 Beam Rifle, a civilian-grade semi-automatic developed in the PGF, manufactured by Etherbor Industries."
cost = 3000
- contains = list(/obj/item/gun/energy/kalix)
+ contains = list(/obj/item/storage/guncase/kalixrifle)
crate_name = "beam rifle crate"
/*
@@ -113,7 +113,7 @@
name = "Double Barrel Shotgun Crate"
desc = "For when you need to deal with 2 drunkards the old-fashioned way. Contains a double-barreled shotgun, favored by Bartenders. Warranty voided if sawed off."
cost = 1000
- contains = list(/obj/item/gun/ballistic/shotgun/doublebarrel)
+ contains = list(/obj/item/storage/guncase/doublebarrel)
crate_name = "shotguns crate"
/datum/supply_pack/gun/hellfire_shotgun
@@ -138,21 +138,21 @@
name = "Flaming Arrow Lever Action Rifle Crate"
desc = "Contains an antiquated lever action rifle intended for hunting wildlife. Chambered in .38 rounds."
cost = 750
- contains = list(/obj/item/gun/ballistic/shotgun/flamingarrow)
+ contains = list(/obj/item/storage/guncase/winchester)
crate_name = "rifle crate"
/datum/supply_pack/gun/illestren
name = "Illestren Rifle Crate"
desc = "Contains an expertly made bolt action rifle intended for hunting wildlife. Chambered in 8x50mmR rounds."
cost = 1250
- contains = list(/obj/item/gun/ballistic/rifle/illestren)
+ contains = list(/obj/item/storage/guncase/illestren)
crate_name = "rifle crate"
/datum/supply_pack/gun/beacon
name = "Contender Break Action Rifle Crate"
desc = "Contains a single shot break action rifle to hunt wildlife that annoys you in particular. Chambered in devastating .45-70 rounds. Warranty voided if sawed off."
cost = 2250
- contains = list(/obj/item/gun/ballistic/shotgun/doublebarrel/beacon)
+ contains = list(/obj/item/storage/guncase/beacon)
crate_name = "rifle crate"
/datum/supply_pack/gun/scout
@@ -166,26 +166,26 @@
name = "Cobra-20 SMG Crate"
desc = "Contains a .45 submachine gun, manufactured by Scaraborough Arms and chambered in .45"
cost = 3000
- contains = list(/obj/item/gun/ballistic/automatic/smg/c20r/cobra)
+ contains = list(/obj/item/storage/guncase/cobra)
crate_name = "SMG crate"
/datum/supply_pack/gun/wt550
name = "WT-550 Auto Rifle Crate"
desc = "Contains a high-powered, automatic personal defense weapon chambered in 4.6x30mm."
cost = 4000
- contains = list(/obj/item/gun/ballistic/automatic/smg/wt550)
+ contains = list(/obj/item/storage/guncase/wt550)
crate_name = "auto rifle crate"
/datum/supply_pack/gun/p16
name = "P16 Assault Rifle Crate"
desc = "Contains a high-powered, automatic rifle chambered in 5.56mm."
cost = 5000
- contains = list(/obj/item/gun/ballistic/automatic/assault/p16)
+ contains = list(/obj/item/storage/guncase/p16)
crate_name = "auto rifle crate"
/datum/supply_pack/gun/skm
name = "SKM-24 Rifle Crate"
desc = "Contains a high-powered, automatic rifle chambered in 7.62x40mm CLIP."
cost = 5000
- contains = list(/obj/item/gun/ballistic/automatic/assault/skm)
+ contains = list(/obj/item/storage/guncase/skm)
crate_name = "auto rifle crate"
diff --git a/code/modules/cargo/packs/machinery.dm b/code/modules/cargo/packs/machinery.dm
index 56ed7130738b..f25e4818329e 100644
--- a/code/modules/cargo/packs/machinery.dm
+++ b/code/modules/cargo/packs/machinery.dm
@@ -210,6 +210,15 @@
crate_name = "plasma thruster crate"
crate_type = /obj/structure/closet/crate/engineering
+/datum/supply_pack/machinery/combustion_thruster
+ name = "Combustion Thruster Crate"
+ desc = "A crate containing a combustion thruster and its heater's electronics. For when you need complicated thrust."
+ cost = 2000
+ contains = list(/obj/item/circuitboard/machine/shuttle/fire_heater,
+ /obj/item/circuitboard/machine/shuttle/engine/fire)
+ crate_name = "combustion thruster crate"
+ crate_type = /obj/structure/closet/crate/engineering
+
/datum/supply_pack/machinery/drill_crate
name = "Heavy duty laser mining drill"
desc = "An experimental laser-based mining drill that Nanotrasen is kindly allowing YOU, the customer, to opt into testing of."
diff --git a/code/modules/cargo/packs/mechs.dm b/code/modules/cargo/packs/mechs.dm
index 376c22fc0db8..937126a86361 100644
--- a/code/modules/cargo/packs/mechs.dm
+++ b/code/modules/cargo/packs/mechs.dm
@@ -109,6 +109,14 @@ Mech Equipment
/obj/item/mecha_parts/mecha_equipment/drill
)
+/datum/supply_pack/mech/equipment/diamond_drill
+ name = "Mech diamond drill kit"
+ desc = "Contains mechanized diamond drill, for the enterprising prospector!"
+ cost = 750
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/drill/diamonddrill
+ )
+
/datum/supply_pack/mech/equipment/scanner
name = "Mech scanner kit"
desc = "An electronic mining scanner, graded to interface with a mech."
@@ -125,6 +133,22 @@ Mech Equipment
/obj/item/mecha_parts/mecha_equipment/generator
)
+/datum/supply_pack/mech/equipment/nuclear_gen
+ name = "Mech nuclear generator kit"
+ desc = "Contains a uranium-fueled generator for a mech, ideal for polluting the environment."
+ cost = 1250
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/generator/nuclear
+ )
+
+/datum/supply_pack/mech/equipment/tesla_energy_relay
+ name = "Mech tesla relay kit"
+ desc = "Contains an advanced exosuit module which draws power from nearby APCs."
+ cost = 1750
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay
+ )
+
/datum/supply_pack/mech/equipment/clamp
name = "Mech clamp kit"
desc = "Contains a clamp designed for mechanized freight hauling."
@@ -133,6 +157,37 @@ Mech Equipment
/obj/item/mecha_parts/mecha_equipment/hydraulic_clamp
)
+/datum/supply_pack/mech/equipment/extinguisher
+ name = "Mech extinguisher kit"
+ desc = "Contains a heavy duty fire extinguisher, for heavy duty firefighting."
+ cost = 250
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/extinguisher
+ )
+
+/datum/supply_pack/mech/equipment/cable_layer
+ name = "Mech RCL Kit"
+ desc = "Contains a \"rapid cable layer\" for laying down long lengths of wire."
+ cost = 250
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/cable_layer
+ )
+
+/datum/supply_pack/mech/equipment/mech_sleeper
+ name = "Mech Mounted Sleeper Kit"
+ desc = "Contains a mounted sleeper device, used for retrieving and stabilizing patients."
+ cost = 1000
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/medical/sleeper
+ )
+
+/datum/supply_pack/mech/equipment/beam_gun
+ name = "Mech Beam Gun Kit"
+ desc = "Contains an advanced mounted medical beamgun, capable of alleviating wounds to targets."
+ cost = 7000
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/medical/mechmedbeam
+ )
/datum/supply_pack/mech/equipment/rcs
name = "Mech RCS kit"
desc = "A gas fueled RCS pack, ideal for mechanized space operation."
@@ -149,19 +204,40 @@ Mech Equipment
/obj/item/mecha_parts/mecha_equipment/conversion_kit/ripley
)
+/datum/supply_pack/mech/equipment/melee_armor_booster
+ name = "Mech CCW armor kit"
+ desc = "A \"close combat weaponry\" module designed to deflect melee attacks."
+ cost = 750
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/anticcw_armor_booster
+ )
+
+/datum/supply_pack/mech/equipment/projectile_armor_booster
+ name = "Mech projectile armor kit"
+ desc = "A protective exosuit module designed to deflect ranged attacks."
+ cost = 1000
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster
+ )
+
/*
weapons
*/
-/datum/supply_pack/mech/equipment/pka
+/datum/supply_pack/mech/weapon
+ name = "Mech weapons crate"
+ crate_type = /obj/structure/closet/crate/secure/weapon
+ crate_name = "mech weapon crate"
+
+/datum/supply_pack/mech/weapon/pka
name = "Mech Mounted Proto-Kinetic Accelerator kit"
desc = "A ranged mining attachment for any mech."
- cost = 1500
+ cost = 750
contains = list(
/obj/item/mecha_parts/mecha_equipment/weapon/energy/mecha_kineticgun
)
-/datum/supply_pack/mech/equipment/laser
+/datum/supply_pack/mech/weapon/laser
name = "Immolator kit"
desc = "A light laser cannon designed for combat usage."
cost = 1000
@@ -169,10 +245,75 @@ weapons
/obj/item/mecha_parts/mecha_equipment/weapon/energy/laser
)
-/datum/supply_pack/mech/equipment/biglaser
+/datum/supply_pack/mech/weapon/biglaser
name = "Solaris kit"
desc = "A heavy laser cannon designed for combat usage."
cost = 2000
contains = list(
/obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/heavy
)
+
+/datum/supply_pack/mech/weapon/ion_cannon
+ name = "MK4 ion cannon kit"
+ desc = "Contains a heavy ion cannon for disabling technology in large blasts."
+ cost = 3000
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/weapon/energy/ion
+ )
+
+/datum/supply_pack/mech/weapon/scattershot
+ name = "LBX AC 10 kit"
+ desc = "Contains a \"Scattershot\" gun to mount on combat exosuits."
+ cost = 1750
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot
+ )
+
+/datum/supply_pack/mech/weapon/lmg
+ name = "Ultra AC 2 kit"
+ desc = "Contains a mounted gun which fires in three round bursts."
+ cost = 2250
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg
+ )
+
+/datum/supply_pack/mech/weapon/missile_rack
+ name = "BRM-6 kit"
+ desc = "Contains a low-explosive missile launcher, excellent for breaching through obstacles."
+ cost = 3000
+ contains = list(
+ /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/breaching
+ )
+
+/*
+ammo
+*/
+
+/datum/supply_pack/mech/ammo
+ name = "Mech ammo crate"
+ crate_type = /obj/structure/closet/crate/secure/gear
+ crate_name = "mech ammo crate"
+
+/datum/supply_pack/mech/ammo/scattershot_ammo
+ name = "LBX AC 10 ammo box"
+ desc = "Contains a fourty-round box of upscaled buckshot, to be loaded directly in a mounted LBX AC 10."
+ cost = 500
+ contains = list(
+ /obj/item/mecha_ammo/scattershot
+ )
+
+/datum/supply_pack/mech/ammo/lmg_ammo
+ name = "Ultra AC 2 ammo box"
+ desc = "Contains a three hundred-round box of heavy ammunition for the Ultra AC 2."
+ cost = 750
+ contains = list(
+ /obj/item/mecha_ammo/lmg
+ )
+
+/datum/supply_pack/mech/ammo/missile_rack_ammo
+ name = "BRM-6 missile box"
+ desc = "Contains a box of six breaching missiles designed to explode upon striking hard surfaces."
+ cost = 1000
+ contains = list(
+ /obj/item/mecha_ammo/missiles_br
+ )
diff --git a/code/modules/client/loadout/loadout_accessories.dm b/code/modules/client/loadout/loadout_accessories.dm
index b81588c8e72e..70225b60cc2e 100644
--- a/code/modules/client/loadout/loadout_accessories.dm
+++ b/code/modules/client/loadout/loadout_accessories.dm
@@ -50,6 +50,16 @@
display_name = "tie, recolorable"
path = /obj/item/clothing/neck/tie
+//Bone
+/datum/gear/accessory/fangnecklace
+ display_name = "wolf fang necklace"
+ path = /obj/item/clothing/neck/fangnecklace
+
+/datum/gear/accessory/bonearmlet
+ display_name = "bone armlet"
+ path = /obj/item/clothing/accessory/bonearmlet
+ slot = null
+
//Misc
/datum/gear/accessory/waistcoat
diff --git a/code/modules/client/loadout/loadout_general.dm b/code/modules/client/loadout/loadout_general.dm
index 4c081a67e92f..6277a8a3a601 100644
--- a/code/modules/client/loadout/loadout_general.dm
+++ b/code/modules/client/loadout/loadout_general.dm
@@ -62,10 +62,6 @@
display_name = "toy, magic eight ball"
path = /obj/item/toy/eightball
-/datum/gear/wallet
- display_name = "wallet"
- path = /obj/item/storage/wallet
-
/datum/gear/pai
display_name = "personal AI device"
path = /obj/item/paicard
diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm
index b9a4fb8f0ca3..006074e74bcd 100644
--- a/code/modules/client/preferences.dm
+++ b/code/modules/client/preferences.dm
@@ -879,18 +879,19 @@ GLOBAL_LIST_EMPTY(preferences_datums)
dat += ""
mutant_category = 0
- if(generic_adjective)
- if(!mutant_category)
- dat += APPEARANCE_CATEGORY_COLUMN
+ // begin generic adjective
+ if(!mutant_category)
+ dat += APPEARANCE_CATEGORY_COLUMN
- dat += "Character Adjective
"
+ dat += "Character Adjective
"
- dat += "[generic_adjective]
"
+ dat += "[generic_adjective]
"
- mutant_category++
- if(mutant_category >= MAX_MUTANT_ROWS)
- dat += ""
- mutant_category = 0
+ mutant_category++
+ if(mutant_category >= MAX_MUTANT_ROWS)
+ dat += ""
+ mutant_category = 0
+ // end generic adjective
if("wings" in pref_species.default_features && GLOB.r_wings_list.len >1)
if(!mutant_category)
diff --git a/code/modules/clothing/factions/clip.dm b/code/modules/clothing/factions/clip.dm
index 97eed2728fb6..ce87ea624d7a 100644
--- a/code/modules/clothing/factions/clip.dm
+++ b/code/modules/clothing/factions/clip.dm
@@ -163,6 +163,16 @@
supports_variations = DIGITIGRADE_VARIATION_SAME_ICON_FILE
+/obj/item/clothing/suit/armor/vest/clip_correspondent
+ name = "press armor vest"
+ desc = "A slim Type I armored vest that provides decent protection against most types of damage. The white letters on the front read \"PRESS\" in CLIP Kalixcian."
+
+ icon = 'icons/obj/clothing/faction/clip/suits.dmi'
+ mob_overlay_icon = 'icons/mob/clothing/faction/clip/suits.dmi'
+
+ icon_state = "armor_correspondant"
+ item_state = "armor_correspondant"
+
//spacesuits
/obj/item/clothing/suit/space/hardsuit/clip_patroller
name = "\improper CM-410 'Patroller' EVA Hardsuit"
@@ -309,6 +319,17 @@
. = ..()
AddComponent(/datum/component/wearertargeting/earprotection, list(ITEM_SLOT_HEAD))
+/obj/item/clothing/head/helmet/bulletproof/m10/clip_correspondent
+ name = "CLIP War Correspondant M10 Helmet"
+ desc = "A light bulletproof helmet worn by War Correspondants of the CLIP."
+
+ icon = 'icons/obj/clothing/faction/clip/head.dmi'
+ mob_overlay_icon = 'icons/mob/clothing/faction/clip/head.dmi'
+ vox_override_icon = 'icons/mob/clothing/faction/clip/vox.dmi'
+
+ icon_state = "clip_m10_correspondant"
+ item_state = "clip_m10_correspondant"
+
/obj/item/clothing/head/helmet/riot/clip
name = "\improper Minutemen riot helmet"
desc = "Designed to protect against close range attacks. Mainly used by the CMM-BARD against hostile xenofauna, it also sees prolific use on some Minutemen member worlds."
diff --git a/code/modules/clothing/factions/gezena.dm b/code/modules/clothing/factions/gezena.dm
index fe6a6d9bdb6a..96c6eee3c734 100644
--- a/code/modules/clothing/factions/gezena.dm
+++ b/code/modules/clothing/factions/gezena.dm
@@ -36,7 +36,7 @@
item_state = "bluecloth"
blood_overlay_type = "coat"
togglename = "zipper"
- body_parts_covered = CHEST|ARMS
+ body_parts_covered = CHEST
pocket_storage_component_path = /datum/component/storage/concrete/pockets/exo
supports_variations = DIGITIGRADE_VARIATION_NO_NEW_ICON
armor = list("melee" = 20, "bullet" = 20, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 0)
@@ -53,20 +53,11 @@
icon_state = "coat"
item_state = "bluecloth"
blood_overlay_type = "coat"
- body_parts_covered = CHEST|ARMS|GROIN|LEGS
+ body_parts_covered = CHEST|GROIN
pocket_storage_component_path = /datum/component/storage/concrete/pockets/exo
supports_variations = DIGITIGRADE_VARIATION_NO_NEW_ICON
armor = list("melee" = 35, "bullet" = 35, "laser" = 20, "energy" = 40, "bomb" = 20, "bio" = 20, "rad" = 0, "fire" = 50, "acid" = 50)
- allowed = list(
- /obj/item/flashlight,
- /obj/item/tank/internals/emergency_oxygen,
- /obj/item/tank/internals/plasmaman,
- /obj/item/toy,
- /obj/item/storage/fancy/cigarettes,
- /obj/item/lighter,
- /obj/item/radio,
- /obj/item/gun/energy/kalix,
- )
+ allowed = null
/obj/item/clothing/suit/armor/gezena/engi
name = "engineer navywear coat"
diff --git a/code/modules/clothing/factions/srm.dm b/code/modules/clothing/factions/srm.dm
new file mode 100644
index 000000000000..cd901306b7a7
--- /dev/null
+++ b/code/modules/clothing/factions/srm.dm
@@ -0,0 +1,154 @@
+//////////////
+//Jumpsuits//
+/////////////
+
+/obj/item/clothing/under/suit/roumain
+ name = "saint-roumain's worksuit"
+ desc = "A simple, hard-wearing suit designed for the hardworking hunters of the Saint-Roumain Militia."
+ icon_state = "rouma_work"
+ item_state = "rouma_work"
+ can_adjust = FALSE
+ icon = 'icons/obj/clothing/faction/srm/uniforms.dmi'
+ mob_overlay_icon = 'icons/mob/clothing/faction/srm/uniforms.dmi'
+
+//////////////////
+//Armored suits//
+/////////////////
+
+/obj/item/clothing/suit/armor/roumain
+ name = "saint-roumain duster"
+ desc = "A coat made from hard leather. Meant to withstand long hunts in harsh wilderness."
+ icon_state = "armor_rouma"
+ item_state = "rouma_coat"
+ body_parts_covered = CHEST|GROIN|ARMS
+ cold_protection = CHEST|GROIN|ARMS
+ heat_protection = CHEST|GROIN|ARMS
+ icon = 'icons/obj/clothing/faction/srm/suits.dmi'
+ mob_overlay_icon = 'icons/mob/clothing/faction/srm/suits.dmi'
+
+/obj/item/clothing/suit/armor/roumain/shadow
+ name = "saint-roumain shadow duster"
+ desc = "A coat made from hard leather. Its rough, barely-treated finish is typical of one of the Saint-Roumain Militia's trainees."
+ icon_state = "armor_rouma_shadow"
+ item_state = "rouma_shadow_coat"
+
+/obj/item/clothing/suit/toggle/labcoat/roumain_med
+ name = "saint-roumain medical duster"
+ desc = "A coat made from hard leather and further treated with exotic sterilizing oils and wax. The treatment and its more closed design offers much better protection against biological hazards."
+ icon = 'icons/obj/clothing/faction/srm/suits.dmi'
+ mob_overlay_icon = 'icons/mob/clothing/faction/srm/suits.dmi'
+ icon_state = "rouma_med_coat"
+ armor = list("melee" = 35, "bullet" = 30, "laser" = 30, "energy" = 40, "bomb" = 25, "bio" = 50, "rad" = 0, "fire" = 50, "acid" = 50)
+
+/obj/item/clothing/suit/hazardvest/roumain
+ name = "saint-roumain machinist leather vest"
+ desc = "A modified Roumain leather duster with its large flaps and sleeves cut off to provide extra mobility when maintaining weapons and vessels belonging to the Church of Saint Roumain. Its specialty treatment grants it better protection against acid and fire."
+ icon = 'icons/obj/clothing/faction/srm/suits.dmi'
+ mob_overlay_icon = 'icons/mob/clothing/faction/srm/suits.dmi'
+ icon_state = "armor_rouma_machinist"
+ item_state = "rouma_coat"
+ armor = list("melee" = 30, "bullet" = 20, "laser" = 20, "energy" = 40, "bomb" = 35, "bio" = 0, "rad" = 0, "fire" = 60, "acid" = 60)
+
+/obj/item/clothing/suit/armor/roumain/flamebearer
+ name = "saint-roumain flamebearer robes"
+ desc = "A set of ashy-grey robes made from hard leather, adorned with gold trims. Its rough finish after a near-char and application of aromatics is heavily favored for the ecclesiastical sect of the Church of Saint Roumain, a living reminder of the Ashen Huntsman himself."
+ icon_state = "armor_rouma_flamebearer"
+
+/obj/item/clothing/suit/armor/roumain/colligne
+ name = "saint-roumain colligne coat"
+ desc = "A well-maintained hard leather coat typically worn to denote the rank of Colligne, a trainee Hunter Montagne. It is treated with bullet-resistant materials, and lined with the dark fur of Illestrian dire wolves."
+ icon_state = "armor_rouma_colligne"
+ item_state = "rouma_coat"
+ body_parts_covered = CHEST|GROIN|ARMS|LEGS
+ cold_protection = CHEST|GROIN|LEGS|ARMS
+ heat_protection = CHEST|GROIN|LEGS|ARMS
+
+/obj/item/clothing/suit/armor/roumain/montagne
+ name = "saint-roumain montagne coat"
+ desc = "A stylish red coat to indicate that you are, in fact, a Hunter Montagne. Made of extra hard exotic leather, treated with bullet-resistant materials, and lined with the fur of some unidentifiable creature."
+ icon_state = "armor_rouma_montagne"
+ item_state = "rouma_montagne_coat"
+ body_parts_covered = CHEST|GROIN|ARMS|LEGS
+ armor = list("melee" = 30, "bullet" = 30, "laser" = 30, "energy" = 40, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 90)
+ cold_protection = CHEST|GROIN|LEGS|ARMS
+ heat_protection = CHEST|GROIN|LEGS|ARMS
+
+///////////////
+//Spacesuits//
+//////////////
+
+/obj/item/clothing/head/helmet/space/hardsuit/solgov/roumain
+ name = "\improper roumain hardsuit helmet"
+ desc = "An armored helmet with an unusual design that recalls both pre-industrial Solarian armor and iconography depicting the Ashen Huntsman. Though hand-made, it is surprisingly quite spaceworthy."
+ icon = 'icons/obj/clothing/faction/srm/head.dmi'
+ mob_overlay_icon = 'icons/mob/clothing/faction/srm/head.dmi'
+ icon_state = "hardsuit0-roumain"
+ item_state = "hardsuit0-roumain"
+ hardsuit_type = "roumain"
+ worn_y_offset = 4
+
+/obj/item/clothing/suit/space/hardsuit/solgov/roumain
+ name = "\improper roumain hardsuit"
+ desc = "A hand-crafted suit of armor either modified from a set of normal plate armor or designed to resemble one. A powered exoskeleton has been cleverly integrated into the design and, surprisingly, it is completely vacuum-proof. Suits like this are a testament to what the master craftsmen of Hunter's Pride are capable of."
+ icon = 'icons/obj/clothing/faction/srm/suits.dmi'
+ mob_overlay_icon = 'icons/mob/clothing/faction/srm/suits.dmi'
+ icon_state = "hardsuit-roumain"
+ item_state = "hardsuit-roumain"
+ helmettype = /obj/item/clothing/head/helmet/space/hardsuit/solgov/roumain
+ slowdown = 0.5
+
+/////////
+//Hats//
+////////
+
+/obj/item/clothing/head/cowboy/sec/roumain
+ name = "hunter's hat"
+ desc = "A fancy hat with a nice feather. The way it covers your eyes makes you feel like a badass."
+ icon_state = "rouma_hat"
+ icon = 'icons/obj/clothing/faction/srm/head.dmi'
+ mob_overlay_icon = 'icons/mob/clothing/faction/srm/head.dmi'
+
+/obj/item/clothing/head/cowboy/sec/roumain/shadow
+ name = "shadow's hat"
+ desc = "A rough, simple hat. The way it covers your eyes makes you feel badass, but you just look like a wannabe hunter."
+ icon_state = "rouma_shadow_hat"
+
+/obj/item/clothing/head/cowboy/sec/roumain/machinist
+ name = "machinist's hat"
+ desc = "A small, humble leather top hat. It gives you the gnawing urge to create classical gizmos and goobers, or alternatively repair any breaches within your vessel."
+ icon_state = "rouma_machinist_hat"
+
+/obj/item/clothing/head/cowboy/sec/roumain/med
+ name = "medical hunter's hat"
+ desc = "A very wide-brimmed, round hat treated with oil and wax. Somehow manages to look stylish and creepy at the same time."
+ icon_state = "rouma_med_hat"
+
+/obj/item/clothing/head/cowboy/sec/roumain/flamebearer
+ name = "flamebearer's hat"
+ desc = "A wide-brimmed, pointed hat with charred leather, granting it an ash-grey appearance. The design honors the one the Ashen Huntsman himself wore, according to legend."
+ icon_state = "rouma_flamebearer_hat"
+
+/obj/item/clothing/head/cowboy/sec/roumain/colligne
+ name = "colligne's hat"
+ desc = "A fancy, pointy leather hat with a large feather plume to signal that you are, in fact... A Hunter Colligne. You still have some ways to go before you gain the title of Montagne."
+ icon_state = "rouma_colligne_hat"
+
+/obj/item/clothing/head/cowboy/sec/roumain/montagne
+ name = "montagne's hat"
+ desc = "A very fancy hat with a large feather plume to signal that you are, in fact, a Hunter Montagne. The exotic fur lining is impeccably soft."
+ icon_state = "rouma_montagne_hat"
+
+///////////////
+//Accessories//
+///////////////
+
+//These are stored in clothing/accessories.dmi instead of a factional variant due to accessory code being dogwater
+//Please transfer them over to a factional file if accessory code is ever fixed
+
+/obj/item/clothing/accessory/waistcoat/roumain
+ name = "roumain waistcoat"
+ desc = "A warm, red wool waistcoat, worn by any member of the Church of Saint Roumain, though heavily favored by Machinists for the added warmth given to their rather breezy outfit."
+ icon_state = "rouma_waistcoat"
+ icon = 'icons/obj/clothing/accessories.dmi'
+ mob_overlay_icon = 'icons/mob/clothing/accessories.dmi'
+ minimize_when_attached = TRUE
diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm
index eb76c13fb541..3e04245e1a14 100644
--- a/code/modules/clothing/head/jobs.dm
+++ b/code/modules/clothing/head/jobs.dm
@@ -138,26 +138,6 @@
desc = "A robust stetson adorned with a deputy's badge. Its imitation leather is thick and worn."
icon_state = "cowboysec"
-/obj/item/clothing/head/cowboy/sec/roumain
- name = "hunter's hat"
- desc = "A fancy hat with a nice feather. The way it covers your eyes makes you feel like a badass."
- icon_state = "rouma_hat"
-
-/obj/item/clothing/head/cowboy/sec/roumain/shadow
- name = "shadow's hat"
- desc = "A rough, simple hat. The way it covers your eyes makes you feel badass, but you just look like a wannabe hunter."
- icon_state = "rouma_shadow_hat"
-
-/obj/item/clothing/head/cowboy/sec/roumain/med
- name = "medical hunter's hat"
- desc = "A very wide-brimmed, round hat treated with oil and wax. Somehow manages to look stylish and creepy at the same time."
- icon_state = "rouma_med_hat"
-
-/obj/item/clothing/head/HoS/cowboy/montagne
- name = "montagne's hat"
- desc = "A very fancy hat with a large feather plume to signal that you are, in fact, a Hunter Montagne. The exotic fur lining is impeccably soft and bafflingly bulletproof."
- icon_state = "rouma_montagne_hat"
-
/obj/item/clothing/head/HoS/syndicate
name = "syndicate cap"
desc = "A black cap fit for a high ranking syndicate officer."
diff --git a/code/modules/clothing/neck/_neck.dm b/code/modules/clothing/neck/_neck.dm
index 8d5251e9e8c8..3f431df81ccb 100644
--- a/code/modules/clothing/neck/_neck.dm
+++ b/code/modules/clothing/neck/_neck.dm
@@ -433,3 +433,9 @@
playsound(src,"shatter", 70)
new /obj/effect/decal/cleanable/glass/strange(get_turf(src))
return ..()
+
+/obj/item/clothing/neck/fangnecklace
+ name = "wolf fang necklace"
+ desc = "A necklace made out of a wolf's fang and some sinew. According to a common Frontier superstition, it brings good luck to its wearer."
+ icon_state = "fang_necklace"
+ cuttable = FALSE
diff --git a/code/modules/clothing/outfits/factions/independent.dm b/code/modules/clothing/outfits/factions/independent.dm
index 24b3201573d3..db227c2903c7 100644
--- a/code/modules/clothing/outfits/factions/independent.dm
+++ b/code/modules/clothing/outfits/factions/independent.dm
@@ -6,8 +6,6 @@
box = /obj/item/storage/box/survival
id = /obj/item/card/id
- r_pocket = /obj/item/storage/wallet
-
// Assistant
/datum/outfit/job/independent/assistant
@@ -314,7 +312,6 @@
jobtype = /datum/job/engineer
belt = /obj/item/storage/belt/utility/full/engi
- l_pocket = /obj/item/storage/wallet
gloves = /obj/item/clothing/gloves/color/yellow
ears = /obj/item/radio/headset/headset_eng
uniform = /obj/item/clothing/under/rank/engineering/engineer
@@ -393,7 +390,6 @@
id = /obj/item/card/id/silver
belt = /obj/item/storage/belt/utility/chief/full
- l_pocket = /obj/item/storage/wallet
ears = /obj/item/radio/headset/headset_com
uniform = /obj/item/clothing/under/rank/engineering/chief_engineer
dcoat = /obj/item/clothing/suit/hooded/wintercoat/engineering
diff --git a/code/modules/clothing/outfits/factions/minutemen.dm b/code/modules/clothing/outfits/factions/minutemen.dm
index a8ce0907a35a..1d12eb25c4e9 100644
--- a/code/modules/clothing/outfits/factions/minutemen.dm
+++ b/code/modules/clothing/outfits/factions/minutemen.dm
@@ -246,6 +246,21 @@
r_pocket = /obj/item/radio
+/datum/outfit/job/clip/correspondant
+ name = "CLIP - War Correspondent"
+ job_icon = "curator"
+ jobtype = /datum/job/curator
+
+ head = /obj/item/clothing/head/helmet/bulletproof/m10/clip_correspondent
+ uniform = /obj/item/clothing/under/clip/formal/with_shirt
+ suit = /obj/item/clothing/suit/armor/vest/clip_correspondent
+ shoes = /obj/item/clothing/shoes/laceup
+
+ backpack = /obj/item/storage/backpack/satchel/leather
+ satchel = /obj/item/storage/backpack/satchel/leather
+
+ r_pocket = /obj/item/radio
+
// Colonial League Minutemen
/datum/outfit/job/clip/minutemen
diff --git a/code/modules/clothing/outfits/factions/nanotrasen.dm b/code/modules/clothing/outfits/factions/nanotrasen.dm
index 93f1ee3a347c..e93c7b4b8e52 100644
--- a/code/modules/clothing/outfits/factions/nanotrasen.dm
+++ b/code/modules/clothing/outfits/factions/nanotrasen.dm
@@ -220,7 +220,6 @@
id = /obj/item/card/id/silver
belt = /obj/item/storage/belt/utility/chief/full
- l_pocket = /obj/item/storage/wallet
ears = /obj/item/radio/headset/headset_com
uniform = /obj/item/clothing/under/nanotrasen/engineering/director
dcoat = /obj/item/clothing/suit/hooded/wintercoat/engineering
diff --git a/code/modules/clothing/outfits/factions/roumain.dm b/code/modules/clothing/outfits/factions/roumain.dm
index 424827e69010..fe31fddd9041 100644
--- a/code/modules/clothing/outfits/factions/roumain.dm
+++ b/code/modules/clothing/outfits/factions/roumain.dm
@@ -19,7 +19,7 @@
name = "Saint-Roumain Militia - Shadow"
id_assignment = "Shadow"
jobtype = /datum/job/assistant
- job_icon = "assistant"
+ job_icon = "srm_shadow"
uniform = /obj/item/clothing/under/suit/roumain
alt_uniform = null
@@ -33,14 +33,40 @@
/datum/outfit/job/roumain/captain
name = "Saint-Roumain Militia - Hunter Montagne"
id_assignment = "Hunter Montagne"
- job_icon = "captain"
+ job_icon = "srm_montagne"
jobtype = /datum/job/captain
+ ears = /obj/item/radio/headset/headset_com/alt
+ uniform = /obj/item/clothing/under/suit/roumain
+ shoes = /obj/item/clothing/shoes/workboots/mining
+ suit = /obj/item/clothing/suit/armor/roumain/montagne
+ head = /obj/item/clothing/head/cowboy/sec/roumain/montagne
+ id = /obj/item/card/id/gold
+
+ duffelbag = /obj/item/storage/backpack/cultpack
+ courierbag = /obj/item/storage/backpack/cultpack
+ backpack = /obj/item/storage/backpack/cultpack
+ satchel = /obj/item/storage/backpack/cultpack
+
+ backpack_contents = list(/obj/item/book/manual/srmlore=1,
+ /obj/item/stamp/chap = 1,
+ /obj/item/melee/classic_baton/telescopic=1,
+ )
+ chameleon_extras = null
+
+// Second-In-Command
+
+/datum/outfit/job/roumain/hop
+ name = "Saint-Roumain Militia - Hunter Colligne"
+ id_assignment = "Hunter Colligne"
+ job_icon = "srm_colligne"
+ jobtype = /datum/job/head_of_personnel
+
ears = /obj/item/radio/headset/headset_com
uniform = /obj/item/clothing/under/suit/roumain
shoes = /obj/item/clothing/shoes/workboots/mining
- suit = /obj/item/clothing/suit/armor/hos/roumain/montagne
- head = /obj/item/clothing/head/HoS/cowboy/montagne
+ suit = /obj/item/clothing/suit/armor/roumain/colligne
+ head = /obj/item/clothing/head/cowboy/sec/roumain/colligne
id = /obj/item/card/id/silver
duffelbag = /obj/item/storage/backpack/cultpack
@@ -58,7 +84,7 @@
name = "Saint-Roumain Militia - Hunter"
id_assignment = "Hunter"
jobtype = /datum/job/officer
- job_icon = "securityofficer"
+ job_icon = "hsrm_hunter"
uniform = /obj/item/clothing/under/suit/roumain
alt_uniform = null
@@ -74,12 +100,34 @@
backpack_contents = null
+// engineer
+
+/datum/outfit/job/roumain/engineer
+ name = "Saint-Roumain Militia - Machinist"
+ id_assignment = "Machinist"
+ job_icon = "srm_machinist"
+ jobtype = /datum/job/engineer
+
+ uniform = /obj/item/clothing/under/suit/roumain
+ alt_uniform = null
+ shoes = /obj/item/clothing/shoes/workboots/mining
+ belt = /obj/item/storage/belt/utility/full/engi
+ suit = /obj/item/clothing/suit/hazardvest/roumain
+ head = /obj/item/clothing/head/cowboy/sec/roumain/machinist
+ accessory = /obj/item/clothing/accessory/waistcoat/roumain
+ gloves = null
+
+ backpack = /obj/item/storage/backpack
+ satchel = /obj/item/storage/backpack/satchel
+ duffelbag = /obj/item/storage/backpack/duffelbag
+ courierbag = /obj/item/storage/backpack/messenger
+
// Medical Doctor
/datum/outfit/job/roumain/doctor
name = "Saint-Roumain Militia - Hunter Doctor"
id_assignment = "Hunter Doctor"
- job_icon = "medicaldoctor"
+ job_icon = "srm_doctor"
jobtype = /datum/job/doctor
uniform = /obj/item/clothing/under/suit/roumain
@@ -94,3 +142,27 @@
satchel = /obj/item/storage/backpack/satchel
duffelbag = /obj/item/storage/backpack/duffelbag
courierbag = /obj/item/storage/backpack/messenger
+
+// Chaplain
+
+/datum/outfit/job/roumain/flamebearer
+ name = "Saint-Roumain Militia - Flamebearer"
+ id_assignment = "Flamebearer"
+ job_icon = "srm_flamebearer"
+ jobtype = /datum/job/chaplain
+
+ uniform = /obj/item/clothing/under/suit/roumain
+ alt_uniform = null
+ shoes = /obj/item/clothing/shoes/workboots/mining
+ suit = /obj/item/clothing/suit/armor/roumain/flamebearer
+ head = /obj/item/clothing/head/cowboy/sec/roumain/flamebearer
+ gloves = null
+
+ duffelbag = /obj/item/storage/backpack/cultpack
+ courierbag = /obj/item/storage/backpack/cultpack
+ backpack = /obj/item/storage/backpack/cultpack
+ satchel = /obj/item/storage/backpack/cultpack
+
+ backpack_contents = list(/obj/item/book/manual/srmlore=1,
+ /obj/item/stamp/chap = 1,
+ )
diff --git a/code/modules/clothing/outfits/factions/syndicate.dm b/code/modules/clothing/outfits/factions/syndicate.dm
index 5e04d87d88c6..03254ed8927e 100644
--- a/code/modules/clothing/outfits/factions/syndicate.dm
+++ b/code/modules/clothing/outfits/factions/syndicate.dm
@@ -22,10 +22,11 @@
//generates a codename and assigns syndicate access, used in the twinkleshine.
/datum/outfit/job/syndicate/proc/assign_codename(mob/living/carbon/human/H)
- var/obj/item/card/id/I = H.wear_id
- I.registered_name = pick(GLOB.twinkle_names) + "-" + num2text(rand(1, 12)) // squidquest real
- I.access |= list(ACCESS_SYNDICATE)
- I.update_label()
+ var/obj/item/card/id/I = H.get_idcard()
+ if(I)
+ I.registered_name = pick(GLOB.twinkle_names) + "-" + num2text(rand(1, 12)) // squidquest real
+ I.access |= list(ACCESS_SYNDICATE)
+ I.update_label()
//and now, for the Assistants
@@ -199,7 +200,7 @@
/datum/outfit/job/syndicate/bartender/post_equip(mob/living/carbon/human/H, visualsOnly)
. = ..()
- var/obj/item/card/id/W = H.wear_id
+ var/obj/item/card/id/W = H.get_idcard()
if(H.age < AGE_MINOR)
W.registered_age = AGE_MINOR
to_chat(H, "You're not technically old enough to access or serve alcohol, but your ID has been discreetly modified to display your age as [AGE_MINOR]. Try to keep that a secret!")
diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm
index 557a69c5acb2..4827186a95c5 100644
--- a/code/modules/clothing/spacesuits/hardsuit.dm
+++ b/code/modules/clothing/spacesuits/hardsuit.dm
@@ -166,7 +166,7 @@
if(L.status)
to_chat(user, "This bulb is too damaged to use as a replacement!")
return
- if(do_after(user, 50, 1, src))
+ if(do_after(user, 50, src))
qdel(I)
helmet = new helmettype(src)
to_chat(user, "You have successfully repaired [src]'s helmet.")
@@ -444,27 +444,6 @@
combat_slowdown = 0.5
jetpack = null
-//Hardliner Syndie suit
-/obj/item/clothing/head/helmet/space/hardsuit/syndi/hl
- name = "white-red hardsuit helmet"
- desc = "An advanced dual-mode helmet derived from ICW-era advanced special operations helmets, its red partly replaced by white. It is in EVA mode. Manufactured by Second Battlegroup."
- alt_desc = "An advanced dual-mode helmet derived from ICW-era advanced special operations helmets, its red partly replaced by white. It is in combat mode. Manufactured by Second Battlegroup."
- icon_state = "hardsuit1-hl"
- item_state = "hardsuit1-hl"
- hardsuit_type = "hl"
-
-/obj/item/clothing/suit/space/hardsuit/syndi/hl
- name = "white-red hardsuit"
- desc = "An advanced dual-mode hardsuit derived from ICW-era advanced special operations hardsuits, its red partly replaced by white. It is in EVA mode. Manufactured by Second Battlegroup."
- alt_desc = "An advanced dual-mode hardsuit derived from ICW-era advanced special operations hardsuits, its red partly replaced by white. It is in combat mode. Manufactured by the Second Battlegroup."
- icon_state = "hardsuit1-hl"
- item_state = "hardsuit1-hl"
- hardsuit_type = "hl"
- helmettype = /obj/item/clothing/head/helmet/space/hardsuit/syndi/hl
- lightweight = 1
- jetpack = null
-
-
//Elite Syndie suit
/obj/item/clothing/head/helmet/space/hardsuit/syndi/elite
name = "elite syndicate hardsuit helmet"
diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm
index ee72151d9567..9dfd23210d9c 100644
--- a/code/modules/clothing/suits/armor.dm
+++ b/code/modules/clothing/suits/armor.dm
@@ -360,27 +360,6 @@
/obj/item/melee/baton,
)
-/obj/item/clothing/suit/armor/roumain
- name = "saint-roumain duster"
- desc = "A coat made from hard leather. Meant to withstand long hunts in harsh wilderness."
- icon_state = "armor_rouma"
- item_state = "rouma_coat"
- body_parts_covered = CHEST|GROIN|ARMS
- cold_protection = CHEST|GROIN|ARMS
- heat_protection = CHEST|GROIN|ARMS
-
-/obj/item/clothing/suit/armor/roumain/shadow
- name = "saint-roumain shadow duster"
- desc = "A coat made from hard leather. Its rough, barely-treated finish is typical of one of the Saint-Roumain Militia's trainees."
- icon_state = "armor_rouma_shadow"
- item_state = "rouma_shadow_coat"
-
-/obj/item/clothing/suit/armor/hos/roumain/montagne
- name = "saint-roumain montagne coat"
- desc = "A stylish red coat to indicate that you are, in fact, a Hunter Montagne. Made of extra hard exotic leather, treated with bullet-resistant materials, and lined with the fur of some unidentifiable creature."
- icon_state = "armor_rouma_montagne"
- item_state = "rouma_montagne_coat"
-
/obj/item/clothing/suit/armor/vest/bulletproof/solgov
name = "\improper Sonnensoldner gambison"
desc = "A standard armor vest fielded for SolGov's Sonnensoldners."
diff --git a/code/modules/clothing/suits/labcoat.dm b/code/modules/clothing/suits/labcoat.dm
index f95a91ab27fe..858b494564e6 100644
--- a/code/modules/clothing/suits/labcoat.dm
+++ b/code/modules/clothing/suits/labcoat.dm
@@ -68,12 +68,6 @@ You're pretty sure this is just a raincoat.
icon_state = "raincoat"
item_state = "raincoat"
-/obj/item/clothing/suit/toggle/labcoat/roumain_med
- name = "saint-roumain medical duster"
- desc = "A coat made from hard leather and further treated with exotic sterilizing oils and wax. The treatment and its more closed design offers much better protection against biological hazards."
- icon_state = "rouma_med_coat"
- armor = list("melee" = 35, "bullet" = 30, "laser" = 30, "energy" = 40, "bomb" = 25, "bio" = 50, "rad" = 0, "fire" = 50, "acid" = 50)
-
/obj/item/clothing/suit/longcoat
name = "longcoat"
desc = "A long, victorian styled labcoat."
diff --git a/code/modules/clothing/under/accessories.dm b/code/modules/clothing/under/accessories.dm
index 76de51b173cd..f7710d52a12d 100644
--- a/code/modules/clothing/under/accessories.dm
+++ b/code/modules/clothing/under/accessories.dm
@@ -381,22 +381,13 @@
//OONGA BOONGA//
////////////////
-/obj/item/clothing/accessory/talisman
- name = "bone talisman"
- desc = "A hunter's talisman, some say the old gods smile on those who wear it."
- icon_state = "talisman"
- armor = list("melee" = 5, "bullet" = 5, "laser" = 5, "energy" = 5, "bomb" = 20, "bio" = 20, "rad" = 5, "fire" = 0, "acid" = 25)
+/obj/item/clothing/accessory/bonearmlet
+ name = "bone armlet"
+ desc = "An armlet made out of animal bone and sinew. According to a common Frontier superstition, it brings good luck to its wearer."
+ icon_state = "bone_armlet"
attachment_slot = ARMS
above_suit = TRUE
-/obj/item/clothing/accessory/wolftalisman
- name = "hunter's necklace"
- desc = "A thick necklace woven from sinew and bits of wolfhide, adorned with a carved fang. Slaying such beasts is rumoured to elate the gods of old, and such an item proves your worth."
- icon_state = "wolf_talisman"
- armor = list("melee" = 15 , "bullet" = 15, "laser" = 10, "energy" = 10, "bomb" = 20, "bio" = 20, "rad" = 5, "fire" = 25, "acid" = 25)
- attachment_slot = CHEST
- above_suit = TRUE
-
/obj/item/clothing/accessory/skullcodpiece
name = "skull codpiece"
desc = "A legion skull fitted to a codpiece, intended to protect the important things in life."
diff --git a/code/modules/clothing/under/suits.dm b/code/modules/clothing/under/suits.dm
index 5344ec98d06b..a0ec0a4da5e5 100644
--- a/code/modules/clothing/under/suits.dm
+++ b/code/modules/clothing/under/suits.dm
@@ -139,12 +139,6 @@
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS|HEAD
flags_inv = HIDEGLOVES|HIDESHOES|HIDEEARS|HIDEEYES|HIDEHAIR
-/obj/item/clothing/under/suit/roumain
- name = "saint-roumain's worksuit"
- desc = "A simple, hard-wearing suit designed for the hardworking hunters of the Saint-Roumain Militia."
- icon_state = "rouma_work"
- item_state = "rouma_work"
-
/obj/item/clothing/under/suit/dresssuit
name = "navy dress-suit"
desc = "A very strange piece of clothing. Mostly navy, but with a pink undershirt. Who would even wear this?"
diff --git a/code/modules/economy/account.dm b/code/modules/economy/account.dm
index 64280475664a..4213ae91376b 100644
--- a/code/modules/economy/account.dm
+++ b/code/modules/economy/account.dm
@@ -1,21 +1,23 @@
/datum/bank_account
var/account_holder = "Rusty Venture"
var/account_balance = 0
+ var/holder_age = 18
var/list/bank_cards = list()
var/add_to_accounts = TRUE
var/account_id
-/datum/bank_account/New(newname, job)
+/datum/bank_account/New(newname, age)
if(add_to_accounts)
SSeconomy.bank_accounts += src
account_holder = newname
+ holder_age = age
account_id = rand(111111,999999)
/datum/bank_account/Destroy()
if(add_to_accounts)
SSeconomy.bank_accounts -= src
- for(var/obj/item/card/id/id_card as anything in bank_cards)
- id_card.registered_account = null
+ for(var/obj/item/card/bank/bank_card as anything in bank_cards)
+ bank_card.registered_account = null
SSeconomy.bank_money -= account_balance
return ..()
@@ -49,10 +51,6 @@
return
for(var/obj/A in bank_cards)
var/icon_source = A
- if(istype(A, /obj/item/card/id))
- var/obj/item/card/id/id_card = A
- if(id_card.uses_overlays)
- icon_source = id_card.get_cached_flat_icon()
var/mob/card_holder = recursive_loc_check(A, /mob)
if(ismob(card_holder)) //If on a mob
if(!card_holder.client || (!(card_holder.client.prefs.chat_toggles & CHAT_BANKCARD) && !force))
diff --git a/code/modules/economy/pay_stand.dm b/code/modules/economy/pay_stand.dm
index af7d9be4b947..9382a03d062e 100644
--- a/code/modules/economy/pay_stand.dm
+++ b/code/modules/economy/pay_stand.dm
@@ -6,14 +6,14 @@
density = TRUE
anchored = TRUE
var/locked = FALSE
- var/obj/item/card/id/my_card
+ var/obj/item/card/bank/my_card
var/obj/item/assembly/signaler/signaler //attached signaler, let people attach signalers that get activated if the user's transaction limit is achieved.
var/signaler_threshold = 0 //signaler threshold amount
var/amount_deposited = 0 //keep track of the amount deposited over time so you can pay multiple times to reach the signaler threshold
var/force_fee = 0 //replaces the "pay whatever" functionality with a set amount when non-zero.
/obj/machinery/paystand/attackby(obj/item/W, mob/user, params)
- if(istype(W, /obj/item/card/id))
+ if(istype(W, /obj/item/card/bank))
if(W == my_card)
if(user.a_intent == INTENT_DISARM)
var/rename_msg = stripped_input(user, "Rename the Paystand:", "Paystand Naming", name)
@@ -31,7 +31,7 @@
to_chat(user, "You [src.locked ? "lock" : "unlock"] the paystand, protecting the bolts from [anchored ? "loosening" : "tightening"].")
return
if(!my_card)
- var/obj/item/card/id/assistant_mains_need_to_die = W
+ var/obj/item/card/bank/assistant_mains_need_to_die = W
if(!assistant_mains_need_to_die.registered_account)
return
var/msg = stripped_input(user, "Name of pay stand:", "Paystand Naming", "[user]'s Awesome Paystand")
@@ -42,7 +42,7 @@
my_card = assistant_mains_need_to_die
to_chat(user, "You link the stand to your account.")
return
- var/obj/item/card/id/vbucks = W
+ var/obj/item/card/bank/vbucks = W
if(vbucks.registered_account)
var/momsdebitcard = 0
if(!force_fee)
diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm
index 2eb4b1e8564b..32c4b1a9a09f 100644
--- a/code/modules/food_and_drinks/drinks/drinks.dm
+++ b/code/modules/food_and_drinks/drinks/drinks.dm
@@ -221,8 +221,8 @@
// Formatting is the same as food.
/obj/item/reagent_containers/food/drinks/coffee
- name = "robust coffee"
- desc = "Careful, the beverage you're about to enjoy is extremely hot."
+ name = "Solar's Best black coffee"
+ desc = "A cup of piping hot black coffee. Made from beans grown across the solar cantons for the caffeine that every spacer needs."
icon_state = "coffee"
list_reagents = list(/datum/reagent/consumable/coffee = 30)
spillable = TRUE
@@ -258,13 +258,13 @@
icon_state = "tea_empty"
/obj/item/reagent_containers/food/drinks/mug/tea
- name = "Duke Purple tea"
- desc = "An insult to Duke Purple is an insult to the Space Queen! Any proper gentleman will fight you, if you sully this tea."
+ name = "Guildmaiden's tea"
+ desc = "Dark tea, made from pressed, fermented tea leaves. Originally from Sol, it became wildly popular among the Rachnid Guilds, and has become a staple."
list_reagents = list(/datum/reagent/consumable/tea = 30)
/obj/item/reagent_containers/food/drinks/mug/coco
- name = "Pearl Hot Chocolate"
- desc = "A rich delicacy from the humid regions of Terra."
+ name = "Solar's Best Hot Cocoa"
+ desc = "A cup of hot water mixed with chocolate and malted milk powder. A classic hot drink from the Solarian Confederation."
list_reagents = list(/datum/reagent/consumable/hot_coco = 15, /datum/reagent/consumable/sugar = 5)
foodtype = SUGAR
resistance_flags = FREEZE_PROOF
@@ -286,7 +286,7 @@
/obj/item/reagent_containers/food/drinks/dry_ramen
name = "cup ramen"
- desc = "Just add 5ml of water, self heats! A taste that reminds you of your school years. Now new with salty flavour!"
+ desc = "A cup full of dried noodles, premixed with a flavor powder. Adding 5 units of water will cause the cup to self-heat, cooking it rapidly. Commonly eaten under dozens of brands, from students to eating on a budget. Always umami!"
icon_state = "ramen"
list_reagents = list(/datum/reagent/consumable/dry_ramen = 15, /datum/reagent/consumable/sodiumchloride = 3)
foodtype = GRAIN
@@ -294,12 +294,12 @@
custom_price = 95
/obj/item/reagent_containers/food/drinks/waterbottle
- name = "bottle of water"
- desc = "A bottle of water filled at an old Earth bottling facility."
+ name = "Ryuunosuke Reserve" //we still have to find a way to make multiple variants as per the plan
+ desc = "Water bottled from a plant somewhere on Ryuunosuke. It has a mild, mineral-y flavor."
icon = 'icons/obj/drinks/drinks.dmi'
icon_state = "smallbottle"
item_state = "bottle"
- list_reagents = list(/datum/reagent/water = 49.5, /datum/reagent/fluorine = 0.5)//see desc, don't think about it too hard
+ list_reagents = list(/datum/reagent/water = 50)
custom_materials = list(/datum/material/plastic=1000)
volume = 50
amount_per_transfer_from_this = 10
@@ -369,8 +369,8 @@
update_appearance()
/obj/item/reagent_containers/food/drinks/beer
- name = "space beer"
- desc = "Beer. In space."
+ name = "Bizircan Brewery GDM" //ditto the plan for bottled water, need to find a way to make multiple variants
+ desc = "A popular Gezenan drink made of fermented honey and spices, known as Gezenan Dark Mead, or GDM for short."
icon_state = "beer"
list_reagents = list(/datum/reagent/consumable/ethanol/beer = 30)
foodtype = GRAIN | ALCOHOL
@@ -382,8 +382,8 @@
list_reagents = list(/datum/reagent/consumable/ethanol/beer/light = 30)
/obj/item/reagent_containers/food/drinks/ale
- name = "Magm-Ale"
- desc = "A true dorf's drink of choice."
+ name = "RHIMBASA TAP"
+ desc = "An ale that is brewed on Reh'himl, named after the planet that shields it from their sun. Telh'aim Pale Ales are shortened to TAP, with most breweries reducing their names to acronyms alongside it."
icon_state = "alebottle"
item_state = "beer"
list_reagents = list(/datum/reagent/consumable/ethanol/ale = 30)
@@ -454,17 +454,17 @@
if(/datum/reagent/consumable/pineapplejuice)
icon_state = "pineapplebox"
name = "pineapple juice box"
- desc = "Why would you even want this?"
+ desc = "Sweet, tart pineapple juice."
foodtype = FRUIT | PINEAPPLE
if(/datum/reagent/consumable/milk/chocolate_milk)
icon_state = "chocolatebox"
name = "carton of chocolate milk"
- desc = "Milk for cool kids!"
+ desc = "Milk mixed with chocolate, a common childhood favorite!"
foodtype = SUGAR
if(/datum/reagent/consumable/ethanol/eggnog)
icon_state = "nog2"
name = "carton of eggnog"
- desc = "For enjoying the most wonderful time of the year."
+ desc = "A carton of eggnog, a drink of choice for celebrating Winter Solstice."
foodtype = MEAT
else
icon_state = "juicebox"
@@ -511,7 +511,7 @@
/obj/item/reagent_containers/food/drinks/flask
name = "flask"
- desc = "Every good spaceman knows it's a good idea to bring along a couple of pints of whiskey wherever they go."
+ desc = "Every good spacer knows it's a good idea to bring along a couple of pints of whiskey wherever they go."
custom_price = 200
icon_state = "flask"
custom_materials = list(/datum/material/iron=250)
@@ -530,10 +530,10 @@
icon_state = "detflask"
list_reagents = list(/datum/reagent/consumable/ethanol/whiskey = 30)
-/obj/item/reagent_containers/food/drinks/britcup
+/obj/item/reagent_containers/food/drinks/mug
name = "cup"
- desc = "A cup with the british flag emblazoned on it."
- icon_state = "britcup"
+ desc = "A mug. Stylishly plain."
+ icon_state = "tea_empty"
volume = 30
spillable = TRUE
@@ -643,35 +643,35 @@
. = ..()
/obj/item/reagent_containers/food/drinks/soda_cans/cola
- name = "Space Cola"
- desc = "Cola. in space."
+ name = "Master Cola"
+ desc = "Originally a commission to the Rachnid culinary guilds from Solarian historical reenactors on creating an authentic cola that, at some point, dominated the globe in popularity, this soft drink comes as close to anyone might be able to taste the sodas of yore... But it's still a pretty alright drink."
icon_state = "cola"
list_reagents = list(/datum/reagent/consumable/space_cola = 30)
foodtype = SUGAR
/obj/item/reagent_containers/food/drinks/soda_cans/tonic
- name = "T-Borg's tonic water"
- desc = "Quinine tastes funny, but at least it'll keep that Space Malaria away."
+ name = "Sixikirtchia's Tonic"
+ desc = "A can of water mixed with quinine, which the label purportedly states that it has more health benefits for the Vox than fending off malaria. Most people use it for mixing drinks, Vox or otherwise."
icon_state = "tonic"
list_reagents = list(/datum/reagent/consumable/tonic = 50)
foodtype = ALCOHOL
/obj/item/reagent_containers/food/drinks/soda_cans/sodawater
- name = "soda water"
- desc = "A can of soda water. Why not make a scotch and soda?"
+ name = "Stitiamix Club"
+ desc = "Mineral-flavored carbonated water, infused on some part of The Shoal. Touts being made out of minerals from embedded asteroids, apparently!"
icon_state = "sodawater"
list_reagents = list(/datum/reagent/consumable/sodawater = 50)
-/obj/item/reagent_containers/food/drinks/soda_cans/lemon_lime
- name = "lemon-lime soda"
- desc = "Is it lemon? Is it lime? The expert opinions vary."
- icon_state = "lemon-lime"
- list_reagents = list(/datum/reagent/consumable/lemon_lime = 30)
+/obj/item/reagent_containers/food/drinks/soda_cans/orange_soda
+ name = "Sol Sparkler: Orange Remembrance"
+ desc = "A line of flavored seltzer water from the Solarian Confederation. Its infamy stems from being flavored sparingly enough to warrant it being referred to as being vague memories of the fruit in question."
+ icon_state = "orange_soda"
+ list_reagents = list(/datum/reagent/consumable/orangejuice = 5, /datum/reagent/consumable/sodawater = 25)
foodtype = FRUIT
/obj/item/reagent_containers/food/drinks/soda_cans/sol_dry
name = "Sol Dry"
- desc = "Maybe this will help your tummy feel better. Maybe not."
+ desc = "A can of ginger ale, known for helping those with upset stomachs. Popularized due to a widespread belief from Solarians that drinking it will alleviate the nausea from bluespace travel."
icon_state = "sol_dry"
list_reagents = list(/datum/reagent/consumable/sol_dry = 30)
foodtype = SUGAR
@@ -683,86 +683,79 @@
list_reagents = list(/datum/reagent/consumable/space_up = 30)
foodtype = SUGAR | JUNKFOOD
-/obj/item/reagent_containers/food/drinks/soda_cans/starkist
- name = "Star-kist"
- desc = "The taste of a star in liquid form. And, a bit of tuna...?"
- icon_state = "starkist"
- list_reagents = list(/datum/reagent/consumable/space_cola = 15, /datum/reagent/consumable/orangejuice = 15)
+/obj/item/reagent_containers/food/drinks/soda_cans/lunapunch
+ name = "Lunapunch"
+ desc = "A soda with a distinctly herbal sweetness and a bitter aftertaste, popular across the C.L.I.P. colonies. Originally marketed as a health soft-drink for members of the CMM, the herbs used in its recipe claim to have health benefits... to dubious results."
+ icon_state = "lunapunch"
+ list_reagents = list(/datum/reagent/consumable/lunapunch = 30)
foodtype = SUGAR | FRUIT | JUNKFOOD
-/obj/item/reagent_containers/food/drinks/soda_cans/space_mountain_wind
- name = "Space Mountain Wind"
- desc = "Blows right through you like a space wind."
- icon_state = "space_mountain_wind"
- list_reagents = list(/datum/reagent/consumable/spacemountainwind = 30)
+/obj/item/reagent_containers/food/drinks/soda_cans/comet_trail
+ name = "Comet Trail"
+ desc = "A citrusy drink from the Kepori space installation known as The Ring. Known for its sharp flavor and refreshing carbonation -- best served cold."
+ icon_state = "comet_trail"
+ list_reagents = list(/datum/reagent/consumable/comet_trail = 30)
foodtype = SUGAR | JUNKFOOD
-/obj/item/reagent_containers/food/drinks/soda_cans/thirteenloko
- name = "Thirteen Loko"
- desc = "The CMO has advised crew members that consumption of Thirteen Loko may result in seizures, blindness, drunkenness, or even death. Please Drink Responsibly."
+/obj/item/reagent_containers/food/drinks/soda_cans/vimukti
+ name = "Vimukti"
+ desc = "A liquor brewed from sweet lichen scraped off the walls of Shoal water condensers. Stamped with the thirteen-spoked wheel of enlightenment. Spiritual Vox consider it to open the mind's boundaries."
icon_state = "thirteen_loko"
- list_reagents = list(/datum/reagent/consumable/ethanol/thirteenloko = 30)
+ list_reagents = list(/datum/reagent/consumable/ethanol/vimukti = 30)
foodtype = SUGAR | JUNKFOOD
-/obj/item/reagent_containers/food/drinks/soda_cans/dr_gibb
- name = "Dr. Gibb"
- desc = "A delicious mixture of 42 different flavors."
- icon_state = "dr_gibb"
- list_reagents = list(/datum/reagent/consumable/dr_gibb = 30)
+/obj/item/reagent_containers/food/drinks/soda_cans/tadrixx
+ name = "Tadrixx"
+ desc = "A Kalixcian drink made from a plant that tastes similar to sassafrass, which is used in root beer. A stumpy drake holding a mug of it is on the front."
+ icon_state = "tadrixx"
+ list_reagents = list(/datum/reagent/consumable/tadrixx = 30)
foodtype = SUGAR | JUNKFOOD
-/obj/item/reagent_containers/food/drinks/soda_cans/pwr_game
- name = "Pwr Game"
- desc = "The only drink with the PWR that true gamers crave. When a gamer talks about gamerfuel, this is what they're literally referring to."
+/obj/item/reagent_containers/food/drinks/soda_cans/pacfuel
+ name = "PAC-Fuel"
+ desc = "A carbonated energy drink themed after the purple coloration, similar to plasma. It seems to have gotten a sponsorship with the the G.E.C., with a special offer for some sort of deal on... gaming gear and industrial equipment?"
icon_state = "purple_can"
- list_reagents = list(/datum/reagent/consumable/pwr_game = 30)
+ list_reagents = list(/datum/reagent/consumable/pacfuel = 30)
-/obj/item/reagent_containers/food/drinks/soda_cans/shamblers
- name = "Shambler's juice"
- desc = "~Shake me up some of that Shambler's Juice!~"
- icon_state = "shamblers"
- list_reagents = list(/datum/reagent/consumable/shamblers = 30)
+/obj/item/reagent_containers/food/drinks/soda_cans/shoal_punch
+ name = "Shoal Punch"
+ desc = "Carbonated fruit soda, made from a mix of dozens of fruits collected and grown on The Shoal. There's an extensive list of potential allergens on the back."
+ icon_state = "shoal_punch"
+ list_reagents = list(/datum/reagent/consumable/shoal_punch = 30)
foodtype = SUGAR | JUNKFOOD
-/obj/item/reagent_containers/food/drinks/soda_cans/grey_bull
- name = "Grey Bull"
- desc = "Grey Bull, it gives you gloves!"
+/obj/item/reagent_containers/food/drinks/soda_cans/crosstalk
+ name = "Crosstalk"
+ desc = "Crosstalk! Share the energy with everyone! The can is a little thin to be passing it around to actually share the energy drink around, though."
icon_state = "energy_drink"
- list_reagents = list(/datum/reagent/consumable/grey_bull = 20)
+ list_reagents = list(/datum/reagent/consumable/crosstalk = 20)
foodtype = SUGAR | JUNKFOOD
-/obj/item/reagent_containers/food/drinks/soda_cans/monkey_energy
- name = "Monkey Energy"
- desc = "Unleash the ape!"
- icon_state = "monkey_energy"
- item_state = "monkey_energy"
- list_reagents = list(/datum/reagent/consumable/monkey_energy = 40, /datum/reagent/consumable/electrolytes = 10)
+/obj/item/reagent_containers/food/drinks/soda_cans/xeno_energy
+ name = "Xeno-Energy"
+ desc = "A sickly green energy drink that poses itself as made from the real blood of xenomorphs. Deeply controversial among the BARD ranks."
+ icon_state = "xeno_energy"
+ item_state = "xeno_energy"
+ list_reagents = list(/datum/reagent/consumable/xeno_energy = 40, /datum/reagent/consumable/electrolytes = 10)
foodtype = SUGAR | JUNKFOOD
-/obj/item/reagent_containers/food/drinks/soda_cans/efuel
- name = "E-Fuel"
- desc = "Shocking for the Elzu!"
- icon_state = "monkey_energy"
- item_state = "monkey_energy"
- list_reagents = list(/datum/reagent/consumable/electrolytes = 50)
-
/obj/item/reagent_containers/food/drinks/soda_cans/air
- name = "canned air"
- desc = "There is no air shortage. Do not drink."
+ name = "Tradewind Canned"
+ desc = "Intended to be filled with air from home planets for the sake of nostalgia after it's initial failure as an emergency method of 'canning air'. Tradewind Canned - a breath from home."
icon_state = "air"
list_reagents = list(/datum/reagent/nitrogen = 24, /datum/reagent/oxygen = 6)
/obj/item/reagent_containers/food/drinks/soda_cans/molten
name = "Molten Bubbles"
- desc = "A spicy cola to cool the nerves and burn the soul."
+ desc = "A spicy soft drink made from a coca-like plant from Kalixcis. Popularly served both cold -and- hot, depending on the weather."
icon_state = "molten"
- list_reagents = list(/datum/reagent/medicine/molten_bubbles = 50)
+ list_reagents = list(/datum/reagent/consumable/molten = 50)
/obj/item/reagent_containers/food/drinks/soda_cans/plasma
name = "Plasma Fizz"
- desc = "A dangerous fusion of flavors!"
+ desc = "A spinoff of the popular Molten Bubbles drink from Kalixcis, made to emulate the flavor of spiced grape instead. It's... not exactly convincing or a very good mix."
icon_state = "plasma"
- list_reagents = list(/datum/reagent/medicine/molten_bubbles/plasma = 50)
+ list_reagents = list(/datum/reagent/consumable/molten/plasma_fizz = 50)
/obj/item/reagent_containers/food/drinks/ration
name = "empty ration pouch"
diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm
index 3ea468d19c1f..57d84ee22397 100644
--- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm
+++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm
@@ -124,20 +124,20 @@
AddComponent(/datum/component/butchering, 200, 55)
/obj/item/reagent_containers/food/drinks/bottle/gin
- name = "Griffeater gin"
- desc = "A bottle of high quality gin, produced in the New London Space Station."
+ name = "Neue Wacholder Gin"
+ desc = "A bottle of high quality gin, cultivated from juniper berries grown across the Solar cantons. Brewed in Stuteföhle."
icon_state = "ginbottle"
list_reagents = list(/datum/reagent/consumable/ethanol/gin = 100)
/obj/item/reagent_containers/food/drinks/bottle/whiskey
- name = "Uncle Git's special reserve"
- desc = "A premium single-malt whiskey, gently matured inside the tunnels of a nuclear shelter. TUNNEL WHISKEY RULES."
+ name = "Kadi-Witka Reserve"
+ desc = "An equivalent to single-malt whiskey, commonly enjoyed and brewed in a brewery originally founded Zohil. While different from traditionally used wheat, it can be safely enjoyed by every species."
icon_state = "whiskeybottle"
list_reagents = list(/datum/reagent/consumable/ethanol/whiskey = 100)
/obj/item/reagent_containers/food/drinks/bottle/kong
name = "Kong"
- desc = "Makes You Go Ape!®"
+ desc = "Makes You Go Ape!"
list_reagents = list(/datum/reagent/consumable/ethanol/whiskey/kong = 100)
/obj/item/reagent_containers/food/drinks/bottle/candycornliquor
@@ -146,8 +146,8 @@
list_reagents = list(/datum/reagent/consumable/ethanol/whiskey/candycorn = 100)
/obj/item/reagent_containers/food/drinks/bottle/vodka
- name = "Tunguska triple distilled"
- desc = "Vodka, prime choice of drink and fuel."
+ name = "Triple Horned"
+ desc = "Potato-based liquor commonly known as Vodka, distilled thrice to the standards of the PGF's requirements for their rations."
icon_state = "vodkabottle"
list_reagents = list(/datum/reagent/consumable/ethanol/vodka = 100)
@@ -158,8 +158,8 @@
list_reagents = list(/datum/reagent/consumable/ethanol/vodka = 100)
/obj/item/reagent_containers/food/drinks/bottle/tequila
- name = "Caccavo guaranteed quality tequila"
- desc = "Made from premium petroleum distillates, pure thalidomide and other fine quality ingredients!"
+ name = "Rimeki Letisa"
+ desc = "Originally made from fermented succulents growing near Teceti's equator-deserts, this brand considers itself equivalent to the original tequila."
icon_state = "tequilabottle"
list_reagents = list(/datum/reagent/consumable/ethanol/tequila = 100)
@@ -173,19 +173,19 @@
/obj/item/reagent_containers/food/drinks/bottle/patron
name = "Wrapp Artiste Patron"
- desc = "Silver laced tequila, served in space night clubs across the galaxy."
+ desc = "Tequila laced with silver, showy enough to impress when ordered in nightclubs across the galaxy."
icon_state = "patronbottle"
list_reagents = list(/datum/reagent/consumable/ethanol/patron = 100)
/obj/item/reagent_containers/food/drinks/bottle/rum
- name = "Captain Pete's Cuban spiced rum"
- desc = "This isn't just rum, oh no. It's practically GRIFF in a bottle."
+ name = "Ahkskra Spiced"
+ desc = "Ahkskra Spiced - a spiced rum for the vox folkhero in everyone. Features a gallant-looking vox on the front of the bottle."
icon_state = "rumbottle"
list_reagents = list(/datum/reagent/consumable/ethanol/rum = 100)
/obj/item/reagent_containers/food/drinks/bottle/holywater
name = "flask of holy water"
- desc = "A flask of the chaplain's holy water."
+ desc = "A flask of water, sanctified in some way by the supertitious."
icon_state = "holyflask"
list_reagents = list(/datum/reagent/water/holywater = 100)
foodtype = NONE
@@ -195,136 +195,94 @@
list_reagents = list(/datum/reagent/hellwater = 100)
/obj/item/reagent_containers/food/drinks/bottle/vermouth
- name = "Goldeneye vermouth"
- desc = "Sweet, sweet dryness~"
+ name = "Whitespear Dry"
+ desc = "Dry and sweet vermouth, commonly used for mixed drinks. Some Solarians drink it as a digestive before meals."
icon_state = "vermouthbottle"
list_reagents = list(/datum/reagent/consumable/ethanol/vermouth = 100)
/obj/item/reagent_containers/food/drinks/bottle/kahlua
- name = "Robert Robust's coffee liqueur"
- desc = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936, HONK."
+ name = "Keh'Lu'Tex Liqueur"
+ desc = "An adapted recipe of a caffeine-mixed liqueur originating from Reh'himl, which replaces it's original ingredient with coffee from Terra."
icon_state = "kahluabottle"
list_reagents = list(/datum/reagent/consumable/ethanol/kahlua = 100)
foodtype = VEGETABLES
/obj/item/reagent_containers/food/drinks/bottle/goldschlager
- name = "College Girl goldschlager"
- desc = "Because they are the only ones who will drink 100 proof cinnamon schnapps."
+ name = "Student-Union's Gold Standard"
+ desc = "Extremely high-proof cinnamon schnapps, typically found in commemorative bottles by those in the Student-Union Association of Naturalistic Sciences. Nigh-undrinkable and with a tasteless amount of gold flakes floating within."
icon_state = "goldschlagerbottle"
list_reagents = list(/datum/reagent/consumable/ethanol/goldschlager = 100)
/obj/item/reagent_containers/food/drinks/bottle/cognac
- name = "Chateau de Baton premium cognac"
- desc = "A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing. You might as well not scream 'SHITCURITY' this time."
+ name = "Geheimnis Cognac"
+ desc = "While the origins of the name 'cognac' are lost to time, this type of brandy is reserved as a high-class drink with particular methods of brewing."
icon_state = "cognacbottle"
list_reagents = list(/datum/reagent/consumable/ethanol/cognac = 100)
/obj/item/reagent_containers/food/drinks/bottle/wine
- name = "Doublebeard's bearded special wine"
- desc = "A faint aura of unease and asspainery surrounds the bottle."
+ name = "Waldstätte Sauvignon"
+ desc = "A bottle of wine, brewed from grapes specifically grown in Neue Waldstätte. You've mostly seen these in bottles sold specifically for tourists."
icon_state = "winebottle"
list_reagents = list(/datum/reagent/consumable/ethanol/wine = 100)
foodtype = FRUIT | ALCOHOL
/obj/item/reagent_containers/food/drinks/bottle/absinthe
- name = "extra-strong absinthe"
- desc = "An strong alcoholic drink brewed and distributed by"
+ name = "Severtail Green"
+ desc = "Strong absinthe brewed in the Pan-Gezenan Federation, with their own transplants of Wormwood gifted to them during the first contact with humankind. If the legend (and label) means anything, the first attempt at brewing this caused some poor sarathi's tail to fall off."
icon_state = "absinthebottle"
list_reagents = list(/datum/reagent/consumable/ethanol/absinthe = 100)
-/obj/item/reagent_containers/food/drinks/bottle/absinthe/Initialize()
- . = ..()
- redact()
-
-/obj/item/reagent_containers/food/drinks/bottle/absinthe/proc/redact()
- // There was a large fight in the coderbus about a player reference
- // in absinthe. Ergo, this is why the name generation is now so
- // complicated. Judge us kindly.
- var/shortname = pickweight(
- list("T&T" = 1, "A&A" = 1, "Generic" = 1))
- var/fullname
- switch(shortname)
- if("T&T")
- fullname = "Teal and Tealer"
- if("A&A")
- fullname = "Ash and Asher"
- if("Generic")
- fullname = "Nanotrasen Cheap Imitations"
- var/removals = list("\[REDACTED\]", "\[EXPLETIVE DELETED\]",
- "\[EXPUNGED\]", "\[INFORMATION ABOVE YOUR SECURITY CLEARANCE\]",
- "\[MOVE ALONG CITIZEN\]", "\[NOTHING TO SEE HERE\]")
- var/chance = 50
-
- if(prob(chance))
- shortname = pick_n_take(removals)
-
- var/list/final_fullname = list()
- for(var/word in splittext(fullname, " "))
- if(prob(chance))
- word = pick_n_take(removals)
- final_fullname += word
-
- fullname = jointext(final_fullname, " ")
-
- // Actually finally setting the new name and desc
- name = "[shortname] [name]"
- desc = "[desc] [fullname] Inc."
-
-
/obj/item/reagent_containers/food/drinks/bottle/absinthe/premium
- name = "Gwyn's premium absinthe"
- desc = "A potent alcoholic beverage, almost makes you forget the ash in your lungs."
+ name = "Chacheyi Gold"
+ desc = "A higher shelf absinthe, distributed primarily from The Shoal. Features the folkhero Chacheyi on the label, alongside their goldgrub companions."
icon_state = "absinthepremium"
-/obj/item/reagent_containers/food/drinks/bottle/absinthe/premium/redact()
- return
-
/obj/item/reagent_containers/food/drinks/bottle/lizardwine
- name = "bottle of 'kalixcis' wine"
- desc = "An alcoholic beverage of sarathi origin, now so widespread that knock-offs can be found everywhere. Check the label for point of origin."
+ name = "bottle of Blueflame Pyrecask"
+ desc = "An alcoholic beverage originating from isolated vineyards on Zohil, maintained by the reclusive religious sects of the Blueflame. Now considered so popular and high quality, imitation bottles can be found everywhere. Check the label for point of origin."
icon_state = "lizardwine"
list_reagents = list(/datum/reagent/consumable/ethanol/lizardwine = 100)
foodtype = FRUIT | ALCOHOL
/obj/item/reagent_containers/food/drinks/bottle/hcider
- name = "Jian Hard Cider"
- desc = "Apple juice for adults."
+ name = "Neue Hamburg Spiced"
+ desc = "One of the main exports of Neue Hamburg - hard, spiced cider. Enjoyed all across the cantons and beyond."
icon_state = "hcider"
volume = 50
list_reagents = list(/datum/reagent/consumable/ethanol/hcider = 50)
/obj/item/reagent_containers/food/drinks/bottle/amaretto
- name = "Luini Amaretto"
- desc = "A gentle and syrup like drink, tastes of almonds and apricots"
+ name = "Lu'Ni'Xer'Nan Amaretto"
+ desc = "A popular Rachnid take on the recipe for Amaretto, which fell to obscurity after only being semi-rediscovered by Solarian historians. Features a semi-reconstructed depiction of a supposed origin story, with the painter Lu'Ni'Xer'Nan and her muse, an innkeeper."
icon_state = "disaronno"
list_reagents = list(/datum/reagent/consumable/ethanol/amaretto = 100)
/obj/item/reagent_containers/food/drinks/bottle/grappa
- name = "Phillipes well-aged Grappa"
- desc = "Bottle of Grappa."
+ name = "Neue Maynila Grappamiel"
+ desc = "A bottle of Grappa, premixed with honey-based spirits. Commonly seen as a drink for recycling grapes after their use in winemaking, and commonly seen as a winter drink."
icon_state = "grappabottle"
list_reagents = list(/datum/reagent/consumable/ethanol/grappa = 100)
/obj/item/reagent_containers/food/drinks/bottle/sake
- name = "Ryo's traditional sake"
- desc = "Sweet as can be, and burns like fire going down."
+ name = "Sakamai Sake"
+ desc = "An alcoholic drink derived from rice, rediscovered by Solarian historians and reintroduced to the best of their ability to reproduce it."
icon_state = "sakebottle"
list_reagents = list(/datum/reagent/consumable/ethanol/sake = 100)
/obj/item/reagent_containers/food/drinks/bottle/sake/Initialize()
. = ..()
if(prob(10))
- name = "Fluffy Tail Sake"
- desc += " On the bottle is a picture of a kitsune with nine touchable tails."
+ name = "Fluffy Tail"
+ desc += "This particular brand's mascot is a human with nine fox tails - which is an impressive amount of genemodding."
icon_state = "sakebottle_k"
else if(prob(10))
name = "Inubashiri's Home Brew"
- desc += " Awoo."
+ desc += "This particular brand's mascot is a human with vaguely canine ears and a tail."
icon_state = "sakebottle_i"
/obj/item/reagent_containers/food/drinks/bottle/fernet
name = "Fernet Bronca"
- desc = "A bottle of pure Fernet Bronca, produced in Cordoba Space Station"
+ desc = "A bitter and aromatic drink, commonly enjoyed in the intersolar cantons due to relaxed alcoholic tariffs from being technically classified as a medicinal beverage. Commonly mixed with cola-based soft drinks."
icon_state = "fernetbottle"
list_reagents = list(/datum/reagent/consumable/ethanol/fernet = 100)
@@ -338,7 +296,7 @@
/obj/item/reagent_containers/food/drinks/bottle/orangejuice
name = "orange juice"
- desc = "Full of vitamins and deliciousness!"
+ desc = "Sweet and tart orange juice. Usually found fortified to make it more nutritious. Full of vitamin C!"
custom_price = 100
icon_state = "orangejuice"
item_state = "carton"
@@ -362,7 +320,7 @@
/obj/item/reagent_containers/food/drinks/bottle/cream
name = "milk cream"
- desc = "It's cream. Made from milk. What else did you think you'd find in there?"
+ desc = "Cream made from milk. It's thicker than milk, which hopefully prevents any mixups."
custom_price = 100
icon_state = "cream"
item_state = "carton"
@@ -374,7 +332,7 @@
/obj/item/reagent_containers/food/drinks/bottle/tomatojuice
name = "tomato juice"
- desc = "Well, at least it LOOKS like tomato juice. You can't tell with all that redness."
+ desc = "Juice from tomatoes and salt. You'll often find some technicians soaking in this if they've been working with plasma."
custom_price = 100
icon_state = "tomatojuice"
item_state = "carton"
@@ -386,7 +344,7 @@
/obj/item/reagent_containers/food/drinks/bottle/limejuice
name = "lime juice"
- desc = "Sweet-sour goodness."
+ desc = "Lime juice. You might want to mix something with this instead of drinking it straight..."
custom_price = 100
icon_state = "limejuice"
item_state = "carton"
@@ -398,7 +356,7 @@
/obj/item/reagent_containers/food/drinks/bottle/pineapplejuice
name = "pineapple juice"
- desc = "Extremely tart, yellow juice."
+ desc = "Tart, sweet juice from the tropical pineapple."
custom_price = 100
icon_state = "pineapplejuice"
item_state = "carton"
@@ -421,8 +379,8 @@
list_reagents = list(/datum/reagent/consumable/menthol = 100)
/obj/item/reagent_containers/food/drinks/bottle/grenadine
- name = "Jester Grenadine"
- desc = "Contains 0% real cherries!"
+ name = "Three-Star Grenadine"
+ desc = "A commonly seen bottle of grenadine - or sweet fruit syrup. It might even contain real cherries, as well as some blackcurrant for color."
custom_price = 100
icon_state = "grenadine"
isGlass = TRUE
@@ -431,8 +389,8 @@
/obj/item/reagent_containers/food/drinks/bottle/applejack
- name = "Buckin' Bronco's Applejack"
- desc = "Kicks like a horse, tastes like an apple!"
+ name = "Mars Lightning"
+ desc = "A strong brandy originating from apples, considered the older sibling to hard cider. Mars Lightning is often partnered with anti-gravity racing companies, leading to it often being served straight or for impromptu mixes."
custom_price = 100
icon_state = "applejack_bottle"
isGlass = TRUE
@@ -440,22 +398,22 @@
foodtype = FRUIT
/obj/item/reagent_containers/food/drinks/bottle/champagne
- name = "Eau d' Dandy Brut Champagne"
- desc = "Finely sourced from only the most pretentious French vineyards."
+ name = "Treu Champagne"
+ desc = "Finely sourced from entire canton planets dedicated to faithful reproduction of pre-Night Of Fire vineyards. Typically enjoyed for celebrations and the turn of new years."
custom_premium_price = 250
icon_state = "champagne_bottle"
isGlass = TRUE
list_reagents = list(/datum/reagent/consumable/ethanol/champagne = 100)
/obj/item/reagent_containers/food/drinks/bottle/blazaam
- name = "Ginbad's Blazaam"
- desc = "You feel like you should give the bottle a good rub before opening."
+ name = "Hyperspace Highball"
+ desc = "Infamously expensive, infamously contains bluespace 'flakes' for bragging rights, and infamously removed from most shelves due to accidents involving teleportation accidents upon ingestion."
icon_state = "blazaambottle"
list_reagents = list(/datum/reagent/consumable/ethanol/blazaam = 100)
/obj/item/reagent_containers/food/drinks/bottle/trappist
- name = "Mont de Requin Trappistes Bleu"
- desc = "Brewed in space-Belgium. Fancy!"
+ name = "Roumain Trapper's"
+ desc = "Traditionally (and heavily monitored for authenticity) made beer brewed on Illestren. Trapper's beer must be brewed by Saint Roumain Hunters or Shadows, made to fit the needs of their community first, and must never be made for profit... which makes it a common sight in the Frontier."
custom_premium_price = 170
icon_state = "trappistbottle"
volume = 50
@@ -463,19 +421,19 @@
/obj/item/reagent_containers/food/drinks/bottle/hooch
name = "hooch bottle"
- desc = "A bottle of rotgut. Its owner has applied some street wisdom to cleverly disguise it as a brown paper bag."
+ desc = "A bottle of homebrewed, low quality alcohol. The paper wrapping is covered in little signatures and messages - how many hands have passed this bottle before you came around?"
icon_state = "hoochbottle"
list_reagents = list(/datum/reagent/consumable/ethanol/hooch = 100)
/obj/item/reagent_containers/food/drinks/bottle/moonshine
name = "moonshine jug"
- desc = "It is said that the ancient Applalacians used these stoneware jugs to capture lightning in a bottle."
+ desc = "High-proof hard liquor, most likely made in the privacy of a bootlegger's ship. Permanent marker on packaging tape is the most you'll get for a label. Remember: if it doesn't burn blue, don't drink it!"
icon_state = "moonshinebottle"
list_reagents = list(/datum/reagent/consumable/ethanol/moonshine = 100)
/obj/item/reagent_containers/food/drinks/bottle/coconut
- name = "Tali's Pure Coconut Delight"
- desc = "Seems to be some promotional product for a Teceti video game. You're pretty certain this stuff is synthetic."
+ name = "T4l1's Pure Coconut Delight"
+ desc = "A fanmade, promotional bottle of coconut cream liquor. There's a stylized picture of a synthetic kepori on the side, along with a blurb about whoever she is. You're pretty certain this stuff is synthetic, despite Teceti growing actual coconut trees..." //if i have to recognize rilena here, I'm going to have fun with it
icon_state = "coconutbottle"
list_reagents = list(/datum/reagent/consumable/ethanol/creme_de_coconut = 100)
isGlass = TRUE
@@ -497,7 +455,7 @@
////////////////////////// MOLOTOV ///////////////////////
/obj/item/reagent_containers/food/drinks/bottle/molotov
name = "molotov cocktail"
- desc = "A throwing weapon used to ignite things, typically filled with an accelerant. Recommended highly by rioters and revolutionaries. Light and toss."
+ desc = "A throwing weapon used to ignite things, typically filled with an accelerant. Recommended highly by desperate militias and revolutionaries. Light and toss."
icon_state = "vodkabottle"
list_reagents = list()
var/active = 0
@@ -557,7 +515,7 @@
/obj/item/reagent_containers/food/drinks/bottle/pruno
name = "pruno mix"
- desc = "A trash bag filled with fruit, sugar, yeast, and water, pulped together into a pungent slurry to be fermented in an enclosed space, traditionally the toilet. Security would love to confiscate this, one of the many things wrong with them."
+ desc = "A trash bag filled with fruit, sugar, yeast, and water, pulped together into a pungent slurry to be fermented in an enclosed space, traditionally the toilet."
icon = 'icons/obj/janitor.dmi'
icon_state = "trashbag"
list_reagents = list(/datum/reagent/consumable/prunomix = 50)
@@ -601,7 +559,7 @@
else
reagents.add_reagent(/datum/reagent/consumable/ethanol/pruno, 50)
name = "bag of pruno"
- desc = "Fermented prison wine made from fruit, sugar, and despair. You probably shouldn't drink this around Security."
+ desc = "Fermented prison wine made from fruit, sugar, and despair."
icon_state = "trashbag1" // pruno releases air as it ferments, we don't want to simulate this in atmos, but we can make it look like it did
for (var/mob/living/M in view(2, get_turf(src))) // letting people and/or narcs know when the pruno is done
to_chat(M, "A pungent smell emanates from [src], like fruit puking out its guts.")
@@ -609,7 +567,7 @@
/obj/item/reagent_containers/food/drinks/colocup/lean
name = "lean"
- desc = "A cup of that purple drank, the stuff that makes you go WHEEZY BABY."
+ desc = "Despite this mix of codeine-based cough syrup and a soft drink of choice being popular online, you're not sure anyone talking about ever tried it. First time for everything?"
icon_state = "lean"
list_reagents = list(/datum/reagent/consumable/lean = 50)
random_sprite = FALSE
@@ -619,7 +577,7 @@
desc = "Sealed for a guaranteed fresh taste in every bottle."
icon_state = "sandbottle"
volume = 50
- list_reagents = list(/datum/reagent/medicine/molten_bubbles/sand = 50)
+ list_reagents = list(/datum/reagent/consumable/molten/sand = 50)
reagent_flags = null //Cap's on
/obj/item/reagent_containers/food/drinks/bottle/sarsaparilla/attack_self(mob/user)
@@ -694,7 +652,7 @@
. = ..()
if(sealed)
var/datum/component/storage/S = GetComponent(/datum/component/storage)
- user.visible_message("[user] prys open \the [src].", "You pry open \the [src]")
+ user.visible_message("[user] pries open \the [src].", "You pry open \the [src]")
playsound(src, 'sound/machines/wooden_closet_close.ogg', 20, 1)
sealed = FALSE
S.locked = FALSE
@@ -704,7 +662,7 @@
/obj/item/storage/bottles/sandblast
name = "sarsaparilla bottle crate"
- desc = "Holds six bottles of the finest sarsaparilla this side of the sector."
+ desc = "Holds six bottles of the finest sarsaparilla this side of the Frontier."
sealed = TRUE
/obj/item/storage/bottles/sandblast/PopulateContents()
diff --git a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm
index 1d7adb7db4f2..2f73f7678e38 100644
--- a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm
+++ b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm
@@ -100,10 +100,6 @@
name = "Space Cola"
list_reagents = list(/datum/reagent/consumable/space_cola = 50)
-/obj/item/reagent_containers/food/drinks/drinkingglass/filled/nuka_cola
- name = "Nuka Cola"
- list_reagents = list(/datum/reagent/consumable/nuka_cola = 50)
-
/obj/item/reagent_containers/food/drinks/drinkingglass/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/reagent_containers/food/snacks/egg)) //breaking eggs
var/obj/item/reagent_containers/food/snacks/egg/E = I
diff --git a/code/modules/food_and_drinks/food/customizables.dm b/code/modules/food_and_drinks/food/customizables.dm
index c4daa88869a7..fc3df2f74713 100644
--- a/code/modules/food_and_drinks/food/customizables.dm
+++ b/code/modules/food_and_drinks/food/customizables.dm
@@ -24,7 +24,7 @@
/obj/item/reagent_containers/food/snacks/customizable/examine(mob/user)
. = ..()
var/ingredients_listed = ""
- for(var/obj/item/reagent_containers/food/snacks/ING in ingredients)
+ for(var/obj/item/ING in ingredients)
ingredients_listed += "[ING.name], "
var/size = "standard"
if(ingredients.len<2)
@@ -36,8 +36,11 @@
. += "It contains [ingredients.len?"[ingredients_listed]":"no ingredient, "]making a [size]-sized [initial(name)]."
/obj/item/reagent_containers/food/snacks/customizable/attackby(obj/item/I, mob/user, params)
- if(!istype(I, /obj/item/reagent_containers/food/snacks/customizable) && istype(I, /obj/item/reagent_containers/food/snacks))
- var/obj/item/reagent_containers/food/snacks/S = I
+ if(istype(I, /obj/item/reagent_containers/food/snacks/customizable))
+ return
+ var/datum/component/edible/E = I.GetComponent(/datum/component/edible)
+ var/obj/item/reagent_containers/food/snacks/S = I
+ if(istype(S) || E)
if(I.w_class > WEIGHT_CLASS_SMALL)
to_chat(user, "The ingredient is too big for [src]!")
else if((ingredients.len >= ingMax) || (reagents.total_volume >= volume))
@@ -47,20 +50,25 @@
else
if(!user.transferItemToLoc(I, src))
return
- if(S.trash)
- S.generate_trash(get_turf(user))
- ingredients += S
- mix_filling_color(S)
- S.reagents.trans_to(src,min(S.reagents.total_volume, 15), transfered_by = user) //limit of 15, we don't want our custom food to be completely filled by just one ingredient with large reagent volume.
- foodtype |= S.foodtype
- update_customizable_overlays(S)
+ ingredients += I
+ I.reagents.trans_to(src,min(S.reagents.total_volume, 15), transfered_by = user) //limit of 15, we don't want our custom food to be completely filled by just one ingredient with large reagent volume.
+ if(istype(S))
+ if(S.trash)
+ S.generate_trash(get_turf(user))
+ mix_filling_color(S.filling_color)
+ foodtype |= S.foodtype
+ update_customizable_overlays(S.filling_color)
+ else
+ mix_filling_color(E.filling_color)
+ foodtype |= E.foodtypes
+ update_customizable_overlays(E.filling_color)
to_chat(user, "You add the [I.name] to the [name].")
- update_food_name(S)
+ update_food_name(I)
else
. = ..()
-/obj/item/reagent_containers/food/snacks/customizable/proc/update_food_name(obj/item/reagent_containers/food/snacks/S)
+/obj/item/reagent_containers/food/snacks/customizable/proc/update_food_name(obj/item/S)
for(var/obj/item/I in ingredients)
if(!istype(S, I.type))
customname = "custom"
@@ -88,25 +96,25 @@
attackby(I, user)
qdel(BASE)
-/obj/item/reagent_containers/food/snacks/customizable/proc/mix_filling_color(obj/item/reagent_containers/food/snacks/S)
+/obj/item/reagent_containers/food/snacks/customizable/proc/mix_filling_color(newcolor)
if(ingredients.len == 1)
- filling_color = S.filling_color
+ filling_color = newcolor
else
var/list/rgbcolor = list(0,0,0,0)
var/customcolor = GetColors(filling_color)
- var/ingcolor = GetColors(S.filling_color)
+ var/ingcolor = GetColors(newcolor)
rgbcolor[1] = (customcolor[1]+ingcolor[1])/2
rgbcolor[2] = (customcolor[2]+ingcolor[2])/2
rgbcolor[3] = (customcolor[3]+ingcolor[3])/2
rgbcolor[4] = (customcolor[4]+ingcolor[4])/2
filling_color = rgb(rgbcolor[1], rgbcolor[2], rgbcolor[3], rgbcolor[4])
-/obj/item/reagent_containers/food/snacks/customizable/update_customizable_overlays(obj/item/reagent_containers/food/snacks/S)
+/obj/item/reagent_containers/food/snacks/customizable/update_customizable_overlays(filling_color = "#FFFFFF")
var/mutable_appearance/filling = mutable_appearance(icon, "[initial(icon_state)]_filling")
- if(S.filling_color == "#FFFFFF")
+ if(filling_color == "#FFFFFF")
filling.color = pick("#FF0000","#0000FF","#008000","#FFFF00")
else
- filling.color = S.filling_color
+ filling.color = filling_color
switch(ingredients_placement)
if(INGREDIENTS_SCATTER)
diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm
index b64d52eea54a..61121a3ca950 100644
--- a/code/modules/food_and_drinks/food/snacks.dm
+++ b/code/modules/food_and_drinks/food/snacks.dm
@@ -167,26 +167,27 @@ All foods are distributed among various categories. Use common sense.
/obj/item/reagent_containers/food/snacks/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/storage))
..() // -> item/attackby()
- return 0
- if(istype(W, /obj/item/reagent_containers/food/snacks))
+ return FALSE
+ var/datum/component/edible/E = W.GetComponent(/datum/component/edible)
+ if(istype(W, /obj/item/reagent_containers/food/snacks) || E)
var/obj/item/reagent_containers/food/snacks/S = W
if(custom_food_type && ispath(custom_food_type))
- if(S.w_class > WEIGHT_CLASS_SMALL)
- to_chat(user, "[S] is too big for [src]!")
- return 0
- if(!S.customfoodfilling || istype(W, /obj/item/reagent_containers/food/snacks/customizable) || istype(W, /obj/item/reagent_containers/food/snacks/pizzaslice/custom) || istype(W, /obj/item/reagent_containers/food/snacks/cakeslice/custom))
- to_chat(user, "[src] can't be filled with [S]!")
- return 0
+ if(W.w_class > WEIGHT_CLASS_SMALL)
+ to_chat(user, span_warning("[S] is too big for [src]!"))
+ return FALSE
+ if(istype(S) && (!S.customfoodfilling || istype(W, /obj/item/reagent_containers/food/snacks/customizable) || istype(W, /obj/item/reagent_containers/food/snacks/pizzaslice/custom) || istype(W, /obj/item/reagent_containers/food/snacks/cakeslice/custom)))
+ to_chat(user, span_warning("[src] can't be filled with [S]!"))
+ return FALSE
if(contents.len >= 20)
- to_chat(user, "You can't add more ingredients to [src]!")
- return 0
+ to_chat(user, span_warning("You can't add more ingredients to [src]!"))
+ return FALSE
var/obj/item/reagent_containers/food/snacks/customizable/C = new custom_food_type(get_turf(src))
- C.initialize_custom_food(src, S, user)
- return 0
+ C.initialize_custom_food(src, W, user)
+ return FALSE
var/sharp = W.get_sharpness()
if(sharp)
if(slice(sharp, W, user))
- return 1
+ return TRUE
else
..()
diff --git a/code/modules/food_and_drinks/food/snacks/meat.dm b/code/modules/food_and_drinks/food/snacks/meat.dm
index e4ccbd1c8f90..6cc7413cbfdd 100644
--- a/code/modules/food_and_drinks/food/snacks/meat.dm
+++ b/code/modules/food_and_drinks/food/snacks/meat.dm
@@ -279,7 +279,7 @@
/obj/item/reagent_containers/food/snacks/meat/slab/gondola
name = "gondola meat"
desc = "According to legends of old, consuming raw gondola flesh grants one inner peace."
- list_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/tranquility = 5, /datum/reagent/consumable/cooking_oil = 3)
+ list_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/cooking_oil = 3)
tastes = list("meat" = 4, "tranquility" = 1)
filling_color = "#9A6750"
cooked_type = /obj/item/reagent_containers/food/snacks/meat/steak/gondola
diff --git a/code/modules/food_and_drinks/food/snacks_cake.dm b/code/modules/food_and_drinks/food/snacks_cake.dm
index a048fb0e4371..d6f6151d47ac 100644
--- a/code/modules/food_and_drinks/food/snacks_cake.dm
+++ b/code/modules/food_and_drinks/food/snacks_cake.dm
@@ -195,7 +195,7 @@
force = 5
hitsound = 'sound/weapons/blade1.ogg'
slice_path = /obj/item/reagent_containers/food/snacks/cakeslice/birthday/energy
- list_reagents = list(/datum/reagent/consumable/nutriment = 10, /datum/reagent/consumable/sprinkles = 10, /datum/reagent/consumable/nutriment/vitamin = 5, /datum/reagent/consumable/pwr_game = 10, /datum/reagent/consumable/liquidelectricity = 10)
+ list_reagents = list(/datum/reagent/consumable/nutriment = 10, /datum/reagent/consumable/sprinkles = 10, /datum/reagent/consumable/nutriment/vitamin = 5, /datum/reagent/consumable/pacfuel = 10, /datum/reagent/consumable/liquidelectricity = 10)
tastes = list("cake" = 3, "a Vlad's Salad" = 1)
/obj/item/reagent_containers/food/snacks/store/cake/birthday/energy/proc/energy_bite(mob/living/user)
@@ -220,7 +220,7 @@
force = 2
hitsound = 'sound/weapons/blade1.ogg'
filling_color = "#00FF00"
- list_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/sprinkles = 2, /datum/reagent/consumable/nutriment/vitamin = 1, /datum/reagent/consumable/pwr_game = 2, /datum/reagent/consumable/liquidelectricity = 2)
+ list_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/sprinkles = 2, /datum/reagent/consumable/nutriment/vitamin = 1, /datum/reagent/consumable/pacfuel = 2, /datum/reagent/consumable/liquidelectricity = 2)
tastes = list("cake" = 3, "a Vlad's Salad" = 1)
/obj/item/reagent_containers/food/snacks/cakeslice/birthday/energy/proc/energy_bite(mob/living/user)
diff --git a/code/modules/food_and_drinks/food/snacks_frozen.dm b/code/modules/food_and_drinks/food/snacks_frozen.dm
index 930fabc31775..e35cb7eeb5fe 100644
--- a/code/modules/food_and_drinks/food/snacks_frozen.dm
+++ b/code/modules/food_and_drinks/food/snacks_frozen.dm
@@ -178,7 +178,7 @@
name = "Space Mountain Wind snowcone"
desc = "Space Mountain Wind drizzled over a snowball in a paper cup."
icon_state = "mountainwind_sc"
- list_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/spacemountainwind = 5)
+ list_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/comet_trail = 5)
tastes = list("ice" = 1, "water" = 1, "mountain wind" = 5)
@@ -186,7 +186,7 @@
name = "pwrgame snowcone"
desc = "Pwrgame soda drizzled over a snowball in a paper cup."
icon_state = "pwrgame_sc"
- list_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/pwr_game = 5)
+ list_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/pacfuel = 5)
tastes = list("ice" = 1, "water" = 1, "valid" = 5, "salt" = 5, "wats" = 5)
/obj/item/reagent_containers/food/snacks/snowcones/honey
diff --git a/code/modules/food_and_drinks/food/snacks_pastry.dm b/code/modules/food_and_drinks/food/snacks_pastry.dm
index 318de66636e7..ee0dd7ab58de 100644
--- a/code/modules/food_and_drinks/food/snacks_pastry.dm
+++ b/code/modules/food_and_drinks/food/snacks_pastry.dm
@@ -538,7 +538,7 @@
name = "\improper Gondola-pocket"
desc = "The choice to use real gondola meat in the recipe is controversial, to say the least." //Only a monster would craft this.
icon_state = "donkpocketgondola"
- list_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/tranquility = 5)
+ list_reagents = list(/datum/reagent/consumable/nutriment = 4)
cooked_type = /obj/item/reagent_containers/food/snacks/donkpocket/warm/gondola
filling_color = "#CD853F"
tastes = list("meat" = 2, "dough" = 2, "inner peace" = 1)
@@ -548,8 +548,8 @@
name = "warm Gondola-pocket"
desc = "The choice to use real gondola meat in the recipe is controversial, to say the least."
icon_state = "donkpocketgondola"
- bonus_reagents = list(/datum/reagent/medicine/omnizine = 1, /datum/reagent/tranquility = 5)
- list_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/medicine/omnizine = 1, /datum/reagent/tranquility = 5)
+ bonus_reagents = list(/datum/reagent/medicine/omnizine = 1)
+ list_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/medicine/omnizine = 1)
tastes = list("meat" = 2, "dough" = 2, "inner peace" = 1)
foodtype = GRAIN
diff --git a/code/modules/food_and_drinks/kitchen_machinery/grill.dm b/code/modules/food_and_drinks/kitchen_machinery/grill.dm
index 4c1a8695d838..f76bdb462539 100644
--- a/code/modules/food_and_drinks/kitchen_machinery/grill.dm
+++ b/code/modules/food_and_drinks/kitchen_machinery/grill.dm
@@ -61,10 +61,10 @@
grill_loop.start()
return
else
- if(I.reagents.has_reagent(/datum/reagent/consumable/monkey_energy))
- grill_fuel += (20 * (I.reagents.get_reagent_amount(/datum/reagent/consumable/monkey_energy)))
+ if(I.reagents.has_reagent(/datum/reagent/consumable/xeno_energy))
+ grill_fuel += (20 * (I.reagents.get_reagent_amount(/datum/reagent/consumable/xeno_energy)))
to_chat(user, "You pour the Monkey Energy in [src].")
- I.reagents.remove_reagent(/datum/reagent/consumable/monkey_energy, I.reagents.get_reagent_amount(/datum/reagent/consumable/monkey_energy))
+ I.reagents.remove_reagent(/datum/reagent/consumable/xeno_energy, I.reagents.get_reagent_amount(/datum/reagent/consumable/xeno_energy))
update_appearance()
return
..()
diff --git a/code/modules/food_and_drinks/recipes/drinks_recipes.dm b/code/modules/food_and_drinks/recipes/drinks_recipes.dm
index acd768347327..2474d1d53501 100644
--- a/code/modules/food_and_drinks/recipes/drinks_recipes.dm
+++ b/code/modules/food_and_drinks/recipes/drinks_recipes.dm
@@ -25,10 +25,6 @@
results = list(/datum/reagent/consumable/hot_ice_coffee = 3)
required_reagents = list(/datum/reagent/toxin/hot_ice = 1, /datum/reagent/consumable/coffee = 2)
-/datum/chemical_reaction/nuka_cola
- results = list(/datum/reagent/consumable/nuka_cola = 6)
- required_reagents = list(/datum/reagent/uranium = 1, /datum/reagent/consumable/space_cola = 6)
-
/datum/chemical_reaction/moonshine
results = list(/datum/reagent/consumable/ethanol/moonshine = 10)
required_reagents = list(/datum/reagent/consumable/nutriment = 5, /datum/reagent/consumable/sugar = 5)
@@ -173,16 +169,12 @@
/datum/chemical_reaction/hiveminderaser
results = list(/datum/reagent/consumable/ethanol/hiveminderaser = 4)
- required_reagents = list(/datum/reagent/consumable/ethanol/black_russian = 2, /datum/reagent/consumable/ethanol/thirteenloko = 1, /datum/reagent/consumable/grenadine = 1)
+ required_reagents = list(/datum/reagent/consumable/ethanol/black_russian = 2, /datum/reagent/consumable/ethanol/vimukti = 1, /datum/reagent/consumable/grenadine = 1)
/datum/chemical_reaction/manhattan
results = list(/datum/reagent/consumable/ethanol/manhattan = 3)
required_reagents = list(/datum/reagent/consumable/ethanol/whiskey = 2, /datum/reagent/consumable/ethanol/vermouth = 1)
-/datum/chemical_reaction/manhattan_proj
- results = list(/datum/reagent/consumable/ethanol/manhattan_proj = 10)
- required_reagents = list(/datum/reagent/consumable/ethanol/manhattan = 10, /datum/reagent/uranium = 1)
-
/datum/chemical_reaction/vodka_tonic
results = list(/datum/reagent/consumable/ethanol/vodkatonic = 3)
required_reagents = list(/datum/reagent/consumable/ethanol/vodka = 2, /datum/reagent/consumable/tonic = 1)
@@ -205,7 +197,7 @@
/datum/chemical_reaction/demonsblood
results = list(/datum/reagent/consumable/ethanol/demonsblood = 4)
- required_reagents = list(/datum/reagent/consumable/ethanol/rum = 1, /datum/reagent/consumable/spacemountainwind = 1, /datum/reagent/blood = 1, /datum/reagent/consumable/dr_gibb = 1)
+ required_reagents = list(/datum/reagent/consumable/ethanol/rum = 1, /datum/reagent/consumable/comet_trail = 1, /datum/reagent/blood = 1, /datum/reagent/consumable/tadrixx = 1)
/datum/chemical_reaction/booger
results = list(/datum/reagent/consumable/ethanol/booger = 4)
@@ -340,8 +332,8 @@
results = list(/datum/reagent/consumable/ethanol/driestmartini = 2)
required_reagents = list(/datum/reagent/consumable/nothing = 1, /datum/reagent/consumable/ethanol/gin = 1)
-/datum/chemical_reaction/thirteenloko
- results = list(/datum/reagent/consumable/ethanol/thirteenloko = 3)
+/datum/chemical_reaction/vimukti
+ results = list(/datum/reagent/consumable/ethanol/vimukti = 3)
required_reagents = list(/datum/reagent/consumable/ethanol/vodka = 1, /datum/reagent/consumable/coffee = 1, /datum/reagent/consumable/limejuice = 1)
/datum/chemical_reaction/chocolatepudding
@@ -368,9 +360,9 @@
results = list(/datum/reagent/consumable/pumpkin_latte = 15)
required_reagents = list(/datum/reagent/consumable/pumpkinjuice = 5, /datum/reagent/consumable/coffee = 5, /datum/reagent/consumable/cream = 5)
-/datum/chemical_reaction/gibbfloats
- results = list(/datum/reagent/consumable/gibbfloats = 15)
- required_reagents = list(/datum/reagent/consumable/dr_gibb = 5, /datum/reagent/consumable/ice = 5, /datum/reagent/consumable/cream = 5)
+/datum/chemical_reaction/tadrixxfloat
+ results = list(/datum/reagent/consumable/tadrixxfloat = 15)
+ required_reagents = list(/datum/reagent/consumable/tadrixx = 5, /datum/reagent/consumable/ice = 5, /datum/reagent/consumable/cream = 5)
/datum/chemical_reaction/triple_citrus
results = list(/datum/reagent/consumable/triple_citrus = 5)
@@ -390,11 +382,6 @@
required_reagents = list(/datum/reagent/consumable/ethanol/whiskey = 1, /datum/reagent/consumable/lemonjuice = 1, /datum/reagent/consumable/sugar = 1)
mix_message = "The mixture darkens to a rich gold hue."
-/datum/chemical_reaction/fetching_fizz
- results = list(/datum/reagent/consumable/ethanol/fetching_fizz = 3)
- required_reagents = list(/datum/reagent/consumable/nuka_cola = 1, /datum/reagent/iron = 1) //Manufacturable from only the mining station
- mix_message = "The mixture slightly vibrates before settling."
-
/datum/chemical_reaction/hearty_punch
results = list(/datum/reagent/consumable/ethanol/hearty_punch = 1) //Very little, for balance reasons
required_reagents = list(/datum/reagent/consumable/ethanol/brave_bull = 5, /datum/reagent/consumable/ethanol/syndicatebomb = 5, /datum/reagent/consumable/ethanol/absinthe = 5)
@@ -438,12 +425,6 @@
results = list(/datum/reagent/consumable/ethanol/eggnog = 15)
required_reagents = list(/datum/reagent/consumable/ethanol/rum = 5, /datum/reagent/consumable/cream = 5, /datum/reagent/consumable/eggyolk = 5)
-/datum/chemical_reaction/narsour
- results = list(/datum/reagent/consumable/ethanol/narsour = 1)
- required_reagents = list(/datum/reagent/blood = 1, /datum/reagent/consumable/lemonjuice = 1, /datum/reagent/consumable/ethanol/demonsblood = 1)
- mix_message = "The mixture develops a sinister glow."
- mix_sound = 'sound/effects/singlebeat.ogg'
-
/datum/chemical_reaction/quadruplesec
results = list(/datum/reagent/consumable/ethanol/quadruple_sec = 15)
required_reagents = list(/datum/reagent/consumable/ethanol/triple_sec = 5, /datum/reagent/consumable/triple_citrus = 5, /datum/reagent/consumable/ethanol/creme_de_menthe = 5)
@@ -525,7 +506,6 @@
results = list(/datum/reagent/consumable/ethanol/fernet_cola = 2)
required_reagents = list(/datum/reagent/consumable/ethanol/fernet = 1, /datum/reagent/consumable/space_cola = 1)
-
/datum/chemical_reaction/fanciulli
results = list(/datum/reagent/consumable/ethanol/fanciulli = 2)
required_reagents = list(/datum/reagent/consumable/ethanol/manhattan = 1, /datum/reagent/consumable/ethanol/fernet = 1)
@@ -536,8 +516,7 @@
/datum/chemical_reaction/blank_paper
results = list(/datum/reagent/consumable/ethanol/blank_paper = 3)
- required_reagents = list(/datum/reagent/consumable/ethanol/silencer = 1, /datum/reagent/consumable/nothing = 1, /datum/reagent/consumable/nuka_cola = 1)
-
+ required_reagents = list(/datum/reagent/consumable/ethanol/silencer = 1, /datum/reagent/consumable/nothing = 1)
/datum/chemical_reaction/wizz_fizz
results = list(/datum/reagent/consumable/ethanol/wizz_fizz = 3)
@@ -545,7 +524,6 @@
mix_message = "The beverage starts to froth with an almost mystical zeal!"
mix_sound = 'sound/effects/bubbles2.ogg'
-
/datum/chemical_reaction/bug_spray
results = list(/datum/reagent/consumable/ethanol/bug_spray = 5)
required_reagents = list(/datum/reagent/consumable/ethanol/triple_sec = 2, /datum/reagent/consumable/lemon_lime = 1, /datum/reagent/consumable/ethanol/rum = 2, /datum/reagent/consumable/ethanol/vodka = 1)
@@ -559,7 +537,7 @@
/datum/chemical_reaction/turbo
results = list(/datum/reagent/consumable/ethanol/turbo = 5)
- required_reagents = list(/datum/reagent/consumable/ethanol/moonshine = 2, /datum/reagent/nitrous_oxide = 1, /datum/reagent/consumable/ethanol/sugar_rush = 1, /datum/reagent/consumable/pwr_game = 1)
+ required_reagents = list(/datum/reagent/consumable/ethanol/moonshine = 2, /datum/reagent/nitrous_oxide = 1, /datum/reagent/consumable/ethanol/sugar_rush = 1, /datum/reagent/consumable/pacfuel = 1)
/datum/chemical_reaction/old_timer
results = list(/datum/reagent/consumable/ethanol/old_timer = 6)
@@ -567,7 +545,7 @@
/datum/chemical_reaction/rubberneck
results = list(/datum/reagent/consumable/ethanol/rubberneck = 10)
- required_reagents = list(/datum/reagent/consumable/ethanol = 4, /datum/reagent/consumable/grey_bull = 5, /datum/reagent/consumable/astrotame = 1)
+ required_reagents = list(/datum/reagent/consumable/ethanol = 4, /datum/reagent/consumable/crosstalk = 5, /datum/reagent/consumable/astrotame = 1)
/datum/chemical_reaction/duplex
results = list(/datum/reagent/consumable/ethanol/duplex = 4)
@@ -629,22 +607,11 @@
required_reagents = list(/datum/reagent/consumable/ethanol/black_russian = 2, /datum/reagent/consumable/ethanol/creme_de_cacao = 2, /datum/reagent/consumable/ethanol/irishcarbomb = 1)
mix_message = "The area around the glass seems to darken as the mixture forms!"
-/datum/chemical_reaction/archmagus_brew
- results = list(/datum/reagent/consumable/ethanol/archmagus_brew = 4)
- required_reagents = list(/datum/reagent/consumable/ethanol/wizz_fizz = 2, /datum/reagent/consumable/ethanol/crevice_spike = 1, /datum/reagent/consumable/ethanol/stinger = 1)
- mix_message = "The mixture bubbles intensely before settling in the glass."
-
/datum/chemical_reaction/out_of_lime
results = list(/datum/reagent/consumable/ethanol/out_of_lime = 4)
required_reagents = list(/datum/reagent/consumable/lemonade = 1, /datum/reagent/consumable/ethanol/beer/green = 1, /datum/reagent/consumable/orangejuice = 1, /datum/reagent/consumable/ethanol/out_of_touch = 1)
mix_message = "The glass cycles through different colors before settling on one."
-/datum/chemical_reaction/cogchamp
- results = list(/datum/reagent/consumable/ethanol/cogchamp = 3)
- required_reagents = list(/datum/reagent/consumable/ethanol/cognac = 1, /datum/reagent/fuel = 1, /datum/reagent/consumable/ethanol/screwdrivercocktail = 1)
- mix_message = "You hear faint sounds of gears turning as it mixes."
- mix_sound = 'sound/effects/clockcult_gateway_closing.ogg'
-
/datum/chemical_reaction/ash_wine
results = list(/datum/reagent/consumable/ethanol/trickwine/ash_wine = 5)
required_reagents = list(/datum/reagent/consumable/ethanol/absinthe = 3, /datum/reagent/ash = 1, /datum/reagent/drug/mushroomhallucinogen = 1)
@@ -671,7 +638,7 @@
/datum/chemical_reaction/force_wine
results = list(/datum/reagent/consumable/ethanol/trickwine/force_wine = 5)
- required_reagents = list(/datum/reagent/consumable/ethanol/tequila = 3, /datum/reagent/calcium = 1, /datum/reagent/consumable/spacemountainwind = 1)
+ required_reagents = list(/datum/reagent/consumable/ethanol/tequila = 3, /datum/reagent/calcium = 1, /datum/reagent/consumable/comet_trail = 1)
required_container = /obj/structure/fermenting_barrel/distiller
mix_sound ='sound/magic/forcewall.ogg'
@@ -680,3 +647,18 @@
required_reagents = list(/datum/reagent/consumable/ethanol/gin = 3, /datum/reagent/toxin/plasma = 1, /datum/reagent/consumable/tinlux = 1)
required_container = /obj/structure/fermenting_barrel/distiller
mix_sound ='sound/weapons/laser.ogg'
+
+/datum/chemical_reaction/molten_bubbles
+ results = list(/datum/reagent/consumable/molten = 30)
+ required_reagents = list(/datum/reagent/clf3 = 10, /datum/reagent/consumable/space_cola = 20, /datum/reagent/medicine/leporazine = 1, /datum/reagent/medicine/lavaland_extract = 1)
+
+/datum/chemical_reaction/plasma_bubbles
+ results = list(/datum/reagent/consumable/molten/plasma_fizz = 3)
+ required_reagents = list(/datum/reagent/consumable/molten = 3, /datum/reagent/toxin/plasma = 2)
+
+/datum/chemical_reaction/sand_bubbles
+ results = list(/datum/reagent/consumable/molten/sand = 3)
+ required_reagents = list(/datum/reagent/consumable/molten = 3, /datum/reagent/silicon = 2)
+
+/datum/chemical_reaction/sand_bubbles/plasma // Subbing plasma bubbles for reg
+ required_reagents = list(/datum/reagent/consumable/molten/plasma_fizz = 3, /datum/reagent/silicon = 2)
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm
index 92647559d9cd..edca42fda076 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm
@@ -27,7 +27,7 @@
name ="Space freezy"
reqs = list(
/datum/reagent/consumable/bluecherryjelly = 5,
- /datum/reagent/consumable/spacemountainwind = 15,
+ /datum/reagent/consumable/comet_trail = 15,
/obj/item/reagent_containers/food/snacks/icecream = 1
)
result = /obj/item/reagent_containers/food/snacks/spacefreezy
@@ -217,7 +217,7 @@
reqs = list(
/obj/item/reagent_containers/food/drinks/sillycup = 1,
/datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/spacemountainwind = 5
+ /datum/reagent/consumable/comet_trail = 5
)
result = /obj/item/reagent_containers/food/snacks/snowcones/spacemountainwind
subcategory = CAT_ICE
@@ -227,7 +227,7 @@
reqs = list(
/obj/item/reagent_containers/food/drinks/sillycup = 1,
/datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/pwr_game = 15
+ /datum/reagent/consumable/pacfuel = 15
)
result = /obj/item/reagent_containers/food/snacks/snowcones/pwrgame
subcategory = CAT_ICE
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm
index ec04dcaa4ec9..cc61c7048fdc 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm
@@ -396,8 +396,7 @@
name = "Gondola-pocket"
reqs = list(
/obj/item/reagent_containers/food/snacks/pastrybase = 1,
- /obj/item/reagent_containers/food/snacks/meatball = 1,
- /datum/reagent/tranquility = 5
+ /obj/item/reagent_containers/food/snacks/meatball = 1
)
result = /obj/item/reagent_containers/food/snacks/donkpocket/gondola
subcategory = CAT_PASTRY
diff --git a/code/modules/jobs/access.dm b/code/modules/jobs/access.dm
index cdd44cab9ae8..550e413f1a59 100644
--- a/code/modules/jobs/access.dm
+++ b/code/modules/jobs/access.dm
@@ -44,6 +44,9 @@
/obj/item/proc/InsertID()
return FALSE
+/obj/item/proc/GetBankCard()
+ return null
+
/obj/proc/text2access(access_text)
. = list()
if(!access_text)
diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm
index 20ad6e089730..f850eded96d4 100644
--- a/code/modules/jobs/job_types/_job.dm
+++ b/code/modules/jobs/job_types/_job.dm
@@ -122,7 +122,7 @@
if(!H)
return FALSE
if(!visualsOnly)
- var/datum/bank_account/bank_account = new(H.real_name, src)
+ var/datum/bank_account/bank_account = new(H.real_name, H.age)
bank_account.adjust_money(officer ? 250 : 100, "starting_money") //just a little bit of money for you
H.account_id = bank_account.account_id
@@ -179,7 +179,9 @@
var/jobtype = null
uniform = /obj/item/clothing/under/color/grey
+ wallet = /obj/item/storage/wallet
id = /obj/item/card/id
+ bank_card = /obj/item/card/bank
back = /obj/item/storage/backpack
shoes = /obj/item/clothing/shoes/sneakers/black
box = /obj/item/storage/box/survival
@@ -268,7 +270,7 @@
if(!J)
J = GLOB.name_occupations[H.job]
- var/obj/item/card/id/C = H.wear_id
+ var/obj/item/card/id/C = H.get_idcard(TRUE)
if(istype(C))
C.access = J.get_access()
shuffle_inplace(C.access) // Shuffle access list to make NTNet passkeys less predictable
@@ -285,14 +287,17 @@
if(id_assignment)
C.assignment = id_assignment
C.update_label()
- for(var/A in SSeconomy.bank_accounts)
- var/datum/bank_account/B = A
- if(B.account_id == H.account_id)
- C.registered_account = B
- B.bank_cards += C
- break
H.sec_hud_set_ID()
+ var/obj/item/card/bank/bank_card = H.get_bankcard()
+ if(istype(bank_card))
+ for(var/account in SSeconomy.bank_accounts)
+ var/datum/bank_account/bank_account = account
+ if(bank_account.account_id == H.account_id)
+ bank_card.registered_account = bank_account
+ bank_account.bank_cards += bank_card
+ break
+
var/obj/item/pda/PDA = H.get_item_by_slot(pda_slot)
if(istype(PDA))
PDA.owner = H.real_name
diff --git a/code/modules/jobs/job_types/bartender.dm b/code/modules/jobs/job_types/bartender.dm
index 9c5d28e693e8..994f34404efc 100644
--- a/code/modules/jobs/job_types/bartender.dm
+++ b/code/modules/jobs/job_types/bartender.dm
@@ -27,7 +27,7 @@
/datum/outfit/job/bartender/post_equip(mob/living/carbon/human/H, visualsOnly)
. = ..()
- var/obj/item/card/id/W = H.wear_id
+ var/obj/item/card/id/W = H.get_idcard()
if(H.age < AGE_MINOR)
W.registered_age = AGE_MINOR
to_chat(H, "You're not technically old enough to access or serve alcohol, but your ID has been discreetly modified to display your age as [AGE_MINOR]. Try to keep that a secret!")
diff --git a/code/modules/jobs/job_types/cargo_technician.dm b/code/modules/jobs/job_types/cargo_technician.dm
index 3fa729969013..7e84efd98de7 100644
--- a/code/modules/jobs/job_types/cargo_technician.dm
+++ b/code/modules/jobs/job_types/cargo_technician.dm
@@ -4,7 +4,7 @@
outfit = /datum/outfit/job/cargo_tech
- access = list(ACCESS_MAINT_TUNNELS, ACCESS_MAILSORTING, ACCESS_CARGO, ACCESS_QM, ACCESS_MINING, ACCESS_MECH_MINING, ACCESS_MINING_STATION, ACCESS_MINERAL_STOREROOM)
+ access = list(ACCESS_MAINT_TUNNELS, ACCESS_MAILSORTING, ACCESS_CARGO, ACCESS_MINING, ACCESS_MECH_MINING, ACCESS_MINING_STATION, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_MAINT_TUNNELS, ACCESS_CARGO, ACCESS_MAILSORTING, ACCESS_MINERAL_STOREROOM)
display_order = JOB_DISPLAY_ORDER_CARGO_TECHNICIAN
diff --git a/code/modules/jobs/job_types/shaft_miner.dm b/code/modules/jobs/job_types/shaft_miner.dm
index 2cf67b9bbf70..1469e592b4de 100644
--- a/code/modules/jobs/job_types/shaft_miner.dm
+++ b/code/modules/jobs/job_types/shaft_miner.dm
@@ -4,7 +4,7 @@
outfit = /datum/outfit/job/miner
- access = list(ACCESS_MAINT_TUNNELS, ACCESS_MAILSORTING, ACCESS_CARGO, ACCESS_QM, ACCESS_MINING, ACCESS_MECH_MINING, ACCESS_MINING_STATION, ACCESS_MINERAL_STOREROOM)
+ access = list(ACCESS_MAINT_TUNNELS, ACCESS_MAILSORTING, ACCESS_CARGO, ACCESS_MINING, ACCESS_MECH_MINING, ACCESS_MINING_STATION, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_MINING, ACCESS_MECH_MINING, ACCESS_MINING_STATION, ACCESS_MAILSORTING, ACCESS_MINERAL_STOREROOM)
display_order = JOB_DISPLAY_ORDER_SHAFT_MINER
diff --git a/code/modules/mining/drill.dm b/code/modules/mining/drill.dm
index 281097be7842..9a35c2b4bf11 100644
--- a/code/modules/mining/drill.dm
+++ b/code/modules/mining/drill.dm
@@ -218,7 +218,7 @@
/obj/machinery/drill/AltClick(mob/user)
if(active)
to_chat(user, "You begin the manual shutoff process.")
- if(do_after(user,10))
+ if(do_after(user, 10, src))
active = FALSE
soundloop.stop()
deltimer(current_timerid)
diff --git a/code/modules/mining/machine_redemption.dm b/code/modules/mining/machine_redemption.dm
index d0704887b4ea..2b3e379691c9 100644
--- a/code/modules/mining/machine_redemption.dm
+++ b/code/modules/mining/machine_redemption.dm
@@ -249,7 +249,7 @@
switch(action)
if("Claim")
var/mob/M = usr
- var/obj/item/card/id/I = M.get_idcard(TRUE)
+ var/obj/item/card/bank/I = M.get_bankcard()
if(points)
if(I)
I.mining_points += points
diff --git a/code/modules/mining/ore_veins.dm b/code/modules/mining/ore_veins.dm
index 0df6cd187d03..cfd908c23cbb 100644
--- a/code/modules/mining/ore_veins.dm
+++ b/code/modules/mining/ore_veins.dm
@@ -176,6 +176,7 @@ GLOBAL_LIST_EMPTY(ore_veins)
/obj/item/stack/ore/titanium = 2,
/obj/item/stack/ore/gold = 1,
/obj/item/stack/ore/diamond = 1,
+ /obj/item/stack/ore/ice = 7,
)
/obj/structure/vein/ice/classtwo
@@ -190,6 +191,7 @@ GLOBAL_LIST_EMPTY(ore_veins)
/obj/item/stack/ore/diamond = 2,
/obj/item/stack/ore/gold = 3,
/obj/item/stack/ore/bluespace_crystal = 1,
+ /obj/item/stack/ore/ice = 8,
)
max_mobs = 6
spawn_time = 100
@@ -206,6 +208,7 @@ GLOBAL_LIST_EMPTY(ore_veins)
/obj/item/stack/ore/diamond = 4,
/obj/item/stack/ore/gold = 6,
/obj/item/stack/ore/bluespace_crystal = 4,
+ /obj/item/stack/ore/ice = 8,
)
max_mobs = 6
spawn_time = 80
diff --git a/code/modules/mining/ores_coins.dm b/code/modules/mining/ores_coins.dm
index 1dfe590cac0a..55130b0a20d7 100644
--- a/code/modules/mining/ores_coins.dm
+++ b/code/modules/mining/ores_coins.dm
@@ -247,6 +247,17 @@ GLOBAL_LIST_INIT(sand_recipes, list(\
item_state = "slag"
singular_name = "slag chunk"
+/obj/item/stack/ore/ice
+ name = "ice crystals"
+ desc = "Used in an electrolyzer to produce hydrogen and oxygen."
+ icon_state = "Ice ore"
+ item_state = "Ice ore"
+ singular_name = "ice chunk"
+ scan_state = "rock_Ice"
+ mine_experience = 2
+ grind_results = list(/datum/reagent/consumable/ice = 10)
+ spreadChance = 10
+
/obj/item/gibtonite
name = "gibtonite ore"
desc = "Extremely explosive if struck with mining equipment, Gibtonite is often used by miners to speed up their work by using it as a mining charge. This material is illegal to possess by unauthorized personnel under space law."
diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm
index 11eeef8b4a8e..d692e36345cb 100644
--- a/code/modules/mob/living/carbon/alien/alien.dm
+++ b/code/modules/mob/living/carbon/alien/alien.dm
@@ -21,7 +21,6 @@
bubble_icon = "alien"
type_of_meat = /obj/item/reagent_containers/food/snacks/meat/slab/xeno
- var/obj/item/card/id/wear_id = null // Fix for station bounced radios -- Skie
var/has_fine_manipulation = FALSE
status_flags = CANUNCONSCIOUS|CANPUSH
diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm
index 916095ed266e..43cefa251e34 100644
--- a/code/modules/mob/living/carbon/carbon_defense.dm
+++ b/code/modules/mob/living/carbon/carbon_defense.dm
@@ -1,7 +1,7 @@
/mob/living/carbon/attackby(obj/item/W, mob/user, params)
var/obj/item/bodypart/BP = get_bodypart(check_zone(user.zone_selected))
- var/has_painkillers = user.reagents.has_reagent(/datum/reagent/medicine/morphine, needs_metabolizing = TRUE)
- if(W.tool_behaviour == TOOL_WELDER && IS_ROBOTIC_LIMB(BP) && BP.brute_dam > 5) //prioritize healing if we're synthetic
+ var/has_painkillers = reagents.has_reagent(/datum/reagent/medicine/morphine, needs_metabolizing = TRUE)
+ if(W.tool_behaviour == TOOL_WELDER && IS_ROBOTIC_LIMB(BP) && BP.brute_dam) //prioritize healing if we're synthetic
return ..()
if(user.a_intent != INTENT_HELP || !W.get_temperature() || !BP.can_bandage()) //this will also catch low damage synthetic welding
return ..()
diff --git a/code/modules/mob/living/carbon/carbon_defines.dm b/code/modules/mob/living/carbon/carbon_defines.dm
index a7dc41b307c4..8743fe33289e 100644
--- a/code/modules/mob/living/carbon/carbon_defines.dm
+++ b/code/modules/mob/living/carbon/carbon_defines.dm
@@ -27,6 +27,7 @@
var/obj/item/tank/internal = null
var/obj/item/clothing/head = null
+ var/obj/item/wear_id = null //only used by humans
var/obj/item/clothing/gloves = null ///only used by humans
var/obj/item/clothing/shoes/shoes = null ///only used by humans.
var/obj/item/clothing/glasses/glasses = null ///only used by humans.
diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm
index ae867d518eb5..da75efa5265a 100644
--- a/code/modules/mob/living/carbon/human/emote.dm
+++ b/code/modules/mob/living/carbon/human/emote.dm
@@ -106,7 +106,7 @@
/datum/emote/living/carbon/human/tailthump/get_sound(mob/living/user)
if(!ishuman(user))
return
- if(islizard(user) || (isvox(user)))
+ if(!isnull(user.getorgan(/obj/item/organ/tail)) || (isvox(user)))
return 'sound/voice/lizard/tailthump.ogg' //https://freesound.org/people/TylerAM/sounds/389665/
/datum/emote/living/carbon/human/weh //lizard
@@ -346,6 +346,7 @@
key_third_person = "whistles"
message = "whistles!"
emote_type = EMOTE_AUDIBLE
+ vary = TRUE
/datum/emote/living/carbon/human/kepiwhistle/get_sound(mob/living/user)
if(!ishuman(user))
@@ -357,3 +358,4 @@
key = "woop"
key_third_person = "woops"
message = "woops!"
+ emote_type = EMOTE_AUDIBLE
diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm
index 6556335c2bdb..567523c11d79 100644
--- a/code/modules/mob/living/carbon/human/human_defines.dm
+++ b/code/modules/mob/living/carbon/human/human_defines.dm
@@ -54,7 +54,6 @@
var/obj/item/clothing/wear_suit = null
var/obj/item/clothing/w_uniform = null
var/obj/item/belt = null
- var/obj/item/wear_id = null
var/obj/item/r_store = null
var/obj/item/l_store = null
var/obj/item/s_store = null
diff --git a/code/modules/mob/living/carbon/human/human_helpers.dm b/code/modules/mob/living/carbon/human/human_helpers.dm
index 5d8264c14ac3..9e2cfe4f1556 100644
--- a/code/modules/mob/living/carbon/human/human_helpers.dm
+++ b/code/modules/mob/living/carbon/human/human_helpers.dm
@@ -101,6 +101,22 @@
if(id_card)
return id_card
+/mob/living/carbon/human/get_bankcard()
+ //Check hands
+ var/list/items_to_check = list()
+ if(get_active_held_item())
+ items_to_check += get_active_held_item()
+ if(get_inactive_held_item())
+ items_to_check += get_inactive_held_item()
+ if(wear_id)
+ items_to_check += wear_id
+ if(belt)
+ items_to_check += belt
+ for(var/obj/item/i in items_to_check)
+ var/obj/item/card/bank/bank_card = i.GetBankCard()
+ if(bank_card)
+ return bank_card
+
/mob/living/carbon/human/get_id_in_hand()
var/obj/item/held_item = get_active_held_item()
if(!held_item)
@@ -137,10 +153,10 @@
to_chat(src, "You can't bring yourself to use a ranged weapon!")
return FALSE
-/mob/living/carbon/human/proc/get_bank_account()
+/mob/living/carbon/proc/get_bank_account()
RETURN_TYPE(/datum/bank_account)
var/datum/bank_account/account
- var/obj/item/card/id/I = get_idcard()
+ var/obj/item/card/bank/I = get_bankcard()
if(I && I.registered_account)
account = I.registered_account
diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm
index e061cd5c9793..e2a01d29540c 100644
--- a/code/modules/mob/living/carbon/human/species.dm
+++ b/code/modules/mob/living/carbon/human/species.dm
@@ -1179,7 +1179,9 @@ GLOBAL_LIST_EMPTY(roundstart_races)
return FALSE
return equip_delay_self_check(I, H, bypass_equip_delay_self)
if(ITEM_SLOT_ID)
- if(H.wear_id && !swap)
+ if(H.wear_id)
+ if(SEND_SIGNAL(H.wear_id, COMSIG_TRY_STORAGE_CAN_INSERT, I, H, TRUE))
+ return TRUE
return FALSE
var/obj/item/bodypart/O = H.get_bodypart(BODY_ZONE_CHEST)
diff --git a/code/modules/mob/living/carbon/human/species_types/ethereal.dm b/code/modules/mob/living/carbon/human/species_types/ethereal.dm
index 4ad5297b73d9..27362b348cab 100644
--- a/code/modules/mob/living/carbon/human/species_types/ethereal.dm
+++ b/code/modules/mob/living/carbon/human/species_types/ethereal.dm
@@ -271,7 +271,7 @@
var/static/mutable_appearance/overcharge //shameless copycode from lightning spell
overcharge = overcharge || mutable_appearance('icons/effects/effects.dmi', "electricity", EFFECTS_LAYER)
_human.add_overlay(overcharge)
- if(do_after(_human, 50, _human, 1))
+ if(do_after(_human, 50, _human, TRUE))
_human.flash_lighting_fx(5, 7, current_color)
var/obj/item/organ/stomach/ethereal/stomach = _human.getorganslot(ORGAN_SLOT_STOMACH)
playsound(_human, 'sound/magic/lightningshock.ogg', 100, TRUE, extrarange = 5)
diff --git a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm
index 30f3d5f74b58..14526059354d 100644
--- a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm
+++ b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm
@@ -313,7 +313,7 @@
H.notransform = TRUE
- if(do_after(owner, delay=60, target=owner, progress=TRUE, timed_action_flags = IGNORE_HELD_ITEM))
+ if(do_after(owner, delay = 60, target = owner, progress = TRUE, timed_action_flags = IGNORE_HELD_ITEM))
if(H.blood_volume >= BLOOD_VOLUME_SLIME_SPLIT)
make_dupe()
else
diff --git a/code/modules/mob/living/carbon/human/species_types/kepori.dm b/code/modules/mob/living/carbon/human/species_types/kepori.dm
index 3278d3d77c1e..7e76fff79c1e 100644
--- a/code/modules/mob/living/carbon/human/species_types/kepori.dm
+++ b/code/modules/mob/living/carbon/human/species_types/kepori.dm
@@ -10,7 +10,7 @@
disliked_food = FRIED | GROSS | CLOTH
liked_food = MEAT | GORE
changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_MAGIC | MIRROR_PRIDE | ERT_SPAWN | RACE_SWAP | SLIME_EXTRACT
- loreblurb = "Kepori are a species covered in feathers vaguely reminiscent of earth’s extinct troodontidae. They’re small and sometimes seen as weak by other species due to their hollow bones but make up for that in speed and reflexes. Those found in space are commonly known as rollaways. They tend to woop when excited, scared, or for any other reason at all."
+ loreblurb = "Kepori are a species covered in feathers vaguely reminiscent of earth’s extinct troodontidae. They’re small and sometimes seen as weak by other species due to their hollow bones but make up for that in speed and reflexes. They tend to woop when excited, scared, or for any other reason at all."
attack_verb = "slash"
attack_sound = 'sound/weapons/slash.ogg'
miss_sound = 'sound/weapons/slashmiss.ogg'
diff --git a/code/modules/mob/living/carbon/human/species_types/spider.dm b/code/modules/mob/living/carbon/human/species_types/spider.dm
index 9c0f58dc8312..764a7166ff2d 100644
--- a/code/modules/mob/living/carbon/human/species_types/spider.dm
+++ b/code/modules/mob/living/carbon/human/species_types/spider.dm
@@ -147,7 +147,7 @@ GLOBAL_LIST_INIT(spider_last, world.file2list("strings/names/spider_last.txt"))
var/nutrition_threshold = NUTRITION_LEVEL_FED
if (H.nutrition >= nutrition_threshold)
to_chat(H, "You begin spinning some web...")
- if(!do_after(H, 10 SECONDS, 1, T))
+ if(!do_after(H, 10 SECONDS, T, hidden = TRUE))
to_chat(H, "Your web spinning was interrupted!")
return
if(prob(75))
@@ -208,7 +208,7 @@ GLOBAL_LIST_INIT(spider_last, world.file2list("strings/names/spider_last.txt"))
to_chat(H, "You cannot wrap this.")
return
H.visible_message("[H] starts to wrap [A] into a cocoon!","You start to wrap [A] into a cocoon.")
- if(!do_after(H, 10 SECONDS, 1, A))
+ if(!do_after(H, 10 SECONDS, A, hidden = TRUE))
to_chat(H, "Your web spinning was interrupted!")
return
H.adjust_nutrition(E.spinner_rate * -3.5)
diff --git a/code/modules/mob/living/carbon/inventory.dm b/code/modules/mob/living/carbon/inventory.dm
index 7a995dea28da..d5b97a942da2 100644
--- a/code/modules/mob/living/carbon/inventory.dm
+++ b/code/modules/mob/living/carbon/inventory.dm
@@ -84,6 +84,9 @@
if(ITEM_SLOT_BACKPACK)
if(!back || !SEND_SIGNAL(back, COMSIG_TRY_STORAGE_INSERT, I, src, TRUE))
not_handled = TRUE
+ if(ITEM_SLOT_ID)
+ if(!wear_id || !SEND_SIGNAL(wear_id, COMSIG_TRY_STORAGE_INSERT, I, src, TRUE))
+ not_handled = TRUE
else
not_handled = TRUE
diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm
index 6a66c0546f6e..755c674a107d 100644
--- a/code/modules/mob/living/carbon/monkey/monkey.dm
+++ b/code/modules/mob/living/carbon/monkey/monkey.dm
@@ -75,8 +75,6 @@
var/amount
if(reagents.has_reagent(/datum/reagent/medicine/morphine))
amount = -1
- if(reagents.has_reagent(/datum/reagent/consumable/nuka_cola))
- amount = -1
if(amount)
add_or_update_variable_movespeed_modifier(/datum/movespeed_modifier/monkey_reagent_speedmod, TRUE, amount)
diff --git a/code/modules/mob/living/silicon/pai/pai_defense.dm b/code/modules/mob/living/silicon/pai/pai_defense.dm
index ec49e59ecace..4a3e284addd6 100644
--- a/code/modules/mob/living/silicon/pai/pai_defense.dm
+++ b/code/modules/mob/living/silicon/pai/pai_defense.dm
@@ -50,7 +50,7 @@
user.do_attack_animation(src)
if (user.name == master)
visible_message("Responding to its master's touch, [src] disengages its holochassis emitter, rapidly losing coherence.")
- if(do_after(user, 1 SECONDS, TRUE, src))
+ if(do_after(user, 1 SECONDS, src, hidden = TRUE))
fold_in()
if(user.put_in_hands(card))
user.visible_message("[user] promptly scoops up [user.p_their()] pAI's card.")
diff --git a/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm b/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm
index 104d4363bc3b..16f377cb1b01 100644
--- a/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm
+++ b/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm
@@ -17,7 +17,7 @@
if("Cannibalize")
if(D.health < D.maxHealth)
D.visible_message("[D] begins to cannibalize parts from [src].", "You begin to cannibalize parts from [src]...")
- if(do_after(D, 60, 0, target = src))
+ if(do_after(D, 60, src, FALSE))
D.visible_message("[D] repairs itself using [src]'s remains!", "You repair yourself using [src]'s remains.")
D.adjustBruteLoss(-src.maxHealth)
new /obj/effect/decal/cleanable/oil/streak(get_turf(src))
diff --git a/code/modules/mob/living/simple_animal/friendly/mouse.dm b/code/modules/mob/living/simple_animal/friendly/mouse.dm
index cf1b0de8ae70..f2fbf6e5b262 100644
--- a/code/modules/mob/living/simple_animal/friendly/mouse.dm
+++ b/code/modules/mob/living/simple_animal/friendly/mouse.dm
@@ -165,7 +165,7 @@ GLOBAL_VAR_INIT(mouse_killed, 0)
visible_message(
"[src] starts eating away [A]...",
"You start eating the [A]...")
- if(do_after(src, 30, FALSE, A))
+ if(do_after(src, 30, A, hidden = TRUE))
if(QDELETED(A))
return
visible_message(
diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/brimdemon.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/brimdemon.dm
index 815bfca00028..769f6ce3d5fa 100644
--- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/brimdemon.dm
+++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/brimdemon.dm
@@ -14,7 +14,7 @@
emote_hear = list("cackles","screeches")
stat_attack = CONSCIOUS
ranged_cooldown_time = 5 SECONDS
- vision_range = 9
+ vision_range = 6
retreat_distance = 2
speed = 3
move_to_delay = 5
@@ -98,7 +98,7 @@
visible_message(span_danger("[src] starts charging!"))
balloon_alert(src, "charging...")
to_chat(src, "You begin to charge up...")
- addtimer(CALLBACK(src, PROC_REF(fire_laser)), 1 SECONDS)
+ fire_laser()
COOLDOWN_START(src, ranged_cooldown, ranged_cooldown_time)
/mob/living/simple_animal/hostile/asteroid/brimdemon/Moved(atom/old_loc, movement_dir, forced, list/old_locs, momentum_change = TRUE)
@@ -115,10 +115,6 @@
/mob/living/simple_animal/hostile/asteroid/brimdemon/proc/fire_laser()
if(stat == DEAD)
return
- visible_message(span_danger("[src] fires a brimbeam!"))
- balloon_alert(src, "brimbeam fired")
- playsound(src, 'sound/creatures/brimdemon.ogg', 150, FALSE, 0, 3)
- cut_overlay("brimdemon_telegraph_dir")
var/turf/target_turf = get_ranged_target_turf(src, dir, BRIMBEAM_RANGE)
var/turf/origin_turf = get_turf(src)
var/list/affected_turfs = get_line(origin_turf, target_turf) - origin_turf
@@ -135,15 +131,30 @@
var/atom/new_brimbeam = new /obj/effect/brimbeam(affected_turf)
new_brimbeam.dir = dir
beamparts += new_brimbeam
- for(var/mob/living/hit_mob in affected_turf.contents)
- hit_mob.adjustFireLoss(35)
- to_chat(hit_mob, span_userdanger("You're hit by [src]'s brimbeam!"))
+ animate(new_brimbeam, 1 SECONDS, alpha = 255)
if(length(beamparts))
var/atom/last_brimbeam = beamparts[length(beamparts)]
last_brimbeam.icon_state = "brimbeam_end"
var/atom/first_brimbeam = beamparts[1]
first_brimbeam.icon_state = "brimbeam_start"
- addtimer(CALLBACK(src, PROC_REF(end_laser)), 2 SECONDS)
+ addtimer(CALLBACK(src, PROC_REF(kill_people)), 1 SECONDS)
+ addtimer(CALLBACK(src, PROC_REF(end_laser)), 3 SECONDS)
+
+/// Tells the lasers to start murdering people
+/mob/living/simple_animal/hostile/asteroid/brimdemon/proc/kill_people()
+ if(stat == DEAD)
+ end_laser()
+ return
+ playsound(src, 'sound/creatures/brimdemon.ogg', 150, FALSE, 0, 3)
+ visible_message(span_danger("[src] fires a brimbeam!"))
+ balloon_alert(src, "brimbeam fired")
+ cut_overlay("brimdemon_telegraph_dir")
+ for(var/obj/effect/brimbeam/beam in beamparts)
+ var/turf/affected_turf = get_turf(beam)
+ START_PROCESSING(SSfastprocess, beam)
+ for(var/mob/living/hit_mob in affected_turf.contents)
+ hit_mob.adjustFireLoss(35)
+ to_chat(hit_mob, span_userdanger("You're hit by [src]'s brimbeam!"))
/// Deletes all the brimbeam parts and sets variables back to their initial ones.
/mob/living/simple_animal/hostile/asteroid/brimdemon/proc/end_laser()
@@ -163,15 +174,12 @@
icon_state = "brimbeam_mid"
layer = ABOVE_MOB_LAYER
plane = -2
+ alpha = 150
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
light_color = LIGHT_COLOR_BLOOD_MAGIC
light_power = 3
light_range = 2
-/obj/effect/brimbeam/Initialize()
- . = ..()
- START_PROCESSING(SSfastprocess, src)
-
/obj/effect/brimbeam/Destroy()
STOP_PROCESSING(SSfastprocess, src)
return ..()
diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm
index d8aedc292ca0..bf8552ba5cb0 100644
--- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm
+++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm
@@ -213,7 +213,7 @@
/mob/living/simple_animal/hostile/asteroid/goliath/beast/attackby(obj/item/O, mob/user, params)
if(istype(O, /obj/item/saddle) && !saddled)
- if(tame && do_after(user,55,target=src))
+ if(tame && do_after(user, 55, target=src))
user.visible_message("You manage to put [O] on [src], you can now ride [p_them()].")
qdel(O)
saddled = TRUE
diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/hivelord.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/hivelord.dm
index d637b19a2a08..5158c80d056a 100644
--- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/hivelord.dm
+++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/hivelord.dm
@@ -355,7 +355,6 @@
icon_living = "disfigured_legion"
icon_aggro = "disfigured_legion"
icon_dead = "disfigured_legion"
- difficulty = 2
brood_type = /mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/crystal
loot = list(/obj/item/organ/regenerative_core/legion/crystal)
diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/mining_mobs.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/mining_mobs.dm
index eaf546b3f627..19334bc84fcd 100644
--- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/mining_mobs.dm
+++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/mining_mobs.dm
@@ -75,7 +75,8 @@
..(gibbed)
/mob/living/simple_animal/hostile/asteroid/proc/spawn_mob_trophy()
- butcher_results[mob_trophy] = 1
+ if(mob_trophy)
+ butcher_results[mob_trophy] = 1
/mob/living/simple_animal/hostile/asteroid/handle_temperature_damage()
if(bodytemperature < minbodytemp)
diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm
index c7070a66bcdf..06c7a9af52d8 100644
--- a/code/modules/mob/mob.dm
+++ b/code/modules/mob/mob.dm
@@ -1202,6 +1202,7 @@
var/list/searching = GetAllContents()
var/search_id = 1
var/search_pda = 1
+ var/search_bankcard = 1
for(var/A in searching)
if(search_id && istype(A, /obj/item/card/id))
@@ -1209,18 +1210,24 @@
if(ID.registered_name == oldname)
ID.registered_name = newname
ID.update_label()
- if(ID.registered_account?.account_holder == oldname)
- ID.registered_account.account_holder = newname
- if(!search_pda)
+ if(!search_pda || !search_bankcard)
break
search_id = 0
+ if(search_bankcard && istype(A, /obj/item/card/bank))
+ var/obj/item/card/bank/bank_card = A
+ if(bank_card.registered_account?.account_holder == oldname)
+ bank_card.registered_account.account_holder = newname
+ if(!search_id || !search_pda)
+ break
+ search_bankcard = 0
+
else if(search_pda && istype(A, /obj/item/pda))
var/obj/item/pda/PDA = A
if(PDA.owner == oldname)
PDA.owner = newname
PDA.update_label()
- if(!search_id)
+ if(!search_id || !search_bankcard)
break
search_pda = 0
@@ -1303,6 +1310,9 @@
/mob/proc/get_idcard(hand_first)
return
+/mob/proc/get_bankcard()
+ return
+
/mob/proc/get_id_in_hand()
return
diff --git a/code/modules/modular_computers/file_system/programs/bounty_board.dm b/code/modules/modular_computers/file_system/programs/bounty_board.dm
index 496011cfdddd..b3b9051e5b8f 100644
--- a/code/modules/modular_computers/file_system/programs/bounty_board.dm
+++ b/code/modules/modular_computers/file_system/programs/bounty_board.dm
@@ -25,8 +25,8 @@
if(!networked)
GLOB.allbountyboards += computer
networked = TRUE
- if(card_slot && card_slot.stored_card && card_slot.stored_card.registered_account)
- current_user = card_slot.stored_card.registered_account
+ if(card_slot && card_slot.bank_card && card_slot.bank_card.registered_account)
+ current_user = card_slot.bank_card.registered_account
for(var/i in GLOB.request_list)
if(!i)
continue
diff --git a/code/modules/modular_computers/file_system/programs/cargoship.dm b/code/modules/modular_computers/file_system/programs/cargoship.dm
index 1bfe53b215f2..2aa9b68565ca 100644
--- a/code/modules/modular_computers/file_system/programs/cargoship.dm
+++ b/code/modules/modular_computers/file_system/programs/cargoship.dm
@@ -35,21 +35,21 @@
// Get components
var/obj/item/computer_hardware/card_slot/card_slot = computer.all_components[MC_CARD]
var/obj/item/computer_hardware/printer/printer = computer.all_components[MC_PRINT]
- var/obj/item/card/id/id_card = card_slot ? card_slot.stored_card : null
+ var/obj/item/card/bank/bank_card = card_slot ? card_slot.stored_card : null
if(!card_slot || !printer) //We need both to successfully use this app.
return
switch(action)
if("ejectid")
- if(id_card)
+ if(bank_card)
card_slot.try_eject(TRUE, usr)
if("selectid")
- if(!id_card)
+ if(!bank_card)
return
- if(!id_card.registered_account)
+ if(!bank_card.registered_account)
playsound(get_turf(ui_host()), 'sound/machines/buzz-sigh.ogg', 50, TRUE, -1)
return
- payments_acc = id_card.registered_account
+ payments_acc = bank_card.registered_account
playsound(get_turf(ui_host()), 'sound/machines/ping.ogg', 50, TRUE, -1)
if("resetid")
payments_acc = null
diff --git a/code/modules/modular_computers/hardware/card_slot.dm b/code/modules/modular_computers/hardware/card_slot.dm
index 1acdb72f400e..1ef62b7617f3 100644
--- a/code/modules/modular_computers/hardware/card_slot.dm
+++ b/code/modules/modular_computers/hardware/card_slot.dm
@@ -8,6 +8,7 @@
var/obj/item/card/id/stored_card
var/obj/item/card/id/stored_card2
+ var/obj/item/card/bank/bank_card
/obj/item/computer_hardware/card_slot/Exited(atom/ejected, atom/newloc)
if(!(ejected == stored_card || ejected == stored_card2))
diff --git a/code/modules/modular_computers/laptop_vendor.dm b/code/modules/modular_computers/laptop_vendor.dm
index eb363de15792..b1ec3d3edc16 100644
--- a/code/modules/modular_computers/laptop_vendor.dm
+++ b/code/modules/modular_computers/laptop_vendor.dm
@@ -248,10 +248,10 @@
visible_message("[user] inserts a [HC.credits] cr holocredit chip into [src].")
qdel(HC)
return
- else if(istype(I, /obj/item/card/id))
+ else if(istype(I, /obj/item/card/bank))
if(state != 2)
return
- var/obj/item/card/id/ID = I
+ var/obj/item/card/bank/ID = I
var/datum/bank_account/account = ID.registered_account
var/target_credits = total_price - credits
if(!account.adjust_money(-target_credits, "laptop_vendor"))
diff --git a/code/modules/movespeed/modifiers/reagent.dm b/code/modules/movespeed/modifiers/reagent.dm
index d6b0703ccb59..ecf91d0760fa 100644
--- a/code/modules/movespeed/modifiers/reagent.dm
+++ b/code/modules/movespeed/modifiers/reagent.dm
@@ -13,7 +13,7 @@
/datum/movespeed_modifier/reagent/badstims
multiplicative_slowdown = -0.45
-/datum/movespeed_modifier/reagent/monkey_energy
+/datum/movespeed_modifier/reagent/xeno_energy
multiplicative_slowdown = -0.35
/datum/movespeed_modifier/reagent/changelinghaste
diff --git a/code/modules/ninja/suit/ninjaDrainAct.dm b/code/modules/ninja/suit/ninjaDrainAct.dm
index 4939686ee9fd..f45c231c7098 100644
--- a/code/modules/ninja/suit/ninjaDrainAct.dm
+++ b/code/modules/ninja/suit/ninjaDrainAct.dm
@@ -85,7 +85,7 @@ They *could* go in their appropriate files, but this is supposed to be modular
drain = S.cell.maxcharge - S.cell.charge
maxcapacity = 1
- if (do_after(H,10, target = src, hidden = TRUE))
+ if (do_after(H, 10, target = src, hidden = TRUE))
spark_system.start()
playsound(loc, "sparks", 50, TRUE, SHORT_RANGE_SOUND_EXTRARANGE)
charge -= drain
@@ -235,7 +235,7 @@ They *could* go in their appropriate files, but this is supposed to be modular
if(S.cell.charge+drain > S.cell.maxcharge)
drain = S.cell.maxcharge - S.cell.charge
maxcapacity = 1
- if (do_after(H,10, hidden = TRUE))
+ if (do_after(H, 10, hidden = TRUE))
spark_system.start()
playsound(loc, "sparks", 50, TRUE, SHORT_RANGE_SOUND_EXTRARANGE)
cell.use(drain)
diff --git a/code/modules/ninja/suit/suit_attackby.dm b/code/modules/ninja/suit/suit_attackby.dm
index f9641a7a63ff..b700e22156fa 100644
--- a/code/modules/ninja/suit/suit_attackby.dm
+++ b/code/modules/ninja/suit/suit_attackby.dm
@@ -21,7 +21,7 @@
var/obj/item/stock_parts/cell/CELL = I
if(CELL.maxcharge > cell.maxcharge && n_gloves && n_gloves.candrain)
to_chat(U, "Higher maximum capacity detected.\nUpgrading...")
- if (n_gloves && n_gloves.candrain && do_after(U,s_delay, target = src))
+ if (n_gloves && n_gloves.candrain && do_after(U, s_delay, target = src))
U.transferItemToLoc(CELL, src)
CELL.charge = min(CELL.charge+cell.charge, CELL.maxcharge)
var/obj/item/stock_parts/cell/old_cell = cell
diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm
index a5d8b4c4e1e9..d1c14fe67917 100644
--- a/code/modules/power/singularity/collector.dm
+++ b/code/modules/power/singularity/collector.dm
@@ -1,7 +1,7 @@
// stored_energy += (pulse_strength-RAD_COLLECTOR_EFFICIENCY)*RAD_COLLECTOR_COEFFICIENT
-#define RAD_COLLECTOR_EFFICIENCY 80 // radiation needs to be over this amount to get power
-#define RAD_COLLECTOR_COEFFICIENT 10
-#define RAD_COLLECTOR_STORED_OUT 0.001 // (this*100)% of stored power outputted per tick. Doesn't actualy change output total, lower numbers just means collectors output for longer in absence of a source
+#define RAD_COLLECTOR_EFFICIENCY 300 // radiation needs to be over this amount to get power
+#define RAD_COLLECTOR_COEFFICIENT 100
+#define RAD_COLLECTOR_STORED_OUT 0.04 // (this*100)% of stored power outputted per tick. Doesn't actualy change output total, lower numbers just means collectors output for longer in absence of a source
#define RAD_COLLECTOR_MINING_CONVERSION_RATE 0.00001 //This is gonna need a lot of tweaking to get right. This is the number used to calculate the conversion of watts to research points per process()
#define RAD_COLLECTOR_OUTPUT min(stored_energy, (stored_energy*RAD_COLLECTOR_STORED_OUT)+1000) //Produces at least 1000 watts if it has more than that stored
#define PUBLIC_TECHWEB_GAIN 0.6 //how many research points go directly into the main pool
diff --git a/code/modules/projectiles/ammunition/ballistic/revolver.dm b/code/modules/projectiles/ammunition/ballistic/revolver.dm
index fa77095de9b9..e235e00b98f6 100644
--- a/code/modules/projectiles/ammunition/ballistic/revolver.dm
+++ b/code/modules/projectiles/ammunition/ballistic/revolver.dm
@@ -98,3 +98,24 @@
desc = "A .38 iceblox bullet casing."
bullet_skin = "surplus"
projectile_type = /obj/projectile/bullet/c38/iceblox
+
+//44 Roumain (Montagne & Shadow)
+
+/obj/item/ammo_casing/a44roum
+ name = ".44 roumain bullet casing"
+ desc = "A .44 roumain bullet casing."
+ caliber = ".44 Roumain"
+ icon_state = "pistol-steel"
+ projectile_type = /obj/projectile/bullet/a44roum
+
+/obj/item/ammo_casing/a44roum/rubber
+ name = ".44 roumain rubber bullet casing"
+ desc = "A .44 roumain rubber bullet casing."
+ bullet_skin = "rubber"
+ projectile_type = /obj/projectile/bullet/a44roum/rubber
+
+/obj/item/ammo_casing/a44roum/hp
+ name = ".44 roumain hollow point bullet casing"
+ desc = "A .44 roumain holow point bullet casing."
+ bullet_skin = "hollow"
+ projectile_type = /obj/projectile/bullet/a44roum/hp
diff --git a/code/modules/projectiles/boxes_magazines/_box_magazine.dm b/code/modules/projectiles/boxes_magazines/_box_magazine.dm
index 4c3c8b736c4d..3b1bdbc6eb1c 100644
--- a/code/modules/projectiles/boxes_magazines/_box_magazine.dm
+++ b/code/modules/projectiles/boxes_magazines/_box_magazine.dm
@@ -98,7 +98,7 @@
if(istype(attacking_obj, /obj/item/ammo_box))
var/obj/item/ammo_box/attacking_box = attacking_obj
for(var/obj/item/ammo_casing/casing_to_insert in attacking_box.stored_ammo)
- if(!((instant_load && attacking_box.instant_load) || (stored_ammo.len >= max_ammo) || do_after(user, 1 SECONDS, list(attacking_box))))
+ if(!((instant_load && attacking_box.instant_load) || (stored_ammo.len >= max_ammo) || do_after(user, 1 SECONDS, attacking_box)))
break
var/did_load = give_round(casing_to_insert, replace_spent)
if(!did_load)
diff --git a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm b/code/modules/projectiles/boxes_magazines/ammo_boxes.dm
index 0b5a7f80a837..955856704ac6 100644
--- a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm
+++ b/code/modules/projectiles/boxes_magazines/ammo_boxes.dm
@@ -13,6 +13,9 @@
w_class = WEIGHT_CLASS_TINY
instant_load = TRUE
+/obj/item/ammo_box/a357/empty
+ start_empty = TRUE
+
/obj/item/ammo_box/a357/match
name = "speed loader (.357 match)"
desc = "A 7-round speed loader for quickly reloading .357 revolvers. These match rounds travel faster, perform better against armor, and can ricochet off targets."
@@ -119,6 +122,9 @@
desc = "A 6-round speed loader for quickly reloading .38 special revolvers. These iceblox bullets contain a cryogenic payload that chills targets."
ammo_type = /obj/item/ammo_casing/c38/iceblox
+/obj/item/ammo_box/c38/empty
+ start_empty = TRUE
+
// 8x58mm Stripper Clip (SSG-669C)
/obj/item/ammo_box/a858
@@ -156,6 +162,8 @@
w_class = WEIGHT_CLASS_TINY
instant_load = TRUE
+/obj/item/ammo_box/a300/empty
+ start_empty = TRUE
// .300 Blackout Stripper Clip (Polymer Survivor Rifle)
/obj/item/ammo_box/aac_300blk_stripper
@@ -411,19 +419,22 @@
ammo_type = /obj/item/ammo_casing/c22lr
max_ammo = 75
-/obj/item/ammo_box/c45_speedloader
- name = "speed loader (.45)"
+/obj/item/ammo_box/a44roum_speedloader
+ name = "speed loader (.44)"
desc = "Designed to quickly reload revolvers."
icon_state = "speedloader_38-6"
base_icon_state = "speedloader_38"
- ammo_type = /obj/item/ammo_casing/c45
- caliber = ".45"
+ ammo_type = /obj/item/ammo_casing/a44roum
+ caliber = ".44 Roumain"
max_ammo = 6
multiple_sprites = AMMO_BOX_PER_BULLET
custom_materials = list(/datum/material/iron = 15000)
w_class = WEIGHT_CLASS_TINY
instant_load = TRUE
+/obj/item/ammo_box/a44roum_speedloader/empty
+ start_empty = TRUE
+
/obj/item/ammo_box/c46x30mm_box
name = "ammo box (4.6x30mm)"
desc = "A box of standard 4.6x30mm ammo."
@@ -472,3 +483,24 @@
icon_state = "300box"
ammo_type = /obj/item/ammo_casing/a300
max_ammo = 20
+
+/obj/item/ammo_box/a44roum
+ name = "ammo box (.44 roumain)"
+ desc = "A box of standard .44 roumain ammo."
+ icon_state = "a44roum"
+ ammo_type = /obj/item/ammo_casing/a44roum
+ max_ammo = 50
+
+/obj/item/ammo_box/a44roum/rubber
+ name = "ammo box (.44 roumain rubber)"
+ desc = "A box of .44 roumain rubbershot ammo, designed to disable targets without causing serious damage."
+ icon_state = "a44roum-rubber"
+ ammo_type = /obj/item/ammo_casing/a44roum/rubber
+ max_ammo = 50
+
+/obj/item/ammo_box/a44roum/hp
+ name = "ammo box (.44 roumain hollow point)"
+ desc = "A box of .44 roumain hollow point ammo, designed to cause massive damage at the cost of armor penetration."
+ icon_state = "a44roum-hp"
+ ammo_type = /obj/item/ammo_casing/a44roum/hp
+ max_ammo = 50
diff --git a/code/modules/projectiles/boxes_magazines/external/gauss.dm b/code/modules/projectiles/boxes_magazines/external/gauss.dm
index fa3797707ce6..d2edfc4aac94 100644
--- a/code/modules/projectiles/boxes_magazines/external/gauss.dm
+++ b/code/modules/projectiles/boxes_magazines/external/gauss.dm
@@ -16,6 +16,9 @@
max_ammo = 10
multiple_sprites = AMMO_BOX_FULL_EMPTY
+/obj/item/ammo_box/magazine/modelh/empty
+ start_empty = TRUE
+
/obj/item/ammo_box/magazine/gar
name = "GAR tube magazine (ferromagnetic lances)"
desc = "A 32-round magazined for the GAR assault rifle. Ferromagnetic lances do good damage with significant armor penetration."
diff --git a/code/modules/projectiles/boxes_magazines/external/pistol.dm b/code/modules/projectiles/boxes_magazines/external/pistol.dm
index 66b9238a5c90..8a1792485715 100644
--- a/code/modules/projectiles/boxes_magazines/external/pistol.dm
+++ b/code/modules/projectiles/boxes_magazines/external/pistol.dm
@@ -8,6 +8,9 @@
max_ammo = 8
multiple_sprites = AMMO_BOX_FULL_EMPTY
+/obj/item/ammo_box/magazine/m10mm/empty
+ start_empty = TRUE
+
/obj/item/ammo_box/magazine/m10mm/inc
name = "pistol magazine (10mm incendiary)"
desc = "An 8-round single-stack magazine for the stechkin pistol. These incendiary rounds deal mediocre damage, but leave flaming trails which set targets ablaze."
@@ -37,6 +40,9 @@
caliber = ".45"
max_ammo = 8
+/obj/item/ammo_box/magazine/m45/empty
+ start_empty = TRUE
+
/obj/item/ammo_box/magazine/m45/inc
name = "pistol magazine (.45 incendiary)"
desc = "An 8-round single-stack magazine for the Candor pistol. These incendiary rounds deal mediocre damage, but leave flaming trails which set targets ablaze."
@@ -71,6 +77,9 @@
max_ammo = 10
multiple_sprites = AMMO_BOX_PER_BULLET
+/obj/item/ammo_box/magazine/co9mm/empty
+ start_empty = TRUE
+
/obj/item/ammo_box/magazine/pistol556mm
name = "Pistole C magazine (5.56mm HITP caseless)"
desc = "A 12-round, double-stack magazine for the Pistole C pistol. These rounds do okay damage with average performance against armor."
@@ -93,6 +102,7 @@
else
icon_state = "[base_icon_state]-0"
+
/obj/item/ammo_box/magazine/co9mm/inc
name = "pistol magazine (9mm incendiary)"
desc = "A 10-round double-stack magazine for standard-issue 9mm pistols. These incendiary rounds deal pitiful damage, but leave flaming trails which set targets ablaze."
diff --git a/code/modules/projectiles/boxes_magazines/external/rifle.dm b/code/modules/projectiles/boxes_magazines/external/rifle.dm
index 548350f20415..1066e5b7ef2d 100644
--- a/code/modules/projectiles/boxes_magazines/external/rifle.dm
+++ b/code/modules/projectiles/boxes_magazines/external/rifle.dm
@@ -55,6 +55,9 @@
max_ammo = 20
multiple_sprites = AMMO_BOX_FULL_EMPTY
+/obj/item/ammo_box/magazine/skm_762_40/empty
+ start_empty = FALSE
+
/obj/item/ammo_box/magazine/skm_762_40/extended
name = "extended assault rifle magazine (7.62x40mm CLIP)"
desc = "A very curved, 40-round magazine for the 7.62x40mm CLIP variants of the SKM assault rifle family. These rounds do good damage with good armor penetration."
@@ -102,6 +105,8 @@
max_ammo = 30
multiple_sprites = AMMO_BOX_FULL_EMPTY
+/obj/item/ammo_box/magazine/p16/empty
+ start_empty = TRUE
/obj/item/ammo_box/magazine/swiss
name = "\improper Swiss Cheese Magazine (5.56x45mm)"
@@ -133,3 +138,6 @@
max_ammo = 5
multiple_sprites = AMMO_BOX_PER_BULLET
w_class = WEIGHT_CLASS_TINY
+
+/obj/item/ammo_box/magazine/illestren_a850r/empty
+ start_empty = TRUE
diff --git a/code/modules/projectiles/boxes_magazines/external/smg.dm b/code/modules/projectiles/boxes_magazines/external/smg.dm
index 61b9eb78512a..4c464c0433d0 100644
--- a/code/modules/projectiles/boxes_magazines/external/smg.dm
+++ b/code/modules/projectiles/boxes_magazines/external/smg.dm
@@ -11,6 +11,9 @@
. = ..()
icon_state = "[base_icon_state]-[round(ammo_count(), 6)]"
+/obj/item/ammo_box/magazine/wt550m9/empty
+ start_empty = TRUE
+
/obj/item/ammo_box/magazine/wt550m9/ap
name = "wt550 magazine (4.6x30mm AP)"
desc = "A compact, 30-round top-loading magazine for the WT-550 Automatic Rifle. These armor-piercing rounds are great at piercing protective equipment, but lose some stopping power."
@@ -97,6 +100,9 @@
. = ..()
icon_state = "c20r45-[round(ammo_count(),2)]"
+/obj/item/ammo_box/magazine/smgm45/empty
+ start_empty = TRUE
+
/obj/item/ammo_box/magazine/c45_firestorm_mag
name = "stick magazine (.45)"
desc = "A 28-round stick magazine for the toploading Firestorm submachine gun. These rounds do moderate damage, but struggle against armor."
diff --git a/code/modules/projectiles/boxes_magazines/internal/_cylinder.dm b/code/modules/projectiles/boxes_magazines/internal/_cylinder.dm
index f8ce8223748d..658eef2d781c 100644
--- a/code/modules/projectiles/boxes_magazines/internal/_cylinder.dm
+++ b/code/modules/projectiles/boxes_magazines/internal/_cylinder.dm
@@ -66,7 +66,7 @@
var/list/ammo_list_no_empty = ammo_list(FALSE)
listclearnulls(ammo_list_no_empty)
for(var/obj/item/ammo_casing/casing_to_insert in attacking_box.stored_ammo)
- if(!((instant_load && attacking_box.instant_load) || (ammo_list_no_empty.len >= max_ammo) || do_after(user, 1 SECONDS, list(attacking_box)))) //stupid work around for revolvers
+ if(!((instant_load && attacking_box.instant_load) || (ammo_list_no_empty.len >= max_ammo) || do_after(user, 1 SECONDS, attacking_box))) //stupid work around for revolvers
break
var/did_load = give_round(casing_to_insert, replace_spent)
if(!did_load)
diff --git a/code/modules/projectiles/boxes_magazines/internal/revolver.dm b/code/modules/projectiles/boxes_magazines/internal/revolver.dm
index d757ddf03047..1198970c5146 100644
--- a/code/modules/projectiles/boxes_magazines/internal/revolver.dm
+++ b/code/modules/projectiles/boxes_magazines/internal/revolver.dm
@@ -33,13 +33,13 @@
max_ammo = 5
instant_load = FALSE
-/obj/item/ammo_box/magazine/internal/cylinder/rev45
+/obj/item/ammo_box/magazine/internal/cylinder/rev44
name = "cattleman revolver cylinder"
- ammo_type = /obj/item/ammo_casing/c45
- caliber = ".45"
+ ammo_type = /obj/item/ammo_casing/a44roum
+ caliber = ".44 Roumain"
max_ammo = 6
instant_load = FALSE
-/obj/item/ammo_box/magazine/internal/cylinder/rev45/montagne
+/obj/item/ammo_box/magazine/internal/cylinder/rev44/montagne
name = "montagne revolver cylinder"
instant_load = TRUE
diff --git a/code/modules/projectiles/guns/ballistic.dm b/code/modules/projectiles/guns/ballistic.dm
index e5345c0eab45..b88c8afed86d 100644
--- a/code/modules/projectiles/guns/ballistic.dm
+++ b/code/modules/projectiles/guns/ballistic.dm
@@ -101,15 +101,16 @@
/obj/item/gun/ballistic/Initialize()
. = ..()
- if (!spawnwithmagazine)
+ if (!spawnwithmagazine && !ispath(mag_type, /obj/item/ammo_box/magazine/internal))
bolt_locked = TRUE
update_appearance()
return
if (!magazine)
magazine = new mag_type(src)
+ if (!spawnwithmagazine)
+ get_ammo_list (drop_all = TRUE)
chamber_round()
update_appearance()
-
/obj/item/gun/ballistic/update_icon_state()
if(current_skin)
icon_state = "[unique_reskin[current_skin]][sawn_off ? "_sawn" : ""]"
@@ -241,7 +242,7 @@
update_appearance()
SEND_SIGNAL(src, COMSIG_UPDATE_AMMO_HUD)
if (tac_load)
- if(do_after(user, tactical_reload_delay, TRUE, src))
+ if(do_after(user, tactical_reload_delay, src, hidden = TRUE))
if (insert_magazine(user, tac_load, FALSE))
to_chat(user, "You perform a tactical reload on \the [src].")
else
diff --git a/code/modules/projectiles/guns/ballistic/assault.dm b/code/modules/projectiles/guns/ballistic/assault.dm
index 9d97dc627bd4..cceda8a28b77 100644
--- a/code/modules/projectiles/guns/ballistic/assault.dm
+++ b/code/modules/projectiles/guns/ballistic/assault.dm
@@ -59,6 +59,9 @@
fire_delay = 0.2 SECONDS
+/obj/item/gun/ballistic/automatic/assault/skm/no_mag
+ spawnwithmagazine = FALSE
+
/obj/item/gun/ballistic/automatic/assault/skm/pirate
name = "\improper Chopper"
desc = "An SKM-24 in a state of shockingly poor repair: Several parts are missing and the 'grip' is improvised from scrap wood. It's a miracle it still works at all. Chambered in 7.62x40mm CLIP."
@@ -97,6 +100,9 @@
eject_sound = 'sound/weapons/gun/rifle/m16_unload.ogg'
eject_empty_sound = 'sound/weapons/gun/rifle/m16_unload.ogg'
+/obj/item/gun/ballistic/automatic/assault/p16/no_mag
+ spawnwithmagazine = FALSE
+
/obj/item/gun/ballistic/automatic/assault/p16/minutemen
name = "\improper CM-16"
desc = "The standard-issue rifle of CLIP and an extensively modified reproduction of the P-16. Chambered in 5.56mm."
diff --git a/code/modules/projectiles/guns/ballistic/gauss.dm b/code/modules/projectiles/guns/ballistic/gauss.dm
index c50f906e4eba..11de497c874d 100644
--- a/code/modules/projectiles/guns/ballistic/gauss.dm
+++ b/code/modules/projectiles/guns/ballistic/gauss.dm
@@ -48,6 +48,9 @@
spread_unwielded = 12
fire_select_icon_state_prefix = "slug_"
+/obj/item/gun/ballistic/automatic/powered/gauss/modelh/no_mag
+ spawnwithmagazine = FALSE
+
/obj/item/gun/ballistic/automatic/powered/gauss/modelh/suns
desc = "A standard-issue pistol exported from the Solarian Confederation. It fires slow flesh-rending ferromagnetic slugs at a high energy cost, however they are ineffective on any armor. It is painted in the colors of SUNS."
mag_type = /obj/item/ammo_box/magazine/modelh
diff --git a/code/modules/projectiles/guns/ballistic/hmg.dm b/code/modules/projectiles/guns/ballistic/hmg.dm
index 4e9abd0cd70c..afa111c6bbf8 100644
--- a/code/modules/projectiles/guns/ballistic/hmg.dm
+++ b/code/modules/projectiles/guns/ballistic/hmg.dm
@@ -88,7 +88,7 @@
if(!can_deploy)
to_chat(user, "You need to brace against something to deploy [src]'s bipod! Either lie on the floor or stand next to a waist high object like a table!")
return
- if(!do_after(user, deploy_time, src, FALSE, TRUE, CALLBACK(src, PROC_REF(is_wielded))))
+ if(!do_after(user, deploy_time, src, NONE, TRUE, CALLBACK(src, PROC_REF(is_wielded))))
to_chat(user, "You need to hold still to deploy [src]'s bipod!")
return
playsound(src, 'sound/machines/click.ogg', 75, TRUE)
diff --git a/code/modules/projectiles/guns/ballistic/pistol.dm b/code/modules/projectiles/guns/ballistic/pistol.dm
index c4d505bcb10c..a2843000cbc6 100644
--- a/code/modules/projectiles/guns/ballistic/pistol.dm
+++ b/code/modules/projectiles/guns/ballistic/pistol.dm
@@ -234,8 +234,9 @@ EMPTY_GUN_HELPER(automatic/pistol/commander/inteq)
name = "\improper TEC-9 machine pistol"
desc = "A crude machine pistol designed to vomit 9mm ammunition at a truly eye-watering rate of fire."
icon_state = "tec9"
+ fire_delay = 0.15 SECONDS
weapon_weight = WEAPON_LIGHT
- w_class = WEIGHT_CLASS_SMALL
+ w_class = WEIGHT_CLASS_NORMAL
mag_type = /obj/item/ammo_box/magazine/tec9
show_magazine_on_sprite = TRUE
load_sound = 'sound/weapons/gun/pistol/mag_insert.ogg'
@@ -243,6 +244,9 @@ EMPTY_GUN_HELPER(automatic/pistol/commander/inteq)
eject_sound = 'sound/weapons/gun/pistol/mag_release.ogg'
eject_empty_sound = 'sound/weapons/gun/pistol/mag_release.ogg'
+ gun_firemodes = list(FIREMODE_SEMIAUTO, FIREMODE_FULLAUTO)
+ default_firemode = FIREMODE_SEMIAUTO
+
/obj/item/gun/ballistic/automatic/pistol/disposable
name = "disposable gun"
desc = "An exceedingly flimsy plastic gun that is extremely cheap to produce. You get what you pay for."
@@ -307,6 +311,9 @@ EMPTY_GUN_HELPER(automatic/pistol/commander/inteq)
icon_state = "derringer_gold"
mag_type = /obj/item/ammo_box/magazine/internal/derr357
+/obj/item/gun/ballistic/derringer/no_mag
+ spawnwithmagazine = FALSE
+
/obj/item/gun/ballistic/automatic/pistol/himehabu
name = "\improper Himehabu"
desc = "A very small .22 LR pistol. The long awaited successor to the Stechkin; It has become a favorite among syndicate spies. Chambered in .22 LR."
@@ -320,3 +327,4 @@ EMPTY_GUN_HELPER(automatic/pistol/commander/inteq)
recoil_unwielded = -2
spread_unwielded = 0
wield_slowdown = 0
+
diff --git a/code/modules/projectiles/guns/ballistic/revolver.dm b/code/modules/projectiles/guns/ballistic/revolver.dm
index 756a8aa9ca26..1807f2c4ab03 100644
--- a/code/modules/projectiles/guns/ballistic/revolver.dm
+++ b/code/modules/projectiles/guns/ballistic/revolver.dm
@@ -282,7 +282,7 @@
to_chat(user, "You rack the [bolt_wording] of \the [src].")
playsound(src, rack_sound, rack_sound_volume, rack_sound_vary)
- if((!safety && !semi_auto) || (!safety && !semi_auto))
+ if(!safety && !semi_auto)
chamber_round(TRUE)
SEND_SIGNAL(src, COMSIG_UPDATE_AMMO_HUD)
update_appearance()
@@ -542,6 +542,11 @@ EMPTY_GUN_HELPER(revolver/detective)
to_chat(user, "You remove the modifications on [src]. Now it will fire .38 rounds.")
return TRUE
+/obj/item/gun/ballistic/revolver/detective/no_mag
+ spawnwithmagazine = FALSE
+
+/obj/item/gun/ballistic/revolver/no_mag
+ spawnwithmagazine = FALSE
/obj/item/gun/ballistic/revolver/mateba
name = "\improper Unica 6 auto-revolver"
@@ -563,19 +568,22 @@ EMPTY_GUN_HELPER(revolver/detective)
/obj/item/gun/ballistic/revolver/montagne
name = "\improper HP Montagne"
- desc = "An ornate break-open revolver issued to high-ranking members of the Saint-Roumain Militia. Chambered in .45."
+ desc = "An ornate break-open revolver issued to high-ranking members of the Saint-Roumain Militia. Chambered in .44."
icon = 'icons/obj/guns/48x32guns.dmi'
icon_state = "montagne"
manufacturer = MANUFACTURER_HUNTERSPRIDE
spread_unwielded = 15
recoil = 0
- mag_type = /obj/item/ammo_box/magazine/internal/cylinder/rev45/montagne
+ mag_type = /obj/item/ammo_box/magazine/internal/cylinder/rev44/montagne
/obj/item/gun/ballistic/revolver/montagne/ComponentInitialize()
. = ..()
AddComponent(/datum/component/ammo_hud/revolver)
+/obj/item/gun/ballistic/revolver/montagne/no_mag
+ spawnwithmagazine = FALSE
+
/obj/item/gun/ballistic/revolver/ashhand
name = "HP Ashhand"
desc = "A massive, long-barreled revolver often used by the Saint-Roumain Militia as protection against big game. Can only be reloaded one cartridge at a time due to its reinforced frame. Uses .45-70 ammo."
@@ -692,13 +700,16 @@ EMPTY_GUN_HELPER(revolver/detective)
semi_auto = TRUE
safety_wording = "safety"
+/obj/item/gun/ballistic/revolver/firebrand/no_mag
+ spawnwithmagazine = FALSE
+
/obj/item/gun/ballistic/revolver/shadow
name = "\improper HP Shadow"
- desc = "A mid-size revolver. Despite the antiquated design, it is cheap, reliable, and stylish, making it a favorite among fast-drawing spacers and the officers of various militaries, as well as small-time police units. Chambered in .45."
+ desc = "A mid-size revolver. Despite the antiquated design, it is cheap, reliable, and stylish, making it a favorite among fast-drawing spacers and the officers of various militaries, as well as small-time police units. Chambered in .44."
fire_sound = 'sound/weapons/gun/revolver/cattleman.ogg'
icon = 'icons/obj/guns/48x32guns.dmi'
icon_state = "shadow"
- mag_type = /obj/item/ammo_box/magazine/internal/cylinder/rev45
+ mag_type = /obj/item/ammo_box/magazine/internal/cylinder/rev44
manufacturer = MANUFACTURER_HUNTERSPRIDE
obj_flags = UNIQUE_RENAME
gate_loaded = TRUE
@@ -719,9 +730,5 @@ EMPTY_GUN_HELPER(revolver/detective)
. = ..()
AddComponent(/datum/component/ammo_hud/revolver)
-/obj/item/gun/ballistic/revolver/shadow/before_firing(atom/target, mob/user)
- . = ..()
- // if you go through the pain of not only using this shitty gun, but also with the fucking gunslinger quirk, you deserve this bonus. not a BIG bonus, but enough as an incentive to make people actually take the quirk.
- if(chambered.BB && (HAS_TRAIT(user, TRAIT_GUNSLINGER)))
- chambered.BB.damage += 5
- chambered.BB.armour_penetration += 5
+/obj/item/gun/ballistic/revolver/shadow/no_mag
+ spawnwithmagazine = FALSE
diff --git a/code/modules/projectiles/guns/ballistic/rifle.dm b/code/modules/projectiles/guns/ballistic/rifle.dm
index 45b1e8b2debd..bf8866ebe07f 100644
--- a/code/modules/projectiles/guns/ballistic/rifle.dm
+++ b/code/modules/projectiles/guns/ballistic/rifle.dm
@@ -85,6 +85,9 @@
can_be_sawn_off = TRUE
manufacturer = MANUFACTURER_HUNTERSPRIDE
+/obj/item/gun/ballistic/rifle/illestren/empty //i had to name it empty instead of no_mag because else it wouldnt work with guncases. sorry!
+ spawnwithmagazine = FALSE
+
/obj/item/gun/ballistic/rifle/illestren/sawoff(mob/user)
. = ..()
if(.)
@@ -118,7 +121,8 @@
item_state = "illestren_sawn"
sawn_off = TRUE
weapon_weight = WEAPON_MEDIUM
-
+ w_class = WEIGHT_CLASS_NORMAL
+ slot_flags = ITEM_SLOT_BELT
/obj/item/gun/ballistic/rifle/solgov
name = "SSG-669C"
@@ -159,6 +163,9 @@
manufacturer = MANUFACTURER_HUNTERSPRIDE
+/obj/item/gun/ballistic/rifle/scout/no_mag
+ spawnwithmagazine = FALSE
+
/obj/item/gun/ballistic/rifle/polymer
name = "polymer survivor rifle"
desc = "A bolt-action rifle made of scrap, desperation, and luck. Likely to shatter at any moment. Chambered in .300 Blackout."
diff --git a/code/modules/projectiles/guns/ballistic/shotgun.dm b/code/modules/projectiles/guns/ballistic/shotgun.dm
index e36dc8c67b77..f646e4cf36de 100644
--- a/code/modules/projectiles/guns/ballistic/shotgun.dm
+++ b/code/modules/projectiles/guns/ballistic/shotgun.dm
@@ -91,6 +91,8 @@
item_state = "illestren_factory_sawn" // i couldnt care about making another sprite, looks close enough
mob_overlay_state = item_state
+/obj/item/gun/ballistic/shotgun/brimstone/no_mag
+ spawnwithmagazine = FALSE
// HELLFIRE SHOTGUN //
/obj/item/gun/ballistic/shotgun/hellfire
@@ -122,6 +124,8 @@
item_state = "dshotgun_sawn" // ditto
mob_overlay_state = item_state
+/obj/item/gun/ballistic/shotgun/hellfire/no_mag
+ spawnwithmagazine = FALSE
// Automatic Shotguns//
/obj/item/gun/ballistic/shotgun/automatic
spread = 4
@@ -146,14 +150,14 @@
item_state = "shotgun_combat"
fire_delay = 0.5 SECONDS
mag_type = /obj/item/ammo_box/magazine/internal/shot/com
- w_class = WEIGHT_CLASS_HUGE
+ w_class = WEIGHT_CLASS_BULKY
/obj/item/gun/ballistic/shotgun/automatic/combat/compact
name = "compact combat shotgun"
desc = "A compact version of the semi-automatic combat shotgun. For close encounters."
icon_state = "cshotgunc"
mag_type = /obj/item/ammo_box/magazine/internal/shot/com/compact
- w_class = WEIGHT_CLASS_BULKY
+ w_class = WEIGHT_CLASS_NORMAL
weapon_weight = WEAPON_MEDIUM
//Dual Feed Shotgun
@@ -379,6 +383,9 @@ EMPTY_GUN_HELPER(shotgun/bulldog/inteq)
item_state = "dshotgun_sawn"
mob_overlay_state = item_state
+/obj/item/gun/ballistic/shotgun/doublebarrel/no_mag
+ spawnwithmagazine = FALSE
+
// sawn off beforehand
/obj/item/gun/ballistic/shotgun/doublebarrel/presawn
name = "sawn-off double-barreled shotgun"
@@ -386,6 +393,7 @@ EMPTY_GUN_HELPER(shotgun/bulldog/inteq)
sawn_off = TRUE
weapon_weight = WEAPON_MEDIUM
w_class = WEIGHT_CLASS_NORMAL
+ slot_flags = ITEM_SLOT_BELT
wield_slowdown = 0.25
wield_delay = 0.3 SECONDS //OP? maybe
@@ -602,6 +610,9 @@ EMPTY_GUN_HELPER(shotgun/bulldog/inteq)
recoil = 0
recoil_unwielded = 2
+/obj/item/gun/ballistic/shotgun/flamingarrow/no_mag
+ spawnwithmagazine = FALSE
+
/obj/item/gun/ballistic/shotgun/flamingarrow/update_icon_state()
. = ..()
if(current_skin)
@@ -615,6 +626,18 @@ EMPTY_GUN_HELPER(shotgun/bulldog/inteq)
if(!wielded)
SpinAnimation(7,1)
+/obj/item/gun/ballistic/shotgun/flamingarrow/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0)
+ var/fan = FALSE
+ if(HAS_TRAIT(user, TRAIT_GUNSLINGER) && !semi_auto && wielded_fully && loc == user && !safety)
+ fan = TRUE
+ fire_delay = 0.35 SECONDS
+ . = ..()
+ fire_delay = src::fire_delay
+ if(fan)
+ rack()
+ to_chat(user, "You quickly rack the [bolt_wording] of \the [src]!")
+ balloon_alert_to_viewers("quickly racks!")
+ fire_delay = 0 SECONDS
/obj/item/gun/ballistic/shotgun/flamingarrow/sawoff(mob/user)
. = ..()
@@ -732,6 +755,9 @@ EMPTY_GUN_HELPER(shotgun/bulldog/inteq)
recoil = 2
recoil_unwielded = 4
+/obj/item/gun/ballistic/shotgun/doublebarrel/beacon
+ spawnwithmagazine = FALSE
+
/obj/item/gun/ballistic/shotgun/doublebarrel/beacon/factory
desc = "A single-shot break-action rifle made by Hunter's Pride and sold to civilian hunters. This example has been kept in excellent shape and may as well be fresh out of the workshop. Uses .45-70 ammo."
sawn_desc= "A single-shot break-action pistol chambered in .45-70. A bit difficult to aim."
diff --git a/code/modules/projectiles/guns/ballistic/smg.dm b/code/modules/projectiles/guns/ballistic/smg.dm
index 5e8896ab10ec..dcfd4bd5c164 100644
--- a/code/modules/projectiles/guns/ballistic/smg.dm
+++ b/code/modules/projectiles/guns/ballistic/smg.dm
@@ -39,17 +39,6 @@
. = total_spread
return ..()
-/obj/item/gun/ballistic/automatic/smg/proto
- name = "\improper Nanotrasen Saber SMG"
- desc = "A prototype full-auto 9mm submachine gun, designated 'SABR'. Has a threaded barrel for suppressors and a folding stock."
- icon_state = "saber"
- actions_types = list()
- mag_type = /obj/item/ammo_box/magazine/smgm9mm
-
- bolt_type = BOLT_TYPE_LOCKING
- show_magazine_on_sprite = TRUE
- manufacturer = MANUFACTURER_NANOTRASEN_OLD
-
/obj/item/gun/ballistic/automatic/smg/c20r
name = "\improper C-20r SMG"
desc = "A bullpup .45 SMG designated 'C-20r.' Its buttstamp reads 'Scarborough Arms - Per falcis, per pravitas.'"
@@ -78,6 +67,9 @@ EMPTY_GUN_HELPER(automatic/smg/c20r)
icon_state = "cobra20"
item_state = "cobra20"
+/obj/item/gun/ballistic/automatic/smg/c20r/cobra/no_mag
+ spawnwithmagazine = FALSE
+
/obj/item/gun/ballistic/automatic/smg/c20r/suns
desc = "A bullpup .45 SMG designated 'C-20r.' Its buttstamp reads 'Scarborough Arms - Per falcis, per pravitas.' This one is painted in SUNS' colors."
icon_state = "c20r_suns"
@@ -100,6 +92,9 @@ EMPTY_GUN_HELPER(automatic/smg/c20r)
manufacturer = MANUFACTURER_NANOTRASEN_OLD
fire_sound = 'sound/weapons/gun/smg/smg_heavy.ogg'
+/obj/item/gun/ballistic/automatic/smg/wt550/no_mag
+ spawnwithmagazine = FALSE
+
/obj/item/gun/ballistic/automatic/smg/mini_uzi
name = "\improper Type U3 Uzi"
desc = "A lightweight submachine gun, for when you really want someone dead. Uses 9mm rounds."
@@ -403,3 +398,15 @@ EMPTY_GUN_HELPER(automatic/smg/cm5)
unfolded_slowdown = 0.35
unfolded_wield_delay = 0.4 SECONDS
+
+/obj/item/gun/ballistic/automatic/smg/skm_carbine/inteq/proto
+ name = "\improper Nanotrasen Saber SMG"
+ desc = "A prototype full-auto 9mm submachine gun, designated 'SABR'. Has a threaded barrel for suppressors and a folding stock."
+ icon = 'icons/obj/guns/projectile.dmi'
+ icon_state = "saber"
+ item_state = "gun"
+ mag_type = /obj/item/ammo_box/magazine/smgm9mm
+ bolt_type = BOLT_TYPE_LOCKING
+ show_magazine_on_sprite = TRUE
+ manufacturer = MANUFACTURER_NANOTRASEN_OLD
+
diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm
index d06ad71d206d..fb0970321308 100644
--- a/code/modules/projectiles/guns/energy.dm
+++ b/code/modules/projectiles/guns/energy.dm
@@ -134,19 +134,19 @@
/obj/item/gun/energy/proc/insert_cell(mob/user, obj/item/stock_parts/cell/gun/C)
if(small_gun && !istype(C, /obj/item/stock_parts/cell/gun/mini))
- to_chat(user, "\The [C] doesn't seem to fit into \the [src]...")
+ to_chat(user, span_warning("\The [C] doesn't seem to fit into \the [src]..."))
return FALSE
if(!big_gun && istype(C, /obj/item/stock_parts/cell/gun/large))
- to_chat(user, "\The [C] doesn't seem to fit into \the [src]...")
+ to_chat(user, span_warning("\The [C] doesn't seem to fit into \the [src]..."))
return FALSE
if(user.transferItemToLoc(C, src))
cell = C
- to_chat(user, "You load the [C] into \the [src].")
+ to_chat(user, span_notice("You load the [C] into \the [src]."))
playsound(src, load_sound, sound_volume, load_sound_vary)
update_appearance()
return TRUE
else
- to_chat(user, "You cannot seem to get \the [src] out of your hands!")
+ to_chat(user, span_warning("You cannot seem to get \the [src] out of your hands!"))
return FALSE
/obj/item/gun/energy/proc/eject_cell(mob/user, obj/item/stock_parts/cell/gun/tac_load = null)
@@ -155,16 +155,16 @@
var/obj/item/stock_parts/cell/gun/old_cell = cell
old_cell.update_appearance()
cell = null
- to_chat(user, "You pull the cell out of \the [src].")
+ to_chat(user, span_notice("You pull the cell out of \the [src]."))
update_appearance()
if(tac_load && tac_reloads)
- if(do_after(user, tactical_reload_delay, TRUE, src))
+ if(do_after(user, tactical_reload_delay, src, hidden = TRUE))
if(insert_cell(user, tac_load))
- to_chat(user, "You perform a tactical reload on \the [src].")
+ to_chat(user, span_notice("You perform a tactical reload on \the [src]."))
else
- to_chat(user, "You dropped the old cell, but the new one doesn't fit. How embarassing.")
+ to_chat(user, span_warning("You dropped the old cell, but the new one doesn't fit. How embarassing."))
else
- to_chat(user, "Your reload was interupted!")
+ to_chat(user, span_warning("Your reload was interupted!"))
return
user.put_in_hands(old_cell)
@@ -230,7 +230,7 @@
fire_sound = shot.fire_sound
fire_delay = shot.delay
if (shot.select_name)
- to_chat(user, "[src] is now set to [shot.select_name].")
+ to_chat(user, span_notice("[src] is now set to [shot.select_name]."))
chambered = null
playsound(user, 'sound/weapons/gun/general/selector.ogg', 100, TRUE)
recharge_newshot(TRUE)
@@ -308,13 +308,13 @@
if(!BB)
. = ""
else if(BB.nodamage || !BB.damage || BB.damage_type == STAMINA)
- user.visible_message("[user] tries to light [user.p_their()] [A.name] with [src], but it doesn't do anything. Dumbass.")
+ user.visible_message(span_danger("[user] tries to light [user.p_their()] [A.name] with [src], but it doesn't do anything. Dumbass."))
playsound(user, E.fire_sound, 50, TRUE)
playsound(user, BB.hitsound_non_living, 50, TRUE)
cell.use(E.e_cost)
. = ""
else if(BB.damage_type != BURN)
- user.visible_message("[user] tries to light [user.p_their()] [A.name] with [src], but only succeeds in utterly destroying it. Dumbass.")
+ user.visible_message(span_danger("[user] tries to light [user.p_their()] [A.name] with [src], but only succeeds in utterly destroying it. Dumbass."))
playsound(user, E.fire_sound, 50, TRUE)
playsound(user, BB.hitsound_non_living, 50, TRUE)
cell.use(E.e_cost)
@@ -324,10 +324,16 @@
playsound(user, E.fire_sound, 50, TRUE)
playsound(user, BB.hitsound_non_living, 50, TRUE)
cell.use(E.e_cost)
- . = "[user] casually lights their [A.name] with [src]. Damn."
+ . = span_danger("[user] casually lights their [A.name] with [src]. Damn.")
/obj/item/gun/energy/examine(mob/user)
. = ..()
+ var/obj/item/ammo_casing/energy/shot = ammo_type[select]
if(ammo_type.len > 1)
. += "You can switch firemodes by pressing the unqiue action key. By default, this is space"
+ if(cell)
+ . += "\The [name]'s cell has [cell.percent()]% charge remaining."
+ . += "\The [name] has [round(cell.charge/shot.e_cost)] shots remaining on [shot.select_name] mode."
+ else
+ . += span_notice("\The [name] doesn't seem to have a cell!")
diff --git a/code/modules/projectiles/guns/energy/energy_gun.dm b/code/modules/projectiles/guns/energy/energy_gun.dm
index f1188f76701f..12df6fd4a352 100644
--- a/code/modules/projectiles/guns/energy/energy_gun.dm
+++ b/code/modules/projectiles/guns/energy/energy_gun.dm
@@ -12,6 +12,9 @@
dual_wield_spread = 60
manufacturer = MANUFACTURER_SHARPLITE_NEW
+/obj/item/gun/energy/e_gun/empty_cell
+ dead_cell = TRUE
+
/obj/item/gun/energy/e_gun/mini
name = "miniature energy gun"
desc = "A small, pistol-sized energy gun with a built-in flashlight. It has two settings: disable and kill."
@@ -38,6 +41,9 @@
set_gun_light(new /obj/item/flashlight/seclite(src))
return ..()
+/obj/item/gun/energy/e_gun/mini/empty_cell
+ dead_cell = TRUE
+
/obj/item/gun/energy/e_gun/hades
name = "SL AL-655 'Hades' energy rifle"
desc = "The standard issue rifle of Nanotrasen's Security Forces. Most have been put in long term storage following the ICW, and usually aren't issued to low ranking security divisions."
diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm
index 31261d31e30c..92193ed89bdb 100644
--- a/code/modules/projectiles/guns/energy/laser.dm
+++ b/code/modules/projectiles/guns/energy/laser.dm
@@ -14,6 +14,9 @@
spread = 0
spread_unwielded = 10
+/obj/item/gun/energy/laser/empty_cell
+ dead_cell = TRUE
+
/obj/item/gun/energy/laser/practice
name = "practice laser gun"
desc = "A modified version of the L-204 laser gun, this one fires less concentrated energy bolts designed for target practice."
diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm
index 73d9104833fb..3233e9afff45 100644
--- a/code/modules/projectiles/guns/energy/special.dm
+++ b/code/modules/projectiles/guns/energy/special.dm
@@ -17,6 +17,9 @@
/obj/item/gun/energy/ionrifle/emp_act(severity)
return
+/obj/item/gun/energy/ionrifle/empty_cell
+ dead_cell = TRUE
+
/obj/item/gun/energy/ionrifle/carbine
name = "ion carbine"
desc = "The MK.II Prototype Ion Projector is a lightweight carbine version of the larger ion rifle, built to be ergonomic and efficient."
diff --git a/code/modules/projectiles/guns/faction/gezena/energy_gunsword.dm b/code/modules/projectiles/guns/faction/gezena/energy_gunsword.dm
index 20a301a1396c..17cc5157ce78 100644
--- a/code/modules/projectiles/guns/faction/gezena/energy_gunsword.dm
+++ b/code/modules/projectiles/guns/faction/gezena/energy_gunsword.dm
@@ -42,6 +42,9 @@
damage = 25
armour_penetration = -10
+/obj/item/gun/energy/kalix/empty_cell
+ dead_cell = TRUE
+
/obj/item/gun/energy/kalix/pgf
name = "Etherbor BG-16"
desc = "An advanced variant of the BG-12, the BG-16 is the military-grade beam gun designed and manufactured by Etherbor Industries as the standard-issue close-range weapon of the PGF."
@@ -91,6 +94,9 @@
e_cost = 1250 //10 shots per cell
delay = 0
+/obj/item/gun/energy/kalix/pistol/empty_cell
+ dead_cell = TRUE
+
/obj/item/gun/energy/kalix/pgf/heavy
name = "Etherbor HBG-7"
desc = "The HBG-7 is the standard-issue rifle weapon of the PGF. If the stopping power and fire rate isn't enough, it comes with a DMR mode that has greater armor piercing for dealing with armored targets."
diff --git a/code/modules/projectiles/projectile/bullets/revolver.dm b/code/modules/projectiles/projectile/bullets/revolver.dm
index 7ec48a74b970..0c62fe5b3d4f 100644
--- a/code/modules/projectiles/projectile/bullets/revolver.dm
+++ b/code/modules/projectiles/projectile/bullets/revolver.dm
@@ -152,3 +152,20 @@
armour_penetration = -45
ricochet_incidence_leeway = 20
ricochet_chance = 65
+
+// 44 Short (Roumain & Shadow)
+
+/obj/projectile/bullet/a44roum
+ name = ".44 roumain bullet"
+ damage = 25
+
+/obj/projectile/bullet/a44roum/rubber
+ name = ".44 roumain bullet"
+ damage = 7
+ stamina = 38
+ armour_penetration = -20
+
+/obj/projectile/bullet/a44roum/hp
+ name = ".44 roumain bullet"
+ damage = 45
+ armour_penetration = -20
diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm
index 037256db302f..2fa26e8f4bfb 100644
--- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm
+++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm
@@ -470,14 +470,14 @@
/datum/reagent/consumable/tea,
/datum/reagent/consumable/icetea,
/datum/reagent/consumable/space_cola,
- /datum/reagent/consumable/spacemountainwind,
- /datum/reagent/consumable/dr_gibb,
+ /datum/reagent/consumable/comet_trail,
+ /datum/reagent/consumable/tadrixx,
/datum/reagent/consumable/space_up,
/datum/reagent/consumable/tonic,
/datum/reagent/consumable/sodawater,
/datum/reagent/consumable/lemon_lime,
- /datum/reagent/consumable/pwr_game,
- /datum/reagent/consumable/shamblers,
+ /datum/reagent/consumable/pacfuel,
+ /datum/reagent/consumable/shoal_punch,
/datum/reagent/consumable/sugar,
/datum/reagent/consumable/pineapplejuice,
/datum/reagent/consumable/orangejuice,
@@ -489,7 +489,7 @@
)
upgrade_reagents = null
emagged_reagents = list(
- /datum/reagent/consumable/ethanol/thirteenloko,
+ /datum/reagent/consumable/ethanol/vimukti,
/datum/reagent/consumable/ethanol/whiskey_cola,
/datum/reagent/toxin/mindbreaker,
/datum/reagent/toxin/staminatoxin
diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm
index 5902665e85c9..10519c75c434 100644
--- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm
+++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm
@@ -87,30 +87,30 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/beer
name = "Beer"
- description = "An alcoholic beverage brewed since ancient times on Old Earth. Still popular today."
+ description = "An alcoholic beverage, brewed originally to keep a safe source of drinking water. A timeless classic."
color = "#664300" // rgb: 102, 67, 0
nutriment_factor = 1 * REAGENTS_METABOLISM
boozepwr = 25
- taste_description = "piss water"
+ taste_description = "bad water"
glass_name = "glass of beer"
- glass_desc = "A freezing pint of beer."
+ glass_desc = "A pint of beer."
/datum/reagent/consumable/ethanol/beer/light
name = "Light Beer"
- description = "An alcoholic beverage brewed since ancient times on Old Earth. This variety has reduced calorie and alcohol content."
+ description = "An alcoholic beverage, brewed originally to keep a safe source of drinking water. This variety has reduced calorie and alcohol content."
boozepwr = 5 //Space Europeans hate it
taste_description = "dish water"
glass_name = "glass of light beer"
- glass_desc = "A freezing pint of watery light beer."
+ glass_desc = "A pint of watery light beer."
/datum/reagent/consumable/ethanol/beer/green
name = "Green Beer"
- description = "An alcoholic beverage brewed since ancient times on Old Earth. This variety is dyed a festive green."
+ description = "An alcoholic beverage, brewed originally to keep a safe source of drinking water. This variety is dyed green, but you're not sure why."
color = "#A8E61D"
- taste_description = "green piss water"
+ taste_description = "green bad water"
glass_icon_state = "greenbeerglass"
glass_name = "glass of green beer"
- glass_desc = "A freezing pint of green beer. Festive."
+ glass_desc = "A pint of green beer. You get the feeling this had some sort of meaning, once."
/datum/reagent/consumable/ethanol/beer/green/on_mob_life(mob/living/carbon/M)
if(M.color != color)
@@ -122,12 +122,12 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/kahlua
name = "Kahlua"
- description = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936!"
+ description = "A widely known coffee-flavoured liqueur. Still labeled under an old name from Earth, despite the loss of history."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 45
glass_icon_state = "kahluaglass"
- glass_name = "glass of RR coffee liquor"
- glass_desc = "DAMN, THIS THING LOOKS ROBUST!"
+ glass_name = "glass of coffee liquor"
+ glass_desc = "Bitter from the coffee and alcohol alike!"
shot_glass_icon_state = "shotglasscream"
/datum/reagent/consumable/ethanol/kahlua/on_mob_life(mob/living/carbon/M)
@@ -141,23 +141,23 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/whiskey
name = "Whiskey"
- description = "A superb and well-aged single-malt whiskey. Damn."
+ description = "A well-aged whiskey."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 75
taste_description = "molasses"
glass_icon_state = "whiskeyglass"
glass_name = "glass of whiskey"
- glass_desc = "The silky, smokey whiskey goodness inside the glass makes the drink look very classy."
+ glass_desc = "Often described as having a silky mouthfeel and a smokey aftertaste. The brown-amber color catches the light very well."
shot_glass_icon_state = "shotglassbrown"
/datum/reagent/consumable/ethanol/whiskey/kong
name = "Kong"
- description = "Makes You Go Ape!®"
+ description = "Makes You Go Ape!"
color = "#332100" // rgb: 51, 33, 0
addiction_threshold = 15
taste_description = "the grip of a giant ape"
glass_name = "glass of Kong"
- glass_desc = "Makes You Go Ape!®"
+ glass_desc = "Makes You Go Ape!"
/datum/reagent/consumable/ethanol/whiskey/kong/addiction_act_stage1(mob/living/M)
if(prob(5))
@@ -200,21 +200,21 @@ All effects don't start immediately, but rather get worse over time; the rate is
M.hallucination += hal_amt //conscious dreamers can be treasurers to their own currency
..()
-/datum/reagent/consumable/ethanol/thirteenloko
- name = "Thirteen Loko"
- description = "A potent mixture of caffeine and alcohol."
+/datum/reagent/consumable/ethanol/vimukti
+ name = "Vimukti"
+ description = "A potent, fermented sweet lichen drink from the Shoal."
color = "#ce871d"
nutriment_factor = 1 * REAGENTS_METABOLISM
boozepwr = 80
quality = DRINK_GOOD
overdose_threshold = 60
addiction_threshold = 30
- taste_description = "jitters and death"
- glass_icon_state = "thirteen_loko_glass"
- glass_name = "glass of Thirteen Loko"
- glass_desc = "This is a glass of Thirteen Loko, it appears to be of the highest quality. The drink, not the glass."
+ taste_description = "oily syrup"
+ glass_icon_state = "vimukti_glass"
+ glass_name = "glass of Vimukti"
+ glass_desc = "A spiritually-taxing drink from the Shoal. Numerous warnings about this drink tell you to not drink too much, lest you incur some sort of wrath... or an overdose of a psychoactive lichen."
-/datum/reagent/consumable/ethanol/thirteenloko/on_mob_life(mob/living/carbon/M)
+/datum/reagent/consumable/ethanol/vimukti/on_mob_life(mob/living/carbon/M)
M.drowsyness = max(0,M.drowsyness-7)
M.AdjustSleeping(-40)
M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
@@ -222,12 +222,12 @@ All effects don't start immediately, but rather get worse over time; the rate is
M.Jitter(5)
return ..()
-/datum/reagent/consumable/ethanol/thirteenloko/overdose_start(mob/living/M)
+/datum/reagent/consumable/ethanol/vimukti/overdose_start(mob/living/M)
to_chat(M, "Your entire body violently jitters as you start to feel queasy. You really shouldn't have drank all of that [name]!")
M.Jitter(20)
M.Stun(15)
-/datum/reagent/consumable/ethanol/thirteenloko/overdose_process(mob/living/M)
+/datum/reagent/consumable/ethanol/vimukti/overdose_process(mob/living/M)
if(prob(7) && iscarbon(M))
var/obj/item/I = M.get_active_held_item()
if(I)
@@ -260,18 +260,18 @@ All effects don't start immediately, but rather get worse over time; the rate is
if(prob(1) && iscarbon(M))
var/datum/disease/D = new /datum/disease/heart_failure
M.ForceContractDisease(D)
- to_chat(M, "You're pretty sure you just felt your heart stop for a second there..")
+ to_chat(M, "You're pretty sure you just felt your heart stop for a second there...")
M.playsound_local(M, 'sound/effects/singlebeat.ogg', 100, 0)
/datum/reagent/consumable/ethanol/vodka
name = "Vodka"
- description = "Number one drink that also serves as fuel."
+ description = "A clear, hard liquor. Doubles as a flammable fuel source, if you really need it."
color = "#0064C8" // rgb: 0, 100, 200
boozepwr = 65
taste_description = "grain alcohol"
glass_icon_state = "ginvodkaglass"
glass_name = "glass of vodka"
- glass_desc = "The glass contain wodka. Xynta."
+ glass_desc = "It's almost difficult to tell the glass is full of vodka until you tip it around. The smell makes your nose wrinkle... but it might just be worth it."
shot_glass_icon_state = "shotglassclear"
/datum/reagent/consumable/ethanol/vodka/on_mob_life(mob/living/carbon/M)
@@ -280,14 +280,14 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/bilk
name = "Bilk"
- description = "This appears to be beer mixed with milk. Disgusting."
+ description = "This appears to be beer mixed with milk. Creative...?"
color = "#895C4C" // rgb: 137, 92, 76
nutriment_factor = 2 * REAGENTS_METABOLISM
boozepwr = 15
taste_description = "desperation and lactate"
glass_icon_state = "glass_brown"
glass_name = "glass of bilk"
- glass_desc = "A brew of milk and beer. For those alcoholics who fear osteoporosis."
+ glass_desc = "A brew of milk and beer. You have to wonder if this was made by accident just from the smell."
/datum/reagent/consumable/ethanol/bilk/on_mob_life(mob/living/carbon/M)
if(M.getBruteLoss() && prob(10))
@@ -297,14 +297,14 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/threemileisland
name = "Three Mile Island Iced Tea"
- description = "Made for a woman, strong enough for a man."
+ description = "The extreme version of fruity cocktails."
color = "#666340" // rgb: 102, 99, 64
boozepwr = 10
quality = DRINK_FANTASTIC
- taste_description = "dryness"
+ taste_description = "sweet dryness"
glass_icon_state = "threemileislandglass"
glass_name = "Three Mile Island Ice Tea"
- glass_desc = "A glass of this is sure to prevent a meltdown."
+ glass_desc = "A glass of Three Mile Island Ice Tea, named after a cordoned-off set of islands on Earth, for some reason. You almost can't taste the alcohol in it..."
/datum/reagent/consumable/ethanol/threemileisland/on_mob_life(mob/living/carbon/M)
M.set_drugginess(50)
@@ -312,75 +312,75 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/gin
name = "Gin"
- description = "It's gin. In space. I say, good sir."
+ description = "A very sharp alcohol, with a flavor that's distinctly fresh."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 45
- taste_description = "an alcoholic christmas tree"
+ taste_description = "an alcoholic pine tree"
glass_icon_state = "ginvodkaglass"
glass_name = "glass of gin"
- glass_desc = "A crystal clear glass of Griffeater gin."
+ glass_desc = "A glass of gin, made with a specific type of berry that leaves it smelling like the tree it came from. It's enough to wet your eyes."
/datum/reagent/consumable/ethanol/rum
name = "Rum"
- description = "Yohoho and all that."
+ description = "The liquor of choice for sailors and spacers alike."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 60
taste_description = "spiked butterscotch"
glass_icon_state = "rumglass"
glass_name = "glass of rum"
- glass_desc = "Now you want to Pray for a pirate suit, don't you?"
+ glass_desc = "There's no need to worry about being seen as a pirate with one of these. If you add enough ice and let it melt, it'll turn into grog."
shot_glass_icon_state = "shotglassbrown"
/datum/reagent/consumable/ethanol/tequila
name = "Tequila"
- description = "A strong and mildly flavoured, Mexican produced spirit. Feeling thirsty, hombre?"
+ description = "A strongly flavoured spirit."
color = "#FFFF91" // rgb: 255, 255, 145
boozepwr = 70
taste_description = "paint stripper"
glass_icon_state = "tequilaglass"
glass_name = "glass of tequila"
- glass_desc = "Now all that's missing is the weird colored shades!"
+ glass_desc = "Despite the strong, woody taste, there's just enough sweetness to keep you coming for more."
shot_glass_icon_state = "shotglassgold"
/datum/reagent/consumable/ethanol/vermouth
name = "Vermouth"
- description = "You suddenly feel a craving for a martini..."
+ description = "A fine wine to go with a meal."
color = "#91FF91" // rgb: 145, 255, 145
boozepwr = 45
taste_description = "dry alcohol"
glass_icon_state = "vermouthglass"
glass_name = "glass of vermouth"
- glass_desc = "You wonder why you're even drinking this straight."
+ glass_desc = "Vermouth was used as a medicine in the past, and the flavor makes sure to remind you of that."
shot_glass_icon_state = "shotglassclear"
/datum/reagent/consumable/ethanol/wine
name = "Wine"
- description = "A premium alcoholic beverage made from distilled grape juice."
+ description = "An alcoholic beverage made from fermented grapes of all kinds."
color = "#7E4043" // rgb: 126, 64, 67
boozepwr = 35
taste_description = "bitter sweetness"
glass_icon_state = "wineglass"
glass_name = "glass of wine"
- glass_desc = "A very classy looking drink."
+ glass_desc = "Deeply red wine in a glass. You're not enough of a sommelier to really describe how it smells."
shot_glass_icon_state = "shotglassred"
/datum/reagent/consumable/ethanol/lizardwine
- name = "Kalixcis Wine"
- description = "A relatively popular Kalixcane beverage, made by infusing cacti in ethanol."
+ name = "Blueflame Pyrecask"
+ description = "A popular Zohil beverage, made by infusing specially-gathered cacti and grapes in ethanol."
color = "#7E4043" // rgb: 126, 64, 67
boozepwr = 45
quality = DRINK_FANTASTIC
- taste_description = "scaley sweetness"
+ taste_description = "warm sweetness"
/datum/reagent/consumable/ethanol/grappa
name = "Grappa"
- description = "A fine Italian brandy, for when regular wine just isn't alcoholic enough for you."
+ description = "A fine brandy mixed with spirits."
color = "#F8EBF1"
boozepwr = 60
taste_description = "classy bitter sweetness"
glass_icon_state = "grappa"
glass_name = "glass of grappa"
- glass_desc = "A fine drink originally made to prevent waste by using the leftovers from winemaking."
+ glass_desc = "Despite being made from the recycled remains of wine grapes, it's not bad at all."
/datum/reagent/consumable/ethanol/amaretto
name = "Amaretto"
@@ -390,28 +390,28 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "fruity and nutty sweetness"
glass_icon_state = "amarettoglass"
glass_name = "glass of amaretto"
- glass_desc = "A sweet and syrupy looking drink."
+ glass_desc = "A sweet and syrupy looking alcohol. You're lucky it wasn't lost to history."
/datum/reagent/consumable/ethanol/cognac
name = "Cognac"
- description = "A sweet and strongly alcoholic drink, made after numerous distillations and years of maturing. Classy as fornication."
+ description = "A sweet and strongly alcoholic drink, made after numerous distillations and years of maturing."
color = "#AB3C05" // rgb: 171, 60, 5
boozepwr = 75
- taste_description = "angry and irish"
+ taste_description = "sharp and relaxing"
glass_icon_state = "cognacglass"
glass_name = "glass of cognac"
- glass_desc = "Damn, you feel like some kind of French aristocrat just by holding this."
+ glass_desc = "You wonder how many exhausted Solarian bureaucrats are drinking this the same way you are, right now."
shot_glass_icon_state = "shotglassbrown"
/datum/reagent/consumable/ethanol/absinthe
name = "Absinthe"
- description = "A powerful alcoholic drink. Rumored to cause hallucinations but does not."
+ description = "A powerful alcoholic drink. Rumored to cause hallucinations if taken irresponsibly."
color = rgb(10, 206, 0)
boozepwr = 80 //Very strong even by default
taste_description = "death and licorice"
glass_icon_state = "absinthe"
glass_name = "glass of absinthe"
- glass_desc = "It's as strong as it smells."
+ glass_desc = "The smell is enough to bring you to the verge of tears. The hint of liquorice threatens to bring you over the edge."
shot_glass_icon_state = "shotglassgreen"
/datum/reagent/consumable/ethanol/absinthe/on_mob_life(mob/living/carbon/M)
@@ -421,13 +421,13 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/hooch
name = "Hooch"
- description = "Either someone's failure at cocktail making or attempt in alcohol production. In any case, do you really want to drink that?"
+ description = "Low quality, low grade, and low expectations."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 100
taste_description = "pure resignation"
glass_icon_state = "glass_brown2"
glass_name = "Hooch"
- glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night."
+ glass_desc = "You can't help but feel like you'd rather drink anything else right now, just from looking at it."
/datum/reagent/consumable/ethanol/hooch/on_mob_life(mob/living/carbon/M)
if(M.mind && M.mind.assigned_role == "Assistant")
@@ -440,67 +440,67 @@ All effects don't start immediately, but rather get worse over time; the rate is
description = "A dark alcoholic beverage made with malted barley and yeast."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 65
- taste_description = "hearty barley ale"
+ taste_description = "hearty alcoholic grains"
glass_icon_state = "aleglass"
glass_name = "glass of ale"
- glass_desc = "A freezing pint of delicious Ale."
+ glass_desc = "A pint of ale. A classic for the working class."
/datum/reagent/consumable/ethanol/goldschlager
name = "Goldschlager"
- description = "100 proof cinnamon schnapps, made for alcoholic teen girls on spring break."
+ description = "100 proof cinnamon schnapps, made for the Student Unions' unbearable tastes."
color = "#FFFF91" // rgb: 255, 255, 145
boozepwr = 25
quality = DRINK_VERYGOOD
taste_description = "burning cinnamon"
glass_icon_state = "goldschlagerglass"
glass_name = "glass of goldschlager"
- glass_desc = "100% proof that teen girls will drink anything with gold in it."
+ glass_desc = "Extremely high proof, with cinnamon to boot. At least the light catches the gold flakes nicely enough to distract you from the imminent sting."
shot_glass_icon_state = "shotglassgold"
/datum/reagent/consumable/ethanol/patron
name = "Patron"
- description = "Tequila with silver in it, a favorite of alcoholic women in the club scene."
+ description = "Tequila with silver in it, often found in nightclubs."
color = "#585840" // rgb: 88, 88, 64
boozepwr = 60
quality = DRINK_VERYGOOD
taste_description = "metallic and expensive"
glass_icon_state = "patronglass"
glass_name = "glass of patron"
- glass_desc = "Drinking patron in the bar, with all the subpar ladies."
+ glass_desc = "A glass of Patron. The silver is for show, but you can't help but wonder how you would show it off to anyone."
shot_glass_icon_state = "shotglassclear"
/datum/reagent/consumable/ethanol/gintonic
name = "Gin and Tonic"
- description = "An all time classic, mild cocktail."
+ description = "A classic cocktail, with quinine for flavor."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 25
quality = DRINK_NICE
taste_description = "mild and tart"
glass_icon_state = "gintonicglass"
glass_name = "Gin and Tonic"
- glass_desc = "A mild but still great cocktail. Drink up, like a true Englishman."
+ glass_desc = "A mild, venerable cocktail. You wonder if the quinine is doing anything for you."
/datum/reagent/consumable/ethanol/rum_coke
name = "Rum and Coke"
description = "Rum, mixed with cola."
- taste_description = "cola"
+ taste_description = "cola and alcohol"
boozepwr = 40
quality = DRINK_NICE
color = "#6b2f01"
glass_icon_state = "whiskeycolaglass"
glass_name = "Rum and Coke"
- glass_desc = "The classic go-to of space-fratboys."
+ glass_desc = "The classic for mixing drinks on the fly."
/datum/reagent/consumable/ethanol/cuba_libre
- name = "Cuba Libre"
- description = "Viva la Revolucion! Viva Cuba Libre!"
+ name = "Frontier Libre"
+ description = "For a freer Frontier, everywhere!"
color = "#692e01"
boozepwr = 50
quality = DRINK_GOOD
taste_description = "a refreshing marriage of citrus and rum"
glass_icon_state = "cubalibreglass"
- glass_name = "Cuba Libre"
- glass_desc = "A classic mix of rum, cola, and lime. A favorite of revolutionaries everywhere!"
+ glass_name = "Frontier Libre"
+ glass_desc = "A mix of rum, cola, and lime. A favorite of among independent spacers and the Frontiersmen alike, who named it in the spirit of securing a free Frontier."
/datum/reagent/consumable/ethanol/whiskey_cola
name = "Whiskey Cola"
@@ -508,55 +508,55 @@ All effects don't start immediately, but rather get worse over time; the rate is
color = "#602a00"
boozepwr = 70
quality = DRINK_NICE
- taste_description = "cola"
+ taste_description = "sweet soda and bitter alcohol"
glass_icon_state = "whiskeycolaglass"
glass_name = "whiskey cola"
- glass_desc = "An innocent-looking mixture of cola and whiskey. Delicious."
+ glass_desc = "An sweet-and-bitter mixture of cola and whiskey."
/datum/reagent/consumable/ethanol/martini
name = "Classic Martini"
- description = "Vermouth with Gin. Not quite how 007 enjoyed it, but still delicious."
+ description = "Vermouth with gin."
color = "#9e8c67"
boozepwr = 60
quality = DRINK_NICE
- taste_description = "dry class"
+ taste_description = "dry"
glass_icon_state = "martiniglass"
glass_name = "Classic Martini"
- glass_desc = "Damn, the bartender even stirred it, not shook it."
+ glass_desc = "Rumored to be a favorite amongst the Evidenzkompanien, much to their chagrin."
/datum/reagent/consumable/ethanol/vodkamartini
name = "Vodka Martini"
- description = "Vodka with Gin. Not quite how 007 enjoyed it, but still delicious."
+ description = "Vodka with gin."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 65
quality = DRINK_NICE
taste_description = "shaken, not stirred"
glass_icon_state = "martiniglass"
glass_name = "Vodka martini"
- glass_desc ="A bastardisation of the classic martini. Still great."
+ glass_desc ="Rumored to be a favorite amongst the Verwaltungskompanien, to their entertainment."
/datum/reagent/consumable/ethanol/white_russian
- name = "White Russian"
- description = "That's just, like, your opinion, man..."
+ name = "White Gezenan"
+ description = "Cream and vodka."
color = "#A68340" // rgb: 166, 131, 64
boozepwr = 50
quality = DRINK_GOOD
taste_description = "bitter cream"
glass_icon_state = "whiterussianglass"
- glass_name = "White Russian"
- glass_desc = "A very nice looking drink. But that's just, like, your opinion, man."
+ glass_name = "White Gezenan"
+ glass_desc = "A mix of traditionally PGF-sourced vodka and cream derived from nut milk. You can still drink this if you're not from Gezena, though."
/datum/reagent/consumable/ethanol/screwdrivercocktail
name = "Screwdriver"
- description = "Vodka, mixed with plain ol' orange juice. The result is surprisingly delicious."
+ description = "Vodka mixed with orange juice."
color = "#A68310" // rgb: 166, 131, 16
boozepwr = 55
quality = DRINK_NICE
taste_description = "oranges"
glass_icon_state = "screwdriverglass"
glass_name = "Screwdriver"
- glass_desc = "A simple, yet superb mixture of Vodka and orange juice. Just the thing for the tired engineer."
+ glass_desc = "You won't be turning any screws with this, but you're far from lamenting that."
/datum/reagent/consumable/ethanol/screwdrivercocktail/on_mob_life(mob/living/carbon/M)
var/static/list/increased_rad_loss = list("Station Engineer", "Atmospheric Technician", "Chief Engineer")
@@ -572,18 +572,18 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "sweet 'n creamy"
glass_icon_state = "booger"
glass_name = "Booger"
- glass_desc = "Ewww..."
+ glass_desc = "The name isn't selling the drink very well, is it..."
/datum/reagent/consumable/ethanol/bloody_mary
name = "Bloody Mary"
- description = "A strange yet pleasurable mixture made of vodka, tomato and lime juice. Or at least you THINK the red stuff is tomato juice."
+ description = "A strange yet pleasurable mixture made of vodka, tomato and lime juice."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 55
quality = DRINK_GOOD
taste_description = "tomatoes with a hint of lime"
glass_icon_state = "bloodymaryglass"
glass_name = "Bloody Mary"
- glass_desc = "Tomato juice, mixed with Vodka and a li'l bit of lime. Tastes like liquid murder."
+ glass_desc = "Tomato juice, mixed with Vodka and a li'l bit of lime. The taste is acquired, and usually acquired through tgrying to use it as a hangover remedy."
/datum/reagent/consumable/ethanol/bloody_mary/on_mob_life(mob/living/carbon/C)
if(C.blood_volume < BLOOD_VOLUME_NORMAL)
@@ -592,14 +592,14 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/brave_bull
name = "Brave Bull"
- description = "It's just as effective as Dutch-Courage!"
+ description = "Liquid courage is as good as any courage!"
color = "#664300" // rgb: 102, 67, 0
boozepwr = 60
quality = DRINK_NICE
taste_description = "alcoholic bravery"
glass_icon_state = "bravebullglass"
glass_name = "Brave Bull"
- glass_desc = "Tequila and Coffee liqueur, brought together in a mouthwatering mixture. Drink up."
+ glass_desc = "Tequila and coffee liqueur, brought together to give you the will to pick fights. Don't drink enough to ruin your sense of safety, though."
var/tough_text
/datum/reagent/consumable/ethanol/brave_bull/on_mob_metabolize(mob/living/M)
@@ -615,14 +615,14 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/tequila_sunrise
name = "Tequila Sunrise"
- description = "Tequila, Grenadine, and Orange Juice."
+ description = "Tequila, grenadine, and orange juice."
color = "#FFE48C" // rgb: 255, 228, 140
boozepwr = 45
quality = DRINK_GOOD
taste_description = "oranges with a hint of pomegranate"
glass_icon_state = "tequilasunriseglass"
glass_name = "tequila Sunrise"
- glass_desc = "Oh great, now you feel nostalgic about sunrises back on Terra..."
+ glass_desc = "You feel a distinct sense of nostalgia - when's the last time you felt the sun on your face?"
var/obj/effect/light_holder
/datum/reagent/consumable/ethanol/tequila_sunrise/on_mob_metabolize(mob/living/M)
@@ -643,14 +643,14 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/toxins_special
name = "Toxins Special"
- description = "This thing is ON FIRE! CALL THE DAMN SHUTTLE!"
+ description = "It's a bit tasteless to name your drink after industrial accidents."
color = "#780162"
boozepwr = 25
quality = DRINK_VERYGOOD
taste_description = "spicy toxins"
glass_icon_state = "toxinsspecialglass"
glass_name = "Toxins Special"
- glass_desc = "Whoah, this thing is on FIRE!"
+ glass_desc = "Traditionally lit with a welder while the server is blindfolded, but you don't want to cause an ACTUAL accident here."
shot_glass_icon_state = "toxinsspecialglass"
/datum/reagent/consumable/ethanol/toxins_special/on_mob_life(mob/living/M)
@@ -659,15 +659,15 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/beepsky_smash
name = "Beepsky Smash"
- description = "Drink this and prepare for the LAW."
+ description = "A drink for those who pick fights with automated security."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 60 //THE FIST OF THE LAW IS STRONG AND HARD
quality = DRINK_GOOD
metabolization_rate = 0.5
- taste_description = "JUSTICE"
+ taste_description = "electrified justice"
glass_icon_state = "beepskysmashglass"
glass_name = "Beepsky Smash"
- glass_desc = "Heavy, hot and strong. Just like the Iron fist of the LAW."
+ glass_desc = "Heavy, hot and strong. Just like the sting of a stunbaton."
overdose_threshold = 40
var/datum/brain_trauma/special/beepsky/B
@@ -700,26 +700,26 @@ All effects don't start immediately, but rather get worse over time; the rate is
M.gain_trauma(/datum/brain_trauma/mild/phobia/security, TRAUMA_RESILIENCE_BASIC)
/datum/reagent/consumable/ethanol/irish_cream
- name = "Irish Cream"
- description = "Whiskey-imbued cream, what else would you expect from the Irish?"
+ name = "Zohil Cream"
+ description = "Whiskey-imbued cream."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 50
quality = DRINK_NICE
taste_description = "creamy alcohol"
glass_icon_state = "irishcreamglass"
- glass_name = "Irish Cream"
- glass_desc = "It's cream, mixed with whiskey. What else would you expect from the Irish?"
+ glass_name = "Zohil Cream"
+ glass_desc = "Cream mixed with whiskey. Don't expect to learn anything about the Blueflame from just a drink, though."
/datum/reagent/consumable/ethanol/manly_dorf
- name = "The Manly Dorf"
- description = "Beer and Ale, brought together in a delicious mix. Intended for true men only."
+ name = "The Shortstop"
+ description = "Beer and ale, brought together in a very grain-flavored mix."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 100 //For the manly only
quality = DRINK_NICE
- taste_description = "hair on your chest and your chin"
+ taste_description = "fire in your chest and windburn on your chin"
glass_icon_state = "manlydorfglass"
- glass_name = "The Manly Dorf"
- glass_desc = "A manly concoction made from Ale and Beer. Intended for true men only."
+ glass_name = "The Shortstop"
+ glass_desc = "A concoction made from ale and beer. Named after a joke that only short people would order this to prove a point."
var/dorf_mode
/datum/reagent/consumable/ethanol/manly_dorf/on_mob_metabolize(mob/living/carbon/human/badlands_chugs)
@@ -742,14 +742,14 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/longislandicedtea
name = "Long Island Iced Tea"
- description = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only."
+ description = "The entire liquor cabinet brought together with enough sugar to hide it."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 35
quality = DRINK_VERYGOOD
taste_description = "a mixture of cola and alcohol"
glass_icon_state = "longislandicedteaglass"
glass_name = "Long Island Iced Tea"
- glass_desc = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only."
+ glass_desc = "The entire liquor cabinet brought together with enough sugar to hide it."
/datum/reagent/consumable/ethanol/moonshine
@@ -763,103 +763,86 @@ All effects don't start immediately, but rather get worse over time; the rate is
glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night."
/datum/reagent/consumable/ethanol/b52
- name = "B-52"
- description = "Coffee, Irish Cream, and cognac. You will get bombed."
+ name = "AM-G"
+ description = "Coffee liquor, Zohil Cream, and cognac."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 85
quality = DRINK_GOOD
- taste_description = "angry and irish"
+ taste_description = "angry and intense"
glass_icon_state = "b52glass"
- glass_name = "B-52"
- glass_desc = "Kahlua, Irish Cream, and cognac. You will get bombed."
+ glass_name = "AM-G"
+ glass_desc = "Coffee liquor, Zohil Cream, and cognac. Enough to make you hide before the blast."
shot_glass_icon_state = "b52glass"
/datum/reagent/consumable/ethanol/b52/on_mob_metabolize(mob/living/M)
playsound(M, 'sound/effects/explosion_distant.ogg', 100, FALSE)
/datum/reagent/consumable/ethanol/irishcoffee
- name = "Irish Coffee"
- description = "Coffee, and alcohol. More fun than a Mimosa to drink in the morning."
+ name = "Gezenan Coffee"
+ description = "Coffee, and alcohol. Traditionally enjoyed in the morning on lazy days."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 35
quality = DRINK_NICE
taste_description = "giving up on the day"
glass_icon_state = "irishcoffeeglass"
- glass_name = "Irish Coffee"
- glass_desc = "Coffee and alcohol. More fun than a Mimosa to drink in the morning."
+ glass_name = "Gezenan Coffee"
+ glass_desc = "Coffee and alcohol. Traditionally enjoyed in the morning on lazy days."
/datum/reagent/consumable/ethanol/margarita
name = "Margarita"
- description = "On the rocks with salt on the rim. Arriba~!"
+ description = "A fruity, tropical drink with a salted rim around the glass."
color = "#8CFF8C" // rgb: 140, 255, 140
boozepwr = 35
quality = DRINK_NICE
taste_description = "dry and salty"
glass_icon_state = "margaritaglass"
glass_name = "Margarita"
- glass_desc = "On the rocks with salt on the rim. Arriba~!"
+ glass_desc = "On the rocks with salt on the rim. Apparently the name meant something in a language long lost on Earth."
/datum/reagent/consumable/ethanol/black_russian
- name = "Black Russian"
- description = "For the lactose-intolerant. Still as classy as a White Russian."
+ name = "Black Rachnid"
+ description = "An alternative take to the White Gezenan. Doubles as an option for those who can't handle lactose."
color = "#360000" // rgb: 54, 0, 0
boozepwr = 70
quality = DRINK_NICE
taste_description = "bitterness"
glass_icon_state = "blackrussianglass"
- glass_name = "Black Russian"
- glass_desc = "For the lactose-intolerant. Still as classy as a White Russian."
+ glass_name = "Black Rachnid"
+ glass_desc = "An alternative take to the White Gezenan. Doubles as an option for those who can't handle lactose."
/datum/reagent/consumable/ethanol/manhattan
- name = "Manhattan"
- description = "The Detective's undercover drink of choice. He never could stomach gin..."
+ name = "Twelve Crossings"
+ description = "A mixed drink popularized by a murder mystery book series from Teceti."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 30
quality = DRINK_NICE
taste_description = "mild dryness"
glass_icon_state = "manhattanglass"
- glass_name = "Manhattan"
- glass_desc = "The Detective's undercover drink of choice. He never could stomach gin..."
-
-
-/datum/reagent/consumable/ethanol/manhattan_proj
- name = "Manhattan Project"
- description = "A scientist's drink of choice, for pondering ways to blow up the sector."
- color = "#664300" // rgb: 102, 67, 0
- boozepwr = 45
- quality = DRINK_VERYGOOD
- taste_description = "death, the destroyer of worlds"
- glass_icon_state = "proj_manhattanglass"
- glass_name = "Manhattan Project"
- glass_desc = "A scientist's drink of choice, for thinking how to blow up the sector."
-
-
-/datum/reagent/consumable/ethanol/manhattan_proj/on_mob_life(mob/living/carbon/M)
- M.set_drugginess(30)
- return ..()
+ glass_name = "Twelve Crossings"
+ glass_desc = "A mixed drink popularized by a murder mystery book series from Teceti. The Detective's undercover drink of choice. He never could stomach gin..."
/datum/reagent/consumable/ethanol/whiskeysoda
name = "Whiskey Soda"
- description = "For the more refined griffon."
+ description = "Whiskey and soda water, a simple mixed drink."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 70
quality = DRINK_NICE
taste_description = "soda"
glass_icon_state = "whiskeysodaglass2"
glass_name = "whiskey soda"
- glass_desc = "Ultimate refreshment."
+ glass_desc = "Bitter and refreshing."
/datum/reagent/consumable/ethanol/antifreeze
name = "Anti-freeze"
- description = "The ultimate refreshment. Not what it sounds like."
+ description = "The ultimate refreshment. Not actually made of antifreeze!"
color = "#664300" // rgb: 102, 67, 0
boozepwr = 35
quality = DRINK_NICE
- taste_description = "Jack Frost's piss"
+ taste_description = "frigid heat"
glass_icon_state = "antifreeze"
glass_name = "Anti-freeze"
- glass_desc = "The ultimate refreshment."
+ glass_desc = "Vodka, cream, and ice. No actual antifreeze included, of course."
/datum/reagent/consumable/ethanol/antifreeze/on_mob_life(mob/living/carbon/M)
M.adjust_bodytemperature(20 * TEMPERATURE_DAMAGE_COEFFICIENT, 0, M.get_body_temp_normal() + 20) //310.15 is the normal bodytemp.
@@ -867,14 +850,14 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/barefoot
name = "Barefoot"
- description = "Barefoot and pregnant."
+ description = "To be enjoyed on the beach or by a pool. You should keep your shoes on, though."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 45
quality = DRINK_VERYGOOD
taste_description = "creamy berries"
glass_icon_state = "b&p"
glass_name = "Barefoot"
- glass_desc = "Barefoot and pregnant."
+ glass_desc = "To be enjoyed on the beach or by a pool. You should keep your shoes on, though."
/datum/reagent/consumable/ethanol/barefoot/on_mob_life(mob/living/carbon/M)
if(ishuman(M)) //Barefoot causes the imbiber to quickly regenerate brute trauma if they're not wearing shoes.
@@ -893,40 +876,40 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "refreshing cold"
glass_icon_state = "snowwhite"
glass_name = "Snow White"
- glass_desc = "A cold refreshment."
+ glass_desc = "A cold refreshment of beer and lemon-lime soda. Not exactly princess material, is it?"
/datum/reagent/consumable/ethanol/demonsblood //Prevents the imbiber from being dragged into a pool of blood by a slaughter demon.
name = "Demon's Blood"
- description = "AHHHH!!!!"
+ description = "A mix of two sodas, rum, and... real blood."
color = "#820000" // rgb: 130, 0, 0
boozepwr = 75
quality = DRINK_VERYGOOD
taste_description = "sweet tasting iron"
glass_icon_state = "demonsblood"
- glass_name = "Demons Blood"
- glass_desc = "Just looking at this thing makes the hair at the back of your neck stand up."
+ glass_name = "Demon's Blood"
+ glass_desc = "A drink made with the blood of the server or the patron, which usually results in said patron being thrown out. While most substitute real blood for a saline solution, that drink is actually referred to as 'Demon's Sweat'."
/datum/reagent/consumable/ethanol/devilskiss //If eaten by a slaughter demon, the demon will regret it.
name = "Devil's Kiss"
- description = "Creepy time!"
+ description = "Asking for a kiss to go with the blood drawing is pushing it."
color = "#A68310" // rgb: 166, 131, 16
boozepwr = 70
quality = DRINK_VERYGOOD
taste_description = "bitter iron"
glass_icon_state = "devilskiss"
- glass_name = "Devils Kiss"
- glass_desc = "Creepy time!"
+ glass_name = "Devil's Kiss"
+ glass_desc = "The boozier cousin of the Demon's Blood. Typically served in a glass shaped to specifically cut and draw blood from the patron's lip... which deters most."
/datum/reagent/consumable/ethanol/vodkatonic
name = "Vodka and Tonic"
- description = "For when a gin and tonic isn't Russian enough."
+ description = "The stronger sibling of the Gin and Tonic."
color = "#0064C8" // rgb: 0, 100, 200
boozepwr = 70
quality = DRINK_NICE
taste_description = "tart bitterness"
glass_icon_state = "vodkatonicglass"
- glass_name = "vodka and tonic"
- glass_desc = "For when a gin and tonic isn't Russian enough."
+ glass_name = "Vodka and Tonic"
+ glass_desc = "The stronger sibling of the Gin and Tonic."
/datum/reagent/consumable/ethanol/ginfizz
@@ -943,55 +926,55 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/bahama_mama
name = "Bahama Mama"
- description = "A tropical cocktail with a complex blend of flavors."
+ description = "A tropical cocktail with a complex blend of fruity flavors."
color = "#FF7F3B" // rgb: 255, 127, 59
boozepwr = 35
quality = DRINK_GOOD
taste_description = "pineapple, coconut, and a hint of coffee"
glass_icon_state = "bahama_mama"
glass_name = "Bahama Mama"
- glass_desc = "A tropical cocktail with a complex blend of flavors."
+ glass_desc = "A tropical cocktail with a complex blend of fruity flavors. It makes you think about going on vacation someday..."
/datum/reagent/consumable/ethanol/singulo
name = "Singulo"
- description = "A blue-space beverage!"
+ description = "Named after a tragic industrial accident!"
color = "#2E6671" // rgb: 46, 102, 113
boozepwr = 35
quality = DRINK_VERYGOOD
taste_description = "concentrated matter"
glass_icon_state = "singulo"
glass_name = "Singulo"
- glass_desc = "A blue-space beverage."
+ glass_desc = "Named after a tragic industrial accident involving a singularity escaping containment. This drink doesn't taste particularly commemorative - it's too enjoyable!"
/datum/reagent/consumable/ethanol/sbiten
name = "Sbiten"
- description = "A spicy Vodka! Might be a little hot for the little guys!"
+ description = "Vodka with capsaicin for the extra feeling of intense warmth."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 70
quality = DRINK_GOOD
taste_description = "hot and spice"
glass_icon_state = "sbitenglass"
glass_name = "Sbiten"
- glass_desc = "A spicy mix of Vodka and Spice. Very hot."
+ glass_desc = "Vodka with capsaicin for the extra feeling of intense warmth. Difficult to take large swallows."
/datum/reagent/consumable/ethanol/sbiten/on_mob_life(mob/living/carbon/M)
M.adjust_bodytemperature(50 * TEMPERATURE_DAMAGE_COEFFICIENT, 0 , M.dna.species.bodytemp_heat_damage_limit) //310.15 is the normal bodytemp.
return ..()
/datum/reagent/consumable/ethanol/red_mead
- name = "Red Mead"
- description = "The true Viking drink! Even though it has a strange red color."
+ name = "Drop-pod"
+ description = "A commemorative drink, made in the name of those who died during failed orbital drop-pod landings."
color = "#C73C00" // rgb: 199, 60, 0
boozepwr = 31 //Red drinks are stronger
quality = DRINK_GOOD
taste_description = "sweet and salty alcohol"
glass_icon_state = "red_meadglass"
- glass_name = "Red Mead"
- glass_desc = "A true Viking's beverage, made with the blood of their enemies."
+ glass_name = "Drop-pod"
+ glass_desc = "A commemorative drink, made in the name of those who died during failed orbital drop-pod landings. Technically intended to use the blood of your enemies, but..."
/datum/reagent/consumable/ethanol/mead
name = "Mead"
- description = "A Viking drink, though a cheap one."
+ description = "Fermented honey. The gentler sibling to the beer."
color = "#664300" // rgb: 102, 67, 0
nutriment_factor = 1 * REAGENTS_METABOLISM
boozepwr = 30
@@ -999,17 +982,17 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "sweet, sweet alcohol"
glass_icon_state = "meadglass"
glass_name = "Mead"
- glass_desc = "A drink from Valhalla."
+ glass_desc = "Fermented honey. The gentler sibling to the beer - and almost just as old."
/datum/reagent/consumable/ethanol/iced_beer
- name = "Iced Beer"
- description = "A beer which is so cold the air around it freezes."
+ name = "Iced beer"
+ description = "Iced beer, served in a chilled glass."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 15
taste_description = "refreshingly cold"
glass_icon_state = "iced_beerglass"
glass_name = "iced beer"
- glass_desc = "A beer so frosty, the air around it freezes."
+ glass_desc = "Iced beer, served in a chilled glass. It's cold enough to leave a trail in the air."
/datum/reagent/consumable/ethanol/iced_beer/on_mob_life(mob/living/carbon/M)
M.adjust_bodytemperature(-20 * TEMPERATURE_DAMAGE_COEFFICIENT, T0C) //310.15 is the normal bodytemp.
@@ -1017,25 +1000,25 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/grog
name = "Grog"
- description = "Watered-down rum, Nanotrasen approves!"
+ description = "Watered-down rum, to really stretch out your alcohol rations. A Belter classic."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 1 //Basically nothing
taste_description = "a poor excuse for alcohol"
glass_icon_state = "grogglass"
glass_name = "Grog"
- glass_desc = "A fine and cepa drink for Space."
+ glass_desc = "Watered-down rum, to really stretch out your alcohol rations. A Belter classic."
/datum/reagent/consumable/ethanol/aloe
name = "Aloe"
- description = "So very, very, very good."
+ description = "Zohil Cream and watermelon juice. Mellows out the alcoholic bite for a mild drink."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 35
quality = DRINK_VERYGOOD
taste_description = "sweet 'n creamy"
glass_icon_state = "aloe"
glass_name = "Aloe"
- glass_desc = "Very, very, very good."
+ glass_desc = "Zohil Cream and watermelon juice. Mellows out the alcoholic bite for a mild drink."
/datum/reagent/consumable/ethanol/andalusia
name = "Andalusia"
@@ -1046,51 +1029,51 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "lemons"
glass_icon_state = "andalusia"
glass_name = "Andalusia"
- glass_desc = "A nice, strangely named drink."
+ glass_desc = "A nice, strangely named drink. Theoretically named after a particular region on Terra, but no one's quite sure where."
/datum/reagent/consumable/ethanol/alliescocktail
- name = "Allies Cocktail"
- description = "A drink made from your allies. Not as sweet as those made from your enemies."
+ name = "Canton Cocktail"
+ description = "A drink intended to be shared across the Solarian cantons."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 45
quality = DRINK_NICE
taste_description = "bitter yet free"
glass_icon_state = "alliescocktail"
- glass_name = "Allies cocktail"
- glass_desc = "A drink made from your allies."
+ glass_name = "Canton cocktail"
+ glass_desc = "A drink intended to be shared across the Solarian cantons."
/datum/reagent/consumable/ethanol/acid_spit
- name = "Acid Spit"
- description = "A drink for the daring, can be deadly if incorrectly prepared!"
+ name = "Cracked Moon"
+ description = "Typically made on a dare by CLIP-BARD crews. It's deadly if incorrectly prepared!"
color = "#365000" // rgb: 54, 80, 0
boozepwr = 70
quality = DRINK_VERYGOOD
- taste_description = "stomach acid"
+ taste_description = "alien stomach acid"
glass_icon_state = "acidspitglass"
- glass_name = "Acid Spit"
- glass_desc = "A drink from Nanotrasen. Made from live aliens."
+ glass_name = "Cracked Moon"
+ glass_desc = "Typically made on a dare by CLIP-BARD crews. It's deadly if incorrectly prepared!"
/datum/reagent/consumable/ethanol/amasec
- name = "Amasec"
- description = "Official drink of the Nanotrasen Gun-Club!"
+ name = "Ren Kirsi"
+ description = "A Teceian drink mainly enjoyed on The Ring and it's sibling colonies."
color = "#664300" // rgb: 102, 67, 0
boozepwr = 35
quality = DRINK_GOOD
taste_description = "dark and metallic"
glass_icon_state = "amasecglass"
- glass_name = "Amasec"
- glass_desc = "Always handy before COMBAT!!!"
+ glass_name = "Ren Kirsi"
+ glass_desc = "There's no way you're getting your hands on metal shavings from The Ring itself, but it's the thought that counts."
/datum/reagent/consumable/ethanol/changelingsting
name = "Changeling Sting"
- description = "You take a tiny sip and feel a burning sensation..."
+ description = "Made by the superstitous. Keeps the changelings away... whereever they may be."
color = "#2E6671" // rgb: 46, 102, 113
boozepwr = 50
quality = DRINK_GOOD
taste_description = "your brain coming out your nose"
glass_icon_state = "changelingsting"
glass_name = "Changeling Sting"
- glass_desc = "A stingy drink."
+ glass_desc = "Made by the superstitous. Keeps the changelings away... whereever they may be."
/datum/reagent/consumable/ethanol/changelingsting/on_mob_life(mob/living/carbon/M)
if(M.mind) //Changeling Sting assists in the recharging of changeling chemicals.
@@ -1101,26 +1084,26 @@ All effects don't start immediately, but rather get worse over time; the rate is
return ..()
/datum/reagent/consumable/ethanol/irishcarbomb
- name = "Irish Car Bomb"
- description = "Mmm, tastes like the free Irish state."
+ name = "Lightspeed"
+ description = "A shot of Zohil cream in a pinch of ale, meant to be downed in one chug - hits you as fast as the name."
color = "#2E6671" // rgb: 46, 102, 113
boozepwr = 25
quality = DRINK_GOOD
- taste_description = "the spirit of Ireland"
+ taste_description = "the rush of hyperspace"
glass_icon_state = "irishcarbomb"
- glass_name = "Irish Car Bomb"
- glass_desc = "An Irish car bomb."
+ glass_name = "Lightspeed"
+ glass_desc = "A shot of Zohil cream in a pinch of ale, meant to be downed in one chug - hits you as fast as the name."
/datum/reagent/consumable/ethanol/syndicatebomb
- name = "Syndicate Bomb"
- description = "Tastes like terrorism!"
+ name = "Gorlex Surprise"
+ description = "Infamously named after the accusations of Syndicate-led bombings of space installations. It's a blast!"
color = "#2E6671" // rgb: 46, 102, 113
boozepwr = 90
quality = DRINK_GOOD
- taste_description = "purified antagonism"
+ taste_description = "anti-Nanotrasen sentiments"
glass_icon_state = "syndicatebomb"
- glass_name = "Syndicate Bomb"
- glass_desc = "A syndicate bomb."
+ glass_name = "Gorlex Surprise"
+ glass_desc = "Infamously named after the accusations of Syndicate-led bombings of space installations. It's a blast!"
/datum/reagent/consumable/ethanol/syndicatebomb/on_mob_life(mob/living/carbon/M)
if(prob(5))
@@ -1128,50 +1111,50 @@ All effects don't start immediately, but rather get worse over time; the rate is
return ..()
/datum/reagent/consumable/ethanol/hiveminderaser
- name = "Hivemind Eraser"
+ name = "Hivemind"
description = "A vessel of pure flavor."
color = "#FF80FC" // rgb: 255, 128, 252
boozepwr = 40
quality = DRINK_GOOD
taste_description = "psychic links"
glass_icon_state = "hiveminderaser"
- glass_name = "Hivemind Eraser"
- glass_desc = "For when even mindshields can't save you."
+ glass_name = "Hivemind"
+ glass_desc = "A legend around this drink states that drinking this at the same time as someone else links your mind with theirs. Are you going to find out?"
/datum/reagent/consumable/ethanol/erikasurprise
- name = "Erika Surprise"
- description = "The surprise is, it's green!"
+ name = "Terraformer Surprise"
+ description = "It's as green as the first terraforming experiments, allegedly."
color = "#2E6671" // rgb: 46, 102, 113
boozepwr = 35
quality = DRINK_VERYGOOD
taste_description = "tartness and bananas"
glass_icon_state = "erikasurprise"
- glass_name = "Erika Surprise"
- glass_desc = "The surprise is, it's green!"
+ glass_name = "Terraformer Surprise"
+ glass_desc = "It's as green as the first terraforming experiments, allegedly."
/datum/reagent/consumable/ethanol/driestmartini
- name = "Driest Martini"
- description = "Only for the experienced. You think you see sand floating in the glass."
+ name = "Saltflat"
+ description = "Nigh-dehydratingly dry. Intended to be a challenge."
nutriment_factor = 1 * REAGENTS_METABOLISM
color = "#2E6671" // rgb: 46, 102, 113
boozepwr = 65
quality = DRINK_GOOD
taste_description = "a beach"
glass_icon_state = "driestmartiniglass"
- glass_name = "Driest Martini"
- glass_desc = "Only for the experienced. You think you see sand floating in the glass."
+ glass_name = "Saltflat"
+ glass_desc = "Nigh-dehydratingly dry. Intended to be a challenge."
/datum/reagent/consumable/ethanol/bananahonk
- name = "Banana Honk"
- description = "A drink from Clown Heaven."
+ name = "Creamtruck"
+ description = "A distinctly non-kid friendly equivalent to the ice cream truck."
nutriment_factor = 1 * REAGENTS_METABOLISM
color = "#FFFF91" // rgb: 255, 255, 140
boozepwr = 60
quality = DRINK_GOOD
- taste_description = "a bad joke"
+ taste_description = "bananas and cream"
glass_icon_state = "bananahonkglass"
- glass_name = "Banana Honk"
- glass_desc = "A drink from Clown Heaven."
+ glass_name = "Creamtruck"
+ glass_desc = "A distinctly non-kid friendly equivalent to the ice cream truck."
/datum/reagent/consumable/ethanol/bananahonk/on_mob_life(mob/living/carbon/M)
if((ishuman(M) && M.job == "Clown") || ismonkey(M))
@@ -1180,16 +1163,16 @@ All effects don't start immediately, but rather get worse over time; the rate is
return ..() || .
/datum/reagent/consumable/ethanol/silencer
- name = "Silencer"
- description = "A drink from Mime Heaven."
+ name = "Choker"
+ description = "It takes a moment of quiet to really appreciate some drinks - this one doesn't give you the illusion of choice."
nutriment_factor = 1 * REAGENTS_METABOLISM
color = "#664300" // rgb: 102, 67, 0
- boozepwr = 59 //Proof that clowns are better than mimes right here
+ boozepwr = 59
quality = DRINK_GOOD
- taste_description = "a pencil eraser"
+ taste_description = "peace and quiet"
glass_icon_state = "silencerglass"
- glass_name = "Silencer"
- glass_desc = "A drink from Mime Heaven."
+ glass_name = "Choker"
+ glass_desc = "It takes a moment of quiet to really appreciate some drinks - this one doesn't give you the illusion of choice."
/datum/reagent/consumable/ethanol/silencer/on_mob_life(mob/living/carbon/M)
if(ishuman(M) && M.mind?.miming)
@@ -1200,18 +1183,18 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/drunkenblumpkin
name = "Drunken Blumpkin"
- description = "A weird mix of whiskey and blumpkin juice."
+ description = "A weird mix of whiskey and... chlorine-pumpkin juice?"
color = "#1EA0FF" // rgb: 102, 67, 0
boozepwr = 50
quality = DRINK_VERYGOOD
taste_description = "molasses and a mouthful of pool water"
glass_icon_state = "drunkenblumpkin"
glass_name = "Drunken Blumpkin"
- glass_desc = "A drink for the drunks."
+ glass_desc = "A drink for the confused hydropon worker."
/datum/reagent/consumable/ethanol/whiskey_sour //Requested since we had whiskey cola and soda but not sour.
name = "Whiskey Sour"
- description = "Lemon juice/whiskey/sugar mixture. Moderate alcohol content."
+ description = "A mix of lemon juice, whiskey, and sugar."
color = rgb(255, 201, 49)
boozepwr = 35
quality = DRINK_GOOD
@@ -1222,35 +1205,16 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/hcider
name = "Hard Cider"
- description = "Apple juice, for adults."
+ description = "The alcoholic sibling to apple cider."
color = "#CD6839"
nutriment_factor = 1 * REAGENTS_METABOLISM
boozepwr = 25
taste_description = "the season that falls between summer and winter"
glass_icon_state = "whiskeyglass"
glass_name = "hard cider"
- glass_desc = "Tastes like autumn... no wait, fall!"
+ glass_desc = "Sharper tasting, alcoholic apple cider."
shot_glass_icon_state = "shotglassbrown"
-
-/datum/reagent/consumable/ethanol/fetching_fizz //A reference to one of my favorite games of all time. Pulls nearby ores to the imbiber!
- name = "Fetching Fizz"
- description = "Whiskey sour/iron/uranium mixture resulting in a highly magnetic slurry. Mild alcohol content." //Requires no alcohol to make but has alcohol anyway because ~magic~
- color = rgb(255, 91, 15)
- boozepwr = 10
- quality = DRINK_VERYGOOD
- metabolization_rate = 0.1 * REAGENTS_METABOLISM
- taste_description = "charged metal" // the same as teslium, honk honk.
- glass_icon_state = "fetching_fizz"
- glass_name = "Fetching Fizz"
- glass_desc = "Induces magnetism in the imbiber. Started as a barroom prank but evolved to become popular with miners and scrappers. Metallic aftertaste."
-
-
-/datum/reagent/consumable/ethanol/fetching_fizz/on_mob_life(mob/living/carbon/M)
- for(var/obj/item/stack/ore/O in orange(3, M))
- step_towards(O, get_turf(M))
- return ..()
-
//Another reference. Heals those in critical condition extremely quickly.
/datum/reagent/consumable/ethanol/hearty_punch
name = "Hearty Punch"
@@ -1262,7 +1226,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "bravado in the face of disaster"
glass_icon_state = "hearty_punch"
glass_name = "Hearty Punch"
- glass_desc = "Aromatic beverage served piping hot. According to folk tales it can almost wake the dead."
+ glass_desc = "An aromatic beverage, served piping hot. According to folktales, it can almost wake the dead."
/datum/reagent/consumable/ethanol/hearty_punch/on_mob_life(mob/living/carbon/M)
if(M.health <= 0)
@@ -1295,7 +1259,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "da bomb"
glass_icon_state = "atomicbombglass"
glass_name = "Atomic Bomb"
- glass_desc = "Nanotrasen cannot take legal responsibility for your actions after imbibing."
+ glass_desc = "Devastating to you and everyone around you, especially if you get drunk enough from it."
/datum/reagent/consumable/ethanol/atomicbomb/on_mob_life(mob/living/carbon/M)
M.set_drugginess(50)
@@ -1353,7 +1317,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
metabolization_rate = 1 * REAGENTS_METABOLISM
glass_icon_state = "neurotoxinglass"
glass_name = "Neurotoxin"
- glass_desc = "A drink that is guaranteed to knock you silly."
+ glass_desc = "The story goes that this drink was made on a bet between Cybersun chemists, debating if a drink could be used to put down a suspected Nanotrasen spy. While morphine wasn't supposed to be used, it put them down all the same."
/datum/reagent/consumable/ethanol/neurotoxin/proc/pickt()
return (pick(TRAIT_PARALYSIS_L_ARM,TRAIT_PARALYSIS_R_ARM,TRAIT_PARALYSIS_R_LEG,TRAIT_PARALYSIS_L_LEG))
@@ -1365,7 +1329,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
if(prob(20))
M.adjustStaminaLoss(10)
M.drop_all_held_items()
- to_chat(M, "You cant feel your hands!")
+ to_chat(M, "You can't feel your hands!")
if(current_cycle > 5)
if(prob(20))
var/t = pickt()
@@ -1390,17 +1354,17 @@ All effects don't start immediately, but rather get worse over time; the rate is
..()
/datum/reagent/consumable/ethanol/hippies_delight
- name = "Hippie's Delight"
- description = "You just don't get it maaaan."
+ name = "Between the Mandibles"
+ description = "Mushroom-supplied hallucinogens and strong alcohol."
color = "#664300" // rgb: 102, 67, 0
nutriment_factor = 0
boozepwr = 0 //custom drunk effect
quality = DRINK_FANTASTIC
metabolization_rate = 0.2 * REAGENTS_METABOLISM
- taste_description = "giving peace a chance"
+ taste_description = "two finger-sized bites on your tongue"
glass_icon_state = "hippiesdelightglass"
- glass_name = "Hippie's Delight"
- glass_desc = "A drink enjoyed by people during the 1960's."
+ glass_name = "Between the Mandibles"
+ glass_desc = "Named after a request from a clueless spacer who asked for Rachnid venom to be mixed in a house special. While Rachnids don't have venom glands, this'll have you reeling all the same."
/datum/reagent/consumable/ethanol/hippies_delight/on_mob_life(mob/living/carbon/M)
if (!M.slurring)
@@ -1436,7 +1400,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/eggnog
name = "Eggnog"
- description = "For enjoying the most wonderful time of the year."
+ description = "For enjoying the Winter Solstice."
color = "#fcfdc6" // rgb: 252, 253, 198
nutriment_factor = 2 * REAGENTS_METABOLISM
boozepwr = 1
@@ -1444,34 +1408,17 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "custard and alcohol"
glass_icon_state = "glass_yellow"
glass_name = "eggnog"
- glass_desc = "For enjoying the most wonderful time of the year."
-
-
-/datum/reagent/consumable/ethanol/narsour
- name = "Nar'Sour"
- description = "Side effects include self-mutilation and hoarding plasteel."
- color = RUNE_COLOR_DARKRED
- boozepwr = 10
- quality = DRINK_FANTASTIC
- taste_description = "bloody"
- glass_icon_state = "narsour"
- glass_name = "Nar'Sour"
- glass_desc = "A new hit cocktail inspired by THE ARM Breweries will have you shouting Fuu ma'jin in no time!"
-
-/datum/reagent/consumable/ethanol/narsour/on_mob_life(mob/living/carbon/M)
- M.cultslurring = min(M.cultslurring + 3, 3)
- M.stuttering = min(M.stuttering + 3, 3)
- ..()
+ glass_desc = "For enjoying the Winter Solstice."
/datum/reagent/consumable/ethanol/triple_sec
name = "Triple Sec"
description = "A sweet and vibrant orange liqueur."
color = "#ffcc66"
boozepwr = 30
- taste_description = "a warm flowery orange taste which recalls the ocean air and summer wind of the caribbean"
+ taste_description = "a warm flowery orange taste which recalls the ocean air and summer wind of distant shores"
glass_icon_state = "glass_orange"
glass_name = "Triple Sec"
- glass_desc = "A glass of straight Triple Sec."
+ glass_desc = "A glass of straight triple sec. Citrusy and warm."
/datum/reagent/consumable/ethanol/creme_de_menthe
name = "Creme de Menthe"
@@ -1481,17 +1428,17 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "a minty, cool, and invigorating splash of cold streamwater"
glass_icon_state = "glass_green"
glass_name = "Creme de Menthe"
- glass_desc = "You can almost feel the first breath of spring just looking at it."
+ glass_desc = "Bright green and minty - enough to tell you what it's going to taste like."
/datum/reagent/consumable/ethanol/creme_de_cacao
name = "Creme de Cacao"
- description = "A chocolatey liqueur excellent for adding dessert notes to beverages and bribing sororities."
+ description = "A chocolatey liqueur excellent for adding dessert notes to beverages."
color = "#996633"
boozepwr = 20
taste_description = "a slick and aromatic hint of chocolates swirling in a bite of alcohol"
glass_icon_state = "glass_brown"
glass_name = "Creme de Cacao"
- glass_desc = "A million hazing lawsuits and alcohol poisonings have started with this humble ingredient."
+ glass_desc = "Creme de Cacao - chocolate-wine, essentially. Not milk chocolate, so expect some bite."
/datum/reagent/consumable/ethanol/creme_de_coconut
name = "Creme de Coconut"
@@ -1501,7 +1448,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "a sweet milky flavor with notes of toasted sugar"
glass_icon_state = "glass_white"
glass_name = "Creme de Coconut"
- glass_desc = "An unintimidating glass of coconut liqueur."
+ glass_desc = "A white glass of coconut liqueur."
/datum/reagent/consumable/ethanol/quadruple_sec
name = "Quadruple Sec"
@@ -1509,10 +1456,10 @@ All effects don't start immediately, but rather get worse over time; the rate is
color = "#cc0000"
boozepwr = 35
quality = DRINK_GOOD
- taste_description = "an invigorating bitter freshness which suffuses your being; no enemy of the corporation will go unrobusted this day"
+ taste_description = "an invigorating bitter freshness which suffuses your being; you can take on anyone who messes with your vessel"
glass_icon_state = "quadruple_sec"
glass_name = "Quadruple Sec"
- glass_desc = "An intimidating and lawful beverage dares you to violate the law and make its day. Still can't drink it on duty, though."
+ glass_desc = "A glass of Quadruple Sec. Popularized for being a mixed drink of choice across multiple independent security agencies, and notably among Nanotrasen's internal security culture. It's not recommended to drink while manning a vessel, though!"
/datum/reagent/consumable/ethanol/quadruple_sec/on_mob_life(mob/living/carbon/M)
//Securidrink in line with the Screwdriver for engineers or Nothing for mimes
@@ -1524,14 +1471,14 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/quintuple_sec
name = "Quintuple Sec"
- description = "Law, Order, Alcohol, and Police Brutality distilled into one single elixir of JUSTICE."
+ description = "Law, order and alcohol distilled into one single elixir."
color = "#ff3300"
boozepwr = 55
quality = DRINK_FANTASTIC
- taste_description = "THE LAW"
+ taste_description = "drinking on duty"
glass_icon_state = "quintuple_sec"
glass_name = "Quintuple Sec"
- glass_desc = "Now you are become law, destroyer of clowns."
+ glass_desc = "The logical endpoint of the Quadruple Sec. Often had in the hands of senior security staff, though you really should not be drinking this while on-duty."
/datum/reagent/consumable/ethanol/quintuple_sec/on_mob_life(mob/living/carbon/M)
//Securidrink in line with the Screwdriver for engineers or Nothing for mimes but STRONG..
@@ -1546,14 +1493,14 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/grasshopper
name = "Grasshopper"
- description = "A fresh and sweet dessert shooter. Difficult to look manly while drinking this."
+ description = "A fresh and sweet dessert shooter."
color = "#00ff00"
boozepwr = 25
quality = DRINK_GOOD
taste_description = "chocolate and mint dancing around your mouth"
glass_icon_state = "grasshopper"
glass_name = "Grasshopper"
- glass_desc = "You weren't aware edible beverages could be that green."
+ glass_desc = "Named after a particularly green insect. Theoretically, there's always adding vodka to this and making it a Flying Grasshopper..."
/datum/reagent/consumable/ethanol/stinger
name = "Stinger"
@@ -1564,7 +1511,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "a slap on the face in the best possible way"
glass_icon_state = "stinger"
glass_name = "Stinger"
- glass_desc = "You wonder what would happen if you pointed this at a heat source..."
+ glass_desc = "A brandy-and-menthe mixed drink to end the day with. While often found in the hands of the upper class, there's nothing wrong with feeling a little fancy."
/datum/reagent/consumable/ethanol/bastion_bourbon
name = "Bastion Bourbon"
@@ -1664,13 +1611,13 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/sake
name = "Sake"
- description = "A sweet rice wine of questionable legality and extreme potency."
+ description = "A sweet rice wine."
color = "#DDDDDD"
boozepwr = 70
taste_description = "sweet rice wine"
glass_icon_state = "sakecup"
glass_name = "cup of sake"
- glass_desc = "A traditional cup of sake."
+ glass_desc = "A cup of sake. Capable of being served hot, cold, or at room temperature, and served in a traditionally-sized little cup."
/datum/reagent/consumable/ethanol/peppermint_patty
name = "Peppermint Patty"
@@ -1681,7 +1628,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
quality = DRINK_GOOD
glass_icon_state = "peppermint_patty"
glass_name = "Peppermint Patty"
- glass_desc = "A boozy minty hot cocoa that warms your belly on a cold night."
+ glass_desc = "A boozy, minty hot cocoa that warms your belly on a cold night."
/datum/reagent/consumable/ethanol/peppermint_patty/on_mob_life(mob/living/carbon/M)
M.apply_status_effect(/datum/status_effect/throat_soothed)
@@ -1689,15 +1636,15 @@ All effects don't start immediately, but rather get worse over time; the rate is
..()
/datum/reagent/consumable/ethanol/alexander
- name = "Alexander"
- description = "Named after a Greek hero, this mix is said to embolden a user's shield as if they were in a phalanx."
+ name = "Ash-Shield"
+ description = "While not a traditional trickwine by any means, this mix is said to embolden a user's shield under certain circumstance."
color = "#F5E9D3"
boozepwr = 50
quality = DRINK_GOOD
taste_description = "bitter, creamy cacao"
glass_icon_state = "alexander"
- glass_name = "Alexander"
- glass_desc = "A creamy, indulgent delight that is stronger than it seems."
+ glass_name = "Ash-Shield"
+ glass_desc = "While not a traditional trickwine by any means (and considered in poor taste in mixing), this drink is said to embolden the shield in the imbiber's hand. Just don't let it engender passivity."
var/obj/item/shield/mighty_shield
/datum/reagent/consumable/ethanol/alexander/on_mob_metabolize(mob/living/L)
@@ -1721,37 +1668,37 @@ All effects don't start immediately, but rather get worse over time; the rate is
..()
/datum/reagent/consumable/ethanol/amaretto_alexander
- name = "Amaretto Alexander"
- description = "A weaker version of the Alexander, what it lacks in strength it makes up for in flavor."
+ name = "Happy Huntsman"
+ description = "A cousin of the Ash-Shield, what it lacks in strength (and mysterious power), it makes up for in flavor."
color = "#DBD5AE"
boozepwr = 35
quality = DRINK_VERYGOOD
taste_description = "sweet, creamy cacao"
glass_icon_state = "alexanderam"
- glass_name = "Amaretto Alexander"
- glass_desc = "A creamy, indulgent delight that is in fact as gentle as it seems."
+ glass_name = "Happy Huntsman"
+ glass_desc = "A gentle, creamy drink, enjoyed on rare occasions by the Saint Roumain's followers."
/datum/reagent/consumable/ethanol/sidecar
- name = "Sidecar"
- description = "The one ride you'll gladly give up the wheel for."
+ name = "Bridge Bunny"
+ description = "You're happy to not pilot the ship after having one of these."
color = "#FFC55B"
boozepwr = 45
quality = DRINK_GOOD
taste_description = "delicious freedom"
glass_icon_state = "sidecar"
- glass_name = "Sidecar"
- glass_desc = "The one ride you'll gladly give up the wheel for."
+ glass_name = "Bridge Bunny"
+ glass_desc = "You're happy to not pilot the ship after having one of these."
/datum/reagent/consumable/ethanol/between_the_sheets
name = "Between the Sheets"
- description = "A provocatively named classic. Funny enough, doctors recommend drinking it before taking a nap."
+ description = "A provocatively named classic."
color = "#F4C35A"
boozepwr = 55
quality = DRINK_GOOD
- taste_description = "seduction"
+ taste_description = "rum, lemons, and mild embarrassment"
glass_icon_state = "between_the_sheets"
glass_name = "Between the Sheets"
- glass_desc = "The only drink that comes with a label reminding you of Nanotrasen's zero-tolerance promiscuity policy."
+ glass_desc = "Also known as The Maiden's Prayer, if you're not willing to say the original name aloud."
/datum/reagent/consumable/ethanol/between_the_sheets/on_mob_life(mob/living/L)
..()
@@ -1767,15 +1714,15 @@ All effects don't start immediately, but rather get worse over time; the rate is
L.adjustFireLoss(-0.2)
/datum/reagent/consumable/ethanol/kamikaze
- name = "Kamikaze"
- description = "Divinely windy."
+ name = "Mothball"
+ description = "Vodka, triple sec, and lime juice. Moth dust not usually included."
color = "#EEF191"
boozepwr = 60
quality = DRINK_GOOD
- taste_description = "divine windiness"
+ taste_description = "fluttery sour-sweetness"
glass_icon_state = "kamikaze"
- glass_name = "Kamikaze"
- glass_desc = "Divinely windy."
+ glass_name = "Mothball"
+ glass_desc = "Made in an attempt to commemorate the supposed original place mothpeople were created in, though it was since disproven. While moth dust could be used as a garnish, don't go asking for it unless you are one."
/datum/reagent/consumable/ethanol/mojito
name = "Mojito"
@@ -1789,15 +1736,15 @@ All effects don't start immediately, but rather get worse over time; the rate is
glass_desc = "A drink that looks as refreshing as it tastes."
/datum/reagent/consumable/ethanol/moscow_mule
- name = "Moscow Mule"
- description = "A chilly drink that reminds you of the Derelict."
+ name = "Gorlex Gator"
+ description = "A chilly drink made in remembrance of Gorlex IV."
color = "#EEF1AA"
boozepwr = 30
quality = DRINK_GOOD
taste_description = "refreshing spiciness"
glass_icon_state = "moscow_mule"
- glass_name = "Moscow Mule"
- glass_desc = "A chilly drink that reminds you of the Derelict."
+ glass_name = "Gorlex Gator"
+ glass_desc = "A chilly drink made in remembrance of Gorlex IV. It's not a wise idea to go ordering this when the PGF are in town, though."
/datum/reagent/consumable/ethanol/fernet
name = "Fernet"
@@ -1806,7 +1753,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
boozepwr = 80
taste_description = "utter bitterness"
glass_name = "glass of fernet"
- glass_desc = "A glass of pure Fernet. Only an absolute madman would drink this alone." //Hi Kevum
+ glass_desc = "A glass of pure Fernet. Intensely bitter and reserved to being a digestive more than something to be enjoyed." //Hi Kevum
/datum/reagent/consumable/ethanol/fernet/on_mob_life(mob/living/carbon/M)
if(M.nutrition <= NUTRITION_LEVEL_STARVING)
@@ -1816,15 +1763,15 @@ All effects don't start immediately, but rather get worse over time; the rate is
return ..()
/datum/reagent/consumable/ethanol/fernet_cola
- name = "Fernet Cola"
+ name = "Weldline"
description = "A very popular and bittersweet digestif, ideal after a heavy meal. Best served on a sawed-off cola bottle as per tradition."
color = "#390600" // rgb: 57, 6,
boozepwr = 25
quality = DRINK_NICE
taste_description = "sweet relief"
glass_icon_state = "godlyblend"
- glass_name = "glass of fernet cola"
- glass_desc = "A sawed-off cola bottle filled with Fernet Cola. Nothing better after eating like a lardass."
+ glass_name = "glass of weldline"
+ glass_desc = "A shorn-off cola bottle filled with fernet and cola soft drink. A tradition among cargo workers and hull technicians is to use a welder to cut the cola can in half."
/datum/reagent/consumable/ethanol/fernet_cola/on_mob_life(mob/living/carbon/M)
if(M.nutrition <= NUTRITION_LEVEL_STARVING)
@@ -1834,7 +1781,6 @@ All effects don't start immediately, but rather get worse over time; the rate is
return ..()
/datum/reagent/consumable/ethanol/fanciulli
-
name = "Fanciulli"
description = "What if the Manhattan cocktail ACTUALLY used a bitter herb liquour? Helps you sober up." //also causes a bit of stamina damage to symbolize the afterdrink lazyness
color = "#CA933F" // rgb: 202, 147, 63
@@ -1843,7 +1789,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "a sweet sobering mix"
glass_icon_state = "fanciulli"
glass_name = "glass of fanciulli"
- glass_desc = "A glass of Fanciulli. It's just Manhattan with Fernet."
+ glass_desc = "A glass of Fanciulli: a Manhattan with fernet mixed in. Bitter enough to knock some sense into your drunk self."
/datum/reagent/consumable/ethanol/fanciulli/on_mob_life(mob/living/carbon/M)
M.adjust_nutrition(-5)
@@ -1858,15 +1804,15 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/branca_menta
- name = "Branca Menta"
+ name = "Mirage"
description = "A refreshing mixture of bitter Fernet with mint creme liquour."
color = "#4B5746" // rgb: 75, 87, 70
boozepwr = 35
quality = DRINK_GOOD
taste_description = "a bitter freshness"
glass_icon_state= "minted_fernet"
- glass_name = "glass of branca menta"
- glass_desc = "A glass of Branca Menta, perfect for those lazy and hot Sunday summer afternoons." //Get lazy literally by drinking this
+ glass_name = "glass of Mirage"
+ glass_desc = "A glass of fernet and mint creme liquor, enjoyed on the warmer days on Teceti." //Get lazy literally by drinking this
/datum/reagent/consumable/ethanol/branca_menta/on_mob_life(mob/living/carbon/M)
@@ -2014,7 +1960,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "auspicious occasions and bad decisions"
glass_icon_state = "champagne_glass"
glass_name = "Champagne"
- glass_desc = "The flute clearly displays the slowly rising bubbles."
+ glass_desc = "A sparkling wine, traditionally served in a flute that clearly displays the slowly rising bubbles."
/datum/reagent/consumable/ethanol/wizz_fizz
@@ -2023,7 +1969,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
color = "#4235d0" //Just pretend that the triple-sec was blue curacao.
boozepwr = 50
quality = DRINK_GOOD
- taste_description = "friendship! It is magic, after all"
+ taste_description = "whimsy and carbonation"
glass_icon_state = "wizz_fizz"
glass_name = "Wizz Fizz"
glass_desc = "The glass bubbles and froths with an almost magical intensity."
@@ -2037,48 +1983,36 @@ All effects don't start immediately, but rather get worse over time; the rate is
return ..()
/datum/reagent/consumable/ethanol/bug_spray
- name = "Bug Spray"
+ name = "Stunball"
description = "A harsh, acrid, bitter drink, for those who need something to brace themselves."
color = "#33ff33"
boozepwr = 50
quality = DRINK_GOOD
- taste_description = "the pain of ten thousand slain mosquitos"
+ taste_description = "the distinct sense of drinking diluted poison"
glass_icon_state = "bug_spray"
- glass_name = "Bug Spray"
- glass_desc = "Your eyes begin to water as the sting of alcohol reaches them."
-
-/datum/reagent/consumable/ethanol/bug_spray/on_mob_life(mob/living/carbon/M)
-//Bugs should not drink Bug spray.
- if(ismoth(M) || isflyperson(M) || isspiderperson(M))
- M.adjustToxLoss(1,0)
- return ..()
-/datum/reagent/consumable/ethanol/bug_spray/on_mob_metabolize(mob/living/carbon/M)
-
- if(ismoth(M) || isflyperson(M))
- M.emote("scream")
- return ..()
-
+ glass_name = "Stunball"
+ glass_desc = "Made in protest of the Mothball mixed drink being recognized by the Interstellar Bartenders Association, who refute the idea of a singular point of origin. The taste is as spiteful as its history."
/datum/reagent/consumable/ethanol/applejack
name = "Applejack"
- description = "The perfect beverage for when you feel the need to horse around."
+ description = "The officially sponsored drink by the National Association for Anti-Gravity Automobile Dragracing (NAAGAD)."
color = "#ff6633"
boozepwr = 20
- taste_description = "an honest day's work at the orchard"
+ taste_description = "resisting gravity through brandy"
glass_icon_state = "applejack_glass"
glass_name = "Applejack"
- glass_desc = "You feel like you could drink this all neight."
+ glass_desc = "You lament you can't watch any Agrav Races while out here."
/datum/reagent/consumable/ethanol/jack_rose
- name = "Jack Rose"
- description = "A light cocktail perfect for sipping with a slice of pie."
+ name = "Jackalope"
+ description = "A light cocktail named after a famous anti-gravity racer."
color = "#ff6633"
boozepwr = 15
quality = DRINK_NICE
taste_description = "a sweet and sour slice of apple"
glass_icon_state = "jack_rose"
- glass_name = "Jack Rose"
- glass_desc = "Enough of these, and you really will start to suppose your toeses are roses."
+ glass_name = "Jackalope"
+ glass_desc = "Enough of these, and you might feel like you're floating. Just don't think you can pilot!"
/datum/reagent/consumable/ethanol/turbo
name = "Turbo"
@@ -2089,11 +2023,11 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "the outlaw spirit"
glass_icon_state = "turbo"
glass_name = "Turbo"
- glass_desc = "A turbulent cocktail for outlaw hoverbikers."
+ glass_desc = "A turbulent cocktail for outlaw hoverbikers. Not officially recognized by National Association for Anti-Gravity Automobile Dragracing (NAAGAD)... but they're sticks in the mud, anyway!"
/datum/reagent/consumable/ethanol/turbo/on_mob_life(mob/living/carbon/M)
if(prob(4))
- to_chat(M, "[pick("You feel disregard for the rule of law.", "You feel pumped!", "Your head is pounding.", "Your thoughts are racing..")]")
+ to_chat(M, "[pick("You feel disregard for the rule of law.", "You feel pumped!", "Your head is pounding.", "Your thoughts are racing...")]")
M.adjustStaminaLoss(-M.drunkenness * 0.25)
return ..()
@@ -2106,7 +2040,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "simpler times"
glass_icon_state = "old_timer"
glass_name = "Old Timer"
- glass_desc = "WARNING! May cause premature aging!"
+ glass_desc = "You might not be the target audience of this drink if you're still out in the Frontier, though."
/datum/reagent/consumable/ethanol/old_timer/on_mob_life(mob/living/carbon/M)
if(prob(20))
@@ -2119,9 +2053,6 @@ All effects don't start immediately, but rather get worse over time; the rate is
N.update_hair()
if(N.age > N.dna.species.species_age_max * 0.8)
N.become_nearsighted(type)
- if(N.gender == MALE)
- N.facial_hairstyle = "Beard (Very Long)"
- N.update_hair()
if(N.age > N.dna.species.species_age_max * 1.2) //Best not let people get older than this or i might incur G-ds wrath
M.visible_message("[M] becomes older than any man should be.. and crumbles into dust!")
@@ -2135,42 +2066,42 @@ All effects don't start immediately, but rather get worse over time; the rate is
color = "#ffe65b"
boozepwr = 60
quality = DRINK_GOOD
- taste_description = "artifical fruityness"
+ taste_description = "artifical fruitiness"
glass_icon_state = "rubberneck"
glass_name = "Rubberneck"
- glass_desc = "A popular drink amongst those adhering to an all synthetic diet."
+ glass_desc = "A popular drink amongst those adhering to an all-synthetic diet, popularized briefly as a counterculture movement."
/datum/reagent/consumable/ethanol/duplex
- name = "Duplex"
+ name = "North-South"
description = "An inseparable combination of two fruity drinks."
color = "#50e5cf"
boozepwr = 25
quality = DRINK_NICE
taste_description = "green apples and blue raspberries"
glass_icon_state = "duplex"
- glass_name = "Duplex"
- glass_desc = "To imbibe one component separately from the other is consider a great faux pas."
+ glass_name = "North-South"
+ glass_desc = "A fruity drink made, apparently, to represent North and South Teceti. You're supposed to hold it in a way that both vials pour together - one on top of the other."
/datum/reagent/consumable/ethanol/trappist
- name = "Trappist Beer"
- description = "A strong dark ale brewed by space-monks."
+ name = "Trapper's Beer"
+ description = "A strong dark ale brewed by the Saint Roumain Militia."
color = "#390c00"
boozepwr = 40
quality = DRINK_VERYGOOD
- taste_description = "dried plums and malt"
+ taste_description = "dried plums, ash, and malt"
glass_icon_state = "trappistglass"
- glass_name = "Trappist Beer"
- glass_desc = "boozy Catholicism in a glass."
+ glass_name = "Trapper's Beer"
+ glass_desc = "The Ashen Huntsman's blessings, in a glass. Despite proclaiming an ascetic lifestyle, it's okay to have a little fun once in a while."
/datum/reagent/consumable/ethanol/blazaam
- name = "Blazaam"
- description = "A strange drink that few people seem to remember existing. Doubles as a Berenstain remover."
+ name = "Hyperspace Highball"
+ description = "A strange drink mixed with bluespace crystal flakes, which is already extremely expensive on its own merit."
boozepwr = 70
quality = DRINK_FANTASTIC
taste_description = "alternate realities"
glass_icon_state = "blazaamglass"
- glass_name = "Blazaam"
- glass_desc = "The glass seems to be sliding between realities. Doubles as a Berenstain remover."
+ glass_name = "Hyperspace Highball"
+ glass_desc = "The glass is seemingly reacting with the bluespace flakes... maybe making this was a poor decision?"
var/stored_teleports = 0
/datum/reagent/consumable/ethanol/blazaam/on_mob_life(mob/living/carbon/M)
@@ -2185,15 +2116,15 @@ All effects don't start immediately, but rather get worse over time; the rate is
return ..()
/datum/reagent/consumable/ethanol/mauna_loa
- name = "Mauna Loa"
+ name = "Inner Fire"
description = "Extremely hot; not for the faint of heart!"
boozepwr = 40
color = "#fe8308" // 254, 131, 8
quality = DRINK_FANTASTIC
taste_description = "fiery, with an aftertaste of burnt flesh"
glass_icon_state = "mauna_loa"
- glass_name = "Mauna Loa"
- glass_desc = "Lavaland in a drink... mug... volcano... thing."
+ glass_name = "Inner Fire"
+ glass_desc = "Not at all made by the Saint Roumain, this drink still bases itself as a test of will used by the hunters to test their endurance to intense heat... and alcohol."
/datum/reagent/consumable/ethanol/mauna_loa/on_mob_life(mob/living/carbon/M)
// Heats the user up while the reagent is in the body. Occasionally makes you burst into flames.
@@ -2212,7 +2143,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "sugary tartness"
glass_icon_state = "painkiller"
glass_name = "Painkiller"
- glass_desc = "A combination of tropical juices and rum. Surely this will make you feel better."
+ glass_desc = "A combination of tropical juices and rum. Surely, this will make you feel better."
/datum/reagent/consumable/ethanol/pina_colada
name = "Pina Colada"
@@ -2229,12 +2160,12 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/pruno // pruno mix is in drink_reagents
name = "pruno"
color = "#E78108"
- description = "Fermented prison wine made from fruit, sugar, and despair. Security loves to confiscate this, which is the only kind thing Security has ever done."
+ description = "Fermented prison wine made from fruit, sugar, and despair."
boozepwr = 85
- taste_description = "your tastebuds being individually shanked"
+ taste_description = "your tastebuds crying out"
glass_icon_state = "glass_orange"
glass_name = "glass of pruno"
- glass_desc = "Fermented prison wine made from fruit, sugar, and despair. Security loves to confiscate this, which is the only kind thing Security has ever done."
+ glass_desc = "Fermented prison wine made from fruit, sugar, and despair."
/datum/reagent/consumable/ethanol/pruno/on_mob_life(mob/living/carbon/M)
M.adjust_disgust(5)
@@ -2249,7 +2180,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "sweetness followed by a soft sourness and warmth"
glass_icon_state = "gingeramaretto"
glass_name = "Ginger Amaretto"
- glass_desc = "The sprig of rosemary adds a nice aroma to the drink, and isn't just to be pretentious afterall!"
+ glass_desc = "Technically intended to come with a sprig of rosemary... but where are you going to get your hands on that?"
/datum/reagent/consumable/ethanol/godfather
name = "Godfather"
@@ -2260,28 +2191,28 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "a delightful softened punch"
glass_icon_state = "godfather"
glass_name = "Godfather"
- glass_desc = "A classic from old Italy and enjoyed by gangsters, pray the orange peel doesnt end up in your mouth."
+ glass_desc = "Technically still enjoyed by members of the Intersolar Mafia, though the homage is much older. Pray the orange peel doesn't end up in your mouth."
/datum/reagent/consumable/ethanol/godmother
name = "Godmother"
- description = "A twist on a classic, liked more by mature women."
+ description = "A twist on a classic, made as a sibling drink to the Godfather."
boozepwr = 50
color = "#E68F00"
quality = DRINK_GOOD
taste_description = "sweetness and a zesty twist"
glass_icon_state = "godmother"
glass_name = "Godmother"
- glass_desc = "A lovely fresh smelling cocktail, a true Sicilian delight."
+ glass_desc = "Just as enjoyed (and related to) the Intersolar Mafia. You're technically supposed to drink this alongside someone else having a Godfather."
/datum/reagent/consumable/ethanol/mudders_milk
- name = "mudder's milk"
+ name = "Miner's Milk"
color = "#dfc794"
- description = "All the protein, vitamins and carbs of your grandma's best turkey dinner, plus 15 percent alcohol."
+ description = "All the protein, vitamins and carbs of two full ration packs, plus 15% alcohol."
boozepwr = 15
- taste_description = "thick, nutty milk with a boozy kick"
+ taste_description = "thick, nut-flavored milk with a boozy kick"
glass_icon_state = "muddersmilk"
- glass_name = "Mudder's Milk"
- glass_desc = "All the protein, vitamins and carbs of your grandma's best turkey dinner, plus 15 percent alcohol."
+ glass_name = "Miner's Milk"
+ glass_desc = "All the protein, vitamins and carbs of two full ration packs, plus 15% alcohol. Created by Nanotrasen's Mining and Exploration League, and often still enjoyed in the New Gorlex Republic."
/datum/reagent/consumable/ethanol/mudders_milk/on_mob_life(mob/living/carbon/M)
if(prob(1))
@@ -2331,15 +2262,15 @@ All effects don't start immediately, but rather get worse over time; the rate is
..()
/datum/reagent/consumable/ethanol/freezer_burn
- name = "Freezer Burn"
+ name = "Hullbreach"
description = "Fire and ice combine in your mouth! Drinking slowly recommended."
boozepwr = 40
color = "#ba3100"
quality = DRINK_FANTASTIC
- taste_description = "fire and ice"
+ taste_description = "frigid, hot stings"
glass_icon_state = "freezer_burn"
- glass_name = "Freezer Burn"
- glass_desc = "Fire and ice combine in your mouth! Drinking slowly recommended."
+ glass_name = "Hullbreach"
+ glass_desc = "Fire and ice combine in your mouth, like being pulled out into space."
/datum/reagent/consumable/ethanol/freezer_burn/on_mob_life(mob/living/carbon/M)
M.adjustFireLoss(-0.2, 0)
@@ -2367,14 +2298,14 @@ All effects don't start immediately, but rather get worse over time; the rate is
/datum/reagent/consumable/ethanol/darkest_chocolate
name = "Darkest Chocolate"
- description = "Darkness within darkness awaits you, spaceman!"
+ description = "Darkness within darkness awaits you, spacer!"
boozepwr = 40
color = "#240c0c"
quality = DRINK_FANTASTIC
taste_description = "bitter, chocolatey darkness with a note of cream"
glass_icon_state = "darkest_chocolate"
glass_name = "Darkest Chocolate"
- glass_desc = "Darkness within darkness awaits you, spaceman!"
+ glass_desc = "Darkness within darkness awaits you, spacer!"
var/obj/effect/light_holder
/datum/reagent/consumable/ethanol/darkest_chocolate/on_mob_metabolize(mob/living/M)
@@ -2393,28 +2324,6 @@ All effects don't start immediately, but rather get worse over time; the rate is
to_chat(M, "The darkness subsides.")
QDEL_NULL(light_holder)
-/datum/reagent/consumable/ethanol/archmagus_brew
- name = "Archmagus' Brew"
- description = "Said to have been requested by a great Archmagus, hence the name. Tastes like tough love."
- boozepwr = 40
- color = "#c75295"
- quality = DRINK_FANTASTIC
- taste_description = "tough love"
- glass_icon_state = "archmagus_brew"
- glass_name = "Archmagus' Brew"
- glass_desc = "Said to have been requested by a great Archmagus, hence the name. Tastes like tough love."
-
-/datum/reagent/consumable/ethanol/archmagus_brew/on_mob_life(mob/living/carbon/human/M)
- if(M.mind && M.mind.spell_list.len != 0)
- var/spell_improved = FALSE
- for(var/obj/effect/proc_holder/spell/S in M.mind.spell_list)
- if(S.clothes_req)
- S.clothes_req = 0
- spell_improved = TRUE
- if(spell_improved)
- to_chat(M, "You suddenly feel like you never needed those garish robes in the first place...")
- return ..()
-
/datum/reagent/consumable/ethanol/out_of_lime
name = "Out of Lime"
description = "A spin on the classic. Artists and street fighters swear by this stuff."
@@ -2433,22 +2342,6 @@ All effects don't start immediately, but rather get worse over time; the rate is
consumer.facial_hair_color = pick("0ad","a0f","f73","d14","0b5","fc2","084","05e","d22","fa0")
consumer.update_hair()
-/datum/reagent/consumable/ethanol/cogchamp
- name = "CogChamp"
- description = "Now you can fill yourself with the power of Ratvar!"
- color = rgb(255, 201, 49)
- boozepwr = 10
- quality = DRINK_FANTASTIC
- taste_description = "a brass taste with a hint of oil"
- glass_icon_state = "cogchamp"
- glass_name = "CogChamp"
- glass_desc = "Not one of Ratvar's Four Generals could withstand this! Qevax Jryy!"
-
-/datum/reagent/consumable/ethanol/cogchamp/on_mob_life(mob/living/carbon/M)
- M.clockcultslurring = min(M.clockcultslurring + 3, 3)
- M.stuttering = min(M.stuttering + 3, 3)
- ..()
-
/datum/reagent/consumable/ethanol/shotinthedark
name = "Shot in the Dark"
description = "A coconut elixir with a golden tinge."
@@ -2458,7 +2351,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
taste_description = "an incoming bullet"
glass_icon_state = "shotinthedark"
glass_name = "Shot in the Dark"
- glass_desc = "A specially made drink from the popular webseries RILENA: LMR. Contains traces of gold from the real bullet inside."
+ glass_desc = "A specially made drink from the popular webseries RILENA: LMR. Contains traces of gold from the real bullet inside... which wouldn't make sense outside of the series it comes from."
/datum/reagent/consumable/ethanol/bullethell
name = "Bullet Hell"
diff --git a/code/modules/reagents/chemistry/reagents/drink_reagents.dm b/code/modules/reagents/chemistry/reagents/drink_reagents.dm
index d359600b0102..8cb74f4ad51e 100644
--- a/code/modules/reagents/chemistry/reagents/drink_reagents.dm
+++ b/code/modules/reagents/chemistry/reagents/drink_reagents.dm
@@ -11,7 +11,7 @@
taste_description = "oranges"
glass_icon_state = "glass_orange"
glass_name = "glass of orange juice"
- glass_desc = "Vitamins! Yay!"
+ glass_desc = "Tart and sweet. It might have pulp, if that's what you wanted."
/datum/reagent/consumable/orangejuice/on_mob_life(mob/living/carbon/M)
if(M.getOxyLoss() && prob(30))
@@ -26,7 +26,7 @@
taste_description = "tomatoes"
glass_icon_state = "glass_red"
glass_name = "glass of tomato juice"
- glass_desc = "Are you sure this is tomato juice?"
+ glass_desc = "Some part of you wonders if this could have been a soup at some point."
/datum/reagent/consumable/tomatojuice/on_mob_life(mob/living/carbon/M)
if(M.getFireLoss() && prob(20))
@@ -41,7 +41,7 @@
taste_description = "unbearable sourness"
glass_icon_state = "glass_green"
glass_name = "glass of lime juice"
- glass_desc = "A glass of sweet-sour lime juice."
+ glass_desc = "A glass of intensely sour lime juice. You wonder to yourself: how much do you really need to ward off scurvy for it to come to the point?"
/datum/reagent/consumable/limejuice/on_mob_life(mob/living/carbon/M)
if(M.getToxLoss() && prob(20))
@@ -56,7 +56,7 @@
taste_description = "carrots"
glass_icon_state = "carrotjuice"
glass_name = "glass of carrot juice"
- glass_desc = "It's just like a carrot but without crunching."
+ glass_desc = "Mildly sweet, but it won't actually improve your eyesight all that much beyond the baseline..."
/datum/reagent/consumable/carrotjuice/on_mob_life(mob/living/carbon/M)
M.adjust_blurriness(-1)
@@ -77,7 +77,7 @@
taste_description = "berries"
glass_icon_state = "berryjuice"
glass_name = "glass of berry juice"
- glass_desc = "Berry juice. Or maybe it's jam. Who cares?"
+ glass_desc = "Berry juice. Technically a fruit punch all on its own!"
/datum/reagent/consumable/applejuice
name = "Apple Juice"
@@ -92,7 +92,7 @@
taste_description = "berries"
glass_icon_state = "poisonberryjuice"
glass_name = "glass of berry juice"
- glass_desc = "Berry juice. Or maybe it's poison. Who cares?"
+ glass_desc = "Berry juice. Technically a fruit punch all on its own!"
/datum/reagent/consumable/poisonberryjuice/on_mob_life(mob/living/carbon/M)
M.adjustToxLoss(1, 0)
@@ -106,7 +106,7 @@
taste_description = "juicy watermelon"
glass_icon_state = "glass_red"
glass_name = "glass of watermelon juice"
- glass_desc = "A glass of watermelon juice."
+ glass_desc = "A glass of watermelon juice. Mild and sweet."
/datum/reagent/consumable/lemonjuice
name = "Lemon Juice"
@@ -115,16 +115,16 @@
taste_description = "sourness"
glass_icon_state = "lemonglass"
glass_name = "glass of lemon juice"
- glass_desc = "Sour..."
+ glass_desc = "A glass of intensely sour lime juice. You wonder to yourself: how much do you really need to ward off scurvy for it to come to the point?"
/datum/reagent/consumable/banana
name = "Banana Juice"
- description = "The raw essence of a banana. HONK"
+ description = "The raw essence of a banana."
color = "#e6d283"
taste_description = "banana"
glass_icon_state = "banana"
glass_name = "glass of banana juice"
- glass_desc = "The raw essence of a banana. HONK."
+ glass_desc = "While staring down at this glass, some part of you wonders what went through the minds of those who decided to add this to milk."
/datum/reagent/consumable/banana/on_mob_life(mob/living/carbon/M)
if((ishuman(M) && M.job == "Clown") || ismonkey(M))
@@ -179,25 +179,25 @@
description = "Juice of the potato. Bleh."
nutriment_factor = 2 * REAGENTS_METABOLISM
color = "#9e8045" // rgb: 48, 32, 0
- taste_description = "irish sadness"
+ taste_description = "starchy water"
glass_icon_state = "glass_brown"
glass_name = "glass of potato juice"
- glass_desc = "Bleh..."
+ glass_desc = "Starchy. It coats your mouth with a filament afterwards, which really isn't helping it's case."
/datum/reagent/consumable/grapejuice
name = "Grape Juice"
description = "The juice of a bunch of grapes. Guaranteed non-alcoholic."
color = "#790b79" // dark purple
- taste_description = "grape soda"
+ taste_description = "grapes"
/datum/reagent/consumable/milk
name = "Milk"
- description = "An opaque white liquid produced by the mammary glands of mammals."
+ description = "An opaque white liquid produced by the mammary glands of mammals, some arthropods, biogenerators, chemical factories..."
color = "#DFDFDF" // rgb: 223, 223, 223
taste_description = "milk"
glass_icon_state = "glass_white"
glass_name = "glass of milk"
- glass_desc = "White and nutritious goodness!"
+ glass_desc = "A glass of frothy milk. You wonder what animal this could have come from, if at all."
/datum/reagent/consumable/milk/on_mob_life(mob/living/carbon/M)
if(M.getBruteLoss() && prob(20))
@@ -214,7 +214,7 @@
taste_description = "soy milk"
glass_icon_state = "glass_white"
glass_name = "glass of soy milk"
- glass_desc = "White and nutritious soy goodness!"
+ glass_desc = "Despite being made from soybeans, it sates the same desire to have an entire glass of milk."
/datum/reagent/consumable/soymilk/on_mob_life(mob/living/carbon/M)
if(M.getBruteLoss() && prob(20))
@@ -224,12 +224,12 @@
/datum/reagent/consumable/cream
name = "Cream"
- description = "The fatty, still liquid part of milk. Why don't you mix this with sum scotch, eh?"
+ description = "The fatty, still liquid part of milk."
color = "#DFD7AF" // rgb: 223, 215, 175
taste_description = "creamy milk"
glass_icon_state = "glass_white"
glass_name = "glass of cream"
- glass_desc = "Ewwww..."
+ glass_desc = "It's a bit thick to drink straight."
/datum/reagent/consumable/cream/on_mob_life(mob/living/carbon/M)
if(M.getBruteLoss() && prob(20))
@@ -246,7 +246,7 @@
taste_description = "bitterness"
glass_icon_state = "glass_brown"
glass_name = "glass of coffee"
- glass_desc = "Don't drop it, or you'll send scalding liquid and glass shards everywhere."
+ glass_desc = "Black coffee, served straight. It'll be pretty bitter without anything else in it!"
/datum/reagent/consumable/coffee/overdose_process(mob/living/M)
M.Jitter(5)
@@ -265,13 +265,13 @@
/datum/reagent/consumable/tea
name = "Tea"
- description = "Tasty black tea, it has antioxidants, it's good for you!"
+ description = "Warm, dark tea."
color = "#5f4a05"
nutriment_factor = 0
- taste_description = "tart black tea"
+ taste_description = "tart dark tea"
glass_icon_state = "teaglass"
glass_name = "glass of tea"
- glass_desc = "Drinking it from here would not seem right."
+ glass_desc = "There's a latent desire to drink this out of a teacup, but there's no time for teatime out here."
/datum/reagent/consumable/tea/on_mob_life(mob/living/carbon/M)
M.dizziness = max(0,M.dizziness-2)
@@ -289,25 +289,25 @@
description = "Sweet, tangy lemonade. Good for the soul."
color = "#FFE978"
quality = DRINK_NICE
- taste_description = "sunshine and summertime"
+ taste_description = "sunshine and distant shores"
glass_icon_state = "lemonpitcher"
glass_name = "pitcher of lemonade"
- glass_desc = "This drink leaves you feeling nostalgic for some reason."
+ glass_desc = "Sweet, slightly tart, and refreshing. You feel some misplaced nostalgia when you have this, even though you're not sure you've ever squeezed a lemon before."
/datum/reagent/consumable/tea/arnold_palmer
name = "Arnold Palmer"
- description = "Encourages the patient to go golfing."
+ description = "Iced sweet tea and lemonade."
color = "#FFB766"
quality = DRINK_NICE
nutriment_factor = 2
taste_description = "bitter tea"
glass_icon_state = "arnold_palmer"
glass_name = "Arnold Palmer"
- glass_desc = "You feel like taking a few golf swings after a few swigs of this."
+ glass_desc = "Iced tea and lemonade. You don't think you know any Arnolds, though."
/datum/reagent/consumable/tea/arnold_palmer/on_mob_life(mob/living/carbon/M)
if(prob(5))
- to_chat(M, "[pick("You remember to square your shoulders.","You remember to keep your head down.","You can't decide between squaring your shoulders and keeping your head down.","You remember to relax.","You think about how someday you'll get two strokes off your golf game.")]")
+ to_chat(M, "[pick("You remember to square your shoulders.","You remember to keep your head down.","You can't decide between squaring your shoulders and keeping your head down.","You remember to relax.","You think about how someday you'll get two strokes off your golf game... whatever that is.")]")
..()
. = 1
@@ -319,7 +319,7 @@
taste_description = "bitter coldness"
glass_icon_state = "icedcoffeeglass"
glass_name = "iced coffee"
- glass_desc = "A drink to perk you up and refresh you!"
+ glass_desc = "Iced black coffee. It's still going to be pretty bitter on it's own, though!"
/datum/reagent/consumable/icecoffee/on_mob_life(mob/living/carbon/M)
M.dizziness = max(0,M.dizziness-5)
@@ -339,7 +339,7 @@
taste_description = "bitter coldness and a hint of smoke"
glass_icon_state = "hoticecoffee"
glass_name = "hot ice coffee"
- glass_desc = "A sharp drink, this can't have come cheap."
+ glass_desc = "The wonders of fusion mixed into a cup of coffee, resulting in an extremely hot-cold drink."
/datum/reagent/consumable/hot_ice_coffee/on_mob_life(mob/living/carbon/M)
M.dizziness = max(0,M.dizziness-5)
@@ -353,13 +353,13 @@
/datum/reagent/consumable/icetea
name = "Iced Tea"
- description = "No relation to a certain rap artist/actor."
+ description = "Iced, sweetened tea."
color = "#104038" // rgb: 16, 64, 56
nutriment_factor = 0
taste_description = "sweet tea"
glass_icon_state = "icedteaglass"
glass_name = "iced tea"
- glass_desc = "All natural, antioxidant-rich flavour sensation."
+ glass_desc = "A much more appealing way to have tea while dealing with the heat."
/datum/reagent/consumable/icetea/on_mob_life(mob/living/carbon/M)
M.dizziness = max(0,M.dizziness-2)
@@ -377,61 +377,33 @@
color = "#743c05" // rgb: 16, 8, 0
taste_description = "cola"
glass_icon_state = "glass_brown"
- glass_name = "glass of Space Cola"
- glass_desc = "A glass of refreshing Space Cola."
+ glass_name = "glass of cola"
+ glass_desc = "A carbonated cola. You should drink it before it gets flat!"
/datum/reagent/consumable/space_cola/on_mob_life(mob/living/carbon/M)
M.drowsyness = max(0,M.drowsyness-5)
M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
..()
-/datum/reagent/consumable/nuka_cola
- name = "Nuka Cola"
- description = "Cola, cola never changes."
- color = "#3b6c0e" // rgb: 16, 8, 0
- quality = DRINK_VERYGOOD
- taste_description = "the future"
- glass_icon_state = "nuka_colaglass"
- glass_name = "glass of Nuka Cola"
- glass_desc = "Don't cry, Don't raise your eye, It's only nuclear wasteland."
-
-/datum/reagent/consumable/nuka_cola/on_mob_metabolize(mob/living/L)
- ..()
- L.add_movespeed_modifier(/datum/movespeed_modifier/reagent/nuka_cola)
-
-/datum/reagent/consumable/nuka_cola/on_mob_end_metabolize(mob/living/L)
- L.remove_movespeed_modifier(/datum/movespeed_modifier/reagent/nuka_cola)
- ..()
-
-/datum/reagent/consumable/nuka_cola/on_mob_life(mob/living/carbon/M)
- M.Jitter(20)
- M.set_drugginess(30)
- M.dizziness +=1.5
- M.drowsyness = 0
- M.AdjustSleeping(-40)
- M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
- ..()
- . = 1
-
-/datum/reagent/consumable/grey_bull
- name = "Grey Bull"
- description = "Grey Bull, it gives you gloves!"
+/datum/reagent/consumable/crosstalk
+ name = "Crosstalk"
+ description = "Crosstalk! Share the energy with everyone!"
color = "#EEFF00" // rgb: 238, 255, 0
quality = DRINK_VERYGOOD
- taste_description = "carbonated oil"
- glass_icon_state = "grey_bull_glass"
- glass_name = "glass of Grey Bull"
- glass_desc = "Surprisingly it isnt grey."
+ taste_description = "carbonated battery acid with a spoonful of sugar"
+ glass_icon_state = "crosstalk_glass"
+ glass_name = "glass of Crosstalk"
+ glass_desc = "The amount of sugar and chemicals in this drink makes your eyes water."
-/datum/reagent/consumable/grey_bull/on_mob_metabolize(mob/living/L)
+/datum/reagent/consumable/crosstalk/on_mob_metabolize(mob/living/L)
..()
ADD_TRAIT(L, TRAIT_SHOCKIMMUNE, type)
-/datum/reagent/consumable/grey_bull/on_mob_end_metabolize(mob/living/L)
+/datum/reagent/consumable/crosstalk/on_mob_end_metabolize(mob/living/L)
REMOVE_TRAIT(L, TRAIT_SHOCKIMMUNE, type)
..()
-/datum/reagent/consumable/grey_bull/on_mob_life(mob/living/carbon/M)
+/datum/reagent/consumable/crosstalk/on_mob_life(mob/living/carbon/M)
M.Jitter(20)
M.dizziness +=1
M.drowsyness = 0
@@ -439,16 +411,16 @@
M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
..()
-/datum/reagent/consumable/spacemountainwind
- name = "SM Wind"
- description = "Blows right through you like a space wind."
+/datum/reagent/consumable/comet_trail
+ name = "Comet Trail"
+ description = "A citrusy drink from the Kepori space installation known as The Ring."
color = "#c4ff2d" // rgb: 16, 32, 0
taste_description = "sweet citrus soda"
- glass_icon_state = "Space_mountain_wind_glass"
- glass_name = "glass of Space Mountain Wind"
- glass_desc = "Space Mountain Wind. As you know, there are no mountains in space, only wind."
+ glass_icon_state = "Comet_trail_glass"
+ glass_name = "glass of Comet Trail"
+ glass_desc = "A glass of Comet Trail. Taste the stars!"
-/datum/reagent/consumable/spacemountainwind/on_mob_life(mob/living/carbon/M)
+/datum/reagent/consumable/comet_trail/on_mob_life(mob/living/carbon/M)
M.drowsyness = max(0,M.drowsyness-7)
M.AdjustSleeping(-20)
M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
@@ -456,16 +428,16 @@
..()
. = 1
-/datum/reagent/consumable/dr_gibb
- name = "Dr. Gibb"
- description = "A delicious blend of 42 different flavours."
+/datum/reagent/consumable/tadrixx
+ name = "Tadrixx"
+ description = "A Kalixcian drink made from a plant that tastes similar to sassafrass, which is used in root beer. A stumpy drake holding a mug of it is on the front."
color = "#732a03"
- taste_description = "cherry soda" // FALSE ADVERTISING
- glass_icon_state = "dr_gibb_glass"
- glass_name = "glass of Dr. Gibb"
- glass_desc = "Dr. Gibb. Not as dangerous as the glass_name might imply."
+ taste_description = "root beer" // FALSE ADVERTISING
+ glass_icon_state = "tadrixx_glass"
+ glass_name = "glass of Tadrixx"
+ glass_desc = "A cup of fizzy Tadrixx. It smells sweet."
-/datum/reagent/consumable/dr_gibb/on_mob_life(mob/living/carbon/M)
+/datum/reagent/consumable/tadrixx/on_mob_life(mob/living/carbon/M)
M.drowsyness = max(0,M.drowsyness-6)
M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
..()
@@ -484,6 +456,38 @@
M.adjust_bodytemperature(-8 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
..()
+/datum/reagent/consumable/molten
+ name = "Molten Bubbles"
+ description = "A spicy soft drink made from a coca-like plant from Kalixcis. Popularly served both cold -and- hot, depending on the weather."
+ color = "#5f2010"
+ taste_description = "spiced cola"
+ glass_icon_state = "molten_glass"
+ glass_name = "glass of Molten Bubbles"
+ glass_desc = "A glass of Molten Bubbles. The spices tickle your nose."
+
+/datum/reagent/consumable/molten/on_mob_life(mob/living/carbon/M)
+ M.heal_bodypart_damage(1,1,0)
+ if(M.bodytemperature > M.get_body_temp_normal(apply_change=FALSE))
+ M.adjust_bodytemperature(-10 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal(apply_change=FALSE))
+ else if(M.bodytemperature < (M.get_body_temp_normal(apply_change=FALSE) + 1))
+ M.adjust_bodytemperature(10 * TEMPERATURE_DAMAGE_COEFFICIENT, 0, M.get_body_temp_normal(apply_change=FALSE))
+ ..()
+
+/datum/reagent/consumable/molten/plasma_fizz
+ name = "Plasma Fizz"
+ description = "A spinoff of the popular Molten Bubbles drink from Kalixcis, made to emulate the flavor of spiced grape instead. It's... not exactly convincing or a very good mix."
+ color = "#5f2010"
+ taste_description = "spiced grape soda"
+ glass_icon_state = "plasma_fizz_glass"
+ glass_name = "glass of Plasma Fizz"
+ glass_desc = "A glass of Plasma Fizz. The spices (and fake grape flavoring) wrinkles your nose."
+
+/datum/reagent/consumable/molten/sand
+ name = "Sandblast Sarsaparilla"
+ description = "Extra refreshing for those long desert days."
+ color = "#af9938"
+ taste_description = "root-beer and asbestos"
+
/datum/reagent/consumable/lemon_lime
name = "Lemon Lime"
description = "A tangy substance made of 0.5% natural citrus!"
@@ -499,48 +503,48 @@
..()
-/datum/reagent/consumable/pwr_game
- name = "Pwr Game"
- description = "The only drink with the PWR that true gamers crave."
+/datum/reagent/consumable/pacfuel
+ name = "PAC-Fuel"
+ description = "A carbonated energy drink themed after the purple coloration, similar to plasma."
color = "#9385bf" // rgb: 58, 52, 75
taste_description = "sweet and salty tang"
glass_icon_state = "glass_red"
- glass_name = "glass of Pwr Game"
- glass_desc = "Goes well with a Vlad's salad."
+ glass_name = "glass of PAC-Fuel"
+ glass_desc = "A glass of PAC-Fuel energy drink. It smells vaguely like acidic cotton candy..."
-/datum/reagent/consumable/pwr_game/expose_mob(mob/living/C, method=TOUCH, reac_volume)
+/datum/reagent/consumable/pacfuel/expose_mob(mob/living/C, method=TOUCH, reac_volume)
..()
if(C?.mind?.get_skill_level(/datum/skill/gaming) >= SKILL_LEVEL_LEGENDARY && method==INGEST && !HAS_TRAIT(C, TRAIT_GAMERGOD))
ADD_TRAIT(C, TRAIT_GAMERGOD, "pwr_game")
- to_chat(C, "As you imbibe the Pwr Game, your gamer third eye opens... \
+ to_chat(C, "As you imbibe the PAC-Fuel, your gamer third eye opens... \
You feel as though a great secret of the universe has been made known to you...")
-/datum/reagent/consumable/pwr_game/on_mob_life(mob/living/carbon/M)
+/datum/reagent/consumable/pacfuel/on_mob_life(mob/living/carbon/M)
M.adjust_bodytemperature(-8 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
if(prob(10))
M?.mind.adjust_experience(/datum/skill/gaming, 5)
..()
-/datum/reagent/consumable/shamblers
- name = "Shambler's Juice"
- description = "~Shake me up some of that Shambler's Juice!~"
+/datum/reagent/consumable/shoal_punch
+ name = "Shoal Punch"
+ description = "Sugary, and from the Shoal."
color = "#f00060" // rgb: 94, 0, 38
- taste_description = "carbonated metallic soda"
+ taste_description = "sugary fruity soda"
glass_icon_state = "glass_red"
- glass_name = "glass of Shambler's juice"
- glass_desc = "Mmm mm, shambly."
+ glass_name = "glass of Shoal Punch"
+ glass_desc = "It's hard to imagine all those fruits getting condensed into a cup like this."
-/datum/reagent/consumable/shamblers/on_mob_life(mob/living/carbon/M)
+/datum/reagent/consumable/shoal_punch/on_mob_life(mob/living/carbon/M)
M.adjust_bodytemperature(-8 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
..()
/datum/reagent/consumable/sodawater
name = "Soda Water"
- description = "A can of club soda. Why not make a scotch and soda?"
+ description = "A can of club soda."
color = "#619494" // rgb: 97, 148, 148
taste_description = "carbonated water"
glass_icon_state = "glass_clear"
glass_name = "glass of soda water"
- glass_desc = "Soda water. Why not make a scotch and soda?"
+ glass_desc = "Soda water. You feel like you should add something to this..."
/datum/reagent/consumable/sodawater/on_mob_life(mob/living/carbon/M)
M.dizziness = max(0,M.dizziness-5)
@@ -550,12 +554,12 @@
/datum/reagent/consumable/tonic
name = "Tonic Water"
- description = "It tastes strange but at least the quinine keeps the Space Malaria at bay."
+ description = "It tastes strange, and it's not like malaria is much of an issue anymore."
color = "#709fce"
taste_description = "tart and fresh"
glass_icon_state = "glass_clear"
glass_name = "glass of tonic water"
- glass_desc = "Quinine tastes funny, but at least it'll keep that Space Malaria away."
+ glass_desc = "Quinine and carbonated water. You really should add something to this..."
/datum/reagent/consumable/tonic/on_mob_life(mob/living/carbon/M)
M.dizziness = max(0,M.dizziness-5)
@@ -565,17 +569,17 @@
..()
. = 1
-/datum/reagent/consumable/monkey_energy
- name = "Monkey Energy"
- description = "The only drink that will make you unleash the ape."
- color = "#f39b03" // rgb: 243, 155, 3
+/datum/reagent/consumable/xeno_energy
+ name = "Xeno-Energy"
+ description = "An unbearably sugary, fizzy green drink."
+ color = "#88b488" // rgb: 243, 155, 3
overdose_threshold = 60
- taste_description = "barbecue and nostalgia"
- glass_icon_state = "monkey_energy_glass"
- glass_name = "glass of Monkey Energy"
- glass_desc = "You can unleash the ape, but without the pop of the can?"
+ taste_description = "tooth-rotting sweetness"
+ glass_icon_state = "xeno_energy_glass"
+ glass_name = "glass of Xeno Energy"
+ glass_desc = "A glass of Xeno Energy. It seems to swirl and roil outside of the can..."
-/datum/reagent/consumable/monkey_energy/on_mob_life(mob/living/carbon/M)
+/datum/reagent/consumable/xeno_energy/on_mob_life(mob/living/carbon/M)
M.Jitter(20)
M.dizziness +=1
M.drowsyness = 0
@@ -583,18 +587,13 @@
M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
..()
-/datum/reagent/consumable/monkey_energy/on_mob_metabolize(mob/living/L)
+/datum/reagent/consumable/xeno_energy/on_mob_metabolize(mob/living/L)
..()
if(ismonkey(L))
- L.add_movespeed_modifier(/datum/movespeed_modifier/reagent/monkey_energy)
+ L.add_movespeed_modifier(/datum/movespeed_modifier/reagent/xeno_energy)
-/datum/reagent/consumable/monkey_energy/on_mob_end_metabolize(mob/living/L)
- L.remove_movespeed_modifier(/datum/movespeed_modifier/reagent/monkey_energy)
- ..()
-
-/datum/reagent/consumable/monkey_energy/overdose_process(mob/living/M)
- if(prob(15))
- M.say(pick_list_replacements(BOOMER_FILE, "boomer"), forced = /datum/reagent/consumable/monkey_energy)
+/datum/reagent/consumable/xeno_energy/on_mob_end_metabolize(mob/living/L)
+ L.remove_movespeed_modifier(/datum/movespeed_modifier/reagent/xeno_energy)
..()
/datum/reagent/consumable/ice
@@ -605,7 +604,7 @@
taste_description = "ice"
glass_icon_state = "iceglass"
glass_name = "glass of ice"
- glass_desc = "Generally, you're supposed to put something else in there too..."
+ glass_desc = "Generally, you're supposed to put something else in there, too..."
/datum/reagent/consumable/ice/on_mob_life(mob/living/carbon/M)
M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
@@ -613,13 +612,13 @@
/datum/reagent/consumable/soy_latte
name = "Soy Latte"
- description = "A nice and tasty beverage while you are reading your hippie books."
+ description = "A hot beverage for those who can't handle the lactose."
color = "#664300" // rgb: 102, 67, 0
quality = DRINK_NICE
taste_description = "creamy coffee"
glass_icon_state = "soy_latte"
glass_name = "soy latte"
- glass_desc = "A nice and refreshing beverage while you're reading."
+ glass_desc = "A nice and refreshing beverage. It goes well with a book, if you have the time to read."
/datum/reagent/consumable/soy_latte/on_mob_life(mob/living/carbon/M)
M.dizziness = max(0,M.dizziness-5)
@@ -640,7 +639,7 @@
taste_description = "bitter cream"
glass_icon_state = "cafe_latte"
glass_name = "cafe latte"
- glass_desc = "A nice, strong and refreshing beverage while you're reading."
+ glass_desc = "A nice, strong and refreshing beverage. It goes well with a book, if you have the time to read."
/datum/reagent/consumable/cafe_latte/on_mob_life(mob/living/carbon/M)
M.dizziness = max(0,M.dizziness-5)
@@ -655,13 +654,13 @@
/datum/reagent/consumable/doctor_delight
name = "The Doctor's Delight"
- description = "A gulp a day keeps the Medibot away! A mixture of juices that heals most damage types fairly quickly at the cost of hunger."
+ description = "A homemade curative. A mixture of juices that helps your body heal against most damage, at the cost of leaving you hungry."
color = "#FF8CFF" // rgb: 255, 140, 255
quality = DRINK_VERYGOOD
taste_description = "homely fruit"
glass_icon_state = "doctorsdelightglass"
glass_name = "Doctor's Delight"
- glass_desc = "The space doctor's favorite. Guaranteed to restore bodily injury; side effects include cravings and hunger."
+ glass_desc = "A homemade curative. Helps the body heal with the nutrition density, but it leaves a gnawing hunger afterwards."
/datum/reagent/consumable/doctor_delight/on_mob_life(mob/living/carbon/M)
M.adjustBruteLoss(-0.5, 0)
@@ -683,7 +682,7 @@
taste_description = "sweet chocolate"
glass_icon_state = "chocolatepudding"
glass_name = "chocolate pudding"
- glass_desc = "Tasty."
+ glass_desc = "Thick, sweet, and chocolatey."
/datum/reagent/consumable/vanillapudding
name = "Vanilla Pudding"
@@ -694,7 +693,7 @@
taste_description = "sweet vanilla"
glass_icon_state = "vanillapudding"
glass_name = "vanilla pudding"
- glass_desc = "Tasty."
+ glass_desc = "Thick, sweet, and pleasantly vanilla."
/datum/reagent/consumable/cherryshake
name = "Cherry Shake"
@@ -705,7 +704,7 @@
taste_description = "creamy cherry"
glass_icon_state = "cherryshake"
glass_name = "cherry shake"
- glass_desc = "A cherry flavored milkshake."
+ glass_desc = "A cherry flavored milkshake. Don't get any on your jumpsuit!"
/datum/reagent/consumable/bluecherryshake
name = "Blue Cherry Shake"
@@ -716,33 +715,33 @@
taste_description = "creamy blue cherry"
glass_icon_state = "bluecherryshake"
glass_name = "blue cherry shake"
- glass_desc = "An exotic blue milkshake."
+ glass_desc = "A blue-cherry milkshake. Generally, the blue is meant to be figurative, but..."
/datum/reagent/consumable/pumpkin_latte
name = "Pumpkin Latte"
- description = "A mix of pumpkin juice and coffee."
+ description = "A mix of spices and coffee. It doesn't actually contain any pumpkin, though."
color = "#F4A460"
quality = DRINK_VERYGOOD
nutriment_factor = 3 * REAGENTS_METABOLISM
taste_description = "creamy pumpkin"
glass_icon_state = "pumpkin_latte"
glass_name = "pumpkin latte"
- glass_desc = "A mix of coffee and pumpkin juice."
+ glass_desc = "A mix of coffee and pumpkin juice would taste a whole lot different than what you're having right now, you know."
-/datum/reagent/consumable/gibbfloats
- name = "Gibb Floats"
- description = "Ice cream on top of a Dr. Gibb glass."
- color = "#B22222"
+/datum/reagent/consumable/tadrixxfloat
+ name = "Tadrixx Float"
+ description = "Ice cream on top of a glass of Tadrixx."
+ color = "#533713"
quality = DRINK_NICE
nutriment_factor = 3 * REAGENTS_METABOLISM
- taste_description = "creamy cherry"
- glass_icon_state = "gibbfloats"
- glass_name = "Gibbfloat"
- glass_desc = "Dr. Gibb with ice cream on top."
+ taste_description = "creamy root beer"
+ glass_icon_state = "tadrixxfloat"
+ glass_name = "Tadrixxfloat"
+ glass_desc = "A glass of Tadrixx with ice cream on top."
/datum/reagent/consumable/pumpkinjuice
name = "Pumpkin Juice"
- description = "Juiced from real pumpkin."
+ description = "Juiced from real pumpkins."
color = "#FFA500"
taste_description = "pumpkin"
@@ -757,18 +756,18 @@
description = "A solution."
color = "#EEFF00"
quality = DRINK_NICE
- taste_description = "extreme bitterness"
+ taste_description = "extreme sourness"
glass_icon_state = "triplecitrus" //needs own sprite mine are trash //your sprite is great tho
glass_name = "glass of triple citrus"
- glass_desc = "A mixture of citrus juices. Tangy, yet smooth."
+ glass_desc = "A mixture of citrus juices. Intensely sour, and leaves you reeling afterwards."
/datum/reagent/consumable/grape_soda
name = "Grape soda"
- description = "Beloved by children and teetotalers."
+ description = "Artificial grape soda."
color = "#E6CDFF"
taste_description = "grape soda"
glass_name = "glass of grape juice"
- glass_desc = "It's grape (soda)!"
+ glass_desc = "It's grape soda!"
/datum/reagent/consumable/grape_soda/on_mob_life(mob/living/carbon/M)
M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
@@ -776,20 +775,28 @@
/datum/reagent/consumable/milk/chocolate_milk
name = "Chocolate Milk"
- description = "Milk for cool kids."
+ description = "Milk mixed with chocolate powder. Beloved by children everywhere."
color = "#7D4E29"
quality = DRINK_NICE
taste_description = "chocolate milk"
+/datum/reagent/consumable/lunapunch
+ name = "Lunapunch"
+ description = "An herbal-sweet carbonated drink with a bitter bite."
+ color = "#7D4E29"
+ quality = DRINK_NICE
+ taste_description = "sweet herbs and lingering bitterness"
+ glass_name = "glass of Lunapunch"
+ glass_desc = "An herbal-sweet soft drink. The bitter bite after each sip is enough to make you wince, but leaves you wanting more."
/datum/reagent/consumable/hot_coco
- name = "Hot Coco"
- description = "Made with love! And coco beans."
+ name = "Hot Cocoa"
+ description = "Made with love and cocoa beans. Or from a vending machine."
nutriment_factor = 3 * REAGENTS_METABOLISM
color = "#4f3a11" // rgb: 64, 48, 16
taste_description = "creamy chocolate"
glass_icon_state = "chocolateglass"
- glass_name = "glass of hot coco"
- glass_desc = "A favorite winter drink to warm you up."
+ glass_name = "glass of hot cocoa."
+ glass_desc = "A favorite winter drink from the Solar Confederation. Good for warming yourself up."
/datum/reagent/consumable/hot_coco/on_mob_life(mob/living/carbon/M)
M.adjust_bodytemperature(5 * TEMPERATURE_DAMAGE_COEFFICIENT, 0, M.get_body_temp_normal())
@@ -810,7 +817,7 @@
taste_description = "mint"
glass_icon_state = "glass_green"
glass_name = "glass of menthol"
- glass_desc = "Tastes naturally minty, and imparts a very mild numbing sensation."
+ glass_desc = "Tastes naturally and sharply minty, with a mild numbing sensation."
/datum/reagent/consumable/menthol/on_mob_life(mob/living/L)
L.apply_status_effect(/datum/status_effect/throat_soothed)
@@ -818,26 +825,27 @@
/datum/reagent/consumable/grenadine
name = "Grenadine"
- description = "Not cherry flavored!"
+ description = "More blackcurrant than cherry, actually."
color = "#EA1D26"
taste_description = "sweet pomegranates"
glass_name = "glass of grenadine"
- glass_desc = "Delicious flavored syrup."
+ glass_desc = "Flavored syrup, traditionally used for mixing drinks. Having it straight is certainly a choice."
/datum/reagent/consumable/parsnipjuice
name = "Parsnip Juice"
- description = "Why..."
+ description = "Starchy and uncommon."
color = "#FFA500"
taste_description = "parsnip"
glass_name = "glass of parsnip juice"
+ glass_desc = "It doesn't really count as a soup this way. Maybe it'd better if it was a soup."
/datum/reagent/consumable/pineapplejuice
name = "Pineapple Juice"
- description = "Tart, tropical, and hotly debated."
+ description = "Tart, tropical, and sweet."
color = "#F7D435"
taste_description = "pineapple"
glass_name = "glass of pineapple juice"
- glass_desc = "Tart, tropical, and hotly debated."
+ glass_desc = "Tart, tropical, and sweet."
/datum/reagent/consumable/peachjuice //Intended to be extremely rare due to being the limiting ingredients in the blazaam drink
name = "Peach Juice"
@@ -845,16 +853,17 @@
color = "#E78108"
taste_description = "peaches"
glass_name = "glass of peach juice"
+ glass_desc = "A glass full of sweet peach juice. Strange, you don't often see it out this far into the Frontier..."
/datum/reagent/consumable/cream_soda
name = "Cream Soda"
- description = "A classic space-American vanilla flavored soft drink."
+ description = "A classic vanilla flavored soft drink."
color = "#dcb137"
quality = DRINK_VERYGOOD
taste_description = "fizzy vanilla"
glass_icon_state = "cream_soda"
glass_name = "Cream Soda"
- glass_desc = "A classic space-American vanilla flavored soft drink."
+ glass_desc = "A classic vanilla flavored soft drink."
/datum/reagent/consumable/cream_soda/on_mob_life(mob/living/carbon/M)
M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal())
@@ -867,7 +876,7 @@
quality = DRINK_NICE
taste_description = "sweet ginger spice"
glass_name = "Sol Dry"
- glass_desc = "A soothing, mellow drink made from ginger."
+ glass_desc = "A soothing, mellow drink made from ginger. You can't imagine drinking a carbonated drink while in microgravity, though, nausea or not..."
/datum/reagent/consumable/sol_dry/on_mob_life(mob/living/carbon/M)
M.adjust_disgust(-5)
@@ -875,13 +884,13 @@
/datum/reagent/consumable/red_queen
name = "Red Queen"
- description = "DRINK ME."
+ description = "You feel inclined to drink it, somehow."
color = "#e6ddc3"
quality = DRINK_GOOD
taste_description = "wonder"
glass_icon_state = "red_queen"
glass_name = "Red Queen"
- glass_desc = "DRINK ME."
+ glass_desc = "A cup of red tea. A small note is tied around the handle of it, which asks you to drink it."
var/current_size = RESIZE_DEFAULT_SIZE
/datum/reagent/consumable/red_queen/on_mob_life(mob/living/carbon/H)
@@ -905,11 +914,11 @@
/datum/reagent/consumable/bungojuice
name = "Bungo Juice"
color = "#F9E43D"
- description = "Exotic! You feel like you are on vactation already."
+ description = "A botanical experiment gone right."
taste_description = "succulent bungo"
glass_icon_state = "glass_yellow"
glass_name = "glass of bungo juice"
- glass_desc = "Exotic! You feel like you are on vactation already."
+ glass_desc = "A botanical experiment in creating a new fruit. It smells faintly citrusy, along with a hint of... banana?"
/datum/reagent/consumable/prunomix
name = "pruno mixture"
@@ -927,7 +936,7 @@
taste_description = "vegetable"
glass_icon_state = "glass_yellow"
glass_name = "glass of aloe juice"
- glass_desc = "A healthy and refreshing juice."
+ glass_desc = "Juiced aloe vera. It's an acquired taste."
/datum/reagent/consumable/aloejuice/on_mob_life(mob/living/M)
if(M.getToxLoss() && prob(30))
@@ -943,7 +952,7 @@
taste_description = "purple and a hint of opioid."
glass_icon_state = "lean"
glass_name = "Lean"
- glass_desc = "A drink that makes your life less miserable."
+ glass_desc = "You just don't often get to see cough syrup out here, and someone had enough to mix it with soda. You're left wondering why."
/datum/reagent/consumable/lean/on_mob_life(mob/living/carbon/M)
if(M.slurring < 3)
diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm
index 4c4ad36b2413..6084311b3507 100644
--- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm
+++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm
@@ -2113,30 +2113,3 @@
ADD_TRAIT(M, TRAIT_ALLBREAK, TRAIT_GENERIC)
REMOVE_TRAIT(M, TRAIT_NOBREAK, TRAIT_GENERIC)
..()
-
-/datum/reagent/medicine/molten_bubbles
- name = "Molten Bubbles"
- description = "Refreshing softdrink made for the desert."
- color = "#3d1916"
- metabolization_rate = REAGENTS_METABOLISM
- taste_description = "boiling sugar"
-
-/datum/reagent/medicine/molten_bubbles/on_mob_life(mob/living/carbon/M)
- M.heal_bodypart_damage(1,1,0)
- if(M.bodytemperature > M.get_body_temp_normal(apply_change=FALSE))
- M.adjust_bodytemperature(-10 * TEMPERATURE_DAMAGE_COEFFICIENT, M.get_body_temp_normal(apply_change=FALSE))
- else if(M.bodytemperature < (M.get_body_temp_normal(apply_change=FALSE) + 1))
- M.adjust_bodytemperature(10 * TEMPERATURE_DAMAGE_COEFFICIENT, 0, M.get_body_temp_normal(apply_change=FALSE))
- ..()
-
-/datum/reagent/medicine/molten_bubbles/plasma
- name = "Plasma Bubbles"
- description = "Molten Bubbles with the refreshing taste of plasma."
- color = "#852e63"
- taste_description = "grape flavored cleaning solution"
-
-/datum/reagent/medicine/molten_bubbles/sand
- name = "Sandblast Sarsaparilla"
- description = "Extra refreshing for those long desert days."
- color = "#af9938"
- taste_description = "root-beer and asbestos"
diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm
index 02d8850f8776..9b6243358acb 100644
--- a/code/modules/reagents/chemistry/reagents/other_reagents.dm
+++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm
@@ -2048,18 +2048,6 @@
to_chat(M, "You should sit down and take a rest...")
..()
-/datum/reagent/tranquility
- name = "Tranquility"
- description = "A highly mutative liquid of unknown origin."
- color = "#9A6750" //RGB: 154, 103, 80
- taste_description = "inner peace"
- can_synth = FALSE
-
-/datum/reagent/tranquility/expose_mob(mob/living/L, method=TOUCH, reac_volume, show_message = 1, touch_protection = 0)
- if(method==PATCH || method==INGEST || method==INJECT || (method == VAPOR && prob(min(reac_volume,100)*(1 - touch_protection))))
- L.ForceContractDisease(new /datum/disease/transformation/gondola(), FALSE, TRUE)
-
-
/datum/reagent/spider_extract
name = "Spider Extract"
description = "A highly specialized extract coming from the Australicus sector, used to create broodmother spiders."
diff --git a/code/modules/reagents/chemistry/recipes/medicine.dm b/code/modules/reagents/chemistry/recipes/medicine.dm
index 302d05f0712b..2397d67a1d2c 100644
--- a/code/modules/reagents/chemistry/recipes/medicine.dm
+++ b/code/modules/reagents/chemistry/recipes/medicine.dm
@@ -325,18 +325,3 @@ WS End */
/datum/chemical_reaction/chartreuse
results = list(/datum/reagent/medicine/chartreuse = 10)
required_reagents = list(/datum/reagent/medicine/puce_essence = 5, /datum/reagent/consumable/tinlux = 5, /datum/reagent/consumable/entpoly = 1)
-
-/datum/chemical_reaction/molten_bubbles
- results = list(/datum/reagent/medicine/molten_bubbles = 30)
- required_reagents = list(/datum/reagent/clf3 = 10, /datum/reagent/consumable/space_cola = 20, /datum/reagent/medicine/leporazine = 1, /datum/reagent/medicine/lavaland_extract = 1)
-
-/datum/chemical_reaction/plasma_bubbles
- results = list(/datum/reagent/medicine/molten_bubbles/plasma = 3)
- required_reagents = list(/datum/reagent/medicine/molten_bubbles = 3, /datum/reagent/toxin/plasma = 2)
-
-/datum/chemical_reaction/sand_bubbles
- results = list(/datum/reagent/medicine/molten_bubbles/sand = 3)
- required_reagents = list(/datum/reagent/medicine/molten_bubbles = 3, /datum/reagent/silicon = 2)
-
-/datum/chemical_reaction/sand_bubbles/plasma // Subbing plasma bubbles for reg
- required_reagents = list(/datum/reagent/medicine/molten_bubbles/plasma = 3, /datum/reagent/silicon = 2)
diff --git a/code/modules/reagents/reagent_containers/borghydro.dm b/code/modules/reagents/reagent_containers/borghydro.dm
index ee288feb0bac..149743c47e3c 100644
--- a/code/modules/reagents/reagent_containers/borghydro.dm
+++ b/code/modules/reagents/reagent_containers/borghydro.dm
@@ -184,12 +184,12 @@ Borg Shaker
accepts_reagent_upgrades = FALSE
reagent_ids = list(/datum/reagent/consumable/applejuice, /datum/reagent/consumable/banana, /datum/reagent/consumable/coffee,
- /datum/reagent/consumable/cream, /datum/reagent/consumable/dr_gibb, /datum/reagent/consumable/grenadine,
+ /datum/reagent/consumable/cream, /datum/reagent/consumable/tadrixx, /datum/reagent/consumable/grenadine,
/datum/reagent/consumable/ice, /datum/reagent/consumable/lemonjuice, /datum/reagent/consumable/lemon_lime,
/datum/reagent/consumable/limejuice, /datum/reagent/consumable/menthol, /datum/reagent/consumable/milk,
/datum/reagent/consumable/nothing, /datum/reagent/consumable/orangejuice, /datum/reagent/consumable/peachjuice,
- /datum/reagent/consumable/sodawater, /datum/reagent/consumable/space_cola, /datum/reagent/consumable/spacemountainwind,
- /datum/reagent/consumable/pwr_game, /datum/reagent/consumable/shamblers, /datum/reagent/consumable/soymilk,
+ /datum/reagent/consumable/sodawater, /datum/reagent/consumable/space_cola, /datum/reagent/consumable/comet_trail,
+ /datum/reagent/consumable/pacfuel, /datum/reagent/consumable/shoal_punch, /datum/reagent/consumable/soymilk,
/datum/reagent/consumable/space_up, /datum/reagent/consumable/sugar, /datum/reagent/consumable/tea,
/datum/reagent/consumable/tomatojuice, /datum/reagent/consumable/tonic, /datum/reagent/water,
/datum/reagent/consumable/pineapplejuice, /datum/reagent/consumable/sol_dry,
diff --git a/code/modules/recycling/sortingmachinery.dm b/code/modules/recycling/sortingmachinery.dm
index 77525a1f309e..96e027a55476 100644
--- a/code/modules/recycling/sortingmachinery.dm
+++ b/code/modules/recycling/sortingmachinery.dm
@@ -388,8 +388,8 @@
/obj/item/sales_tagger/attackby(obj/item/I, mob/living/user, params)
. = ..()
- if(istype(I, /obj/item/card/id))
- var/obj/item/card/id/potential_acc = I
+ if(isbankcard(I))
+ var/obj/item/card/bank/potential_acc = I
if(potential_acc.registered_account)
payments_acc = potential_acc.registered_account
playsound(src, 'sound/machines/ping.ogg', 40, TRUE)
diff --git a/code/modules/research/bepis.dm b/code/modules/research/bepis.dm
index a033b59b56ae..bb56a69adf2b 100644
--- a/code/modules/research/bepis.dm
+++ b/code/modules/research/bepis.dm
@@ -58,11 +58,11 @@
say("Deposited [deposit_value] credits into storage.")
update_icon_state()
return
- if(istype(O, /obj/item/card/id))
- var/obj/item/card/id/Card = O
- if(Card.registered_account)
- account = Card.registered_account
- account_name = Card.registered_name
+ if(istype(O, /obj/item/card/bank))
+ var/obj/item/card/bank/bank_card = O
+ if(bank_card.registered_account)
+ account = bank_card.registered_account
+ account_name = bank_card.registered_name
say("New account detected. Console Updated.")
else
say("No account detected on card. Aborting.")
diff --git a/code/modules/research/designs/machine_designs.dm b/code/modules/research/designs/machine_designs.dm
index 6955bf525d29..5f79bbbf12e5 100644
--- a/code/modules/research/designs/machine_designs.dm
+++ b/code/modules/research/designs/machine_designs.dm
@@ -644,6 +644,14 @@
category = list ("Shuttle Machinery")
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE
+/datum/design/board/shuttle/engine/fire
+ name = "Machine Design (Combustion Thruster Board)"
+ desc = "The circuit board for a combustion thruster."
+ id = "engine_fire"
+ build_path = /obj/item/circuitboard/machine/shuttle/engine/fire
+ category = list("Shuttle Machinery")
+ departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE
+
/datum/design/board/shuttle/engine/electric
name = "Machine Design (Ion Thruster Board)"
desc = "The circuit board for an ion thruster."
@@ -676,6 +684,14 @@
category = list ("Shuttle Machinery")
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE
+/datum/design/board/shuttle/engine/fire_heater
+ name = "Machine Design (Combustion Engine Heater Board)"
+ desc = "The circuit board for a combustion engine heater."
+ id = "engine_fire_heater"
+ build_path = /obj/item/circuitboard/machine/shuttle/fire_heater
+ category = list("Shuttle Machinery")
+ departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE
+
/datum/design/board/shuttle/engine/smes
name = "Machine Design (Engine Heater Board)"
desc = "The circuit board for an engine heater."
diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm
index eaa696c8d775..dbca44b757b9 100644
--- a/code/modules/research/techweb/all_nodes.dm
+++ b/code/modules/research/techweb/all_nodes.dm
@@ -1136,7 +1136,7 @@
display_name = "Basic Shuttle Research"
description = "Research the technology required to create and use basic shuttles."
prereq_ids = list("bluespace_travel", "adv_engi")
- design_ids = list("engine_plasma", "engine_ion", "engine_heater", "engine_smes", "shuttle_helm", "rapid_shuttle_designator")
+ design_ids = list("engine_plasma", "engine_fire", "engine_ion", "engine_heater", "engine_fire_heater", "engine_smes", "shuttle_helm", "rapid_shuttle_designator")
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 10000)
export_price = 5000
diff --git a/code/modules/shuttle/shuttle_rotate.dm b/code/modules/shuttle/shuttle_rotate.dm
index d0b4b49a92f6..31e650a90a31 100644
--- a/code/modules/shuttle/shuttle_rotate.dm
+++ b/code/modules/shuttle/shuttle_rotate.dm
@@ -70,10 +70,6 @@ If ever any of these procs are useful for non-shuttles, rename it to proc/rotate
new_dpdir = new_dpdir | angle2dir(rotation+dir2angle(D))
dpdir = new_dpdir
-/obj/structure/table/wood/bar/shuttleRotate(rotation, params)
- . = ..()
- boot_dir = angle2dir(rotation + dir2angle(boot_dir))
-
/obj/structure/alien/weeds/shuttleRotate(rotation, params)
params &= ~ROTATE_OFFSET
return ..()
diff --git a/code/modules/shuttle/special.dm b/code/modules/shuttle/special.dm
deleted file mode 100644
index 1ddb26efba88..000000000000
--- a/code/modules/shuttle/special.dm
+++ /dev/null
@@ -1,257 +0,0 @@
-// Special objects for shuttle templates go here if nowhere else
-
-// Bar staff, GODMODE mobs(as long as they stay in the shuttle) that just want to make sure people have drinks
-// and a good time.
-
-/mob/living/simple_animal/drone/snowflake/bardrone
- name = "Bardrone"
- desc = "A barkeeping drone, a robot built to tend bars."
- hacked = TRUE
- laws = "1. Serve drinks.\n\
- 2. Talk to patrons.\n\
- 3. Don't get messed up in their affairs."
- unique_name = FALSE // disables the (123) number suffix
- initial_language_holder = /datum/language_holder/universal
-
-/mob/living/simple_animal/drone/snowflake/bardrone/Initialize()
- . = ..()
- access_card.access |= ACCESS_CENT_BAR
- become_area_sensitive(ROUNDSTART_TRAIT)
- RegisterSignal(src, COMSIG_ENTER_AREA, PROC_REF(check_barstaff_godmode))
- check_barstaff_godmode()
-
-/mob/living/simple_animal/drone/snowflake/bardrone/Destroy()
- lose_area_sensitivity(ROUNDSTART_TRAIT)
- return ..()
-
-/mob/living/simple_animal/hostile/alien/maid/barmaid
- gold_core_spawnable = NO_SPAWN
- name = "Barmaid"
- desc = "A barmaid, a maiden found in a bar."
- pass_flags = PASSTABLE
- unique_name = FALSE
- AIStatus = AI_OFF
- stop_automated_movement = TRUE
- initial_language_holder = /datum/language_holder/universal
-
-/mob/living/simple_animal/hostile/alien/maid/barmaid/Initialize()
- . = ..()
- access_card = new /obj/item/card/id(src)
- var/datum/job/captain/C = new /datum/job/captain
- access_card.access = C.get_access()
- access_card.access |= ACCESS_CENT_BAR
- ADD_TRAIT(access_card, TRAIT_NODROP, ABSTRACT_ITEM_TRAIT)
- become_area_sensitive(ROUNDSTART_TRAIT)
- RegisterSignal(src, COMSIG_ENTER_AREA, PROC_REF(check_barstaff_godmode))
- check_barstaff_godmode()
-
-/mob/living/simple_animal/hostile/alien/maid/barmaid/Destroy()
- qdel(access_card)
- lose_area_sensitivity(ROUNDSTART_TRAIT)
- return ..()
-
-/mob/living/simple_animal/proc/check_barstaff_godmode()
- SIGNAL_HANDLER
-
- if(istype(get_area(loc), /area/shuttle/escape))
- status_flags |= GODMODE
- else
- status_flags &= ~GODMODE
-
-// Bar table, a wooden table that kicks you in a direction if you're not
-// barstaff (defined as someone who was a roundstart bartender or someone
-// with CENTCOM_BARSTAFF)
-
-/obj/structure/table/wood/bar
- resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
- flags_1 = NODECONSTRUCT_1
- max_integrity = 1000
- var/boot_dir = 1
-
-/obj/structure/table/wood/bar/Initialize()
- . = ..()
- var/static/list/loc_connections = list(
- COMSIG_ATOM_ENTERED = PROC_REF(on_entered)
- )
- AddElement(/datum/element/connect_loc, loc_connections)
-
-/obj/structure/table/wood/bar/proc/on_entered(datum/source, atom/movable/AM)
- SIGNAL_HANDLER
- if(isliving(AM) && !is_barstaff(AM))
- // No climbing on the bar please
- var/mob/living/M = AM
- var/throwtarget = get_edge_target_turf(src, boot_dir)
- M.Paralyze(40)
- M.throw_at(throwtarget, 5, 1)
- to_chat(M, "No climbing on the bar please.")
-
-/obj/structure/table/wood/bar/proc/is_barstaff(mob/living/user)
- . = FALSE
- if(ishuman(user))
- var/mob/living/carbon/human/H = user
- if(H.mind && H.mind.assigned_role == "Bartender")
- return TRUE
-
- var/obj/item/card/id/ID = user.get_idcard(FALSE)
- if(ID && (ACCESS_CENT_BAR in ID.access))
- return TRUE
-
-//Luxury Shuttle Blockers
-
-/obj/machinery/scanner_gate/luxury_shuttle
- name = "luxury shuttle ticket field"
- density = FALSE //allows shuttle airlocks to close, nothing but an approved passenger gets past CanPass
- locked = TRUE
- use_power = FALSE
- var/threshold = 500
- var/static/list/approved_passengers = list()
- var/static/list/check_times = list()
- var/list/payees = list()
-
-/obj/machinery/scanner_gate/luxury_shuttle/CanAllowThrough(atom/movable/mover, border_dir)
- . = ..()
-
- if(mover in approved_passengers)
- set_scanline("scanning", 10)
- return TRUE
-
- if(!isliving(mover)) //No stowaways
- return FALSE
-
-/obj/machinery/scanner_gate/luxury_shuttle/auto_scan(atom/movable/AM)
- return
-
-/obj/machinery/scanner_gate/luxury_shuttle/attackby(obj/item/W, mob/user, params)
- return
-
-/obj/machinery/scanner_gate/luxury_shuttle/emag_act(mob/user)
- return
-
-#define LUXURY_MESSAGE_COOLDOWN 100
-/obj/machinery/scanner_gate/luxury_shuttle/Bumped(atom/movable/AM)
- if(!isliving(AM))
- alarm_beep()
- return ..()
-
- var/datum/bank_account/account
- if(istype(AM.pulling, /obj/item/card/id))
- var/obj/item/card/id/I = AM.pulling
- if(I.registered_account)
- account = I.registered_account
- else if(!check_times[AM] || check_times[AM] < world.time) //Let's not spam the message
- to_chat(AM, "This ID card doesn't have an owner associated with it!")
- check_times[AM] = world.time + LUXURY_MESSAGE_COOLDOWN
- else if(ishuman(AM))
- var/mob/living/carbon/human/H = AM
- if(H.get_bank_account())
- account = H.get_bank_account()
-
- if(account)
- if(account.account_balance < threshold - payees[AM])
- account.adjust_money(-account.account_balance, "luxury_shuttle")
- payees[AM] += account.account_balance
- else
- var/money_owed = threshold - payees[AM]
- account.adjust_money(-money_owed)
- payees[AM] += money_owed
-
- var/list/counted_money = list()
-
- for(var/obj/item/coin/C in AM.GetAllContents())
- if(payees[AM] >= threshold)
- break
- payees[AM] += C.value
- counted_money += C
- for(var/obj/item/spacecash/bundle/S in AM.GetAllContents())
- if(payees[AM] >= threshold)
- break
- payees[AM] += S.value
- counted_money += S
- for(var/obj/item/holochip/H in AM.GetAllContents())
- if(payees[AM] >= threshold)
- break
- payees[AM] += H.credits
- counted_money += H
-
- if(payees[AM] < threshold && istype(AM.pulling, /obj/item/coin))
- var/obj/item/coin/C = AM.pulling
- payees[AM] += C.value
- counted_money += C
-
- else if(payees[AM] < threshold && istype(AM.pulling, /obj/item/spacecash/bundle))
- var/obj/item/spacecash/bundle/S = AM.pulling
- payees[AM] += S.value
- counted_money += S
-
- else if(payees[AM] < threshold && istype(AM.pulling, /obj/item/holochip))
- var/obj/item/holochip/H = AM.pulling
- payees[AM] += H.credits
- counted_money += H
-
- if(payees[AM] < threshold)
- var/armless
- if(!ishuman(AM) && !istype(AM, /mob/living/simple_animal/slime))
- armless = TRUE
- else
- var/mob/living/carbon/human/H = AM
- if(!H.get_bodypart(BODY_ZONE_L_ARM) && !H.get_bodypart(BODY_ZONE_R_ARM))
- armless = TRUE
-
- if(armless)
- if(!AM.pulling || !iscash(AM.pulling) && !istype(AM.pulling, /obj/item/card/id))
- if(!check_times[AM] || check_times[AM] < world.time) //Let's not spam the message
- to_chat(AM, "Try pulling a valid ID, space cash, holochip or coin into \the [src]!")
- check_times[AM] = world.time + LUXURY_MESSAGE_COOLDOWN
-
- if(payees[AM] >= threshold)
- for(var/obj/I in counted_money)
- qdel(I)
- payees[AM] -= threshold
-
- var/change = FALSE
- if(payees[AM] > 0)
- change = TRUE
- var/obj/item/holochip/HC = new /obj/item/holochip(AM.loc)
- HC.credits = payees[AM]
- HC.name = "[HC.credits] credit holochip"
- if(istype(AM, /mob/living/carbon/human))
- var/mob/living/carbon/human/H = AM
- if(!H.put_in_hands(HC))
- AM.pulling = HC
- else
- AM.pulling = HC
- payees[AM] -= payees[AM]
-
- say("Welcome to first class, [AM]![change ? " Here is your change." : ""]")
- approved_passengers += AM
-
- check_times -= AM
- return
- else if (payees[AM] > 0)
- for(var/obj/I in counted_money)
- qdel(I)
- if(!check_times[AM] || check_times[AM] < world.time) //Let's not spam the message
- to_chat(AM, "[payees[AM]] cr received. You need [threshold-payees[AM]] cr more.")
- check_times[AM] = world.time + LUXURY_MESSAGE_COOLDOWN
- alarm_beep()
- return ..()
- else
- alarm_beep()
- return ..()
-
-/mob/living/simple_animal/hostile/bear/fightpit
- name = "fight pit bear"
- desc = "This bear's trained through ancient Solarian secrets to fear the walls of its glass prison."
- environment_smash = ENVIRONMENT_SMASH_NONE
-
-/obj/effect/decal/hammerandsickle
- name = "hammer and sickle"
- desc = "Communism powerful force."
- icon = 'icons/effects/96x96.dmi'
- icon_state = "communist"
- layer = ABOVE_OPEN_TURF_LAYER
- pixel_x = -32
- pixel_y = -32
-
-/obj/effect/decal/hammerandsickle/shuttleRotate(rotation)
- setDir(angle2dir(rotation+dir2angle(dir))) // No parentcall, rest of the rotate code breaks the pixel offset.
diff --git a/code/modules/shuttle/white_ship.dm b/code/modules/shuttle/white_ship.dm
deleted file mode 100644
index 71afa1c9bc72..000000000000
--- a/code/modules/shuttle/white_ship.dm
+++ /dev/null
@@ -1,5 +0,0 @@
-/obj/effect/spawner/lootdrop/whiteship_cere_ripley
- name = "25% mech 75% wreckage ripley spawner"
- loot = list(/obj/mecha/working/ripley/mining = 1,
- /obj/structure/mecha_wreckage/ripley = 5)
- lootdoubles = FALSE
diff --git a/code/modules/spells/spell_types/rightandwrong.dm b/code/modules/spells/spell_types/rightandwrong.dm
index ed6d9a9b957d..cfca24920f91 100644
--- a/code/modules/spells/spell_types/rightandwrong.dm
+++ b/code/modules/spells/spell_types/rightandwrong.dm
@@ -26,7 +26,7 @@ GLOBAL_LIST_INIT(summoned_guns, list(
/obj/item/gun/energy/lasercannon,
/obj/item/gun/energy/kinetic_accelerator/crossbow/large,
/obj/item/gun/energy/e_gun/nuclear,
- /obj/item/gun/ballistic/automatic/smg/proto,
+ /obj/item/gun/ballistic/automatic/smg/skm_carbine/inteq/proto,
/obj/item/gun/ballistic/automatic/smg/c20r,
/obj/item/gun/ballistic/automatic/hmg/l6_saw,
/obj/item/gun/ballistic/automatic/smg/m90,
diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm
index 4b5dd9a49717..b8871b21524e 100644
--- a/code/modules/surgery/organs/organ_internal.dm
+++ b/code/modules/surgery/organs/organ_internal.dm
@@ -38,7 +38,7 @@
/obj/item/organ/Initialize()
. = ..()
if(organ_flags & ORGAN_EDIBLE)
- AddComponent(/datum/component/edible, food_reagents, null, RAW | MEAT | GORE, null, 10, null, null, null, CALLBACK(src, PROC_REF(OnEatFrom)))
+ AddComponent(/datum/component/edible, food_reagents, null, RAW | MEAT | GORE, null, 10, null, null, null, COLOR_PINK, CALLBACK(src, PROC_REF(OnEatFrom)))
///When you take a bite you cant jam it in for surgery anymore.
/obj/item/organ/proc/Insert(mob/living/carbon/M, special = 0, drop_if_replaced = TRUE)
diff --git a/code/modules/vehicles/motorized_wheelchair.dm b/code/modules/vehicles/motorized_wheelchair.dm
index c9e990372374..fa3d569b0535 100644
--- a/code/modules/vehicles/motorized_wheelchair.dm
+++ b/code/modules/vehicles/motorized_wheelchair.dm
@@ -5,7 +5,7 @@
max_integrity = 150
var/speed = 2
var/power_efficiency = 1
- var/power_usage = 100
+ var/power_usage = 20
var/panel_open = FALSE
var/list/required_parts = list(/obj/item/stock_parts/manipulator,
/obj/item/stock_parts/manipulator,
@@ -21,7 +21,7 @@
for(var/obj/item/stock_parts/manipulator/M in contents)
speed += M.rating
for(var/obj/item/stock_parts/capacitor/C in contents)
- power_efficiency = C.rating
+ power_efficiency = (C.rating + 1)
var/datum/component/riding/D = GetComponent(/datum/component/riding)
D.vehicle_move_delay = round(CONFIG_GET(number/movedelay/run_delay) * delay_multiplier) / speed
@@ -52,7 +52,7 @@
canmove = FALSE
addtimer(VARSET_CALLBACK(src, canmove, TRUE), 20)
return FALSE
- power_cell.use(power_usage / max(power_efficiency, 1))
+ power_cell.use(power_usage / max(power_efficiency, 2))
return ..()
/obj/vehicle/ridden/wheelchair/motorized/set_move_delay(mob/living/user)
diff --git a/code/modules/vehicles/secway.dm b/code/modules/vehicles/secway.dm
index 2914d6dda279..4d327c7a8234 100644
--- a/code/modules/vehicles/secway.dm
+++ b/code/modules/vehicles/secway.dm
@@ -47,7 +47,7 @@
if(istype(W, /obj/item/reagent_containers/food/snacks/grown/banana))
// ignore the occupants because they're presumably too distracted to notice the guy stuffing fruit into their vehicle's exhaust. do segways have exhausts? they do now!
user.visible_message("[user] begins stuffing [W] into [src]'s tailpipe.", "You begin stuffing [W] into [src]'s tailpipe...", ignored_mobs = occupants)
- if(do_after(user, 30, TRUE, src))
+ if(do_after(user, 30, src))
if(user.transferItemToLoc(W, src))
user.visible_message("[user] stuffs [W] into [src]'s tailpipe.", "You stuff [W] into [src]'s tailpipe.", ignored_mobs = occupants)
eddie_murphy = W
diff --git a/code/modules/vending/_vending.dm b/code/modules/vending/_vending.dm
index 4c97b3f7eaa2..6d73fad566f6 100644
--- a/code/modules/vending/_vending.dm
+++ b/code/modules/vending/_vending.dm
@@ -714,15 +714,13 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C
/obj/machinery/vending/ui_data(mob/user)
. = list()
var/mob/living/carbon/human/H
- var/obj/item/card/id/card
+ var/obj/item/card/bank/card
if(ishuman(user))
H = user
- card = H.get_idcard(TRUE)
+ card = H.get_bankcard()
if(card)
.["user"] = list()
.["user"]["points"] = card.mining_points
- .["user"]["name"] = card.registered_name
- .["user"]["job"] = card.assignment || "No Job"
if(card.registered_account)
.["user"]["name"] = card.registered_account.account_holder
.["user"]["cash"] = card.registered_account.account_balance
@@ -769,7 +767,7 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C
return
if(!all_items_free && ishuman(usr))
var/mob/living/carbon/human/H = usr
- var/obj/item/card/id/C = H.get_idcard(TRUE)
+ var/obj/item/card/bank/C = H.get_bankcard()
if(!C)
say("No card found.")
@@ -946,10 +944,10 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C
/obj/machinery/vending/custom/compartmentLoadAccessCheck(mob/user)
. = FALSE
var/mob/living/carbon/human/H
- var/obj/item/card/id/C
+ var/obj/item/card/bank/C
if(ishuman(user))
H = user
- C = H.get_idcard(FALSE)
+ C = H.get_bankcard(FALSE)
if(C?.registered_account && C.registered_account == private_a)
return TRUE
@@ -1003,7 +1001,7 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C
vend_ready = FALSE
if(ishuman(usr))
var/mob/living/carbon/human/H = usr
- var/obj/item/card/id/C = H.get_idcard(TRUE)
+ var/obj/item/card/bank/C = H.get_bankcard()
if(!C)
say("No card found.")
@@ -1055,10 +1053,10 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C
/obj/machinery/vending/custom/attackby(obj/item/I, mob/user, params)
if(!private_a)
var/mob/living/carbon/human/H
- var/obj/item/card/id/C
+ var/obj/item/card/bank/C
if(ishuman(user))
H = user
- C = H.get_idcard(TRUE)
+ C = H.get_bankcard(TRUE)
if(C?.registered_account)
private_a = C.registered_account
say("\The [src] has been linked to [C].")
diff --git a/code/modules/vending/boozeomat.dm b/code/modules/vending/boozeomat.dm
index dd240887ae46..45dc055e1b21 100644
--- a/code/modules/vending/boozeomat.dm
+++ b/code/modules/vending/boozeomat.dm
@@ -19,17 +19,17 @@
/obj/item/reagent_containers/food/drinks/bottle/pineapplejuice = 4,
/obj/item/reagent_containers/food/drinks/bottle/cream = 4,
/obj/item/reagent_containers/food/drinks/soda_cans/cola = 8,
- /obj/item/reagent_containers/food/drinks/soda_cans/space_mountain_wind = 4,
- /obj/item/reagent_containers/food/drinks/soda_cans/dr_gibb = 4,
- /obj/item/reagent_containers/food/drinks/soda_cans/starkist = 4,
+ /obj/item/reagent_containers/food/drinks/soda_cans/comet_trail = 4,
+ /obj/item/reagent_containers/food/drinks/soda_cans/tadrixx = 4,
+ /obj/item/reagent_containers/food/drinks/soda_cans/lunapunch = 4,
/obj/item/reagent_containers/food/drinks/soda_cans/space_up = 4,
- /obj/item/reagent_containers/food/drinks/soda_cans/pwr_game = 4,
- /obj/item/reagent_containers/food/drinks/soda_cans/lemon_lime = 4,
- /obj/item/reagent_containers/food/drinks/soda_cans/shamblers = 4,
+ /obj/item/reagent_containers/food/drinks/soda_cans/pacfuel = 4,
+ /obj/item/reagent_containers/food/drinks/soda_cans/orange_soda = 4,
+ /obj/item/reagent_containers/food/drinks/soda_cans/shoal_punch = 4,
/obj/item/reagent_containers/food/drinks/soda_cans/tonic = 8,
/obj/item/reagent_containers/food/drinks/soda_cans/sodawater = 8,
/obj/item/reagent_containers/food/drinks/soda_cans/sol_dry = 4,
- /obj/item/reagent_containers/food/drinks/soda_cans/thirteenloko = 4,
+ /obj/item/reagent_containers/food/drinks/soda_cans/vimukti = 4,
/obj/item/reagent_containers/food/drinks/bottle/grenadine = 4,
/obj/item/reagent_containers/food/drinks/bottle/menthol = 4,
/obj/item/reagent_containers/food/drinks/mug/tea = 8,
@@ -70,8 +70,8 @@
/obj/item/reagent_containers/food/drinks/bottle/champagne = 5,
/obj/item/reagent_containers/food/drinks/bottle/trappist = 5)
- product_slogans = "I hope nobody asks me for a bloody cup o' tea...;Alcohol is humanity's friend. Would you abandon a friend?;Quite delighted to serve you!;Is nobody thirsty 'round this sector?"
- product_ads = "Drink up!;Booze is good for you!;Alcohol is humanity's best friend.;Quite delighted to serve you!;Care for a nice, cold beer?;Nothing cures you like booze!;Have a sip!;Have a drink!;Have a beer!;Beer is good for you!;Only the finest alcohol!;Best quality booze since 2053!;Award-winning wine!;Maximum alcohol!;Man loves beer.;A toast for progress!"
+ product_slogans = "I hope nobody asks me for a cup of tea...;Alcohol is everyone's friend. Would you abandon a friend?;Quite delighted to serve you!;Is nobody thirsty 'round this sector?"
+ product_ads = "Drink up!;Booze is good for you!;Alcohol is everyone's best friend.;Quite delighted to serve you!;Care for a nice, cold beer?;Nothing cures you like booze!;Have a sip!;Have a drink!;Have a beer!;Beer is good for you!;Only the finest alcohol!;Best quality booze since 53 FSC!;Award-winning wine!;Maximum alcohol!;Everyone loves beer.;A toast for progress!"
req_access = list(ACCESS_BAR)
refill_canister = /obj/item/vending_refill/boozeomat
default_price = 120
diff --git a/code/modules/vending/cigarette.dm b/code/modules/vending/cigarette.dm
index 3cff7d3c361d..1c377c309464 100644
--- a/code/modules/vending/cigarette.dm
+++ b/code/modules/vending/cigarette.dm
@@ -1,8 +1,8 @@
/obj/machinery/vending/cigarette
name = "\improper ShadyCigs Deluxe"
desc = "If you want to get cancer, might as well do it in style."
- product_slogans = "Space cigs taste good like a cigarette should.;I'd rather toolbox than switch.;Smoke!;Don't believe the reports - smoke today!"
- product_ads = "Probably not bad for you!;Don't believe the scientists!;It's good for you!;Don't quit, buy more!;Smoke!;Nicotine heaven.;Best cigarettes since 2150.;Award-winning cigs."
+ product_slogans = "Space cigs taste good like a cigarette should.;I'd rather die than switch.;Smoke!;Don't believe the reports - smoke today!"
+ product_ads = "Probably not bad for you!;Don't believe the scientists!;It's good for you!;Don't quit, buy more!;Smoke!;Nicotine heaven.;Best cigarettes since 150 FSC.;Award-winning cigs."
icon_state = "cigs"
products = list(
/obj/item/storage/fancy/cigarettes = 5,
diff --git a/code/modules/vending/cola.dm b/code/modules/vending/cola.dm
index 4a9f4a456eee..84f82d81a2e2 100644
--- a/code/modules/vending/cola.dm
+++ b/code/modules/vending/cola.dm
@@ -1,35 +1,34 @@
/obj/machinery/vending/cola
- name = "\improper Robust Softdrinks"
- desc = "A softdrink vendor provided by Robust Industries, LLC."
+ name = "\improper RobustMore Softdrinks"
+ desc = "A softdrink vendor provided by RobustMore DrinkFoods Industries, LLC."
icon_state = "Cola_Machine"
- product_slogans = "Robust Softdrinks: More robust than a toolbox to the head!"
- product_ads = "Refreshing!;Hope you're thirsty!;Over 1 million drinks sold!;Thirsty? Why not cola?;Please, have a drink!;Drink up!;The best drinks in space."
+ product_slogans = "RobustMore Softdrinks: More robust than a toolbox to the head!"
+ product_ads = "Refreshing!;Hope you're thirsty!;Over 10 trillion drinks sold!;Thirsty? Why not cola?;Please, have a drink!;Drink up!;The best drinks this side of the galaxy."
products = list(
/obj/item/reagent_containers/food/drinks/soda_cans/cola = 10,
- /obj/item/reagent_containers/food/drinks/soda_cans/space_mountain_wind = 10,
- /obj/item/reagent_containers/food/drinks/soda_cans/dr_gibb = 10,
- /obj/item/reagent_containers/food/drinks/soda_cans/starkist = 10,
+ /obj/item/reagent_containers/food/drinks/soda_cans/comet_trail = 10,
+ /obj/item/reagent_containers/food/drinks/soda_cans/tadrixx = 10,
+ /obj/item/reagent_containers/food/drinks/soda_cans/lunapunch = 10,
/obj/item/reagent_containers/food/drinks/soda_cans/space_up = 10,
- /obj/item/reagent_containers/food/drinks/soda_cans/pwr_game = 10,
- /obj/item/reagent_containers/food/drinks/soda_cans/lemon_lime = 10,
+ /obj/item/reagent_containers/food/drinks/soda_cans/pacfuel = 10,
+ /obj/item/reagent_containers/food/drinks/soda_cans/orange_soda = 10,
/obj/item/reagent_containers/food/drinks/soda_cans/sol_dry = 10,
/obj/item/reagent_containers/food/drinks/waterbottle = 10,
- /obj/item/reagent_containers/food/drinks/soda_cans/efuel = 5,
- /obj/item/reagent_containers/food/drinks/soda_cans/thirteenloko = 6,
- /obj/item/reagent_containers/food/drinks/soda_cans/shamblers = 6)
+ /obj/item/reagent_containers/food/drinks/soda_cans/xeno_energy = 5,
+ /obj/item/reagent_containers/food/drinks/soda_cans/vimukti = 6,
+ /obj/item/reagent_containers/food/drinks/soda_cans/shoal_punch = 6)
premium = list(
- /obj/item/reagent_containers/food/drinks/drinkingglass/filled/nuka_cola = 1,
/obj/item/reagent_containers/food/drinks/soda_cans/air = 1,
- /obj/item/reagent_containers/food/drinks/soda_cans/monkey_energy = 1,
- /obj/item/reagent_containers/food/drinks/soda_cans/grey_bull = 1)
+ /obj/item/reagent_containers/food/drinks/soda_cans/xeno_energy = 1,
+ /obj/item/reagent_containers/food/drinks/soda_cans/crosstalk = 1)
refill_canister = /obj/item/vending_refill/cola
default_price = 45
extra_price = 200
/obj/item/vending_refill/cola
- machine_name = "Robust Softdrinks"
+ machine_name = "RobustMore Softdrinks"
icon_state = "refill_cola"
/obj/machinery/vending/cola/random
@@ -54,9 +53,9 @@
/obj/machinery/vending/cola/red
icon_state = "red_cola"
- name = "\improper Space Cola Vendor"
- desc = "It vends cola, in space."
- product_slogans = "Cola in space!"
+ name = "\improper Master Cola Vendor"
+ desc = "This vending machine offers Master Cola. Master Cola - have a drink from the past!"
+ product_slogans = "Master Cola - have a drink from the past!"
light_mask = "red_cola-light-mask"
light_color = COLOR_DARK_RED
@@ -70,9 +69,9 @@
/obj/machinery/vending/cola/starkist
icon_state = "starkist"
- name = "\improper Star-kist Vendor"
- desc = "The taste of a star in liquid form."
- product_slogans = "Drink the stars! Star-kist!"
+ name = "\improper Lunapunch Vendor"
+ desc = "What keeps the colonies running - Lunapunch."
+ product_slogans = "The Colonies run on Lunapunch!"
light_mask = "starkist-light-mask"
light_color = COLOR_LIGHT_ORANGE
@@ -83,27 +82,27 @@
/obj/machinery/vending/cola/pwr_game
icon_state = "pwr_game"
- name = "\improper Pwr Game Vendor"
- desc = "You want it, we got it. Brought to you in partnership with Vlad's Salads."
- product_slogans = "The POWER that gamers crave! PWR GAME!"
+ name = "\improper PAC-Fuel Vendor"
+ desc = "PAC-Fuel: stay flying straight. Enter the code on every can for a chance to win gamer merch or industrial equipment!"
+ product_slogans = "Keep flying steady with PAC-Fuel!"
light_mask = "pwr_game-light-mask"
light_color = COLOR_STRONG_VIOLET
/obj/machinery/vending/cola/shamblers
- name = "\improper Shambler's Vendor"
- desc = "~Shake me up some of that Shambler's Juice!~"
+ name = "\improper Shoal Punch Vendor"
+ desc = "Every fruit you could want, at your beak! Shoal Punch!"
icon_state = "shamblers_juice"
products = list(
/obj/item/reagent_containers/food/drinks/soda_cans/cola = 10,
- /obj/item/reagent_containers/food/drinks/soda_cans/space_mountain_wind = 10,
- /obj/item/reagent_containers/food/drinks/soda_cans/dr_gibb = 10,
- /obj/item/reagent_containers/food/drinks/soda_cans/starkist = 10,
+ /obj/item/reagent_containers/food/drinks/soda_cans/comet_trail = 10,
+ /obj/item/reagent_containers/food/drinks/soda_cans/tadrixx = 10,
+ /obj/item/reagent_containers/food/drinks/soda_cans/lunapunch = 10,
/obj/item/reagent_containers/food/drinks/soda_cans/space_up = 10,
- /obj/item/reagent_containers/food/drinks/soda_cans/pwr_game = 10,
- /obj/item/reagent_containers/food/drinks/soda_cans/lemon_lime = 10,
+ /obj/item/reagent_containers/food/drinks/soda_cans/pacfuel = 10,
+ /obj/item/reagent_containers/food/drinks/soda_cans/orange_soda = 10,
/obj/item/reagent_containers/food/drinks/soda_cans/sol_dry = 10,
- /obj/item/reagent_containers/food/drinks/soda_cans/shamblers = 10)
- product_slogans = "~Shake me up some of that Shambler's Juice!~"
- product_ads = "Refreshing!;Jyrbv dv lg jfdv fw kyrk Jyrdscvi'j Alztv!;Over 1 trillion souls drank!;Thirsty? Nyp efk uizeb kyv uribevjj?;Kyv Jyrdscvi uizebj kyv ezxyk!;Drink up!;Krjkp."
+ /obj/item/reagent_containers/food/drinks/soda_cans/shoal_punch = 10)
+ product_slogans = "very fruit you could want, at your beak! Shoal Punch!"
+ product_ads = "Every fruit you could want, at your beak!;Don't go flying dry!;Over two trillion served!;Thirsty? Get punched!;Skrikira trikxti skrmikr rakti!;Don't go dry, get Shoal Punch."
light_mask = "shamblers-light-mask"
light_color = COLOR_MOSTLY_PURE_PINK
diff --git a/code/modules/vending/drinnerware.dm b/code/modules/vending/drinnerware.dm
index 5dbd8ea733db..3e51271093ad 100644
--- a/code/modules/vending/drinnerware.dm
+++ b/code/modules/vending/drinnerware.dm
@@ -1,7 +1,7 @@
/obj/machinery/vending/dinnerware
name = "\improper Plasteel Chef's Dinnerware Vendor"
desc = "A kitchen and restaurant equipment vendor."
- product_ads = "Mm, food stuffs!;Food and food accessories.;Get your plates!;You like forks?;I like forks.;Woo, utensils.;You don't really need these..."
+ product_ads = "Mm, food stuffs!;Food and food accessories.;Get your plates!;You like forks?;I like forks.;Woo, utensils."
icon_state = "dinnerware"
products = list(
/obj/item/storage/bag/tray = 8,
diff --git a/code/modules/vending/games.dm b/code/modules/vending/games.dm
index d27a1f6ffe6e..c803fa347e9f 100644
--- a/code/modules/vending/games.dm
+++ b/code/modules/vending/games.dm
@@ -1,7 +1,7 @@
/obj/machinery/vending/games
name = "\improper Good Clean Fun"
desc = "Vends things that the Captain and Head of Personnel are probably not going to appreciate you fiddling with instead of your job..."
- product_ads = "Escape to a fantasy world!;Fuel your gambling addiction!;Ruin your friendships!;Roll for initiative!;Elves and dwarves!;Paranoid computers!;Totally not satanic!;Fun times forever!"
+ product_ads = "Escape to a fantasy world!;Fuel your gambling addiction!;Ruin your friendships!;Roll for initiative!;Elves and dwarves!;Paranoid computers!;Fun times forever!"
icon_state = "games"
products = list(
/obj/item/toy/cards/deck = 5,
diff --git a/code/modules/vending/liberation.dm b/code/modules/vending/liberation.dm
index 03d532c804e7..cb16d19e5f19 100644
--- a/code/modules/vending/liberation.dm
+++ b/code/modules/vending/liberation.dm
@@ -2,7 +2,7 @@
name = "\improper Liberation Station"
desc = "An overwhelming amount of ancient patriotism washes over you just by looking at the machine."
icon_state = "liberationstation"
- product_slogans = "Liberation Station: Your one-stop shop for all things second amendment!;Be a patriot today, pick up a gun!;Quality weapons for cheap prices!;Better dead than red!"
+ product_slogans = "Liberation Station: Your one-stop shop for all things second amendment!;Be a patriot today, pick up a gun!;Quality weapons for cheap prices!"
product_ads = "Float like an astronaut, sting like a bullet!;Express your second amendment today!;Guns don't kill people, but you can!;Who needs responsibilities when you have guns?"
vend_reply = "Remember the name: Liberation Station!"
products = list(
@@ -13,7 +13,7 @@
/obj/item/gun/ballistic/automatic/pistol/deagle/gold = 2,
/obj/item/gun/ballistic/automatic/pistol/deagle/camo = 2,
/obj/item/gun/ballistic/automatic/pistol/candor = 2,
- /obj/item/gun/ballistic/automatic/smg/proto = 2,
+ /obj/item/gun/ballistic/automatic/smg/skm_carbine/inteq/proto = 2,
/obj/item/gun/ballistic/shotgun/automatic/combat = 2,
/obj/item/gun/ballistic/automatic/gyropistol = 1,
/obj/item/gun/ballistic/shotgun = 2)
diff --git a/code/modules/vending/liberation_toy.dm b/code/modules/vending/liberation_toy.dm
index 989bd721a79c..911a190703f4 100644
--- a/code/modules/vending/liberation_toy.dm
+++ b/code/modules/vending/liberation_toy.dm
@@ -2,8 +2,8 @@
name = "\improper Syndicate Donksoft Toy Vendor"
desc = "An ages 8 and up approved vendor that dispenses toys. If you were to find the right wires, you can unlock the adult mode setting!"
icon_state = "syndi"
- product_slogans = "Get your cool toys today!;Trigger a valid hunter today!;Quality toy weapons for cheap prices!;Give them to HoPs for all access!;Give them to HoS to get permabrigged!"
- product_ads = "Feel robust with your toys!;Express your inner child today!;Toy weapons don't kill people, but valid hunters do!;Who needs responsibilities when you have toy weapons?;Make your next murder FUN!"
+ product_slogans = "Get your cool toys today!;Quality toy weapons for cheap prices!"
+ product_ads = "Feel tough with your toys!;Express your inner child today!;Toy weapons don't kill people, but boredom does!;Who needs responsibilities when you have toy weapons?;Make your next foam fight FUN!"
vend_reply = "Come back for more!"
circuit = /obj/item/circuitboard/machine/vending/syndicatedonksofttoyvendor
products = list(/obj/item/gun/ballistic/automatic/toy = 10,
diff --git a/code/modules/vending/snack.dm b/code/modules/vending/snack.dm
index d0130d7358fc..45d76a4754fa 100644
--- a/code/modules/vending/snack.dm
+++ b/code/modules/vending/snack.dm
@@ -1,8 +1,8 @@
/obj/machinery/vending/snack
name = "\improper Getmore Chocolate Corp"
- desc = "A snack machine courtesy of the Getmore Chocolate Corporation, based out of Mars."
+ desc = "A snack machine courtesy of the RobustMore DrinkFoods LLC."
product_slogans = "Try our new nougat bar!;Twice the calories for half the price!"
- product_ads = "The healthiest!;Award-winning chocolate bars!;Mmm! So good!;Oh my god it's so juicy!;Have a snack.;Snacks are good for you!;Have some more Getmore!;Best quality snacks straight from mars.;We love chocolate!;Try our new jerky!"
+ product_ads = "The healthiest!;Award-winning chocolate bars!;Mmm! So good!;Have a snack.;Snacks are good for you!;Have something better! Get RobustMore!;Best quality snacks!;We love chocolate!;Try our new jerky!"
icon_state = "snack"
light_mask = "snack-light-mask"
products = list(
@@ -24,7 +24,7 @@
input_display_header = "Chef's Food Selection"
/obj/item/vending_refill/snack
- machine_name = "Getmore Chocolate Corp"
+ machine_name = "RobustMore DrinkFoods LLC"
/obj/machinery/vending/snack/random
name = "\improper Random Snackies"
diff --git a/code/modules/vending/toys.dm b/code/modules/vending/toys.dm
index 8fefa1015536..a5092cf7373f 100644
--- a/code/modules/vending/toys.dm
+++ b/code/modules/vending/toys.dm
@@ -2,8 +2,8 @@
name = "\improper Donksoft Toy Vendor"
desc = "Ages 8 and up approved vendor that dispenses toys."
icon_state = "nt-donk"
- product_slogans = "Get your cool toys today!;Trigger a valid hunter today!;Quality toy weapons for cheap prices!;Give them to HoPs for all access!;Give them to HoS to get permabrigged!"
- product_ads = "Feel robust with your toys!;Express your inner child today!;Toy weapons don't kill people, but valid hunters do!;Who needs responsibilities when you have toy weapons?;Make your next murder FUN!"
+ product_slogans = "Get your cool toys today!;Quality toy weapons for cheap prices!"
+ product_ads = "Feel tough with your toys!;Express your inner child today!;Toy weapons don't kill people, but bordeom does!;Who needs responsibilities when you have toy weapons?;Make your next foam fight FUN!"
vend_reply = "Come back for more!"
light_mask = "donksoft-light-mask"
circuit = /obj/item/circuitboard/machine/vending/donksofttoyvendor
diff --git a/html/changelogs/AutoChangeLog-pr-2836.yml b/html/changelogs/AutoChangeLog-pr-2836.yml
deleted file mode 100644
index 48c7e17ac4d3..000000000000
--- a/html/changelogs/AutoChangeLog-pr-2836.yml
+++ /dev/null
@@ -1,13 +0,0 @@
-author: Sadhorizon
-changes:
- - {rscadd: Added the Sunskipper-class Culinary Vessel.}
- - {rscadd: Every drink and booze dispenser drink is in the booze-o-mat now.}
- - {rscadd: 'Added bottles for triple sec, lemon juice, creme de cacao and creme
- de menthe.'}
- - {rscdel: Removed the Boyardee-class Entertainment Vessel.}
- - {rscdel: Independent chefs no longer get kitchen cqc.}
- - {tweak: The "syndicate waiter's outfit" renamed to just "waiter's outfit".}
- - {tweak: Indpenedent bartenders now start with a waistcoat.}
- - {tweak: "Edited waiter's outfit. Also, the role now gets kitchen access."}
- - {tweak: Independent cooks now start with laceup shoes.}
-delete-after: true
diff --git a/html/changelogs/AutoChangeLog-pr-2936.yml b/html/changelogs/AutoChangeLog-pr-2936.yml
deleted file mode 100644
index 6d9ca1ddda17..000000000000
--- a/html/changelogs/AutoChangeLog-pr-2936.yml
+++ /dev/null
@@ -1,5 +0,0 @@
-author: FalloutFalcon
-changes:
- - {rscdel: Removed alot of chaplain stuff we will never use}
- - {rscdel: The chaplain is now just as magic as the average person}
-delete-after: true
diff --git a/html/changelogs/AutoChangeLog-pr-2943.yml b/html/changelogs/AutoChangeLog-pr-2943.yml
deleted file mode 100644
index 72956c599ab8..000000000000
--- a/html/changelogs/AutoChangeLog-pr-2943.yml
+++ /dev/null
@@ -1,11 +0,0 @@
-author: Gristlebee
-changes:
- - {rscadd: Wrecked Factory ruin}
- - {rscadd: Indestructible titanium walls}
- - {rscadd: 'Lavaland atmos subtypes for plating, rusted plating, concrete, white
- and dark turfs'}
- - {balance: Syndicate Space Simple Mobs have their max temp increased}
- - {tweak: Wall_lockers updatepaths on the Aegis}
- - {code_imp: 'Adds ruin to map_catalogue,txt, lavaland.dm and adds it to lavaland.dm
- areas'}
-delete-after: true
diff --git a/html/changelogs/AutoChangeLog-pr-2958.yml b/html/changelogs/AutoChangeLog-pr-2958.yml
deleted file mode 100644
index 4818af453620..000000000000
--- a/html/changelogs/AutoChangeLog-pr-2958.yml
+++ /dev/null
@@ -1,9 +0,0 @@
-author: Gristlebee
-changes:
- - {rscadd: Techshell box}
- - {rscadd: Techshells to the outpost market for 175 credits}
- - {tweak: Scatter ion description}
- - {balance: 'Techshell recipes no longer require higher tier stock parts, adjusts
- scatter laser, scatter ion, dragonsbreath and pulse slug recipes'}
- - {balance: 'Buffs scatter lasers, scatter ion and dragonsbreath'}
-delete-after: true
diff --git a/html/changelogs/AutoChangeLog-pr-3092.yml b/html/changelogs/AutoChangeLog-pr-3092.yml
deleted file mode 100644
index 3f7d28d4a56c..000000000000
--- a/html/changelogs/AutoChangeLog-pr-3092.yml
+++ /dev/null
@@ -1,5 +0,0 @@
-author: meemofcourse
-changes:
- - {rscadd: 'SUNS 3x6 logo decal, SUNS tiles, SUNS emblem floor decal, Desk and Wall
- flag, folders, PDA, cards, locker, bedsheets, and headsets.'}
-delete-after: true
diff --git a/html/changelogs/AutoChangeLog-pr-3098.yml b/html/changelogs/AutoChangeLog-pr-3098.yml
deleted file mode 100644
index f741cb5f49c6..000000000000
--- a/html/changelogs/AutoChangeLog-pr-3098.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-author: PositiveEntropy
-changes:
- - {rscadd: The Hardliners have now made a proper appearance in the Frontier!}
-delete-after: true
diff --git a/html/changelogs/archive/2024-06.yml b/html/changelogs/archive/2024-06.yml
index 56f937d3951f..d39c3b4431ae 100644
--- a/html/changelogs/archive/2024-06.yml
+++ b/html/changelogs/archive/2024-06.yml
@@ -199,3 +199,168 @@
- rscadd: Pickaxe was added to the autolathe.
meemofcourse:
- rscadd: PGF jobs now grant you the Kalixcian Common language
+2024-06-13:
+ FalloutFalcon:
+ - rscdel: Removed alot of chaplain stuff we will never use
+ - rscdel: The chaplain is now just as magic as the average person
+ Gristlebee:
+ - rscadd: Wrecked Factory ruin
+ - rscadd: Indestructible titanium walls
+ - rscadd: Lavaland atmos subtypes for plating, rusted plating, concrete, white and
+ dark turfs
+ - balance: Syndicate Space Simple Mobs have their max temp increased
+ - tweak: Wall_lockers updatepaths on the Aegis
+ - code_imp: Adds ruin to map_catalogue,txt, lavaland.dm and adds it to lavaland.dm
+ areas
+ - rscadd: Techshell box
+ - rscadd: Techshells to the outpost market for 175 credits
+ - tweak: Scatter ion description
+ - balance: Techshell recipes no longer require higher tier stock parts, adjusts
+ scatter laser, scatter ion, dragonsbreath and pulse slug recipes
+ - balance: Buffs scatter lasers, scatter ion and dragonsbreath
+ PositiveEntropy:
+ - rscadd: The Hardliners have now made a proper appearance in the Frontier!
+ Sadhorizon:
+ - rscadd: Added the Sunskipper-class Culinary Vessel.
+ - rscadd: Every drink and booze dispenser drink is in the booze-o-mat now.
+ - rscadd: Added bottles for triple sec, lemon juice, creme de cacao and creme de
+ menthe.
+ - rscdel: Removed the Boyardee-class Entertainment Vessel.
+ - rscdel: Independent chefs no longer get kitchen cqc.
+ - tweak: The "syndicate waiter's outfit" renamed to just "waiter's outfit".
+ - tweak: Indpenedent bartenders now start with a waistcoat.
+ - tweak: Edited waiter's outfit. Also, the role now gets kitchen access.
+ - tweak: Independent cooks now start with laceup shoes.
+ meemofcourse:
+ - rscadd: SUNS 3x6 logo decal, SUNS tiles, SUNS emblem floor decal, Desk and Wall
+ flag, folders, PDA, cards, locker, bedsheets, and headsets.
+2024-06-14:
+ Gristlebee:
+ - bugfix: Posibrains/MMI pilots being permaslept on mech destruction
+2024-06-15:
+ Rye-Rice:
+ - imageadd: Rylie Was Forced To Resprite Concrete when she was 6!
+2024-06-16:
+ DIB-DOG:
+ - rscadd: Added 1 Raksha Helmet to the sergeant's locker on the PGFN Crying Sun
+2024-06-17:
+ meemofcourse:
+ - code_imp: A lot of SUNS decals.
+2024-06-18:
+ '@thestripes, @meemofcourse , @GenericDM ':
+ - tweak: reflavors nearly every drink ingame
+ SomeguyManperson:
+ - rscadd: you can now put organs inside burgers or on pizzas
+2024-06-19:
+ Anticept:
+ - bugfix: Generic adjective selection will show for everyone.
+ FalloutFalcon:
+ - bugfix: fixed multiple of the do_afters not working due to misplaced args
+ PositiveEntropy:
+ - rscadd: The Hunters of Illestren have now allowed for Hunter Collignes, Machinists
+ and Flamebearers to now roam the Frontier aboard their humble fleet!
+ - imageadd: The Saint Roumain's Militia has been fully resprited!
+ - imageadd: All SRM jobs now have unique HUD icons!
+ - imageadd: The Unknown Job HUD icon has been resprited!
+ SomeguyManperson:
+ - bugfix: mobs will no longer stick around after being butchered sometimes
+ Yata9ar4su:
+ - bugfix: Atmos mask sprite
+2024-06-20:
+ FalloutFalcon:
+ - admin: reverted filling admin context menus with alot of not useful stuff by rehiding
+ it behind a toggle.
+ Gristlebee:
+ - rscadd: Energy guns show how much charge and shots they have remaining, or if
+ it doesnt have a cell installed on examine.
+ - code_imp: span classes to span macros for energy.dm
+ Sadhorizon:
+ - tweak: SRM cabinets - namely, Hunter's, Shadow's and Flamebearer's - now use cabinet
+ sounds.
+ Skies-Of-Blue:
+ - balance: you can now float over tables when in 0g
+ - balance: you no longer shatter glass tables when floating
+ SomeguyManperson:
+ - balance: 9mm boxes are now cheaper than other pistol calibers to account for the
+ lower damage per bullet
+ generalthrax:
+ - bugfix: The black market sawed off Illestren is now actually sawed off, and can
+ fit on your belt
+ - bugfix: The presawn double barrel shotgun can now fit on the belt like normal
+ sawn off double barrels
+ - rscdel: Removed invisible limb armour from Gezenan marine + navywear
+ - rscadd: Allowed Gezenan armour to hold all guns like normal armour
+ - bugfix: Fixed Montagne hat description to reflect the fact it is no longer armoured
+2024-06-21:
+ FalloutFalcon:
+ - rscadd: Bank accounts are now handled through cash cards! You now spawn with a
+ wallet to store your extra card!
+ Gristlebee:
+ - balance: Motorized wheelchairs consume less power on move
+ Thera-Pissed:
+ - rscadd: Added Hydrogen, and Combustion Thrusters to go with!
+ rye-rice:
+ - rscadd: Adds a war correspondent for CLIP.
+2024-06-22:
+ Anticept:
+ - bugfix: Dialed down the loudness of a couple Kepori sounds
+ - bugfix: Kepori wooping now has the audible flag.
+ - bugfix: Whistling now varies in pitch
+ PositiveEntropy:
+ - imageadd: SUNS trimline decals are now properly aligned.
+ Sadhorizon:
+ - rscadd: Bone Talisman and Hunter's Necklace were added to loadout.
+ - tweak: Bone Talisman and Hunter's Necklace were reflavored into good lack charms.
+ They are no longer armored.
+ - tweak: Wolf talisman crafting recipe now requires less stuff.
+ - bugfix: Blue wall locker sprites are no longer flipped.
+ SomeguyManperson:
+ - balance: crystal legion spawn 1 less skull per spawn wave, now 1 (like normal
+ legion)
+ - balance: brimdemon beams now have a fade-in effect before dealing damage, making
+ it harder to get instantly chunked for a quarter of your health
+ - balance: brimdemons can no longer aggro on you before you can see them
+ - balance: radiation collectors are now significantly more stingy about the potency
+ of the radiation they will process. Don't expect old nuclear waste or openly
+ stored uranium to do much.
+ - balance: radiation collectors also produce significantly more power from the remaining
+ viable sources
+ Thera-Pissed:
+ - bugfix: infinite negative power draw while calling your grandmother no longer
+ happens.
+ - bugfix: fixed volume pumps for mapping.
+ blinkdog:
+ - bugfix: Cleaned up some logic in revolver safety
+ generalthrax:
+ - bugfix: Tadrixx Float has a sprite again
+ - rscadd: You can now tail thump if you have a tail instead of it being tied to
+ species
+2024-06-25:
+ Martinpachu:
+ - rscadd: Cargo guns and certain guns in ships now come inside cases alongside some
+ magazines, the ammo now comes separately for safety reasons.
+2024-06-27:
+ Gristlebee:
+ - tweak: Saber SMG stock folds
+ - tweak: TEC-9 Pistol is now automatic and normal sized
+ - balance: Combat shotgun is now bulky, and the compact combat shotgun is normal.
+ Martinpachu:
+ - rscadd: A technique for gunslinger with the lever-action flaming arrow! Firing
+ it while wielded will quickly and automatically rack the lever, less quickly
+ than a .38 revolver or fanned shadow though.
+ - rscdel: The +5 damage and AP bonus on the shadow while using it as a gunslinger.
+ Sadhorizon:
+ - rscdel: Miners and Cargo Technicians no longer get QM access.
+ SomeguyManperson:
+ - bugfix: cyborgs can touch people again
+ - code_imp: robotic limbs will always have healing prioritized over being cauterized
+ if treated with a welder
+ generalthrax:
+ - rscdel: Tranquility reagent no longer turns you into a gondola
+ - bugfix: Fixed typos in the Shadow and Montagne revolvers
+ - bugfix: Black market rusted reds no longer flash into dust when you purchase them
+ thestripes:
+ - rscadd: Added Kepori names, surnames, and a list for the char gen to draw from.
+ Remember to update your character names!
+ - rscdel: Removed old Kepori name gen system and a bit of lore from the species
+ blurb
diff --git a/icons/effects/ore_visuals.dmi b/icons/effects/ore_visuals.dmi
index b64b8f0427e2..bab677d404e9 100644
Binary files a/icons/effects/ore_visuals.dmi and b/icons/effects/ore_visuals.dmi differ
diff --git a/icons/mob/clothing/accessories.dmi b/icons/mob/clothing/accessories.dmi
index d23ebfae4756..7e87f94fd183 100644
Binary files a/icons/mob/clothing/accessories.dmi and b/icons/mob/clothing/accessories.dmi differ
diff --git a/icons/mob/clothing/faction/clip/head.dmi b/icons/mob/clothing/faction/clip/head.dmi
index 71edbf436e96..5679758b2f61 100644
Binary files a/icons/mob/clothing/faction/clip/head.dmi and b/icons/mob/clothing/faction/clip/head.dmi differ
diff --git a/icons/mob/clothing/faction/clip/suits.dmi b/icons/mob/clothing/faction/clip/suits.dmi
index 785040d022fe..c68ab77196bb 100644
Binary files a/icons/mob/clothing/faction/clip/suits.dmi and b/icons/mob/clothing/faction/clip/suits.dmi differ
diff --git a/icons/mob/clothing/faction/clip/vox.dmi b/icons/mob/clothing/faction/clip/vox.dmi
index 882e41864ea0..e17d23fba20f 100644
Binary files a/icons/mob/clothing/faction/clip/vox.dmi and b/icons/mob/clothing/faction/clip/vox.dmi differ
diff --git a/icons/mob/clothing/faction/srm/head.dmi b/icons/mob/clothing/faction/srm/head.dmi
new file mode 100644
index 000000000000..186d021abeb3
Binary files /dev/null and b/icons/mob/clothing/faction/srm/head.dmi differ
diff --git a/icons/mob/clothing/faction/srm/suits.dmi b/icons/mob/clothing/faction/srm/suits.dmi
new file mode 100644
index 000000000000..801414dceec7
Binary files /dev/null and b/icons/mob/clothing/faction/srm/suits.dmi differ
diff --git a/icons/mob/clothing/faction/srm/uniforms.dmi b/icons/mob/clothing/faction/srm/uniforms.dmi
new file mode 100644
index 000000000000..b43a33a34e8d
Binary files /dev/null and b/icons/mob/clothing/faction/srm/uniforms.dmi differ
diff --git a/icons/mob/clothing/head.dmi b/icons/mob/clothing/head.dmi
index c2a73da609b9..f207b2bfd826 100644
Binary files a/icons/mob/clothing/head.dmi and b/icons/mob/clothing/head.dmi differ
diff --git a/icons/mob/clothing/mask.dmi b/icons/mob/clothing/mask.dmi
index 385b3b37918e..bfcc9970930f 100644
Binary files a/icons/mob/clothing/mask.dmi and b/icons/mob/clothing/mask.dmi differ
diff --git a/icons/mob/clothing/neck.dmi b/icons/mob/clothing/neck.dmi
index fe74923b657d..f168673850e0 100644
Binary files a/icons/mob/clothing/neck.dmi and b/icons/mob/clothing/neck.dmi differ
diff --git a/icons/mob/clothing/suits/armor.dmi b/icons/mob/clothing/suits/armor.dmi
index d64a4cbbf04f..4c37ff4d8bff 100644
Binary files a/icons/mob/clothing/suits/armor.dmi and b/icons/mob/clothing/suits/armor.dmi differ
diff --git a/icons/mob/clothing/suits/toggle.dmi b/icons/mob/clothing/suits/toggle.dmi
index 8ceffd1312c0..99fddcf51169 100644
Binary files a/icons/mob/clothing/suits/toggle.dmi and b/icons/mob/clothing/suits/toggle.dmi differ
diff --git a/icons/mob/hud.dmi b/icons/mob/hud.dmi
index 3926bce0f3b1..dced69dc5b6f 100644
Binary files a/icons/mob/hud.dmi and b/icons/mob/hud.dmi differ
diff --git a/icons/mob/inhands/misc/food_lefthand.dmi b/icons/mob/inhands/misc/food_lefthand.dmi
index 740c63c4b370..63dee7bfea44 100644
Binary files a/icons/mob/inhands/misc/food_lefthand.dmi and b/icons/mob/inhands/misc/food_lefthand.dmi differ
diff --git a/icons/mob/inhands/misc/food_righthand.dmi b/icons/mob/inhands/misc/food_righthand.dmi
index 1e90ac3cb75a..bb1bd3f960fb 100644
Binary files a/icons/mob/inhands/misc/food_righthand.dmi and b/icons/mob/inhands/misc/food_righthand.dmi differ
diff --git a/icons/mob/inhands/weapons/guns_lefthand.dmi b/icons/mob/inhands/weapons/guns_lefthand.dmi
index d356f95fd272..e6dfaccf2671 100644
Binary files a/icons/mob/inhands/weapons/guns_lefthand.dmi and b/icons/mob/inhands/weapons/guns_lefthand.dmi differ
diff --git a/icons/mob/inhands/weapons/guns_righthand.dmi b/icons/mob/inhands/weapons/guns_righthand.dmi
index b69fb6ff8f74..c42cf70ea894 100644
Binary files a/icons/mob/inhands/weapons/guns_righthand.dmi and b/icons/mob/inhands/weapons/guns_righthand.dmi differ
diff --git a/icons/obj/ammo.dmi b/icons/obj/ammo.dmi
index 6fac77253d60..86001423aeba 100644
Binary files a/icons/obj/ammo.dmi and b/icons/obj/ammo.dmi differ
diff --git a/icons/obj/atmos.dmi b/icons/obj/atmos.dmi
index b80be47c795d..712adf5af17f 100644
Binary files a/icons/obj/atmos.dmi and b/icons/obj/atmos.dmi differ
diff --git a/icons/obj/atmospherics/components/binary_devices.dmi b/icons/obj/atmospherics/components/binary_devices.dmi
index 0a044c498faa..b666f391e793 100644
Binary files a/icons/obj/atmospherics/components/binary_devices.dmi and b/icons/obj/atmospherics/components/binary_devices.dmi differ
diff --git a/icons/obj/clothing/accessories.dmi b/icons/obj/clothing/accessories.dmi
index e0818c6853df..ecf54fb9f61a 100644
Binary files a/icons/obj/clothing/accessories.dmi and b/icons/obj/clothing/accessories.dmi differ
diff --git a/icons/obj/clothing/faction/clip/head.dmi b/icons/obj/clothing/faction/clip/head.dmi
index b98ec00ea8e8..06962106e6e7 100644
Binary files a/icons/obj/clothing/faction/clip/head.dmi and b/icons/obj/clothing/faction/clip/head.dmi differ
diff --git a/icons/obj/clothing/faction/clip/suits.dmi b/icons/obj/clothing/faction/clip/suits.dmi
index 81e6ee001a2b..8dcc6fa72e9f 100644
Binary files a/icons/obj/clothing/faction/clip/suits.dmi and b/icons/obj/clothing/faction/clip/suits.dmi differ
diff --git a/icons/obj/clothing/faction/srm/head.dmi b/icons/obj/clothing/faction/srm/head.dmi
new file mode 100644
index 000000000000..8503fda7e3cf
Binary files /dev/null and b/icons/obj/clothing/faction/srm/head.dmi differ
diff --git a/icons/obj/clothing/faction/srm/suits.dmi b/icons/obj/clothing/faction/srm/suits.dmi
new file mode 100644
index 000000000000..031fb45e3ba6
Binary files /dev/null and b/icons/obj/clothing/faction/srm/suits.dmi differ
diff --git a/icons/obj/clothing/faction/srm/uniforms.dmi b/icons/obj/clothing/faction/srm/uniforms.dmi
new file mode 100644
index 000000000000..ec410e52e600
Binary files /dev/null and b/icons/obj/clothing/faction/srm/uniforms.dmi differ
diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi
index cf7f5ff09bd0..402ce131a988 100644
Binary files a/icons/obj/clothing/hats.dmi and b/icons/obj/clothing/hats.dmi differ
diff --git a/icons/obj/clothing/neck.dmi b/icons/obj/clothing/neck.dmi
index 049da153701a..3109928ff7ae 100644
Binary files a/icons/obj/clothing/neck.dmi and b/icons/obj/clothing/neck.dmi differ
diff --git a/icons/obj/clothing/suits/armor.dmi b/icons/obj/clothing/suits/armor.dmi
index 9eaa67f04a42..232a2f6ec2bd 100644
Binary files a/icons/obj/clothing/suits/armor.dmi and b/icons/obj/clothing/suits/armor.dmi differ
diff --git a/icons/obj/clothing/suits/toggle.dmi b/icons/obj/clothing/suits/toggle.dmi
index 54df84ad5def..75a2f1a891b3 100644
Binary files a/icons/obj/clothing/suits/toggle.dmi and b/icons/obj/clothing/suits/toggle.dmi differ
diff --git a/icons/obj/drinks/drinks.dmi b/icons/obj/drinks/drinks.dmi
index 6db6f9bb80a6..2ab3cd0db5ef 100644
Binary files a/icons/obj/drinks/drinks.dmi and b/icons/obj/drinks/drinks.dmi differ
diff --git a/icons/obj/economy.dmi b/icons/obj/economy.dmi
index 5d82ef881973..cffb7c94b6e5 100644
Binary files a/icons/obj/economy.dmi and b/icons/obj/economy.dmi differ
diff --git a/icons/obj/guncase.dmi b/icons/obj/guncase.dmi
new file mode 100644
index 000000000000..4941b965f2f8
Binary files /dev/null and b/icons/obj/guncase.dmi differ
diff --git a/icons/obj/guncase_48x32.dmi b/icons/obj/guncase_48x32.dmi
new file mode 100644
index 000000000000..b5dc20bc64e5
Binary files /dev/null and b/icons/obj/guncase_48x32.dmi differ
diff --git a/icons/obj/guns/projectile.dmi b/icons/obj/guns/projectile.dmi
index 9068f301647f..2ccd5f8cead1 100644
Binary files a/icons/obj/guns/projectile.dmi and b/icons/obj/guns/projectile.dmi differ
diff --git a/icons/obj/machines/computer.dmi b/icons/obj/machines/computer.dmi
index 2e102cda95ad..3b50ef08e89a 100644
Binary files a/icons/obj/machines/computer.dmi and b/icons/obj/machines/computer.dmi differ
diff --git a/icons/obj/nutanks.dmi b/icons/obj/nutanks.dmi
index c325dadf1c32..4365bdb86771 100644
Binary files a/icons/obj/nutanks.dmi and b/icons/obj/nutanks.dmi differ
diff --git a/icons/obj/ores.dmi b/icons/obj/ores.dmi
index 1e6c41a90c05..6ea0ed496e8f 100644
Binary files a/icons/obj/ores.dmi and b/icons/obj/ores.dmi differ
diff --git a/icons/obj/suns_floor.dmi b/icons/obj/suns_floor.dmi
deleted file mode 100644
index c8d416223ccc..000000000000
Binary files a/icons/obj/suns_floor.dmi and /dev/null differ
diff --git a/icons/obj/wallcloset.dmi b/icons/obj/wallcloset.dmi
index 6d41f0ecee85..f2314d0d84c2 100644
Binary files a/icons/obj/wallcloset.dmi and b/icons/obj/wallcloset.dmi differ
diff --git a/icons/turf/decals.dmi b/icons/turf/decals/decals.dmi
similarity index 100%
rename from icons/turf/decals.dmi
rename to icons/turf/decals/decals.dmi
diff --git a/icons/turf/decals/suns_floor.dmi b/icons/turf/decals/suns_floor.dmi
new file mode 100644
index 000000000000..ffebe3036722
Binary files /dev/null and b/icons/turf/decals/suns_floor.dmi differ
diff --git a/icons/turf/walls/concrete.dmi b/icons/turf/walls/concrete.dmi
index a201e7ab6375..da6a6e45a4ce 100644
Binary files a/icons/turf/walls/concrete.dmi and b/icons/turf/walls/concrete.dmi differ
diff --git a/icons/turf/walls/hexacrete.dmi b/icons/turf/walls/hexacrete.dmi
index 6866ac7f536f..f120455f46ad 100644
Binary files a/icons/turf/walls/hexacrete.dmi and b/icons/turf/walls/hexacrete.dmi differ
diff --git a/shiptest.dme b/shiptest.dme
index 70a39551e007..17389f325e20 100644
--- a/shiptest.dme
+++ b/shiptest.dme
@@ -866,7 +866,7 @@
#include "code\game\machinery\aug_manipulator.dm"
#include "code\game\machinery\autolathe.dm"
#include "code\game\machinery\bank_machine.dm"
-#include "code\game\machinery\Beacon.dm"
+#include "code\game\machinery\beacon.dm"
#include "code\game\machinery\bounty_board.dm"
#include "code\game\machinery\buttons.dm"
#include "code\game\machinery\cell_charger.dm"
@@ -879,7 +879,7 @@
#include "code\game\machinery\dish_drive.dm"
#include "code\game\machinery\dna_scanner.dm"
#include "code\game\machinery\doppler_array.dm"
-#include "code\game\machinery\droneDispenser.dm"
+#include "code\game\machinery\drone_dispenser.dm"
#include "code\game\machinery\exp_cloner.dm"
#include "code\game\machinery\firealarm.dm"
#include "code\game\machinery\flasher.dm"
@@ -898,6 +898,7 @@
#include "code\game\machinery\medipen_refiller.dm"
#include "code\game\machinery\navbeacon.dm"
#include "code\game\machinery\newscaster.dm"
+#include "code\game\machinery\outpost_electrolyzer.dm"
#include "code\game\machinery\PDApainter.dm"
#include "code\game\machinery\prisonlabor.dm"
#include "code\game\machinery\quantum_pad.dm"
@@ -909,7 +910,7 @@
#include "code\game\machinery\scan_gate.dm"
#include "code\game\machinery\sheetifier.dm"
#include "code\game\machinery\shieldgen.dm"
-#include "code\game\machinery\Sleeper.dm"
+#include "code\game\machinery\sleeper.dm"
#include "code\game\machinery\slotmachine.dm"
#include "code\game\machinery\spaceheater.dm"
#include "code\game\machinery\stasis.dm"
@@ -1113,6 +1114,7 @@
#include "code\game\objects\items\AI_modules.dm"
#include "code\game\objects\items\airlock_painter.dm"
#include "code\game\objects\items\apc_frame.dm"
+#include "code\game\objects\items\bank_card.dm"
#include "code\game\objects\items\bell.dm"
#include "code\game\objects\items\binoculars.dm"
#include "code\game\objects\items\blueprints.dm"
@@ -1314,6 +1316,7 @@
#include "code\game\objects\items\storage\briefcase.dm"
#include "code\game\objects\items\storage\fancy.dm"
#include "code\game\objects\items\storage\firstaid.dm"
+#include "code\game\objects\items\storage\guncases.dm"
#include "code\game\objects\items\storage\holsters.dm"
#include "code\game\objects\items\storage\lockbox.dm"
#include "code\game\objects\items\storage\ration.dm"
@@ -1968,6 +1971,7 @@
#include "code\modules\clothing\factions\hardliners.dm"
#include "code\modules\clothing\factions\nanotrasen.dm"
#include "code\modules\clothing\factions\ngr.dm"
+#include "code\modules\clothing\factions\srm.dm"
#include "code\modules\clothing\factions\suns.dm"
#include "code\modules\clothing\glasses\_glasses.dm"
#include "code\modules\clothing\glasses\engine_goggles.dm"
@@ -3275,9 +3279,7 @@
#include "code\modules\shuttle\ripple.dm"
#include "code\modules\shuttle\shuttle.dm"
#include "code\modules\shuttle\shuttle_rotate.dm"
-#include "code\modules\shuttle\special.dm"
#include "code\modules\shuttle\supply.dm"
-#include "code\modules\shuttle\white_ship.dm"
#include "code\modules\spells\spell.dm"
#include "code\modules\spells\spell_types\aimed.dm"
#include "code\modules\spells\spell_types\area_teleport.dm"
diff --git a/sound/voice/kepori/kepiclick.ogg b/sound/voice/kepori/kepiclick.ogg
index 61670a607b66..3f22b6d90d5e 100644
Binary files a/sound/voice/kepori/kepiclick.ogg and b/sound/voice/kepori/kepiclick.ogg differ
diff --git a/sound/voice/kepori/kepiwhistle.ogg b/sound/voice/kepori/kepiwhistle.ogg
index bf1cc76bf5cf..f6260f4c5894 100644
Binary files a/sound/voice/kepori/kepiwhistle.ogg and b/sound/voice/kepori/kepiwhistle.ogg differ
diff --git a/strings/names/kepori_names.txt b/strings/names/kepori_names.txt
new file mode 100644
index 000000000000..f5cf1fa086a7
--- /dev/null
+++ b/strings/names/kepori_names.txt
@@ -0,0 +1,40 @@
+Ademake
+Ankatse
+Atchenti
+Cautse
+Catuwe
+Dakenui
+Deduci
+Dirame
+Drakece
+Dutsesi
+Gahthi
+Halake
+Hetchel
+Huler
+Hanusi
+Lanirvi
+Latedi
+Meleri
+Meski
+Minele
+Naaka
+Natari
+Nenuda
+Nirena
+Orucati
+Pawitts
+Plakat
+Rakire
+Renuire
+Rilena
+Setasi
+Sutiraze
+Temiti
+Tetha
+Tokaibi
+Witaseni
+Winuusi
+Yikitse
+Yitosun
+Yunthedi
diff --git a/tgui/packages/tgui-dev-server/package.json b/tgui/packages/tgui-dev-server/package.json
index 56951b14846f..a026558a47a1 100644
--- a/tgui/packages/tgui-dev-server/package.json
+++ b/tgui/packages/tgui-dev-server/package.json
@@ -8,6 +8,6 @@
"glob": "^7.1.7",
"source-map": "^0.7.3",
"stacktrace-parser": "^0.1.10",
- "ws": "^7.5.3"
+ "ws": "^7.5.10"
}
}
diff --git a/tgui/packages/tgui/interfaces/HydrogenExchange.js b/tgui/packages/tgui/interfaces/HydrogenExchange.js
new file mode 100644
index 000000000000..c07fe40afeab
--- /dev/null
+++ b/tgui/packages/tgui/interfaces/HydrogenExchange.js
@@ -0,0 +1,74 @@
+import { useBackend } from '../backend';
+import { Button, LabeledList, Section } from '../components';
+import { Window } from '../layouts';
+
+export const HydrogenExchange = (props, context) => {
+ const { act, data } = useBackend(context);
+ const { credits, merits, next_merit_rate, credits_to_merits, credit_tax } =
+ data;
+ return (
+
+
+
+
+
+ {' '}
+ {credit_tax + '%'}
+
+
+ {' '}
+ {next_merit_rate + 'cr'}
+
+
+
+
+
+ act('convert_to_merits')}
+ />
+ }
+ />
+ act('convert_to_credits')}
+ />
+ }
+ />
+ act('dispense')}
+ />
+ }
+ />
+
+
+
+
+ );
+};
diff --git a/tgui/yarn.lock b/tgui/yarn.lock
index 17de1b885e24..faa07b26931d 100644
--- a/tgui/yarn.lock
+++ b/tgui/yarn.lock
@@ -8583,7 +8583,7 @@ resolve@^2.0.0-next.3:
glob: ^7.1.7
source-map: ^0.7.3
stacktrace-parser: ^0.1.10
- ws: ^7.5.3
+ ws: ^7.5.10
languageName: unknown
linkType: soft
@@ -9432,7 +9432,7 @@ resolve@^2.0.0-next.3:
languageName: node
linkType: hard
-"ws@npm:^7.3.1, ws@npm:^7.4.6, ws@npm:^7.5.3":
+"ws@npm:^7.3.1, ws@npm:^7.4.6":
version: 7.5.3
resolution: "ws@npm:7.5.3"
peerDependencies:
@@ -9447,6 +9447,21 @@ resolve@^2.0.0-next.3:
languageName: node
linkType: hard
+"ws@npm:^7.5.10":
+ version: 7.5.10
+ resolution: "ws@npm:7.5.10"
+ peerDependencies:
+ bufferutil: ^4.0.1
+ utf-8-validate: ^5.0.2
+ peerDependenciesMeta:
+ bufferutil:
+ optional: true
+ utf-8-validate:
+ optional: true
+ checksum: f9bb062abf54cc8f02d94ca86dcd349c3945d63851f5d07a3a61c2fcb755b15a88e943a63cf580cbdb5b74436d67ef6b67f745b8f7c0814e411379138e1863cb
+ languageName: node
+ linkType: hard
+
"xml-name-validator@npm:^3.0.0":
version: 3.0.0
resolution: "xml-name-validator@npm:3.0.0"
diff --git a/tools/UpdatePaths/Scripts/3109_drinks_lore_update.txt b/tools/UpdatePaths/Scripts/3109_drinks_lore_update.txt
new file mode 100644
index 000000000000..712c2a906ffc
--- /dev/null
+++ b/tools/UpdatePaths/Scripts/3109_drinks_lore_update.txt
@@ -0,0 +1,11 @@
+/obj/item/reagent_containers/food/drinks/soda_cans/pwr_game : /obj/item/reagent_containers/food/drinks/soda_cans/pacfuel
+/obj/item/reagent_containers/food/drinks/soda_cans/lemon_lime : /obj/item/reagent_containers/food/drinks/soda_cans/orange_soda
+/obj/item/reagent_containers/food/drinks/soda_cans/starkist : /obj/item/reagent_containers/food/drinks/soda_cans/lunapunch
+/obj/item/reagent_containers/food/drinks/soda_cans/space_mountain_wind : /obj/item/reagent_containers/food/drinks/soda_cans/comet_trail
+/obj/item/reagent_containers/food/drinks/soda_cans/thirteenloko : /obj/item/reagent_containers/food/drinks/soda_cans/vimukti
+/obj/item/reagent_containers/food/drinks/soda_cans/dr_gibb : /obj/item/reagent_containers/food/drinks/soda_cans/tadrixx
+/obj/item/reagent_containers/food/drinks/soda_cans/shamblers : /obj/item/reagent_containers/food/drinks/soda_cans/shoal_punch
+/obj/item/reagent_containers/food/drinks/soda_cans/grey_bull : /obj/item/reagent_containers/food/drinks/soda_cans/crosstalk
+/obj/item/reagent_containers/food/drinks/soda_cans/monkey_energy : /obj/item/reagent_containers/food/drinks/soda_cans/xeno_energy
+/obj/item/reagent_containers/food/drinks/britcup : /obj/item/reagent_containers/food/drinks/mug
+/obj/item/reagent_containers/food/drinks/solgovcup : /obj/item/reagent_containers/food/drinks/mug