diff --git a/code/datums/ammo/bullet/pistol.dm b/code/datums/ammo/bullet/pistol.dm index b50899558d7a..a6a118970d9b 100644 --- a/code/datums/ammo/bullet/pistol.dm +++ b/code/datums/ammo/bullet/pistol.dm @@ -16,8 +16,9 @@ /datum/ammo/bullet/pistol/setup_faction_clash_values() . = ..() - accuracy += 20 - accurate_range -= 2 //we want pistols to be more accurate but only at short range + accuracy += HIT_ACCURACY_TIER_5 + accurate_range -= 3 //we want pistols to be more accurate but only at short range + damage *= 0.7 //they are accurate, but they are pisotls not gona do much even if you hit /datum/ammo/bullet/pistol/tiny @@ -195,6 +196,11 @@ shrapnel_chance = SHRAPNEL_CHANCE_TIER_2 damage_falloff = DAMAGE_FALLOFF_TIER_6 +/datum/ammo/bullet/pistol/squash/setup_faction_clash_values() + accuracy = HIT_ACCURACY_TIER_2 + . = ..() + + /datum/ammo/bullet/pistol/squash/toxin name = "toxic squash-head pistol bullet" var/acid_per_hit = 10 @@ -272,3 +278,8 @@ penetration = 20 shrapnel_chance = SHRAPNEL_CHANCE_TIER_2 +/datum/ammo/bullet/pistol/smart/setup_faction_clash_values() + accuracy = HIT_ACCURACY_TIER_1 + . = ..() + + diff --git a/code/datums/ammo/bullet/smg.dm b/code/datums/ammo/bullet/smg.dm index e4618acff22d..b36175910059 100644 --- a/code/datums/ammo/bullet/smg.dm +++ b/code/datums/ammo/bullet/smg.dm @@ -22,6 +22,11 @@ scatter = SCATTER_AMOUNT_TIER_6 accuracy = HIT_ACCURACY_TIER_3 +/datum/ammo/bullet/smg/setup_faction_clash_values() + accurate_range = 7 //I need to make noraml smg and m10 somewhat viable + penetration = ARMOR_PENETRATION_TIER_3 + . = ..() + /datum/ammo/bullet/smg/m39 name = "high-velocity submachinegun bullet" //i don't want all smgs to inherit 'high velocity' diff --git a/code/datums/ammo/bullet/special_ammo.dm b/code/datums/ammo/bullet/special_ammo.dm index e4689d88b596..27782b39136b 100644 --- a/code/datums/ammo/bullet/special_ammo.dm +++ b/code/datums/ammo/bullet/special_ammo.dm @@ -28,6 +28,7 @@ max_range = 17 accurate_range = 12 effective_range_max = 12 + penetration = min(penetration + ARMOR_PENETRATION_TIER_1, 30) /datum/ammo/bullet/smartgun/armor_piercing name = "\improper AP smartgun tracer bullet" @@ -170,6 +171,7 @@ /datum/ammo/bullet/machinegun/setup_faction_clash_values() . = ..() accurate_range = 12 //we revert the reduction + accuracy += HIT_ACCURACY_TIER_4 /datum/ammo/bullet/machinegun/set_bullet_traits() . = ..() @@ -266,4 +268,4 @@ /datum/ammo/bullet/pkp/setup_faction_clash_values() . = ..() - accurate_range = 14 + accurate_range = 5 diff --git a/code/datums/supply_packs/upp_weapons.dm b/code/datums/supply_packs/upp_weapons.dm index c86d18d6cc2d..5ba9b19431cf 100644 --- a/code/datums/supply_packs/upp_weapons.dm +++ b/code/datums/supply_packs/upp_weapons.dm @@ -96,40 +96,3 @@ containertype = /obj/structure/closet/crate/weapon containername = "QYJ-72 General Purpose Machine Gun Crate" group = "UPP Weapons" - -/datum/supply_packs/upp/minigun - name = "GSh-7.62 Rotary Machine Gun (x2)" - contains = list( - /obj/item/weapon/gun/minigun/upp, - /obj/item/weapon/gun/minigun/upp, - /obj/item/ammo_magazine/minigun, - /obj/item/ammo_magazine/minigun, - ) - cost = 60 - containertype = /obj/structure/closet/crate/weapon - containername = "GSh-7.62 Rotary Machine Gun Crate" - group = "UPP Special Weapon" - -/datum/supply_packs/upp/Type88_marksman_rifle_x10 - name = "Type 88 designated marksman rifle (x2)" - contains = list( - /obj/item/weapon/gun/rifle/sniper/svd, - /obj/item/weapon/gun/rifle/sniper/svd, - /obj/item/ammo_magazine/sniper/svd, - /obj/item/ammo_magazine/sniper/svd, - ) - cost = 40 - containertype = /obj/structure/closet/crate/weapon - containername = "Type 88 designated marksman rifle Crate" - group = "UPP Special Weapon" - -/datum/supply_packs/upp/Type71_carbine_commando_x10 - name = "Type 71 'Commando' pulse carbine (x2)" - contains = list( - /obj/item/weapon/gun/rifle/type71/carbine/commando, - /obj/item/weapon/gun/rifle/type71/carbine/commando, - ) - cost = 40 - containertype = /obj/structure/closet/crate/weapon - containername = "Type 71 'Commando' pulse carbine Crate" - group = "UPP Special Weapon" diff --git a/code/game/gamemodes/extended/cm_vs_upp.dm b/code/game/gamemodes/extended/cm_vs_upp.dm index f6d22eea0a49..ae2a61e64802 100644 --- a/code/game/gamemodes/extended/cm_vs_upp.dm +++ b/code/game/gamemodes/extended/cm_vs_upp.dm @@ -15,6 +15,7 @@ /datum/gamemode_modifier/mortar_laser_warning, /datum/gamemode_modifier/no_body_c4, /datum/gamemode_modifier/weaker_explosions_fire, + /datum/gamemode_modifier/only_balanced_attachments, ) taskbar_icon = 'icons/taskbar/gml_hvh.png' diff --git a/code/game/gamemodes/round_modifiers.dm b/code/game/gamemodes/round_modifiers.dm index 86577142a211..f876cf581bce 100644 --- a/code/game/gamemodes/round_modifiers.dm +++ b/code/game/gamemodes/round_modifiers.dm @@ -139,3 +139,7 @@ /datum/gamemode_modifier/no_body_c4 modifier_name = "No body c4" modifier_desc = "Prevents c4 explosives from being planted on dead body." + +/datum/gamemode_modifier/only_balanced_attachments + modifier_name = "Only balanced attachments" + modifier_desc = "In squad and cargi vendors only attachmants with real drawbacks are available, still can be obtained using reqestions." diff --git a/code/game/machinery/vending/vendor_types/prep_upp/requisitions_upp.dm b/code/game/machinery/vending/vendor_types/prep_upp/requisitions_upp.dm index 5ff112d0cd38..f23fb5e53d72 100644 --- a/code/game/machinery/vending/vendor_types/prep_upp/requisitions_upp.dm +++ b/code/game/machinery/vending/vendor_types/prep_upp/requisitions_upp.dm @@ -175,35 +175,58 @@ vendor_theme = VENDOR_THEME_UPP /obj/structure/machinery/cm_vending/sorted/attachments/upp_attachments/populate_product_list(scale) - listed_products = list( - list("BARREL", -1, null, null), - list("Extended Barrel", 6.5, /obj/item/attachable/extended_barrel, VENDOR_ITEM_REGULAR), - list("M5 Bayonet", 10.5, /obj/item/attachable/bayonet, VENDOR_ITEM_REGULAR), - list("Recoil Compensator", 6.5, /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR), - list("Suppressor", 6.5, /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR), - - list("RAIL", -1, null, null), - list("B8 Smart-Scope", 3.5, /obj/item/attachable/scope/mini_iff, VENDOR_ITEM_REGULAR), - list("Magnetic Harness", 8.5, /obj/item/attachable/magnetic_harness, VENDOR_ITEM_REGULAR), - list("Rail Flashlight", 10.5, /obj/item/attachable/flashlight, VENDOR_ITEM_REGULAR), - list("S4 2x Telescopic Mini-Scope", 4.5, /obj/item/attachable/scope/mini, VENDOR_ITEM_REGULAR), - list("S5 Red-Dot Sight", 9.5, /obj/item/attachable/reddot, VENDOR_ITEM_REGULAR), - list("S6 Reflex Sight", 9.5, /obj/item/attachable/reflex, VENDOR_ITEM_REGULAR), - list("S8 4x Telescopic Scope", 4.5, /obj/item/attachable/scope, VENDOR_ITEM_REGULAR), - - list("UNDERBARREL", -1, null, null), - list("Angled Grip", 6.5, /obj/item/attachable/angledgrip, VENDOR_ITEM_REGULAR), - list("Bipod", 6.5, /obj/item/attachable/bipod, VENDOR_ITEM_REGULAR), - list("Burst Fire Assembly", 4.5, /obj/item/attachable/burstfire_assembly, VENDOR_ITEM_REGULAR), - list("Gyroscopic Stabilizer", 4.5, /obj/item/attachable/gyro, VENDOR_ITEM_REGULAR), - list("Laser Sight", 9.5, /obj/item/attachable/lasersight, VENDOR_ITEM_REGULAR), - list("Mini Flamethrower", 4.5, /obj/item/attachable/attached_gun/flamer, VENDOR_ITEM_REGULAR), - list("XM-VESG-1 Flamer Nozzle", 4.5, /obj/item/attachable/attached_gun/flamer_nozzle, VENDOR_ITEM_REGULAR), - list("U7 Underbarrel Shotgun", 4.5, /obj/item/attachable/attached_gun/shotgun, VENDOR_ITEM_REGULAR), - list("Underbarrel Extinguisher", 4.5, /obj/item/attachable/attached_gun/extinguisher, VENDOR_ITEM_REGULAR), - list("Underbarrel Flashlight Grip", 9.5, /obj/item/attachable/flashlight/grip, VENDOR_ITEM_REGULAR), - list("Vertical Grip", 9.5, /obj/item/attachable/verticalgrip, VENDOR_ITEM_REGULAR), - ) + if(SSticker.mode && MODE_HAS_MODIFIER(/datum/gamemode_modifier/only_balanced_attachments)) + listed_products = list( + list("BARREL", -1, null, null), + list("M5 Bayonet", 10.5, /obj/item/attachable/bayonet, VENDOR_ITEM_REGULAR), + list("Recoil Compensator", 6.5, /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR), + list("Suppressor", 6.5, /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR), + + list("RAIL", -1, null, null), + list("Magnetic Harness", 8.5, /obj/item/attachable/magnetic_harness, VENDOR_ITEM_REGULAR), + list("Rail Flashlight", 10.5, /obj/item/attachable/flashlight, VENDOR_ITEM_REGULAR), + + list("UNDERBARREL", -1, null, null), + list("Bipod", 6.5, /obj/item/attachable/bipod, VENDOR_ITEM_REGULAR), + list("Burst Fire Assembly", 4.5, /obj/item/attachable/burstfire_assembly, VENDOR_ITEM_REGULAR), + list("Gyroscopic Stabilizer", 4.5, /obj/item/attachable/gyro, VENDOR_ITEM_REGULAR), + list("Mini Flamethrower", 4.5, /obj/item/attachable/attached_gun/flamer, VENDOR_ITEM_REGULAR), + list("XM-VESG-1 Flamer Nozzle", 4.5, /obj/item/attachable/attached_gun/flamer_nozzle, VENDOR_ITEM_REGULAR), + list("U7 Underbarrel Shotgun", 4.5, /obj/item/attachable/attached_gun/shotgun, VENDOR_ITEM_REGULAR), + list("Underbarrel Extinguisher", 4.5, /obj/item/attachable/attached_gun/extinguisher, VENDOR_ITEM_REGULAR), + list("Underbarrel Flashlight Grip", 9.5, /obj/item/attachable/flashlight/grip, VENDOR_ITEM_REGULAR), + ) + + else + listed_products = list( + list("BARREL", -1, null, null), + list("Extended Barrel", 6.5, /obj/item/attachable/extended_barrel, VENDOR_ITEM_REGULAR), + list("M5 Bayonet", 10.5, /obj/item/attachable/bayonet, VENDOR_ITEM_REGULAR), + list("Recoil Compensator", 6.5, /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR), + list("Suppressor", 6.5, /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR), + + list("RAIL", -1, null, null), + list("B8 Smart-Scope", 3.5, /obj/item/attachable/scope/mini_iff, VENDOR_ITEM_REGULAR), + list("Magnetic Harness", 8.5, /obj/item/attachable/magnetic_harness, VENDOR_ITEM_REGULAR), + list("Rail Flashlight", 10.5, /obj/item/attachable/flashlight, VENDOR_ITEM_REGULAR), + list("S4 2x Telescopic Mini-Scope", 4.5, /obj/item/attachable/scope/mini, VENDOR_ITEM_REGULAR), + list("S5 Red-Dot Sight", 9.5, /obj/item/attachable/reddot, VENDOR_ITEM_REGULAR), + list("S6 Reflex Sight", 9.5, /obj/item/attachable/reflex, VENDOR_ITEM_REGULAR), + list("S8 4x Telescopic Scope", 4.5, /obj/item/attachable/scope, VENDOR_ITEM_REGULAR), + + list("UNDERBARREL", -1, null, null), + list("Angled Grip", 6.5, /obj/item/attachable/angledgrip, VENDOR_ITEM_REGULAR), + list("Bipod", 6.5, /obj/item/attachable/bipod, VENDOR_ITEM_REGULAR), + list("Burst Fire Assembly", 4.5, /obj/item/attachable/burstfire_assembly, VENDOR_ITEM_REGULAR), + list("Gyroscopic Stabilizer", 4.5, /obj/item/attachable/gyro, VENDOR_ITEM_REGULAR), + list("Laser Sight", 9.5, /obj/item/attachable/lasersight, VENDOR_ITEM_REGULAR), + list("Mini Flamethrower", 4.5, /obj/item/attachable/attached_gun/flamer, VENDOR_ITEM_REGULAR), + list("XM-VESG-1 Flamer Nozzle", 4.5, /obj/item/attachable/attached_gun/flamer_nozzle, VENDOR_ITEM_REGULAR), + list("U7 Underbarrel Shotgun", 4.5, /obj/item/attachable/attached_gun/shotgun, VENDOR_ITEM_REGULAR), + list("Underbarrel Extinguisher", 4.5, /obj/item/attachable/attached_gun/extinguisher, VENDOR_ITEM_REGULAR), + list("Underbarrel Flashlight Grip", 9.5, /obj/item/attachable/flashlight/grip, VENDOR_ITEM_REGULAR), + list("Vertical Grip", 9.5, /obj/item/attachable/verticalgrip, VENDOR_ITEM_REGULAR), + ) //------------UNIFORM VENDOR--------------- diff --git a/code/game/machinery/vending/vendor_types/prep_upp/squad_prep_upp.dm b/code/game/machinery/vending/vendor_types/prep_upp/squad_prep_upp.dm index 3b8cc0fefba8..9061e3787ae9 100644 --- a/code/game/machinery/vending/vendor_types/prep_upp/squad_prep_upp.dm +++ b/code/game/machinery/vending/vendor_types/prep_upp/squad_prep_upp.dm @@ -102,30 +102,52 @@ return GLOB.not_incapacitated_and_adjacent_strict_state /obj/structure/machinery/cm_vending/sorted/attachments/upp_squad/populate_product_list(scale) - listed_products = list( - list("BARREL", -1, null, null), - list("Extended Barrel", 2.5, /obj/item/attachable/extended_barrel, VENDOR_ITEM_REGULAR), - list("Recoil Compensator", 2.5, /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR), - list("Suppressor", 2.5, /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR), - - list("RAIL", -1, null, null), - list("B8 Smart-Scope", 1.5, /obj/item/attachable/scope/mini_iff, VENDOR_ITEM_REGULAR), - list("Magnetic Harness", 4, /obj/item/attachable/magnetic_harness, VENDOR_ITEM_REGULAR), - list("S4 2x Telescopic Mini-Scope", 2, /obj/item/attachable/scope/mini, VENDOR_ITEM_REGULAR), - list("S5 Red-Dot Sight", 3, /obj/item/attachable/reddot, VENDOR_ITEM_REGULAR), - list("S6 Reflex Sight", 3, /obj/item/attachable/reflex, VENDOR_ITEM_REGULAR), - list("S8 4x Telescopic Scope", 2, /obj/item/attachable/scope, VENDOR_ITEM_REGULAR), - - list("UNDERBARREL", -1, null, null), - list("Angled Grip", 2.5, /obj/item/attachable/angledgrip, VENDOR_ITEM_REGULAR), - list("Bipod", 2.5, /obj/item/attachable/bipod, VENDOR_ITEM_REGULAR), - list("Burst Fire Assembly", 1.5, /obj/item/attachable/burstfire_assembly, VENDOR_ITEM_REGULAR), - list("Gyroscopic Stabilizer", 1.5, /obj/item/attachable/gyro, VENDOR_ITEM_REGULAR), - list("Laser Sight", 3, /obj/item/attachable/lasersight, VENDOR_ITEM_REGULAR), - list("Mini Flamethrower", 1.5, /obj/item/attachable/attached_gun/flamer, VENDOR_ITEM_REGULAR), - list("XM-VESG-1 Flamer Nozzle", 1.5, /obj/item/attachable/attached_gun/flamer_nozzle, VENDOR_ITEM_REGULAR), - list("U7 Underbarrel Shotgun", 1.5, /obj/item/attachable/attached_gun/shotgun, VENDOR_ITEM_REGULAR), - list("Underbarrel Extinguisher", 1.5, /obj/item/attachable/attached_gun/extinguisher, VENDOR_ITEM_REGULAR), - list("Vertical Grip", 3, /obj/item/attachable/verticalgrip, VENDOR_ITEM_REGULAR), + if(SSticker.mode && MODE_HAS_MODIFIER(/datum/gamemode_modifier/only_balanced_attachments)) + + listed_products = list( + list("BARREL", -1, null, null), + list("Recoil Compensator", 2.5, /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR), + list("Suppressor", 2.5, /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR), + + list("RAIL", -1, null, null), + list("Magnetic Harness", 4, /obj/item/attachable/magnetic_harness, VENDOR_ITEM_REGULAR), + + list("UNDERBARREL", -1, null, null), + list("Bipod", 2.5, /obj/item/attachable/bipod, VENDOR_ITEM_REGULAR), + list("Burst Fire Assembly", 1.5, /obj/item/attachable/burstfire_assembly, VENDOR_ITEM_REGULAR), + list("Gyroscopic Stabilizer", 1.5, /obj/item/attachable/gyro, VENDOR_ITEM_REGULAR), + list("Mini Flamethrower", 1.5, /obj/item/attachable/attached_gun/flamer, VENDOR_ITEM_REGULAR), + list("XM-VESG-1 Flamer Nozzle", 1.5, /obj/item/attachable/attached_gun/flamer_nozzle, VENDOR_ITEM_REGULAR), + list("U7 Underbarrel Shotgun", 1.5, /obj/item/attachable/attached_gun/shotgun, VENDOR_ITEM_REGULAR), + list("Underbarrel Extinguisher", 1.5, /obj/item/attachable/attached_gun/extinguisher, VENDOR_ITEM_REGULAR), ) + + else + listed_products = list( + list("BARREL", -1, null, null), + list("Extended Barrel", 2.5, /obj/item/attachable/extended_barrel, VENDOR_ITEM_REGULAR), + list("Recoil Compensator", 2.5, /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR), + list("Suppressor", 2.5, /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR), + + list("RAIL", -1, null, null), + list("B8 Smart-Scope", 1.5, /obj/item/attachable/scope/mini_iff, VENDOR_ITEM_REGULAR), + list("Magnetic Harness", 4, /obj/item/attachable/magnetic_harness, VENDOR_ITEM_REGULAR), + list("S4 2x Telescopic Mini-Scope", 2, /obj/item/attachable/scope/mini, VENDOR_ITEM_REGULAR), + list("S5 Red-Dot Sight", 3, /obj/item/attachable/reddot, VENDOR_ITEM_REGULAR), + list("S6 Reflex Sight", 3, /obj/item/attachable/reflex, VENDOR_ITEM_REGULAR), + list("S8 4x Telescopic Scope", 2, /obj/item/attachable/scope, VENDOR_ITEM_REGULAR), + + list("UNDERBARREL", -1, null, null), + list("Angled Grip", 2.5, /obj/item/attachable/angledgrip, VENDOR_ITEM_REGULAR), + list("Bipod", 2.5, /obj/item/attachable/bipod, VENDOR_ITEM_REGULAR), + list("Burst Fire Assembly", 1.5, /obj/item/attachable/burstfire_assembly, VENDOR_ITEM_REGULAR), + list("Gyroscopic Stabilizer", 1.5, /obj/item/attachable/gyro, VENDOR_ITEM_REGULAR), + list("Laser Sight", 3, /obj/item/attachable/lasersight, VENDOR_ITEM_REGULAR), + list("Mini Flamethrower", 1.5, /obj/item/attachable/attached_gun/flamer, VENDOR_ITEM_REGULAR), + list("XM-VESG-1 Flamer Nozzle", 1.5, /obj/item/attachable/attached_gun/flamer_nozzle, VENDOR_ITEM_REGULAR), + list("U7 Underbarrel Shotgun", 1.5, /obj/item/attachable/attached_gun/shotgun, VENDOR_ITEM_REGULAR), + list("Underbarrel Extinguisher", 1.5, /obj/item/attachable/attached_gun/extinguisher, VENDOR_ITEM_REGULAR), + list("Vertical Grip", 3, /obj/item/attachable/verticalgrip, VENDOR_ITEM_REGULAR), + + ) diff --git a/code/game/machinery/vending/vendor_types/requisitions.dm b/code/game/machinery/vending/vendor_types/requisitions.dm index 5c465f169525..67d79c1b4341 100644 --- a/code/game/machinery/vending/vendor_types/requisitions.dm +++ b/code/game/machinery/vending/vendor_types/requisitions.dm @@ -391,45 +391,74 @@ return GLOB.not_incapacitated_and_adjacent_state /obj/structure/machinery/cm_vending/sorted/attachments/populate_product_list(scale) - listed_products = list( - list("BARREL", -1, null, null), - list("Extended Barrel", 6.5, /obj/item/attachable/extended_barrel, VENDOR_ITEM_REGULAR), - list("M5 Bayonet", 10.5, /obj/item/attachable/bayonet, VENDOR_ITEM_REGULAR), - list("Recoil Compensator", 6.5, /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR), - list("Suppressor", 6.5, /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR), - - list("RAIL", -1, null, null), - list("B8 Smart-Scope", 3.5, /obj/item/attachable/scope/mini_iff, VENDOR_ITEM_REGULAR), - list("Magnetic Harness", 8.5, /obj/item/attachable/magnetic_harness, VENDOR_ITEM_REGULAR), - list("Rail Flashlight", 10.5, /obj/item/attachable/flashlight, VENDOR_ITEM_REGULAR), - list("S4 2x Telescopic Mini-Scope", 4.5, /obj/item/attachable/scope/mini, VENDOR_ITEM_REGULAR), - list("S5 Red-Dot Sight", 9.5, /obj/item/attachable/reddot, VENDOR_ITEM_REGULAR), - list("S6 Reflex Sight", 9.5, /obj/item/attachable/reflex, VENDOR_ITEM_REGULAR), - list("S8 4x Telescopic Scope", 4.5, /obj/item/attachable/scope, VENDOR_ITEM_REGULAR), - - list("UNDERBARREL", -1, null, null), - list("Angled Grip", 6.5, /obj/item/attachable/angledgrip, VENDOR_ITEM_REGULAR), - list("Bipod", 6.5, /obj/item/attachable/bipod, VENDOR_ITEM_REGULAR), - list("Burst Fire Assembly", 4.5, /obj/item/attachable/burstfire_assembly, VENDOR_ITEM_REGULAR), - list("Gyroscopic Stabilizer", 4.5, /obj/item/attachable/gyro, VENDOR_ITEM_REGULAR), - list("Laser Sight", 9.5, /obj/item/attachable/lasersight, VENDOR_ITEM_REGULAR), - list("Mini Flamethrower", 4.5, /obj/item/attachable/attached_gun/flamer, VENDOR_ITEM_REGULAR), - list("XM-VESG-1 Flamer Nozzle", 4.5, /obj/item/attachable/attached_gun/flamer_nozzle, VENDOR_ITEM_REGULAR), - list("U7 Underbarrel Shotgun", 4.5, /obj/item/attachable/attached_gun/shotgun, VENDOR_ITEM_REGULAR), - list("Underbarrel Extinguisher", 4.5, /obj/item/attachable/attached_gun/extinguisher, VENDOR_ITEM_REGULAR), - list("Underbarrel Flashlight Grip", 9.5, /obj/item/attachable/flashlight/grip, VENDOR_ITEM_REGULAR), - list("Underslung Grenade Launcher", 9.5, /obj/item/attachable/attached_gun/grenade, VENDOR_ITEM_REGULAR), - list("Vertical Grip", 9.5, /obj/item/attachable/verticalgrip, VENDOR_ITEM_REGULAR), - - list("STOCK", -1, null, null), - list("M37 Wooden Stock", 4.5, /obj/item/attachable/stock/shotgun, VENDOR_ITEM_REGULAR), - list("M39 Arm Brace", 4.5, /obj/item/attachable/stock/smg/collapsible/brace, VENDOR_ITEM_REGULAR), - list("M39 Folding Stock", 4.5, /obj/item/attachable/stock/smg/collapsible, VENDOR_ITEM_REGULAR), - list("M39 Stock", 4.5, /obj/item/attachable/stock/smg, VENDOR_ITEM_REGULAR), - list("M41A Solid Stock", 4.5, /obj/item/attachable/stock/rifle, VENDOR_ITEM_REGULAR), - list("M41A Folding Stock", 4.5, /obj/item/attachable/stock/rifle/collapsible, VENDOR_ITEM_REGULAR), - list("M44 Magnum Sharpshooter Stock", 4.5, /obj/item/attachable/stock/revolver, VENDOR_ITEM_REGULAR) - ) + if(SSticker.mode && MODE_HAS_MODIFIER(/datum/gamemode_modifier/only_balanced_attachments)) + listed_products = list( + list("BARREL", -1, null, null), + list("M5 Bayonet", 10.5, /obj/item/attachable/bayonet, VENDOR_ITEM_REGULAR), + list("Recoil Compensator", 6.5, /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR), + list("Suppressor", 6.5, /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR), + + list("RAIL", -1, null, null), + list("Magnetic Harness", 8.5, /obj/item/attachable/magnetic_harness, VENDOR_ITEM_REGULAR), + list("Rail Flashlight", 10.5, /obj/item/attachable/flashlight, VENDOR_ITEM_REGULAR), + + list("UNDERBARREL", -1, null, null), + list("Bipod", 6.5, /obj/item/attachable/bipod, VENDOR_ITEM_REGULAR), + list("Burst Fire Assembly", 4.5, /obj/item/attachable/burstfire_assembly, VENDOR_ITEM_REGULAR), + list("Gyroscopic Stabilizer", 4.5, /obj/item/attachable/gyro, VENDOR_ITEM_REGULAR), + list("Mini Flamethrower", 4.5, /obj/item/attachable/attached_gun/flamer, VENDOR_ITEM_REGULAR), + list("U7 Underbarrel Shotgun", 4.5, /obj/item/attachable/attached_gun/shotgun, VENDOR_ITEM_REGULAR), + list("Underbarrel Extinguisher", 4.5, /obj/item/attachable/attached_gun/extinguisher, VENDOR_ITEM_REGULAR), + list("Underbarrel Flashlight Grip", 9.5, /obj/item/attachable/flashlight/grip, VENDOR_ITEM_REGULAR), + list("Underslung Grenade Launcher", 9.5, /obj/item/attachable/attached_gun/grenade, VENDOR_ITEM_REGULAR), + + list("STOCK", -1, null, null), + list("M39 Arm Brace", 4.5, /obj/item/attachable/stock/smg/collapsible/brace, VENDOR_ITEM_REGULAR), + list("M39 Folding Stock", 4.5, /obj/item/attachable/stock/smg/collapsible, VENDOR_ITEM_REGULAR), + list("M41A Folding Stock", 4.5, /obj/item/attachable/stock/rifle/collapsible, VENDOR_ITEM_REGULAR), + list("M44 Magnum Sharpshooter Stock", 4.5, /obj/item/attachable/stock/revolver, VENDOR_ITEM_REGULAR) + ) + + else + listed_products = list( + list("BARREL", -1, null, null), + list("Extended Barrel", 6.5, /obj/item/attachable/extended_barrel, VENDOR_ITEM_REGULAR), + list("M5 Bayonet", 10.5, /obj/item/attachable/bayonet, VENDOR_ITEM_REGULAR), + list("Recoil Compensator", 6.5, /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR), + list("Suppressor", 6.5, /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR), + + list("RAIL", -1, null, null), + list("B8 Smart-Scope", 3.5, /obj/item/attachable/scope/mini_iff, VENDOR_ITEM_REGULAR), + list("Magnetic Harness", 8.5, /obj/item/attachable/magnetic_harness, VENDOR_ITEM_REGULAR), + list("Rail Flashlight", 10.5, /obj/item/attachable/flashlight, VENDOR_ITEM_REGULAR), + list("S4 2x Telescopic Mini-Scope", 4.5, /obj/item/attachable/scope/mini, VENDOR_ITEM_REGULAR), + list("S5 Red-Dot Sight", 9.5, /obj/item/attachable/reddot, VENDOR_ITEM_REGULAR), + list("S6 Reflex Sight", 9.5, /obj/item/attachable/reflex, VENDOR_ITEM_REGULAR), + list("S8 4x Telescopic Scope", 4.5, /obj/item/attachable/scope, VENDOR_ITEM_REGULAR), + + list("UNDERBARREL", -1, null, null), + list("Angled Grip", 6.5, /obj/item/attachable/angledgrip, VENDOR_ITEM_REGULAR), + list("Bipod", 6.5, /obj/item/attachable/bipod, VENDOR_ITEM_REGULAR), + list("Burst Fire Assembly", 4.5, /obj/item/attachable/burstfire_assembly, VENDOR_ITEM_REGULAR), + list("Gyroscopic Stabilizer", 4.5, /obj/item/attachable/gyro, VENDOR_ITEM_REGULAR), + list("Laser Sight", 9.5, /obj/item/attachable/lasersight, VENDOR_ITEM_REGULAR), + list("Mini Flamethrower", 4.5, /obj/item/attachable/attached_gun/flamer, VENDOR_ITEM_REGULAR), + list("XM-VESG-1 Flamer Nozzle", 4.5, /obj/item/attachable/attached_gun/flamer_nozzle, VENDOR_ITEM_REGULAR), + list("U7 Underbarrel Shotgun", 4.5, /obj/item/attachable/attached_gun/shotgun, VENDOR_ITEM_REGULAR), + list("Underbarrel Extinguisher", 4.5, /obj/item/attachable/attached_gun/extinguisher, VENDOR_ITEM_REGULAR), + list("Underbarrel Flashlight Grip", 9.5, /obj/item/attachable/flashlight/grip, VENDOR_ITEM_REGULAR), + list("Underslung Grenade Launcher", 9.5, /obj/item/attachable/attached_gun/grenade, VENDOR_ITEM_REGULAR), + list("Vertical Grip", 9.5, /obj/item/attachable/verticalgrip, VENDOR_ITEM_REGULAR), + + list("STOCK", -1, null, null), + list("M37 Wooden Stock", 4.5, /obj/item/attachable/stock/shotgun, VENDOR_ITEM_REGULAR), + list("M39 Arm Brace", 4.5, /obj/item/attachable/stock/smg/collapsible/brace, VENDOR_ITEM_REGULAR), + list("M39 Folding Stock", 4.5, /obj/item/attachable/stock/smg/collapsible, VENDOR_ITEM_REGULAR), + list("M39 Stock", 4.5, /obj/item/attachable/stock/smg, VENDOR_ITEM_REGULAR), + list("M41A Solid Stock", 4.5, /obj/item/attachable/stock/rifle, VENDOR_ITEM_REGULAR), + list("M41A Folding Stock", 4.5, /obj/item/attachable/stock/rifle/collapsible, VENDOR_ITEM_REGULAR), + list("M44 Magnum Sharpshooter Stock", 4.5, /obj/item/attachable/stock/revolver, VENDOR_ITEM_REGULAR) + ) /obj/structure/machinery/cm_vending/sorted/attachments/blend icon_state = "req_attach_wall" diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm index 06f0dceb3566..722cfcf748d0 100644 --- a/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm +++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm @@ -364,40 +364,60 @@ return GLOB.not_incapacitated_and_adjacent_strict_state /obj/structure/machinery/cm_vending/sorted/attachments/squad/populate_product_list(scale) - listed_products = list( - list("BARREL", -1, null, null), - list("Extended Barrel", 2.5, /obj/item/attachable/extended_barrel, VENDOR_ITEM_REGULAR), - list("Recoil Compensator", 2.5, /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR), - list("Suppressor", 2.5, /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR), - - list("RAIL", -1, null, null), - list("B8 Smart-Scope", 1.5, /obj/item/attachable/scope/mini_iff, VENDOR_ITEM_REGULAR), - list("Magnetic Harness", 4, /obj/item/attachable/magnetic_harness, VENDOR_ITEM_REGULAR), - list("S4 2x Telescopic Mini-Scope", 2, /obj/item/attachable/scope/mini, VENDOR_ITEM_REGULAR), - list("S5 Red-Dot Sight", 3, /obj/item/attachable/reddot, VENDOR_ITEM_REGULAR), - list("S6 Reflex Sight", 3, /obj/item/attachable/reflex, VENDOR_ITEM_REGULAR), - list("S8 4x Telescopic Scope", 2, /obj/item/attachable/scope, VENDOR_ITEM_REGULAR), - - list("UNDERBARREL", -1, null, null), - list("Angled Grip", 2.5, /obj/item/attachable/angledgrip, VENDOR_ITEM_REGULAR), - list("Bipod", 2.5, /obj/item/attachable/bipod, VENDOR_ITEM_REGULAR), - list("Burst Fire Assembly", 1.5, /obj/item/attachable/burstfire_assembly, VENDOR_ITEM_REGULAR), - list("Gyroscopic Stabilizer", 1.5, /obj/item/attachable/gyro, VENDOR_ITEM_REGULAR), - list("Laser Sight", 3, /obj/item/attachable/lasersight, VENDOR_ITEM_REGULAR), - list("Mini Flamethrower", 1.5, /obj/item/attachable/attached_gun/flamer, VENDOR_ITEM_REGULAR), - list("XM-VESG-1 Flamer Nozzle", 1.5, /obj/item/attachable/attached_gun/flamer_nozzle, VENDOR_ITEM_REGULAR), - list("U7 Underbarrel Shotgun", 1.5, /obj/item/attachable/attached_gun/shotgun, VENDOR_ITEM_REGULAR), - list("Underbarrel Extinguisher", 1.5, /obj/item/attachable/attached_gun/extinguisher, VENDOR_ITEM_REGULAR), - list("Vertical Grip", 3, /obj/item/attachable/verticalgrip, VENDOR_ITEM_REGULAR), - - list("STOCK", -1, null, null), - list("M37 Wooden Stock", 1.5, /obj/item/attachable/stock/shotgun, VENDOR_ITEM_REGULAR), - list("M39 Arm Brace", 1.5, /obj/item/attachable/stock/smg/collapsible/brace, VENDOR_ITEM_REGULAR), - list("M39 Stock", 1.5, /obj/item/attachable/stock/smg, VENDOR_ITEM_REGULAR), - list("M41A Solid Stock", 1.5, /obj/item/attachable/stock/rifle, VENDOR_ITEM_REGULAR), - list("M44 Magnum Sharpshooter Stock", 1.5, /obj/item/attachable/stock/revolver, VENDOR_ITEM_REGULAR) + if(SSticker.mode && MODE_HAS_MODIFIER(/datum/gamemode_modifier/only_balanced_attachments)) + listed_products = list( + list("BARREL", -1, null, null), + list("Recoil Compensator", 2.5, /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR), + list("Suppressor", 2.5, /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR), + + list("RAIL", -1, null, null), + list("Magnetic Harness", 4, /obj/item/attachable/magnetic_harness, VENDOR_ITEM_REGULAR), + + list("UNDERBARREL", -1, null, null), + list("Bipod", 2.5, /obj/item/attachable/bipod, VENDOR_ITEM_REGULAR), + list("Burst Fire Assembly", 1.5, /obj/item/attachable/burstfire_assembly, VENDOR_ITEM_REGULAR), + list("Gyroscopic Stabilizer", 1.5, /obj/item/attachable/gyro, VENDOR_ITEM_REGULAR), + list("Mini Flamethrower", 1.5, /obj/item/attachable/attached_gun/flamer, VENDOR_ITEM_REGULAR), + list("XM-VESG-1 Flamer Nozzle", 1.5, /obj/item/attachable/attached_gun/flamer_nozzle, VENDOR_ITEM_REGULAR), + list("U7 Underbarrel Shotgun", 1.5, /obj/item/attachable/attached_gun/shotgun, VENDOR_ITEM_REGULAR), + list("Underbarrel Extinguisher", 1.5, /obj/item/attachable/attached_gun/extinguisher, VENDOR_ITEM_REGULAR), ) + else + listed_products = list( + list("BARREL", -1, null, null), + list("Extended Barrel", 2.5, /obj/item/attachable/extended_barrel, VENDOR_ITEM_REGULAR), + list("Recoil Compensator", 2.5, /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR), + list("Suppressor", 2.5, /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR), + + list("RAIL", -1, null, null), + list("B8 Smart-Scope", 1.5, /obj/item/attachable/scope/mini_iff, VENDOR_ITEM_REGULAR), + list("Magnetic Harness", 4, /obj/item/attachable/magnetic_harness, VENDOR_ITEM_REGULAR), + list("S4 2x Telescopic Mini-Scope", 2, /obj/item/attachable/scope/mini, VENDOR_ITEM_REGULAR), + list("S5 Red-Dot Sight", 3, /obj/item/attachable/reddot, VENDOR_ITEM_REGULAR), + list("S6 Reflex Sight", 3, /obj/item/attachable/reflex, VENDOR_ITEM_REGULAR), + list("S8 4x Telescopic Scope", 2, /obj/item/attachable/scope, VENDOR_ITEM_REGULAR), + + list("UNDERBARREL", -1, null, null), + list("Angled Grip", 2.5, /obj/item/attachable/angledgrip, VENDOR_ITEM_REGULAR), + list("Bipod", 2.5, /obj/item/attachable/bipod, VENDOR_ITEM_REGULAR), + list("Burst Fire Assembly", 1.5, /obj/item/attachable/burstfire_assembly, VENDOR_ITEM_REGULAR), + list("Gyroscopic Stabilizer", 1.5, /obj/item/attachable/gyro, VENDOR_ITEM_REGULAR), + list("Laser Sight", 3, /obj/item/attachable/lasersight, VENDOR_ITEM_REGULAR), + list("Mini Flamethrower", 1.5, /obj/item/attachable/attached_gun/flamer, VENDOR_ITEM_REGULAR), + list("XM-VESG-1 Flamer Nozzle", 1.5, /obj/item/attachable/attached_gun/flamer_nozzle, VENDOR_ITEM_REGULAR), + list("U7 Underbarrel Shotgun", 1.5, /obj/item/attachable/attached_gun/shotgun, VENDOR_ITEM_REGULAR), + list("Underbarrel Extinguisher", 1.5, /obj/item/attachable/attached_gun/extinguisher, VENDOR_ITEM_REGULAR), + list("Vertical Grip", 3, /obj/item/attachable/verticalgrip, VENDOR_ITEM_REGULAR), + + list("STOCK", -1, null, null), + list("M37 Wooden Stock", 1.5, /obj/item/attachable/stock/shotgun, VENDOR_ITEM_REGULAR), + list("M39 Arm Brace", 1.5, /obj/item/attachable/stock/smg/collapsible/brace, VENDOR_ITEM_REGULAR), + list("M39 Stock", 1.5, /obj/item/attachable/stock/smg, VENDOR_ITEM_REGULAR), + list("M41A Solid Stock", 1.5, /obj/item/attachable/stock/rifle, VENDOR_ITEM_REGULAR), + list("M44 Magnum Sharpshooter Stock", 1.5, /obj/item/attachable/stock/revolver, VENDOR_ITEM_REGULAR) + ) + //------------ESSENTIAL SETS--------------- /obj/effect/essentials_set/random/uscm_light_armor spawned_gear_list = list( diff --git a/code/modules/projectiles/guns/rifles.dm b/code/modules/projectiles/guns/rifles.dm index 127fbf78cd44..f054dfceef71 100644 --- a/code/modules/projectiles/guns/rifles.dm +++ b/code/modules/projectiles/guns/rifles.dm @@ -1355,7 +1355,7 @@ /obj/item/attachable/attached_gun/flamer, /obj/item/attachable/attached_gun/flamer/advanced, /obj/item/attachable/attached_gun/extinguisher, - ) + ) flags_gun_features = GUN_AUTO_EJECTOR|GUN_CAN_POINTBLANK|GUN_AMMO_COUNTER flags_equip_slot = SLOT_BACK @@ -1498,6 +1498,9 @@ /obj/item/attachable/heavy_barrel, /obj/item/attachable/verticalgrip, // Underbarrel /obj/item/attachable/burstfire_assembly, + /obj/item/attachable/attached_gun/extinguisher, + /obj/item/attachable/attached_gun/shotgun, + /obj/item/attachable/attached_gun/flamer, ) random_spawn_muzzle = list() //no default bayonet