From 9aecebe23180a1909d15d0422b286ee7e7987a9c Mon Sep 17 00:00:00 2001
From: "Col.Rice" <59167966+EliteRiceFarmer@users.noreply.github.com>
Date: Tue, 2 Sep 2025 16:07:40 +0700
Subject: [PATCH] [BOUNTY] Add frontier clothing from organic printer to the
loadout menu [2.0 - Electric boogalo] (#4593)
## About The Pull Request
This add frontier equipment that is found in the frontier organic
printer.
The PR has been tested and functional codewise.
## Why It's Good For The Game
Created because of a bounty on Discord by user mrgloopy. This add no
advantage variant of the frontier clothing pieces such as jacket,
gloves, mask and hat. The original pieces are still kept if the
player(s) require armoured variant. These variants are solely for drip
purpose. Of which the user has stated in their bounty. This sentiment is
shared among other players. After all... Drip is good.
## Proof Of Testing
## Changelog
:cl:
add: frontier caps.
add: frontier jacket.
add: frontier gas mask.
add: frontier jackboots.
add: frontier jumpsuit.
add: frontier bags.
add: frontier gloves.
code: added new define for frontier bags in character creation menu.
code: added icon define for frontier bags.
code: added frontier bags to spawn roundstart from character creation.
:cl:
---
code/_globalvars/lists/flavor_misc.dm | 6 ++++
code/modules/client/preferences/clothing.dm | 9 ++++++
code/modules/jobs/job_types/_job.dm | 6 ++++
.../code/clothing/clothing.dm | 32 +++++++++++++++++++
.../code/modules/loadout/categories/gloves.dm | 4 +++
.../code/modules/loadout/categories/heads.dm | 4 +++
.../code/modules/loadout/categories/masks.dm | 4 +++
.../code/modules/loadout/categories/shoes.dm | 4 +++
.../code/modules/loadout/categories/suit.dm | 8 +++++
.../code/modules/loadout/categories/under.dm | 3 ++
10 files changed, 80 insertions(+)
diff --git a/code/_globalvars/lists/flavor_misc.dm b/code/_globalvars/lists/flavor_misc.dm
index 13fbd4a80a0..f22449c81b0 100644
--- a/code/_globalvars/lists/flavor_misc.dm
+++ b/code/_globalvars/lists/flavor_misc.dm
@@ -106,6 +106,9 @@ GLOBAL_LIST_INIT(security_depts_prefs, sort_list(list(
#define GSATCHEL "Grey Satchel"
#define GMESSENGER "Grey Messenger Bag"
#define LSATCHEL "Leather Satchel"
+#define FBACKPACK "Frontier Backpack"
+#define FSATCHEL "Frontier Satchel"
+#define FMESSENGER "Frontier Messenger Bag"
GLOBAL_LIST_INIT(backpacklist, list(
DBACKPACK,
DDUFFELBAG,
@@ -116,6 +119,9 @@ GLOBAL_LIST_INIT(backpacklist, list(
GSATCHEL,
GMESSENGER,
LSATCHEL,
+ FBACKPACK,
+ FSATCHEL,
+ FMESSENGER,
))
//Suit/Skirt
diff --git a/code/modules/client/preferences/clothing.dm b/code/modules/client/preferences/clothing.dm
index 4ae1e5ad6c9..9a4a15097d1 100644
--- a/code/modules/client/preferences/clothing.dm
+++ b/code/modules/client/preferences/clothing.dm
@@ -31,6 +31,9 @@
DSATCHEL,
DDUFFELBAG,
DMESSENGER,
+ FBACKPACK,
+ FSATCHEL,
+ FMESSENGER,
)
/datum/preference/choiced/backpack/create_default_value()
@@ -48,6 +51,12 @@
return /obj/item/storage/backpack/duffelbag
if (GMESSENGER)
return /obj/item/storage/backpack/messenger
+ if (FBACKPACK)
+ return /obj/item/storage/backpack/industrial/frontier_colonist
+ if (FSATCHEL)
+ return /obj/item/storage/backpack/industrial/frontier_colonist/satchel
+ if (FMESSENGER)
+ return /obj/item/storage/backpack/industrial/frontier_colonist/messenger
// In a perfect world, these would be your department's backpack.
// However, this doesn't factor in assistants, or no high slot, and would
diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm
index f4c9f5a212c..fe061935a2e 100644
--- a/code/modules/jobs/job_types/_job.dm
+++ b/code/modules/jobs/job_types/_job.dm
@@ -391,6 +391,12 @@
back = /obj/item/storage/backpack/satchel/leather //Leather Satchel
if(GMESSENGER)
back = /obj/item/storage/backpack/messenger //Grey messenger bag
+ if(FBACKPACK)
+ back = /obj/item/storage/backpack/industrial/frontier_colonist
+ if(FSATCHEL)
+ back = /obj/item/storage/backpack/industrial/frontier_colonist/satchel
+ if(FMESSENGER)
+ back = /obj/item/storage/backpack/industrial/frontier_colonist/messenger
if(DSATCHEL)
back = satchel //Department satchel
if(DMESSENGER)
diff --git a/modular_skyrat/modules/kahraman_equipment/code/clothing/clothing.dm b/modular_skyrat/modules/kahraman_equipment/code/clothing/clothing.dm
index cebd41bb335..99538044825 100644
--- a/modular_skyrat/modules/kahraman_equipment/code/clothing/clothing.dm
+++ b/modular_skyrat/modules/kahraman_equipment/code/clothing/clothing.dm
@@ -212,3 +212,35 @@
/obj/item/clothing/mask/gas/atmos/frontier_colonist/Initialize(mapload)
. = ..()
AddElement(/datum/element/manufacturer_examine, COMPANY_KAHRAMAN)
+
+//// Loadout variant
+// suit
+/obj/item/clothing/suit/jacket/frontier_colonist/loadout
+ armor_type = /datum/armor/none
+
+/obj/item/clothing/suit/jacket/frontier_colonist/loadout/Initialize(mapload)
+ . = ..()
+ allowed = list()
+
+/obj/item/clothing/suit/jacket/frontier_colonist/short/loadout
+ armor_type = /datum/armor/none
+
+/obj/item/clothing/suit/jacket/frontier_colonist/short/loadout/Initialize(mapload)
+ . = ..()
+ allowed = list()
+
+// Gloves
+/obj/item/clothing/gloves/frontier_colonist/loadout
+ siemens_coefficient = 0.50
+
+// boots
+/obj/item/clothing/shoes/jackboots/frontier_colonist/loadout
+ name = "frontier jackboots"
+ armor_type = /datum/armor/shoes_jackboots
+
+// mask
+/obj/item/clothing/mask/gas/atmos/frontier_colonist/loadout
+ armor_type = /datum/armor/mask_gas
+ resistance_flags = NONE
+ max_filters = 1
+
diff --git a/modular_zubbers/code/modules/loadout/categories/gloves.dm b/modular_zubbers/code/modules/loadout/categories/gloves.dm
index 07e0fe6c0b6..84172869c74 100644
--- a/modular_zubbers/code/modules/loadout/categories/gloves.dm
+++ b/modular_zubbers/code/modules/loadout/categories/gloves.dm
@@ -31,3 +31,7 @@
name = "Armadyne combat gloves"
item_path = /obj/item/clothing/gloves/combat/peacekeeper/armadyne
restricted_roles = list(ALL_JOBS_SEC)
+
+/datum/loadout_item/gloves/frontier_colonist
+ name = "Frontier Gloves"
+ item_path =/obj/item/clothing/gloves/frontier_colonist/loadout
diff --git a/modular_zubbers/code/modules/loadout/categories/heads.dm b/modular_zubbers/code/modules/loadout/categories/heads.dm
index 492771c2320..41b9b7b2b17 100644
--- a/modular_zubbers/code/modules/loadout/categories/heads.dm
+++ b/modular_zubbers/code/modules/loadout/categories/heads.dm
@@ -175,3 +175,7 @@
/datum/loadout_item/head/soft/galfedcap
name = "Galactic Federation cap"
item_path = /obj/item/clothing/head/soft/galfedcap
+
+/datum/loadout_item/head/soft/frontier_colonist
+ name = "Frontier cap"
+ item_path = /obj/item/clothing/head/soft/frontier_colonist
diff --git a/modular_zubbers/code/modules/loadout/categories/masks.dm b/modular_zubbers/code/modules/loadout/categories/masks.dm
index 2ab63f5d965..3eba5b1547f 100644
--- a/modular_zubbers/code/modules/loadout/categories/masks.dm
+++ b/modular_zubbers/code/modules/loadout/categories/masks.dm
@@ -16,3 +16,7 @@
name = "Colonial gas mask"
item_path = /obj/item/clothing/mask/gas/nri_police
restricted_roles = list(ALL_JOBS_SEC, JOB_CUSTOMS_AGENT)
+
+/datum/loadout_item/mask/frontier_colonist
+ name = "Frontier gas mask"
+ item_path = /obj/item/clothing/mask/gas/atmos/frontier_colonist/loadout
diff --git a/modular_zubbers/code/modules/loadout/categories/shoes.dm b/modular_zubbers/code/modules/loadout/categories/shoes.dm
index 8909116ec24..bb2ea8b9632 100644
--- a/modular_zubbers/code/modules/loadout/categories/shoes.dm
+++ b/modular_zubbers/code/modules/loadout/categories/shoes.dm
@@ -35,3 +35,7 @@
/datum/loadout_item/shoes/diesel_f
name = "Female Diesel Boots"
item_path = /obj/item/clothing/shoes/jackboots/diesel_f
+
+/datum/loadout_item/shoes/frontier_colonist
+ name = "Frontier Boots"
+ item_path = /obj/item/clothing/shoes/jackboots/frontier_colonist/loadout
diff --git a/modular_zubbers/code/modules/loadout/categories/suit.dm b/modular_zubbers/code/modules/loadout/categories/suit.dm
index 959a24f7e1e..c3c697840b7 100644
--- a/modular_zubbers/code/modules/loadout/categories/suit.dm
+++ b/modular_zubbers/code/modules/loadout/categories/suit.dm
@@ -155,3 +155,11 @@
/datum/loadout_item/suit/galfed_jacket
name = "Galactic Federation Jacket"
item_path = /obj/item/clothing/suit/jacket/galfed
+
+/datum/loadout_item/suit/frontier_colonist
+ name = "Frontier trenchcoat"
+ item_path = /obj/item/clothing/suit/jacket/frontier_colonist/loadout
+
+/datum/loadout_item/suit/frontier_colonist_short
+ name = "Frontier jacket"
+ item_path = /obj/item/clothing/suit/jacket/frontier_colonist/short/loadout
diff --git a/modular_zubbers/code/modules/loadout/categories/under.dm b/modular_zubbers/code/modules/loadout/categories/under.dm
index 539aafae766..9850743fa8c 100644
--- a/modular_zubbers/code/modules/loadout/categories/under.dm
+++ b/modular_zubbers/code/modules/loadout/categories/under.dm
@@ -154,3 +154,6 @@
name = "MicroStar SCI-MED suit"
item_path = /obj/item/clothing/under/rank/civilian/microstar_suit
+/datum/loadout_item/uniform/miscellaneous/frontier_colonist
+ name = "Frontier jumpsuit"
+ item_path = /obj/item/clothing/under/frontier_colonist