diff --git a/code/datums/action.dm b/code/datums/action.dm
index 6143a227e9..ce557a7e03 100644
--- a/code/datums/action.dm
+++ b/code/datums/action.dm
@@ -216,6 +216,12 @@
/datum/action/item_action/toggle_firemode
name = "Toggle Firemode"
+/datum/action/item_action/toggle_bipod
+ name = "Toggle Stability"
+
+/datum/action/item_action/toggle_moveshoot
+ name = "Toggle Wielding"
+
/datum/action/item_action/rcl_col
name = "Change Cable Color"
icon_icon = 'icons/mob/actions/actions_items.dmi'
diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm
index 38ed31a2be..6c82b02534 100755
--- a/code/game/machinery/recharger.dm
+++ b/code/game/machinery/recharger.dm
@@ -21,6 +21,9 @@
/obj/item/ammo_box/magazine/mws_mag,
/obj/item/electrostaff,
/obj/item/gun/ballistic/automatic/magrifle))
+
+ var/static/list/forbidden_devices = typecacheof(list(
+ /obj/item/gun/energy/minigun))
/obj/machinery/recharger/RefreshParts()
for(var/obj/item/stock_parts/capacitor/C in component_parts)
@@ -72,7 +75,13 @@
return
var/allowed = is_type_in_typecache(G, allowed_devices)
+ var/forbidden = is_type_in_typecache(G, forbidden_devices)
+ if(forbidden)
+ explosion(src, 0, 3, 3, 3, flame_range = 3)
+ to_chat(user, "[src] shortcircuits and explodes the [G]!")
+ qdel(G)
+ return 0
if(allowed)
if(anchored)
if(charging || panel_open)
diff --git a/code/game/objects/items/storage/backpack.dm b/code/game/objects/items/storage/backpack.dm
index be219986e9..1cd857b3e8 100644
--- a/code/game/objects/items/storage/backpack.dm
+++ b/code/game/objects/items/storage/backpack.dm
@@ -105,6 +105,27 @@
to_chat(user, "There is nothing left in the quiver.")
return TRUE
+/obj/item/storage/backpack/ammopack
+ name = "Ammobearer Backpack"
+ desc = "A sturdy, unwieldy backpack designed to store heavy munitions."
+ icon_state = "ammopack"
+ item_state = "ammopack"
+ w_class = WEIGHT_CLASS_BULKY
+ slot_flags = ITEM_SLOT_BACK
+
+/obj/item/storage/backpack/ammopack/ComponentInitialize()
+ . = ..()
+ var/datum/component/storage/STR = GetComponent(/datum/component/storage)
+ STR.max_items = 12
+ STR.can_hold = typecacheof(list(/obj/item/ammo_box/magazine/lmg/huge, /obj/item/ammo_box/magazine/lmg/large, /obj/item/ammo_box/magazine/lmg/huge/empty, /obj/item/ammo_box/magazine/lmg/large/empty))
+
+/obj/item/storage/backpack/ammopack/PopulateContents()
+ new /obj/item/ammo_box/magazine/lmg/huge
+ new /obj/item/ammo_box/magazine/lmg/huge
+ new /obj/item/ammo_box/magazine/lmg/huge
+ new /obj/item/ammo_box/magazine/lmg/huge
+ new /obj/item/ammo_box/magazine/lmg/huge
+
/obj/item/storage/backpack/holding/satchel
name = "satchel of holding"
desc = "A satchel that opens into a localized pocket of Blue Space."
diff --git a/code/modules/jobs/job_types/bos.dm b/code/modules/jobs/job_types/bos.dm
index e673ba4e53..36905f5240 100644
--- a/code/modules/jobs/job_types/bos.dm
+++ b/code/modules/jobs/job_types/bos.dm
@@ -40,7 +40,10 @@
H.mind.teach_crafting_recipe(/datum/crafting_recipe/gate_bos)
/*
-Elder
+Elder
+I fucking hate you this is an admin role
+don't re-add it you goblins
+admin role fuckers use it.
*/
/datum/job/bos/f13elder
@@ -50,8 +53,8 @@ Elder
exp_type = EXP_TYPE_BROTHERHOODCOMMAND
head_announce = list("Security")
req_admin_notify = 1
- total_positions = 1
- spawn_positions = 1
+ total_positions = 0
+ spawn_positions = 0
description = "You are the Elder of this local chapter of the Brotherhood of Steel. You may be a veteran of warfare, an experienced commander or even a genius Scribe, and you command all the men within this bunker. Your main goals are to lead the Brotherhood, to solve conflicts inbetween castes and to manage the Head Paladin, Head Knight and Head Scribe."
supervisors = "the High Elders"
exp_requirements = 1200
@@ -92,7 +95,7 @@ Head Paladin
exp_requirements = 600
loadout_options = list(
- /datum/outfit/loadout/hpa, //Laser Gatling, Super Sledge
+ /datum/outfit/loadout/hpa, //Laser Gatling,
/datum/outfit/loadout/hpb, //Tribeam, Powerfist
/datum/outfit/loadout/hpc //14mm pistol, Shield, Pre-war Ripper
)
@@ -124,17 +127,15 @@ Head Paladin
/datum/outfit/loadout/hpa
name = "Heavy Weapons Head Paladin"
backpack_contents = list(
- /obj/item/gun/ballistic/automatic/m72 = 1,
- /obj/item/ammo_box/magazine/m2mm = 2,
- /obj/item/gun/energy/laser/wattz/magneto = 1,
- /obj/item/stock_parts/cell/ammo/ec = 2
+ /obj/item/minigunpack = 1,
+ /obj/item/stock_parts/cell/ammo/ecp = 2
)
/datum/outfit/loadout/hpb
name = "Refined Head Paladin"
backpack_contents = list(
- /obj/item/gun/ballistic/automatic/bozar = 1,
- /obj/item/ammo_box/magazine/m556/rifle = 2,
+ /obj/item/gun/energy/laser/scatter = 1,
+ /obj/item/stock_parts/cell/ammo/mfc = 3,
/obj/item/gun/energy/laser/wattz/magneto = 1,
/obj/item/stock_parts/cell/ammo/ec = 2
)
@@ -265,10 +266,11 @@ Head Knight
)
/datum/outfit/loadout/hkc
- name = "Backliner Head Knight"
+ name = "Explosives Head Knight"
backpack_contents = list(
- /obj/item/gun/energy/laser/rcw = 1,
- /obj/item/stock_parts/cell/ammo/ecp = 3
+ /obj/item/book/granter/trait/explosives_advanced = 1,
+ /obj/item/gun/ballistic/shotgun/automatic/combat/neostead = 1,
+ /obj/item/ammo_box/shotgun/buck = 3
)
/datum/outfit/job/bos/f13headknight/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
@@ -301,10 +303,12 @@ Paladin
exp_requirements = 300
loadout_options = list(
- /datum/outfit/loadout/paladina, //Frontline P
- /datum/outfit/loadout/paladinb, //Frontline SP
- /datum/outfit/loadout/paladinc, //Heavy P
- /datum/outfit/loadout/paladind //Heavy SP
+ /datum/outfit/loadout/paladina, // AER12
+ /datum/outfit/loadout/paladinb, // AER12 SP
+ /datum/outfit/loadout/paladinc, // RCW
+ /datum/outfit/loadout/paladind, // RCW SP
+ /datum/outfit/loadout/paladine, // Pre-war Ripper
+ /datum/outfit/loadout/paladinf, // Pre-war Ripper SP
)
outfit = /datum/outfit/job/bos/f13paladin
@@ -332,7 +336,6 @@ Paladin
neck = /obj/item/clothing/neck/mantle/bos/paladin
backpack_contents = list(
/obj/item/reagent_containers/hypospray/medipen/stimpak = 3,
- /obj/item/melee/powered/ripper = 1,
)
/datum/outfit/loadout/paladina
@@ -362,8 +365,8 @@ Paladin
/datum/outfit/loadout/paladinc
name = "Heavy Paladin"
backpack_contents = list(
- /obj/item/gun/energy/laser/scatter = 1,
- /obj/item/stock_parts/cell/ammo/mfc = 3,
+ /obj/item/gun/energy/laser/rcw = 1,
+ /obj/item/stock_parts/cell/ammo/ecp = 3,
/obj/item/gun/energy/laser/wattz/magneto = 1,
/obj/item/stock_parts/cell/ammo/ec = 2,
/obj/item/clothing/suit/armor/f13/power_armor/t51b/bos = 1,
@@ -374,8 +377,8 @@ Paladin
/datum/outfit/loadout/paladind
name = "Heavy Senior Paladin"
backpack_contents = list(
- /obj/item/gun/energy/laser/scatter = 1,
- /obj/item/stock_parts/cell/ammo/mfc = 3,
+ /obj/item/gun/energy/laser/rcw = 1,
+ /obj/item/stock_parts/cell/ammo/ecp = 3,
/obj/item/gun/energy/laser/wattz/magneto = 1,
/obj/item/stock_parts/cell/ammo/ec = 2,
/obj/item/clothing/suit/armor/f13/power_armor/t51b/bos = 1,
@@ -383,6 +386,29 @@ Paladin
/obj/item/clothing/accessory/bos/seniorpaladin = 1
)
+/datum/outfit/loadout/paladine
+ name = "CQC Paladin"
+ backpack_contents = list(
+ /obj/item/melee/powered/ripper/prewar = 1,
+ /obj/item/shield/riot/bullet_proof = 1,
+ /obj/item/gun/energy/laser/wattz/magneto = 1,
+ /obj/item/stock_parts/cell/ammo/ec = 2,
+ /obj/item/clothing/suit/armor/f13/power_armor/t51b/bos = 1,
+ /obj/item/clothing/head/helmet/f13/power_armor/t51b/bos = 1,
+ /obj/item/clothing/accessory/bos/paladin = 1
+ )
+
+/datum/outfit/loadout/paladinf
+ name = "Senior CQC Paladin"
+ backpack_contents = list(
+ /obj/item/melee/powered/ripper/prewar = 1,
+ /obj/item/shield/riot/bullet_proof = 1,
+ /obj/item/gun/energy/laser/wattz/magneto = 1,
+ /obj/item/stock_parts/cell/ammo/ec = 2,
+ /obj/item/clothing/suit/armor/f13/power_armor/t51b/bos = 1,
+ /obj/item/clothing/head/helmet/f13/power_armor/t51b/bos = 1,
+ /obj/item/clothing/accessory/bos/paladin = 1
+ )
/datum/outfit/job/bos/f13paladin/pre_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
..()
@@ -479,7 +505,7 @@ Senior Knight
supervisors = "the Head Knight"
loadout_options = list(
- /datum/outfit/loadout/ska, //AER9, MK23 pistol
+ /datum/outfit/loadout/ska, //wattz2k, MK23 pistol
/datum/outfit/loadout/skb, //Marksman Rifle, Sig pistol
/datum/outfit/loadout/skc //Auto-5 Shotgun, MK23 pistol
)
@@ -517,9 +543,9 @@ Senior Knight
)
/datum/outfit/loadout/ska
- name = "Senior Knight-Footman"
+ name = "Senior Knight-Sniper"
backpack_contents = list(
- /obj/item/gun/energy/laser/aer9 = 1,
+ /obj/item/gun/energy/laser/wattz2k = 1,
/obj/item/stock_parts/cell/ammo/mfc = 3,
/obj/item/gun/ballistic/automatic/pistol/mk23 = 1,
/obj/item/ammo_box/magazine/m45exp = 2
@@ -539,8 +565,8 @@ Senior Knight
name = "Senior Knight-Engineer"
backpack_contents = list(
/obj/item/storage/belt/utility/full/engi = 1,
- /obj/item/gun/ballistic/shotgun/automatic/combat/auto5 = 1,
- /obj/item/ammo_box/shotgun/buck = 2,
+ /obj/item/gun/ballistic/automatic/shotgun/riot = 1,
+ /obj/item/ammo_box/magazine/d12g = 2,
/obj/item/gun/ballistic/automatic/pistol/mk23 = 1,
/obj/item/ammo_box/magazine/m45exp = 2
)
@@ -607,7 +633,7 @@ Knight
head = /obj/item/clothing/head/helmet/f13/combat/brotherhood
backpack_contents = list(
/obj/item/melee/onehanded/knife/survival = 1,
- /obj/item/reagent_containers/hypospray/medipen/stimpak = 1,
+ /obj/item/reagent_containers/hypospray/medipen/stimpak = 1
)
/datum/outfit/loadout/knighta
diff --git a/code/modules/jobs/job_types/enclave.dm b/code/modules/jobs/job_types/enclave.dm
index 1c9c03902e..4bea434af2 100644
--- a/code/modules/jobs/job_types/enclave.dm
+++ b/code/modules/jobs/job_types/enclave.dm
@@ -110,6 +110,11 @@
supervisors = "The Captain, and command."
outfit = /datum/outfit/job/enclave/peacekeeper/enclavelt
exp_requirements = 1000
+
+ loadout_options = list(
+ /datum/outfit/loadout/gysergeantshotgun, // citykiller + prewar ripper
+ /datum/outfit/job/enclave/peacekeeper/enclavelt, // XL70E3 (LSW but powerful) + 2 HE nades + 2 Incind nades + 2x 50 round mags
+ )
/datum/outfit/job/enclave/peacekeeper/enclavelt
name = "Enclave Lieutenant"
@@ -118,7 +123,6 @@
head = /obj/item/clothing/head/helmet/f13/enclave/officer
uniform = /obj/item/clothing/under/f13/enclave/officer
suit = /obj/item/clothing/suit/armor/f13/enclavetrenchcoat
- suit_store = /obj/item/gun/ballistic/automatic/fnfal
accessory = /obj/item/clothing/accessory/ncr/LT1
id = /obj/item/card/id/dogtag/enclave/officer
ears = /obj/item/radio/headset/headset_enclave/command
@@ -129,8 +133,35 @@
/obj/item/grenade/flashbang = 1,
/obj/item/pda = 1,
/obj/item/storage/bag/money/small/wastelander = 1,
+ /obj/item/melee/onehanded/knife/survival = 1
+ )
+
+/datum/outfit/job/enclave/peacekeeper/enclavelt
+ name = "Support Officer"
+ backpack_contents = list(
+ /obj/item/grenade/flashbang = 1,
+ /obj/item/melee/onehanded/knife/survival = 1,
+ /obj/item/gun/ballistic/automatic/smg/p90 = 1,
+ /obj/item/ammo_box/magazine/m10mm_p90 = 2
+ )
+
+/datum/outfit/job/enclave/peacekeeper/enclavelt
+ name = "Front-Line Officer"
+ backpack_contents = list(
+ /obj/item/grenade/f13/he_grenade = 2,
+ /obj/item/melee/onehanded/knife/survival = 1,
+ /obj/item/gun/ballistic/automatic/fnfal = 1,
+ /obj/item/ammo_box/magazine/m762/ext = 2
+ )
+
+/datum/outfit/job/enclave/peacekeeper/enclavelt
+ name = "Light Support Officer"
+ backpack_contents = list(
+ /obj/item/grenade/f13/he_grenade = 2,
+ /obj/item/grenade/f13/incendiary = 2,
/obj/item/melee/onehanded/knife/survival = 1,
- /obj/item/ammo_box/magazine/m762 = 2,
+ /obj/item/gun/ballistic/automatic/xl70e3 = 1,
+ /obj/item/ammo_box/magazine/m556/rifle/extended = 2
)
/datum/outfit/job/enclave/peacekeeper/enclavelt/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
@@ -175,7 +206,7 @@
/obj/item/storage/bag/money/small/wastelander = 1,
/obj/item/melee/onehanded/knife/survival = 1,
/obj/item/clothing/head/f13/enclave/peacekeeper = 1,
- /obj/item/ammo_box/magazine/m5mm = 2,
+ /obj/item/ammo_box/magazine/m5mm = 2
)
/datum/outfit/job/enclave/enclave/enclavepilot/pre_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
@@ -199,8 +230,8 @@
exp_requirements = 600
loadout_options = list(
- /datum/outfit/loadout/gysergeantshotgun, // shotgun + ripper
- /datum/outfit/loadout/gysergeantrifle // carbine, suppressor, ESDs
+ /datum/outfit/loadout/gysergeantshotgun, // citykiller + prewar ripper
+ /datum/outfit/loadout/gysergeantrifle // ALR,
)
/datum/outfit/job/enclave/peacekeeper/f13gysergeant/pre_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
@@ -237,11 +268,9 @@
/datum/outfit/loadout/gysergeantrifle
name = "Support Sergeant"
- suit_store = /obj/item/gun/ballistic/automatic/assault_carbine/worn
+ suit_store = /obj/item/gun/ballistic/automatic/service/alr
backpack_contents = list(
- /obj/item/ammo_box/magazine/m5mm = 4,
- /obj/item/ammo_box/m5mmbox/shock = 1,
- /obj/item/suppressor = 1
+ /obj/item/ammo_box/magazine/m556/rifle/assault = 2,
)
//Armored Infantry
@@ -261,6 +290,12 @@
loadout_options = list(
/datum/outfit/loadout/troopy,
)
+ loadout_options = list(
+ /datum/outfit/loadout/troopy, // 5MM Minigun
+ /datum/outfit/loadout/assaulttrooper, // Pre-war ripper + bulletpro shield + 2 supers
+ /datum/outfit/loadout/breacher, // 3 C4 + R91 + 2 30 mag
+ /datum/outfit/loadout/lasgun // AER12
+ )
/datum/outfit/job/enclave/peacekeeper/Armoredinfantry
@@ -269,20 +304,42 @@
head = /obj/item/clothing/head/helmet/f13/power_armor/t51b/bos/hardened/enclave
suit = /obj/item/clothing/suit/armor/f13/power_armor/t51green/enclave
accessory = /obj/item/clothing/accessory/enclave/specialist
-
backpack_contents = list(
/obj/item/reagent_containers/hypospray/medipen/stimpak = 2,
/obj/item/grenade/flashbang = 1,
/obj/item/pda = 1,
/obj/item/storage/bag/money/small/wastelander = 1,
- /obj/item/melee/onehanded/knife/survival = 1,
+ /obj/item/melee/onehanded/knife/survival = 1
)
+
/datum/outfit/loadout/troopy
- name = "Standard"
+ name = "Heavy Weapons Specialist"
backpack_contents = list(
- /obj/item/minigunpack = 1,
- /obj/item/stock_parts/cell/ammo/ecp = 2,
+ /obj/item/minigunpackbal5mm = 1
+ )
+
+/datum/outfit/loadout/assaulttrooper
+ name = "Assault Specialist"
+ backpack_contents = list(
+ /obj/item/melee/powered/ripper/prewar = 1,
+ /obj/item/shield/riot/bullet_proof = 1,
+ /obj/item/reagent_containers/hypospray/medipen/stimpak/super = 2
+ )
+
+/datum/outfit/loadout/breacher
+ name = "Heavy Breacher"
+ backpack_contents = list(
+ /obj/item/grenade/plastic/c4 = 3,
+ /obj/item/gun/ballistic/automatic/assault_rifle = 1,
+ /obj/item/ammo_box/magazine/m556/rifle/assault = 2
+ )
+
+/datum/outfit/loadout/lasgun
+ name = "Laser Support Officer"
+ backpack_contents = list(
+ /obj/item/gun/energy/laser/aer12 = 1,
+ /obj/item/stock_parts/cell/ammo/mfc = 4
)
/datum/outfit/job/enclave/peacekeeper/Armoredinfantry/pre_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
@@ -317,12 +374,12 @@
backpack_contents = list(
/obj/item/reagent_containers/hypospray/medipen/stimpak = 2,
- /obj/item/grenade/frag = 1,
+ /obj/item/grenade/frag = 2,
/obj/item/pda = 1,
/obj/item/storage/bag/money/small/wastelander = 1,
/obj/item/melee/onehanded/knife/survival = 1,
/obj/item/clothing/head/f13/enclave/peacekeeper = 1,
- /obj/item/ammo_box/magazine/m5mm = 2,
+ /obj/item/ammo_box/magazine/m5mm = 4
)
/datum/outfit/job/enclave/peacekeeper/enclavesgt/pre_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
@@ -363,7 +420,7 @@
/obj/item/pda = 1,
/obj/item/storage/bag/money/small/wastelander = 1,
/obj/item/melee/onehanded/knife/survival = 1,
- /obj/item/ammo_box/magazine/m556/rifle = 3,
+ /obj/item/ammo_box/magazine/m556/rifle = 3
)
/datum/outfit/loadout/specmedic
@@ -430,7 +487,7 @@
/obj/item/pda = 1,
/obj/item/storage/bag/money/small/wastelander = 1,
/obj/item/melee/onehanded/knife/survival = 1,
- /obj/item/ammo_box/magazine/m556/rifle = 2,
+ /obj/item/ammo_box/magazine/m556/rifle = 2
)
// ENCLAVE REMNANTS
@@ -473,7 +530,7 @@
/obj/item/reagent_containers/hypospray/medipen/stimpak = 3,
/obj/item/pda = 1,
/obj/item/storage/bag/money/small/wastelander = 1,
- /obj/item/melee/onehanded/knife/survival = 1,
+ /obj/item/melee/onehanded/knife/survival = 1
)
/datum/outfit/loadout/enclaveremnantrifle
@@ -586,7 +643,7 @@
/obj/item/stock_parts/cell/ammo/mfc = 2,
/obj/item/storage/bag/money/small/wastelander = 1,
/obj/item/melee/onehanded/knife/survival = 1,
- /obj/item/clothing/head/beret/enclave/science = 1,
+ /obj/item/clothing/head/beret/enclave/science = 1
)
/datum/outfit/job/enclave/noncombat/enclavesci/pre_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
@@ -637,7 +694,7 @@
backpack_contents = list(
/obj/item/reagent_containers/hypospray/medipen/stimpak = 2,
/obj/item/storage/bag/money/small/wastelander = 1,
- /obj/item/melee/onehanded/knife/survival = 1,
+ /obj/item/melee/onehanded/knife/survival = 1
)
/datum/outfit/loadout/bunkerduty_botany
@@ -647,7 +704,7 @@
gloves = /obj/item/clothing/gloves/botanic_leather
backpack_contents = list(
/obj/item/storage/bag/plants = 1,
- /obj/item/plant_analyzer = 1,
+ /obj/item/plant_analyzer = 1
)
/datum/outfit/loadout/bunkerduty_engi
@@ -659,7 +716,7 @@
/obj/item/storage/belt/utility = 1,
/obj/item/stack/sheet/metal/twenty = 1,
/obj/item/stack/sheet/glass/ten = 2,
- /obj/item/stack/cable_coil/thirty = 2,
+ /obj/item/stack/cable_coil/thirty = 2
)
/datum/outfit/loadout/bunkerduty_janny
@@ -670,7 +727,7 @@
backpack_contents = list(
/obj/item/reagent_containers/spray/cleaner = 1,
/obj/item/mop/advanced = 1,
- /obj/item/grenade/chem_grenade/cleaner = 3,
+ /obj/item/grenade/chem_grenade/cleaner = 3
)
/datum/outfit/loadout/bunkerduty_chaplain
@@ -680,7 +737,7 @@
backpack_contents = list(
/obj/item/storage/book/bible = 2,
/obj/item/pen = 1,
- /obj/item/folder = 1,
+ /obj/item/folder = 1
)
/datum/outfit/loadout/bunkerduty_cook
@@ -689,7 +746,7 @@
suit = /obj/item/clothing/neck/apron/housewife
backpack_contents = list(
/obj/item/storage/box/ingredients/wildcard = 4,
- /obj/item/kitchen/knife/butcher = 1,
+ /obj/item/kitchen/knife/butcher = 1
)
// Enclave Citizen
diff --git a/code/modules/jobs/job_types/legion.dm b/code/modules/jobs/job_types/legion.dm
index 8aec03295e..2cfefd0918 100644
--- a/code/modules/jobs/job_types/legion.dm
+++ b/code/modules/jobs/job_types/legion.dm
@@ -83,6 +83,10 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
ADD_TRAIT(H, TRAIT_GENERIC, src)
ADD_TRAIT(H, TRAIT_FEARLESS, src) //no phobias for the Legion!
ADD_TRAIT(H, TRAIT_BERSERKER, src)
+ ADD_TRAIT(H, TRAIT_HARD_YARDS, src)
+ ADD_TRAIT(H, TRAIT_LIFEGIVER, src)
+ ADD_TRAIT(H, TRAIT_IRONFIST, src)
+ ADD_TRAIT(H, TRAIT_BIG_LEAGUES, src)
/obj/item/storage/box/legate
name = "legate belongings"
@@ -141,7 +145,6 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
r_pocket = /obj/item/storage/bag/money/small/legion
l_pocket = /obj/item/flashlight/lantern
r_hand = /obj/item/melee/unarmed/powerfist/goliath
- l_hand = /obj/item/tank/internals/oxygen
ears = /obj/item/radio/headset/headset_legion/cent
backpack_contents = list(
/obj/item/binoculars = 1,
@@ -178,9 +181,9 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
minimal_access = list(ACCESS_PUBLIC, ACCESS_LEGION, ACCESS_LEGION3, ACCESS_LEGION_COMMAND, ACCESS_LEGION2, ACCESS_CHANGE_IDS, ACCESS_LEGION1, ACCESS_LEGION4)
loadout_options = list(
- /datum/outfit/loadout/palacent, // M1919, Goliath, 10mm pistol
- /datum/outfit/loadout/rangerhunter, // Hunting revolver, Sniper, Spatha
- /datum/outfit/loadout/centurion, // City-Killer shotgun, 14mm pistol
+ /datum/outfit/loadout/palacent, // M1919, Goliath, Crusader Pistol
+ /datum/outfit/loadout/rangerhunter, // Hunting revolver, AMR, Spatha
+ /datum/outfit/loadout/centurion, // Goliath, CQC, 14mm pistol
)
/datum/outfit/job/CaesarsLegion/Legionary/f13centurion/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
@@ -221,13 +224,14 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
name = "Paladin-Slayer Centurion"
suit = /obj/item/clothing/suit/armor/f13/legion/palacent
head = /obj/item/clothing/head/helmet/f13/legion/palacent
- suit_store = /obj/item/gun/ballistic/automatic/m1919
+ suit_store = /obj/item/gun/ballistic/revolver/m29
backpack_contents = list(
- /obj/item/ammo_box/magazine/m762 = 3,
- /obj/item/gun/ballistic/automatic/pistol/n99/crusader = 1,
- /obj/item/ammo_box/magazine/m10mm_adv/simple = 2
+ /obj/item/ammo_box/m44 = 3,
+ /obj/item/melee/unarmed/powerfist/goliath = 1,
+ /obj/item/book/granter/martial/cqc = 1,
+ /obj/item/restraints/legcuffs/bola/tactical = 1
)
-
+
/datum/outfit/loadout/rangerhunter
name = "Ranger-Hunter Centurion"
suit = /obj/item/clothing/suit/armor/f13/legion/rangercent
@@ -244,12 +248,11 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
name = "Warlord Centurion"
suit = /obj/item/clothing/suit/armored/heavy/legion/centurion
head = /obj/item/clothing/head/helmet/f13/legion/centurion
- suit_store = /obj/item/gun/ballistic/automatic/pistol/pistol14
+ suit_store = /obj/item/gun/ballistic/automatic/m1919
backpack_contents = list(
- /obj/item/ammo_box/magazine/m14mm = 2,
- /obj/item/melee/unarmed/powerfist/goliath = 1,
- /obj/item/book/granter/martial/cqc = 1,
- /obj/item/reagent_containers/pill/patch/healingpowder/berserker = 2
+ /obj/item/ammo_box/magazine/m762 = 3,
+ /obj/item/gun/ballistic/revolver/m29/alt = 1,
+ /obj/item/ammo_box/m44 = 2
)
@@ -272,10 +275,10 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
minimal_access = list(ACCESS_PUBLIC, ACCESS_LEGION, ACCESS_LEGION3, ACCESS_LEGION_COMMAND, ACCESS_LEGION2, ACCESS_CHANGE_IDS, ACCESS_LEGION1, ACCESS_LEGION4)
loadout_options = list(
- /datum/outfit/loadout/decvetbull, // Supersledge, 10mm SMG, Smokebomb
- /datum/outfit/loadout/decvetwolf, // Thermic lance, .45 revoler, Extra Bitter
- /datum/outfit/loadout/decvetsnake, // Brush gun, Ripper, Extra Bitters
- /datum/outfit/loadout/decvetbrave // Trench shotgun, .44 revolver, Ballistic fist
+ /datum/outfit/loadout/decvetbull, // Supersledge, Reinf. Bola, Smokebomb
+ /datum/outfit/loadout/decvetwolf, // Ripper, Extra Bitter
+ /datum/outfit/loadout/decvetsnake, // Brush gun, Scope, Spatha, Extra Bitters
+ /datum/outfit/loadout/decvetbrave // Carl Gustav, Ballistic Fist,
)
/datum/outfit/job/CaesarsLegion/Legionary/f13decanvet/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
@@ -359,8 +362,8 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
supervisors = "the Veteran Decanus and the Centurion"
loadout_options = list(
- /datum/outfit/loadout/decprimfront, //Grenade Launcher, Ballistic Fist, Bolas
- /datum/outfit/loadout/decprimheavy //
+ /datum/outfit/loadout/decprimfront, // legion lance, lever shotty, spatha + bolas
+ /datum/outfit/loadout/decprimheavy // Grenade launcher, 44 Revolver, Explo Book
)
outfit = /datum/outfit/job/CaesarsLegion/Legionary/f13decan
@@ -424,11 +427,11 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
head = /obj/item/clothing/head/helmet/f13/legion/prime/decan
suit_store = /obj/item/gun/ballistic/revolver/grenadelauncher
backpack_contents = list(
- /obj/item/gun/ballistic/revolver/ballisticfist = 1,
/obj/item/restraints/legcuffs/bola = 1,
- /obj/item/ammo_box/a40mm = 2,
+ /obj/item/ammo_box/a40mm = 3,
/obj/item/gun/ballistic/revolver/m29 = 1,
- /obj/item/ammo_box/m44 = 3
+ /obj/item/ammo_box/m44 = 3,
+ /obj/item/book/granter/trait/explosives_advanced = 1
)
// ----------------- RECRUIT DECANUS ---------------------
@@ -444,7 +447,7 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
loadout_options = list(
/datum/outfit/loadout/recdeclegion, // Uzi, Bumper sword, Smokebomb
- /datum/outfit/loadout/recdectribal // SKS, Throwing spears, Reinforced machete, Bottlecap mine
+ /datum/outfit/loadout/recdectribal // SKS, Throwing spears, Reinforced machete, Bottlecap mine x2
)
outfit = /datum/outfit/job/CaesarsLegion/Legionary/f13decanrec
@@ -504,8 +507,7 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
backpack_contents = list(
/obj/item/ammo_box/magazine/sks = 3,
/obj/item/melee/onehanded/machete/forgedmachete = 1,
- /obj/item/storage/backpack/spearquiver = 1,
- /obj/item/bottlecap_mine = 1
+ /obj/item/bottlecap_mine = 2
)
//......................//////////////////////////////////................................................
@@ -589,8 +591,8 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
name = "Desert Fox"
head = /obj/item/clothing/head/helmet/f13/legion/vet/vexil
backpack_contents = list(
- /obj/item/gun/ballistic/automatic/smg/american180 = 1,
- /obj/item/ammo_box/magazine/m22smg = 1,
+ /obj/item/gun/ballistic/automatic/smg/tommygun = 1,
+ /obj/item/ammo_box/magazine/tommygunm45 = 1,
/obj/item/gun/ballistic/revolver/contender = 1,
/obj/item/ammo_box/a45lcrev = 3
)
@@ -647,6 +649,7 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
id = /obj/item/card/id/dogtag/legion/prime
suit = /obj/item/clothing/suit/armor/f13/legion/vet/explorer
head = /obj/item/clothing/head/helmet/f13/legion/vet/explorer
+ mask = /obj/item/clothing/mask/bandana/legion
neck = /obj/item/storage/belt/holster/rugged
glasses = /obj/item/clothing/glasses/sunglasses/big
neck = /obj/item/storage/belt/holster
@@ -684,7 +687,7 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
title = "Legion Frumentarius"
flag = F13FRUMENTARIUS
display_order = JOB_DISPLAY_ORDER_FRUMENTARIUS
- description = "The Eyes and Ears of Caesar. Frumentarii cover a wide range of specializations, from Ambassadors to local Tribes, Infiltrators of enemy societies, Couriers, Intelligence Gatherers and the Secret Police of Legion Camps. Unlike the lesser Legionaries, a Frumentarius is given much unsupervised freedom to do as one pleases, so long as the Legion's goals are accomplished. You are one of these Frumentarius. Spread Caesar's Will, for Mars is watching."
+ description = "The Eyes and Ears of Caesar. Frumentarii cover a wide range of specializations, from Ambassadors to local Tribes, Infiltrators of enemy societies, Couriers, Intelligence Gatherers and the Secret Police of Legion Camps. Unlike the lesser Legionaries, a Frumentarius is given much unsupervised freedom to do as one pleases, so long as the Legion's goals are accomplished. You are one of these Frumentarius. Spread Caesar's Will, for Mars is watching. Do remember however, you are still required to esc and you're still required to paint your armor if you intend to fight in the legion main group."
supervisors = "the Vet Decanus"
selection_color = "#ffdddd"
total_positions = 2
@@ -696,6 +699,13 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
access = list(ACCESS_PUBLIC, ACCESS_LEGION, ACCESS_LEGION3, ACCESS_LEGION_COMMAND, ACCESS_LEGION2, ACCESS_CHANGE_IDS, ACCESS_LEGION1, ACCESS_LEGION4)
minimal_access = list(ACCESS_PUBLIC, ACCESS_LEGION, ACCESS_LEGION3, ACCESS_LEGION_COMMAND, ACCESS_LEGION2, ACCESS_CHANGE_IDS, ACCESS_LEGION1, ACCESS_LEGION4)
+ loadout_options = list(
+ /datum/outfit/loadout/ncr,
+ /datum/outfit/loadout/Brotherhood,
+ /datum/outfit/loadout/Townie,
+ /datum/outfit/loadout/Church
+ )
+
/datum/outfit/job/CaesarsLegion/Legionary/f13frumentarius // .357 Revolver, Spatha
name = "Legion Frumentarius"
jobtype = /datum/job/CaesarsLegion/Legionary/f13frumentarius
@@ -722,9 +732,59 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
if(visualsOnly)
return
ADD_TRAIT(H, TRAIT_HARD_YARDS, src)
- ADD_TRAIT(H, TRAIT_LIFEGIVER, src)
+ ADD_TRAIT(H, TRAIT_SILENT_STEP, src)
ADD_TRAIT(H, TRAIT_BIG_LEAGUES, src)
+ H.mind.teach_crafting_recipe(/datum/crafting_recipe/ncrcombat)
+ H.mind.teach_crafting_recipe(/datum/crafting_recipe/ncrcombathelmet)
+ H.mind.teach_crafting_recipe(/datum/crafting_recipe/ncrsalvagedarmorconversion)
+ H.mind.teach_crafting_recipe(/datum/crafting_recipe/ncrsalvagedhelmetconversion)
+ H.mind.teach_crafting_recipe(/datum/crafting_recipe/horsearmorncr)
+ H.mind.teach_crafting_recipe(/datum/crafting_recipe/boscombatarmor)
+ H.mind.teach_crafting_recipe(/datum/crafting_recipe/boscombathelmet)
+ H.mind.teach_crafting_recipe(/datum/crafting_recipe/enclavecombat)
+ H.mind.teach_crafting_recipe(/datum/crafting_recipe/enclavecombathelmet)
+
+/datum/outfit/loadout/ncr
+ name = "NCR Spy"
+ suit_store = /obj/item/gun/ballistic/automatic/service
+ suit = /obj/item/clothing/suit/armor/f13/ncrarmor/mantle
+ head = /obj/item/clothing/head/f13/ncr
+ backpack_contents = list(
+ /obj/item/clothing/under/f13/ncr = 1,
+ /obj/item/storage/box/ration/menu_three = 1,
+ /obj/item/ammo_box/magazine/m556/rifle = 3
+ )
+/datum/outfit/loadout/Brotherhood
+ name = "Brotherhood Infiltrator"
+ suit_store = /obj/item/gun/energy/laser/aer9
+ suit = /obj/item/clothing/suit/armor/f13/combat/brotherhood/initiate
+ head = /obj/item/clothing/head/helmet/f13/combat/brotherhood/initiate
+ backpack_contents = list(
+ /obj/item/clothing/under/syndicate/brotherhood = 1,
+ /obj/item/clothing/accessory/bos/initiateK = 1,
+ /obj/item/stock_parts/cell/ammo/mfc = 3
+ )
+
+/datum/outfit/loadout/Townie
+ name = "Townie Bum"
+ uniform = /obj/item/clothing/under/f13/merchant
+ suit = /obj/item/clothing/suit/overalls/farmer
+ head = /obj/item/clothing/head/f13/ranger_hat/tan
+ suit_store = /obj/item/gun/ballistic/revolver/caravan_shotgun
+ backpack_contents = list(
+ /obj/item/ammo_box/shotgun/buck = 2,
+ /obj/item/stack/f13Cash/caps/onezerozero = 1
+ )
+
+/datum/outfit/loadout/Church
+ name = "Church Beggar"
+ suit = /obj/item/clothing/suit/hooded/robes/cotc
+ backpack_contents = list(
+ /obj/item/clothing/shoes/f13/rag = 1,
+ /obj/item/clothing/under/f13/settler = 1,
+ /obj/item/reagent_containers/pill/patch/bitterdrink = 1,
+ )
//......................//////////////////////////////////................................................
// //
@@ -745,7 +805,7 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
loadout_options = list( //ALL: Gladius
/datum/outfit/loadout/vetaxe, // AXE AND FISTS AND NOTHING FUCKING ELSE
- /datum/outfit/loadout/vetsmg, // 10mm SMG, .357 Revolver
+ /datum/outfit/loadout/vetsmg, // type 93 AR, .357 Revolver, poultice
/datum/outfit/loadout/vetberserker, // Lever shotgun, Bola, Legion Lance
/datum/outfit/loadout/vetrifle // Trail gun, .357 Revolver, Throwing knives
)
@@ -788,23 +848,22 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
/obj/item/restraints/handcuffs = 1,
/obj/item/melee/onehanded/machete/gladius = 1,
/obj/item/reagent_containers/pill/patch/bitterdrink = 1,
- /obj/item/stack/crafting/armor_plate = 4,
+ /obj/item/stack/crafting/armor_plate = 5
)
/datum/outfit/loadout/vetaxe
- name = "Frontline"
+ name = "War-Hound"
suit_store = /obj/item/twohanded/legionaxe
backpack_contents = list(
- /obj/item/melee/unarmed/tigerclaw = 1,
- /obj/item/restraints/legcuffs/bola = 1,
+ /obj/item/restraints/legcuffs/bola = 2,
/obj/item/reagent_containers/pill/patch/healpoultice = 2
)
/datum/outfit/loadout/vetsmg
- name = "Flanker"
- suit_store = /obj/item/gun/ballistic/automatic/smg/smg10mm
+ name = "Front-line"
+ suit_store = /obj/item/gun/ballistic/automatic/type93/worn
backpack_contents = list(
- /obj/item/ammo_box/magazine/m10mm_adv/ext = 2,
+ /obj/item/ammo_box/magazine/m556/rifle = 2,
/obj/item/gun/ballistic/revolver/colt357 = 1,
/obj/item/ammo_box/a357 = 1,
/obj/item/melee/onehanded/machete/gladius = 1,
@@ -844,7 +903,7 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
supervisors = "the Decani and Centurion"
loadout_options = list( //ALL: Forged Machete
- /datum/outfit/loadout/primelancer, // .357 revolver, Buckler, Bola
+ /datum/outfit/loadout/primelancer, // .44 Revolver, Legion Shield, Bola
/datum/outfit/loadout/primerifle, // Cowboy repeater, Firebomb
/datum/outfit/loadout/primebrave, // Hunting shotgun, Throwing spears
/datum/outfit/loadout/primepila, // Legion Lance, Extra Medicine
@@ -883,18 +942,19 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
backpack_contents = list(
/obj/item/storage/bag/money/small/legenlisted = 1,
/obj/item/reagent_containers/pill/patch/healpoultice = 2,
- /obj/item/gun/ballistic/revolver/revolver45 = 1,
+ /obj/item/gun/ballistic/revolver/revolver45 = 1
)
/datum/outfit/loadout/primelancer
- name = "Guardian"
+ name = "Straight Outta Drymouth"
r_hand = /obj/item/shield/riot/legion
backpack_contents = list(
- /obj/item/gun/ballistic/revolver/colt357 = 1,
- /obj/item/ammo_box/a357 = 3,
/obj/item/restraints/legcuffs/bola = 1,
- /obj/item/melee/onehanded/machete/gladius = 1
- )
+ /obj/item/melee/onehanded/machete/gladius = 1,
+ /obj/item/reagent_containers/pill/patch/healingpowder = 3,
+ /obj/item/gun/ballistic/revolver/m29/snub = 1,
+ /obj/item/ammo_box/m44 = 2
+ )
/datum/outfit/loadout/primerifle
name = "Sharpshooter"
@@ -906,7 +966,7 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
/datum/outfit/loadout/primebrave
name = "Heart of the Bull"
- suit_store = /obj/item/twohanded/fireaxe/bmprsword
+ suit_store = /obj/item/twohanded/sledgehammer/simple
backpack_contents = list(
/obj/item/storage/backpack/spearquiver = 1,
/obj/item/gun/ballistic/revolver/colt357 = 1,
@@ -951,7 +1011,7 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
loadout_options = list(
/datum/outfit/loadout/recruittribal, // Sledgehammer, bola, throwing spear quiver, trekking
/datum/outfit/loadout/recruitbowman, // Sturdy bow, bow autodraw, trekking, Extra Medicine
- /datum/outfit/loadout/recruitlegion // Caravan shotgun, 2 x prefilled Molotovs, Machete, Extra Medicine
+ /datum/outfit/loadout/recruitlegion // 2x 1911, Gladius, 3x Powder, 2 bolas
)
matchmaking_allowed = list(
@@ -989,7 +1049,7 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
/datum/outfit/loadout/recruittribal
name = "Tribal Recruit"
- suit_store = /obj/item/twohanded/sledgehammer/simple
+ suit_store = /obj/item/twohanded/fireaxe/bmprsword
backpack_contents = list(
/obj/item/storage/backpack/spearquiver = 1,
/obj/item/restraints/legcuffs/bola = 1,
@@ -1005,16 +1065,17 @@ Weapons Lever shotgun, Grease gun, Repeater carbines, Revolvers, simple guns al
/obj/item/warpaint_bowl = 1,
/obj/item/book/granter/trait/bowman = 1
)
-
+
/datum/outfit/loadout/recruitlegion
- name = "Straight Outta Drymouth"
- suit_store = /obj/item/melee/onehanded/machete
+ name = "Rehabilitated Tribal"
backpack_contents = list(
- /obj/item/storage/backpack/spearquiver = 1,
- /obj/item/reagent_containers/pill/patch/healingpowder = 2,
- /obj/item/gun/ballistic/revolver/colt357 = 1,
- /obj/item/ammo_box/a357 = 3
- )
+ /obj/item/restraints/legcuffs/bola = 2,
+ /obj/item/melee/onehanded/machete = 1,
+ /obj/item/reagent_containers/pill/patch/healingpowder = 3,
+ /obj/item/gun/ballistic/automatic/autopipe = 1,
+ /obj/item/ammo_box/magazine/autopipe = 4
+ )
+
//......................//////////////////////////////////................................................
// //
diff --git a/code/modules/jobs/job_types/ncr.dm b/code/modules/jobs/job_types/ncr.dm
index 33120b9b3c..edd1c78375 100644
--- a/code/modules/jobs/job_types/ncr.dm
+++ b/code/modules/jobs/job_types/ncr.dm
@@ -169,8 +169,8 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
access = list(ACCESS_NCR, ACCESS_NCR_ARMORY, ACCESS_NCR1, ACCESS_NCR2, ACCESS_NCR_COMMAND, ACCESS_PUBLIC, ACCESS_CHANGE_IDS, ACCESS_NCR3, ACCESS_NCR4)
loadout_options = list(
- /datum/outfit/loadout/captainbackline, // Commander's Coat
- /datum/outfit/loadout/captainfrontline // Captain's Armor
+ /datum/outfit/loadout/captainbackline, // R84
+ /datum/outfit/loadout/captainfrontline // Court Martial
)
/datum/outfit/job/ncr/f13captain // Binoculars, Trench knife
@@ -246,11 +246,11 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
access = list(ACCESS_NCR, ACCESS_NCR_ARMORY, ACCESS_NCR1, ACCESS_NCR2, ACCESS_NCR_COMMAND, ACCESS_PUBLIC, ACCESS_NCR3)
loadout_options = list(
- /datum/outfit/loadout/LTbackline, // Commander's Coat
- /datum/outfit/loadout/LTfrontline // Captain's Armor
+ /datum/outfit/loadout/LTbackline, // NCR Golf-Club
+ /datum/outfit/loadout/LTfrontline // Republic Pride
)
-/datum/outfit/job/ncr/f13lieutenant // Republic's Pride, Binoculars, Bayonet, 9mm pistol
+/datum/outfit/job/ncr/f13lieutenant // Binoculars, Bayonet, 9mm pistol
name = "NCR Lieutenant"
jobtype = /datum/job/ncr/f13lieutenant
id = /obj/item/card/id/dogtag/ncrlieutenant
@@ -423,8 +423,8 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
access = list(ACCESS_NCR, ACCESS_NCR_ARMORY, ACCESS_NCR1, ACCESS_NCR2, ACCESS_NCR_COMMAND, ACCESS_PUBLIC)
loadout_options = list(
- /datum/outfit/loadout/sergeantrifleman,
- /datum/outfit/loadout/sergeantscout
+ /datum/outfit/loadout/sergeantrifleman, // R91 + Bowie Knife
+ /datum/outfit/loadout/sergeantscout // Neostead + Bowie Knife
)
/datum/outfit/job/ncr/f13sergeant
@@ -452,11 +452,11 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
/datum/outfit/loadout/sergeantscout
name = "Lead Scout"
- suit_store = /obj/item/gun/ballistic/automatic/marksman
+ suit_store = /obj/item/gun/ballistic/shotgun/automatic/combat/neostead
head = /obj/item/clothing/head/f13/ncr
suit = /obj/item/clothing/suit/armor/f13/ncrarmor/mantle/reinforced
backpack_contents = list(
- /obj/item/ammo_box/magazine/m556/rifle = 2,
+ /obj/item/ammo_box/shotgun/buck = 3,
/obj/item/storage/box/ration/menu_one = 1,
/obj/item/melee/onehanded/knife/bowie = 1,
/obj/item/binoculars = 1
@@ -560,7 +560,7 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
loadout_options = list( // ALL: Binoculars, Bowie knife, Sequoia
/datum/outfit/loadout/vrclassic, // DKS
/datum/outfit/loadout/vrlite, // Brush
- /datum/outfit/loadout/vrshotgunner // Lever Action Shotgun
+ /datum/outfit/loadout/vrshotgunner // neostead Shotgun
)
access = list(ACCESS_NCR, ACCESS_NCR_ARMORY, ACCESS_NCR1, ACCESS_NCR2, ACCESS_NCR_COMMAND, ACCESS_PUBLIC, ACCESS_CHANGE_IDS, ACCESS_NCR3, ACCESS_NCR4)
@@ -737,7 +737,7 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
outfit = /datum/outfit/job/ncr/f13heavytrooper
loadout_options = list(
- /datum/outfit/loadout/shockht, // BAR, nobody uses the citykiller lol
+ /datum/outfit/loadout/shockht, // G11
/datum/outfit/loadout/supportht, // R84
/datum/outfit/loadout/meleeht // Rocket Sledge, lighter armor in exchange for mobility and melee
)
@@ -764,8 +764,8 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
/datum/outfit/loadout/shockht
name = "Shock Heavy Trooper"
backpack_contents = list(
- /obj/item/gun/ballistic/automatic/bar = 1,
- /obj/item/ammo_box/magazine/m762/ext = 2,
+ /obj/item/gun/ballistic/automatic/g11 = 1,
+ /obj/item/ammo_box/magazine/m473 = 2,
/obj/item/storage/box/ration/menu_four = 1
)
@@ -810,7 +810,7 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
loadout_options = list( // ALL: Trench tool, Limited blueprints
- /datum/outfit/loadout/combatengineerflamethrower, // Flamethrower, 9mm pistol
+ /datum/outfit/loadout/combatengineermg, // R88, some ammo
/datum/outfit/loadout/combatengineerdestroyer // Hunting Shotgun, C4 Explosive, Extra Materials
)
@@ -834,24 +834,23 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
/obj/item/reagent_containers/hypospray/medipen/stimpak = 1
)
-/datum/outfit/loadout/combatengineerflamethrower
- name = "Flamethrower Unit"
- suit_store = /obj/item/gun/ballistic/automatic/pistol/ninemil
+/datum/outfit/loadout/combatengineermg
+ name = "Machinegun Unit"
backpack_contents = list(
/obj/item/storage/box/ration/menu_three = 1,
- /obj/item/m2flamethrowertank = 1,
- /obj/item/ammo_box/magazine/m9mmds = 2,
- /obj/item/stack/sheet/metal/fifty = 1,
- /obj/item/stack/sheet/glass/fifty = 1
+ /obj/item/gun/ballistic/automatic/R88 = 1,
+ /obj/item/ammo_box/magazine/lmg/large = 1
)
+
/datum/outfit/loadout/combatengineerdestroyer
name = "Explosives Expert"
suit_store = /obj/item/gun/ballistic/revolver/grenadelauncher
backpack_contents = list(
/obj/item/storage/box/ration/menu_ten = 1,
- /obj/item/ammo_box/a40mm = 2,
+ /obj/item/ammo_box/a40mm = 1,
/obj/item/grenade/plastic/c4 = 1,
- /obj/item/book/granter/crafting_recipe/blueprint/trapper = 1,
+ /obj/item/grenade/f13/frag = 3,
+ /obj/item/grenade/f13/he_grenade = 4,
/obj/item/book/granter/trait/explosives = 1
)
@@ -981,7 +980,8 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
/datum/outfit/loadout/corporalpathfinder, // Service Rifle
/datum/outfit/loadout/corporalcqc, // Hunting Shotgun
/datum/outfit/loadout/corporaldesignatedmarksman, // Hunting Rifle + Scope
- /datum/outfit/loadout/corporalraider // Melee Monkey
+ /datum/outfit/loadout/corporalraider, // Melee Monkey
+ /datum/outfit/loadout/ammobearer // LMG Support
)
/datum/outfit/job/ncr/f13corporal
@@ -1037,6 +1037,17 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
/obj/item/storage/box/ration/menu_seven = 1
)
+/datum/outfit/loadout/ammobearer
+ name = "Ammobearer"
+ backpack_contents = list(
+ /obj/item/storage/backpack/ammopack = 1,
+ /obj/item/ammo_box/magazine/lmg/huge = 3,
+ /obj/item/gun/ballistic/automatic/pistol/m1911 = 1,
+ /obj/item/ammo_box/magazine/m45 = 2,
+ /obj/item/storage/box/ration/menu_seven = 1
+ )
+
+
// TROOPER
/datum/job/ncr/f13trooper
@@ -1052,9 +1063,9 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
loadout_options = list(
/datum/outfit/loadout/trooperrifleman, // Service Rifle, Bayonet
- /datum/outfit/loadout/troopermechanics,
- /datum/outfit/loadout/trooperscout,
- /datum/outfit/loadout/trooperconscript
+ /datum/outfit/loadout/troopermechanics, // trench shotgun, Bayo, toolbox, 30 sandbags
+ /datum/outfit/loadout/trooperscout, // hunting rifle, scope, bayo
+ /datum/outfit/loadout/trooperconscript // varmint, bayo
)
/datum/outfit/job/ncr/f13trooper
@@ -1087,7 +1098,6 @@ Weapons Service Rifle, Grease Gun, 9mm pistol, all good.
backpack_contents = list(
/obj/item/ammo_box/shotgun/buck = 3,
/obj/item/melee/onehanded/knife/bayonet = 1,
- /obj/item/ammo_box/shotgun/incendiary = 1,
/obj/item/clothing/under/f13/mechanic = 1,
/obj/item/storage/toolbox/mechanical = 1,
/obj/item/stack/sheet/mineral/sandbags = 30,
diff --git a/code/modules/projectiles/boxes_magazines/external/lmg.dm b/code/modules/projectiles/boxes_magazines/external/lmg.dm
index 91973467be..86cb067de7 100644
--- a/code/modules/projectiles/boxes_magazines/external/lmg.dm
+++ b/code/modules/projectiles/boxes_magazines/external/lmg.dm
@@ -37,7 +37,7 @@
start_empty = 1
-/obj/item/ammo_box/magazine/lmg
+/obj/item/ammo_box/magazine/lmg/small
name = "ammo box (5.56)"
icon_state = "r80"
ammo_type = /obj/item/ammo_casing/a556
@@ -45,7 +45,7 @@
max_ammo = 60
multiple_sprites = 2
-/obj/item/ammo_box/magazine/lmg/empty
+/obj/item/ammo_box/magazine/lmg/small/empty
start_empty = 1
/obj/item/ammo_box/magazine/cz53
@@ -86,3 +86,27 @@
/obj/item/ammo_box/magazine/mm762/update_icon()
..()
icon_state = "762belt-[round(ammo_count(),20)]"
+
+/obj/item/ammo_box/magazine/lmg/large
+ name = "large ammo box (5.56mm)"
+ icon_state = "r120"
+ ammo_type = /obj/item/ammo_casing/a556
+ caliber = "a556"
+ max_ammo = 120
+ multiple_sprites = 2
+ w_class = WEIGHT_CLASS_NORMAL
+
+/obj/item/ammo_box/magazine/lmg/large/empty
+ start_empty = 1
+
+/obj/item/ammo_box/magazine/lmg/huge
+ name = "huge ammo box (5.56mm)"
+ icon_state = "r240"
+ ammo_type = /obj/item/ammo_casing/a556
+ caliber = "a556"
+ max_ammo = 240
+ multiple_sprites = 2
+ w_class = WEIGHT_CLASS_NORMAL
+
+/obj/item/ammo_box/magazine/lmg/huge/empty
+ start_empty = 1
diff --git a/code/modules/projectiles/guns/ballistic/automatic.dm b/code/modules/projectiles/guns/ballistic/automatic.dm
index 7da914103b..22b6382b28 100644
--- a/code/modules/projectiles/guns/ballistic/automatic.dm
+++ b/code/modules/projectiles/guns/ballistic/automatic.dm
@@ -1362,7 +1362,7 @@
icon_state = "R84"
item_state = "R84"
slowdown = 1.5
- mag_type = /obj/item/ammo_box/magazine/lmg
+ mag_type = /obj/item/ammo_box/magazine/lmg/small
extra_damage = 23
fire_delay = 6
burst_shot_delay = 2.5
@@ -1400,6 +1400,72 @@
actions_types = list(/datum/action/item_action/toggle_firemode)
fire_sound = 'sound/f13weapons/assaultrifle_fire.ogg'
+//R88 Squad Support Weapon Keywords: NCR, 5.56mm, Automatic, 60-120-240 rounds, Damage decrease (bullethose)
+/obj/item/gun/ballistic/automatic/R88
+ name = "R88 General Purpose Machine Gun"
+ desc = "A general purpose machine gun using several sizes of ammo boxes. Chambered in 5.56, use of a bipod is heavily advised. It seems to be able to mount a scope."
+ icon_state = "R88"
+ item_state = "R88"
+ slowdown = 1.7
+ mag_type = /obj/item/ammo_box/magazine/lmg/large
+ extra_damage = 18
+ extra_penetration = 0.1
+ fire_delay = 6
+ burst_shot_delay = 2.5
+ is_automatic = TRUE
+ automatic = 1
+ autofire_shot_delay = 1.5
+ spread = 40
+ can_attachments = TRUE
+ can_scope = FALSE
+ zoomable = TRUE
+ zoom_amt = 10
+ zoom_out_amt = 13
+ var/bipod = FALSE
+ actions_types = list(/*/datum/action/item_action/toggle_firemode, *//datum/action/item_action/toggle_bipod)
+ fire_sound = 'sound/weapons/gpmg.ogg'
+ slot_flags = ITEM_SLOT_BACK
+ w_class = WEIGHT_CLASS_HUGE
+
+/obj/item/gun/ballistic/automatic/R88/ui_action_click(mob/user, action)
+/* if(istype(action, /datum/action/item_action/toggle_firemode))
+ if(is_automatic == FALSE)
+ burst_select()
+ if(is_automatic == TRUE)
+ auto_select()*/
+
+ if(istype(action, /datum/action/item_action/toggle_bipod))
+ if(bipod == FALSE)
+ bipod_on()
+ to_chat(user, "You deploy the bipod.")
+ RegisterSignal(user, COMSIG_MOVABLE_PRE_MOVE, .proc/stop_walk)
+ else
+ bipod_off()
+ to_chat(user, "You fold up the bipod.")
+ UnregisterSignal(user, COMSIG_MOVABLE_PRE_MOVE)
+ else
+ return ..()
+
+/obj/item/gun/ballistic/automatic/R88/proc/bipod_on()
+ spread = 12
+ autofire_shot_delay = 1
+ bipod = TRUE
+
+
+/obj/item/gun/ballistic/automatic/R88/proc/bipod_off()
+ spread = 45
+ autofire_shot_delay = 1.5
+ bipod = FALSE
+
+/obj/item/gun/ballistic/automatic/R88/proc/stop_walk(mob/dude)
+ to_chat(dude, "You can't walk while bipoded!")
+ return COMPONENT_MOVABLE_BLOCK_PRE_MOVE
+
+/obj/item/gun/ballistic/automatic/R88/dropped(mob/user)
+ . = ..()
+ UnregisterSignal(user, COMSIG_MOVABLE_PRE_MOVE)
+ if(bipod)
+ bipod_off()
//M1919 Machinegun Keywords: LEGION, .308, Automatic, 80 round belt. Special modifiers: damage decrease bullethose
/obj/item/gun/ballistic/automatic/m1919
diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm
index 90355a4253..bc61635601 100644
--- a/code/modules/projectiles/guns/energy/laser.dm
+++ b/code/modules/projectiles/guns/energy/laser.dm
@@ -729,6 +729,12 @@
. = ..()
ammo_pack.attach_gun(user)
+/obj/item/gun/energy/minigun/Destroy()
+ ammo_pack.gun = null
+ ammo_pack = null
+ . = ..()
+
+
//// BETA /// Obsolete
/obj/item/gun/energy/laser/lasertesting
diff --git a/code/modules/research/designs/ammolathe_designs.dm b/code/modules/research/designs/ammolathe_designs.dm
index 5275a2a942..47bff2b220 100644
--- a/code/modules/research/designs/ammolathe_designs.dm
+++ b/code/modules/research/designs/ammolathe_designs.dm
@@ -602,7 +602,21 @@
name = "empty ammo box (5.56)"
id = "lmg556"
materials = list(/datum/material/iron = 8000)
- build_path = /obj/item/ammo_box/magazine/lmg/empty
+ build_path = /obj/item/ammo_box/magazine/lmg/small/empty
+ category = list("initial", "Advanced Magazines")
+
+/datum/design/ammolathe/lmg556large
+ name = "empty machinegun box (5.56)"
+ id = "lmg556large"
+ materials = list(/datum/material/iron = 12000)
+ build_path = /obj/item/ammo_box/magazine/lmg/large/empty
+ category = list("initial", "Advanced Magazines")
+
+/datum/design/ammolathe/lmg556huge
+ name = "empty extended machinegun box (5.56)"
+ id = "lmg556huge"
+ materials = list(/datum/material/iron = 18000)
+ build_path = /obj/item/ammo_box/magazine/lmg/huge/empty
category = list("initial", "Advanced Magazines")
/datum/design/ammolathe/mm762
@@ -684,3 +698,5 @@
materials = list(/datum/material/iron = 20000, /datum/material/blackpowder = 1000)
build_path = /obj/item/ammo_box/a357box/ricochet
category = list("initial", "Advanced Ammo")
+
+
diff --git a/icons/fallout/objects/guns/ammo.dmi b/icons/fallout/objects/guns/ammo.dmi
index bce2eeeeea..9ac8916927 100644
Binary files a/icons/fallout/objects/guns/ammo.dmi and b/icons/fallout/objects/guns/ammo.dmi differ
diff --git a/icons/fallout/objects/guns/ballistic.dmi b/icons/fallout/objects/guns/ballistic.dmi
index f5de79e5a0..92d7cb8682 100644
Binary files a/icons/fallout/objects/guns/ballistic.dmi and b/icons/fallout/objects/guns/ballistic.dmi differ
diff --git a/icons/fallout/objects/storage.dmi b/icons/fallout/objects/storage.dmi
index 1066ae7bf5..ca732edcb9 100644
Binary files a/icons/fallout/objects/storage.dmi and b/icons/fallout/objects/storage.dmi differ
diff --git a/icons/fallout/onmob/backslot_bags.dmi b/icons/fallout/onmob/backslot_bags.dmi
index 1f324387c3..817c160ccd 100644
Binary files a/icons/fallout/onmob/backslot_bags.dmi and b/icons/fallout/onmob/backslot_bags.dmi differ
diff --git a/icons/fallout/onmob/weapons/guns_lefthand.dmi b/icons/fallout/onmob/weapons/guns_lefthand.dmi
index 29ea0b5069..b7de8192a9 100644
Binary files a/icons/fallout/onmob/weapons/guns_lefthand.dmi and b/icons/fallout/onmob/weapons/guns_lefthand.dmi differ
diff --git a/icons/fallout/onmob/weapons/guns_righthand.dmi b/icons/fallout/onmob/weapons/guns_righthand.dmi
index 8426ca6862..10655ec7db 100644
Binary files a/icons/fallout/onmob/weapons/guns_righthand.dmi and b/icons/fallout/onmob/weapons/guns_righthand.dmi differ
diff --git a/icons/mob/clothing/back.dmi b/icons/mob/clothing/back.dmi
index 6249d838f1..66fac81890 100644
Binary files a/icons/mob/clothing/back.dmi and b/icons/mob/clothing/back.dmi differ
diff --git a/icons/mob/inhands/equipment/backpack_lefthand.dmi b/icons/mob/inhands/equipment/backpack_lefthand.dmi
index 07d435a3e3..73c4810f0a 100644
Binary files a/icons/mob/inhands/equipment/backpack_lefthand.dmi and b/icons/mob/inhands/equipment/backpack_lefthand.dmi differ
diff --git a/icons/mob/inhands/equipment/backpack_righthand.dmi b/icons/mob/inhands/equipment/backpack_righthand.dmi
index a35217fc67..14c49cab5f 100644
Binary files a/icons/mob/inhands/equipment/backpack_righthand.dmi and b/icons/mob/inhands/equipment/backpack_righthand.dmi differ
diff --git a/icons/mob/inhands/weapons/guns_lefthand.dmi b/icons/mob/inhands/weapons/guns_lefthand.dmi
index 6c63feae00..0e2f4245d5 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 6c7a154f1b..2c373d97cc 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 5950d55a1b..9c856ad118 100644
Binary files a/icons/obj/ammo.dmi and b/icons/obj/ammo.dmi differ
diff --git a/icons/obj/guns/projectile.dmi b/icons/obj/guns/projectile.dmi
index 482b70778c..889acb2b3e 100644
Binary files a/icons/obj/guns/projectile.dmi and b/icons/obj/guns/projectile.dmi differ
diff --git a/icons/obj/storage.dmi b/icons/obj/storage.dmi
index 4d1d68b878..8101c5ee54 100644
Binary files a/icons/obj/storage.dmi and b/icons/obj/storage.dmi differ
diff --git a/sound/weapons/gpmg.ogg b/sound/weapons/gpmg.ogg
new file mode 100644
index 0000000000..a5276971d0
Binary files /dev/null and b/sound/weapons/gpmg.ogg differ