Skip to content

Commit

Permalink
Smart pistol Rework. Everyone can now use it. (#16714)
Browse files Browse the repository at this point in the history
  • Loading branch information
Pariah919 authored Nov 8, 2024
1 parent 45aa769 commit 90d26ba
Show file tree
Hide file tree
Showing 12 changed files with 30 additions and 34 deletions.
4 changes: 1 addition & 3 deletions code/__DEFINES/loadout.dm
Original file line number Diff line number Diff line change
Expand Up @@ -176,8 +176,6 @@ GLOBAL_LIST_INIT(commander_gear_listed_products, list(

//A way to give them everything at once that still works with loadouts would be nice, but barring that make sure that your point calculation is set up so they don't get more than what they're supposed to
GLOBAL_LIST_INIT(smartgunner_gear_listed_products, list(
/obj/effect/vendor_bundle/smartgunner_pistol = list(CAT_ESS, "SP-13 Smartpistol and KLTD Smart Goggles bundle", 0, "white"),
/obj/item/ammo_magazine/pistol/standard_pistol/smart_pistol = list(CAT_SGSUP, "SP-13 Smartpistol Magazine", 2, "sg-smartpistol"),
/obj/item/weapon/gun/rifle/standard_smartmachinegun = list(CAT_SGSUP, "SG-29 Smart Machine Gun", 29, "sg-machinegun"), //If a smartgunner buys a SG-29, then they will have 16 points to purchase 4 SG-29 drums
/obj/item/ammo_magazine/standard_smartmachinegun = list(CAT_SGSUP, "SG-29 Ammo Drum", 4, "sg-machinegun"),
/obj/item/weapon/gun/minigun/smart_minigun = list(CAT_SGSUP, "SG-85 Smart Handheld Gatling Gun", 27, "sg-minigun"), //If a smartgunner buys a SG-85, then they should be able to buy only 1 powerpack and 2 ammo bins
Expand Down Expand Up @@ -459,7 +457,7 @@ GLOBAL_LIST_INIT(medic_clothes_listed_products, list(
GLOBAL_LIST_INIT(smartgunner_clothes_listed_products, list(
/obj/effect/vendor_bundle/basic_smartgunner = list(CAT_STD, "Standard kit", 0, "white"),
/obj/effect/vendor_bundle/basic_jaeger_smartgunner = list(CAT_STD, "Essential Jaeger Kit", 0, "white"),
/obj/effect/vendor_bundle/robot/essentials = list(CAT_STD, "Essential Combat Robot Kit", 0, "white"),
/obj/effect/vendor_bundle/robot/essentials_smartgunner = list(CAT_STD, "Essential Combat Robot Kit", 0, "white"),
/obj/effect/vendor_bundle/xenonauten_light = list(CAT_AMR, "Xenonauten light armor kit", 0, "orange"),
/obj/effect/vendor_bundle/xenonauten_medium = list(CAT_AMR, "Xenonauten medium armor kit", 0, "orange"),
/obj/effect/vendor_bundle/xenonauten_heavy = list(CAT_AMR, "Xenonauten heavy armor kit", 0, "orange"),
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/items/storage/holsters.dm
Original file line number Diff line number Diff line change
Expand Up @@ -726,7 +726,7 @@

/obj/item/storage/holster/belt/pistol/smart_pistol
name = "\improper SP-13 holster rig"
desc = "A holster belt, which holds SP-13 smartpistol and magazines for it."
desc = "A holster belt, which holds SP-13 smart machinepistol and magazines for it."

/obj/item/storage/holster/belt/pistol/smart_pistol/full/Initialize(mapload)
. = ..()
Expand Down
21 changes: 12 additions & 9 deletions code/game/objects/machinery/vending/new_marine_vendors.dm
Original file line number Diff line number Diff line change
Expand Up @@ -619,6 +619,7 @@
/obj/item/clothing/shoes/marine/full,
/obj/item/clothing/gloves/marine,
/obj/item/storage/box/MRE,
/obj/item/clothing/glasses/night/m56_goggles,
)

/obj/effect/vendor_bundle/basic_jaeger_smartgunner
Expand All @@ -627,6 +628,7 @@
/obj/item/clothing/shoes/marine/full,
/obj/item/clothing/gloves/marine,
/obj/item/storage/box/MRE,
/obj/item/clothing/glasses/night/m56_goggles,
/obj/item/facepaint/green,
)

Expand Down Expand Up @@ -725,15 +727,6 @@
/obj/item/circuitboard/apc,
)

/obj/effect/vendor_bundle/smartgunner_pistol
gear_to_spawn = list(
/obj/item/clothing/glasses/night/m56_goggles,
/obj/item/storage/holster/belt/pistol/smart_pistol,
/obj/item/weapon/gun/pistol/smart_pistol,
/obj/item/ammo_magazine/pistol/standard_pistol/smart_pistol,
/obj/item/ammo_magazine/pistol/standard_pistol/smart_pistol,
)

/obj/effect/vendor_bundle/leader
gear_to_spawn = list(
/obj/item/explosive/plastique,
Expand Down Expand Up @@ -928,6 +921,16 @@
/obj/item/clothing/under/marine/robotic,
/obj/item/tool/weldingtool,
/obj/item/stack/cable_coil,

)


/obj/effect/vendor_bundle/robot/essentials_smartgunner
gear_to_spawn = list(
/obj/item/clothing/under/marine/robotic,
/obj/item/tool/weldingtool,
/obj/item/stack/cable_coil,
/obj/item/clothing/glasses/night/m56_goggles,
)

/obj/effect/vendor_bundle/robot/light_armor
Expand Down
28 changes: 11 additions & 17 deletions code/modules/projectiles/guns/pistols.dm
Original file line number Diff line number Diff line change
Expand Up @@ -833,43 +833,37 @@ It is a modified Beretta 93R, and can fire three round burst or single fire. Whe
/obj/item/attachable/lace,
)

// Smart pistol, based on Calico M-950
// Smart pistol, based on the MP-9.
/obj/item/weapon/gun/pistol/smart_pistol
name = "\improper SP-13 smart pistol"
desc = "The SP-13 is a IFF-capable sidearm used by the TerraGov Marine Corps. A cutting-edge miniaturization technology allows mounting of a KTLD IFF system on the pistol, albeit at high manufactoring cost and the usual specialized training required to use such a pistol. Unique design feature high-capacity mag on top of the barrel, with integrated sight."
icon = 'icons/obj/items/guns/pistols64.dmi'
name = "\improper SP-13 smart machinepistol"
desc = "The SP-13 is a IFF-capable sidearm used by the TerraGov Marine Corps. Cutting edge advancements in cost cutting allows for anyone to use this pistol without training due to the simplified KTLD system used at the cost of the barrel muzzle device. Uses 9mm."
icon_state = "sp13"
worn_icon_state = "sp13"
caliber = CALIBER_9X19 //codex
max_shells = 30 //codex
fire_sound = 'sound/weapons/guns/fire/tp14.ogg' //same bullets, same sound
max_shells = 40 //codex
fire_sound = 'sound/weapons/guns/fire/tp14.ogg'
reload_sound = 'sound/weapons/guns/interact/tp14_reload.ogg'
default_ammo_type = /obj/item/ammo_magazine/pistol/standard_pistol/smart_pistol
allowed_ammo_types = list(/obj/item/ammo_magazine/pistol/standard_pistol/smart_pistol)
attachable_allowed = list(
/obj/item/attachable/suppressor,
/obj/item/attachable/reddot,
/obj/item/attachable/motiondetector,
/obj/item/attachable/magnetic_harness,
/obj/item/attachable/flashlight,
/obj/item/attachable/verticalgrip,
/obj/item/attachable/lasersight,
/obj/item/attachable/gyro,
/obj/item/attachable/lace,
)

gun_features_flags = GUN_AMMO_COUNTER|GUN_IFF|GUN_SMOKE_PARTICLES
gun_skill_category = SKILL_SMARTGUN
actions_types = list() // Inherits aimmode, but has IFF so..
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC, GUN_FIREMODE_SEMIAUTO)

attachable_offset = list("muzzle_x" = 29, "muzzle_y" = 20,"rail_x" = 13, "rail_y" = 23, "under_x" = 19, "under_y" = 13, "stock_x" = 21, "stock_y" = 17)

aim_slowdown = 0.2
wield_delay = 0.6 SECONDS
aim_slowdown = 0.35
wield_delay = 0.65 SECONDS
fire_delay = 0.2 SECONDS
accuracy_mult = 1.2
accuracy_mult_unwielded = 0.85
scatter = 3
scatter_unwielded = 7
recoil = -2
damage_falloff_mult = 0.75
scatter = 0
scatter_unwielded = 8
recoil_unwielded = 2
2 changes: 1 addition & 1 deletion code/modules/projectiles/magazines/pistols.dm
Original file line number Diff line number Diff line change
Expand Up @@ -261,7 +261,7 @@
caliber = CALIBER_9X19
icon_state = "tx13"
icon_state_mini = "mag_pistol_tube"
max_rounds = 30
max_rounds = 40
w_class = WEIGHT_CLASS_SMALL
default_ammo = /datum/ammo/bullet/pistol/ap

Expand Down
7 changes: 4 additions & 3 deletions code/modules/reqs/supplypacks.dm
Original file line number Diff line number Diff line change
Expand Up @@ -835,11 +835,12 @@ WEAPONS
cost = 500

/datum/supply_packs/weapons/smart_pistol
name = "TX13 smartpistol"
name = "TX13 smart machinepistol"
contains = list(/obj/item/weapon/gun/pistol/smart_pistol)
cost = 150
cost = 250

/datum/supply_packs/weapons/smart_pistol_ammo
name = "TX13 smartpistol ammo"
name = "TX13 smart machinepistol ammo"
contains = list(/obj/item/ammo_magazine/pistol/standard_pistol/smart_pistol)
cost = 10

Expand Down
Binary file modified icons/mob/inhands/guns/pistols_left_1.dmi
Binary file not shown.
Binary file modified icons/mob/inhands/guns/pistols_right_1.dmi
Binary file not shown.
Binary file modified icons/obj/items/ammo/pistol.dmi
Binary file not shown.
Binary file modified icons/obj/items/guns/pistols.dmi
Binary file not shown.
Binary file modified icons/obj/items/guns/pistols64.dmi
Binary file not shown.
Binary file modified icons/obj/items/storage/holster.dmi
Binary file not shown.

0 comments on commit 90d26ba

Please sign in to comment.