Skip to content

Commit

Permalink
Makes Deathsquad terrifying once more. (#13793)
Browse files Browse the repository at this point in the history
* updates SG, might consider something for belt

* Gives all DS a pulse rifle

DS enjoyers rejoice!

* innate mag harn + fix invisi-boot

* fills up backpack, flamer attach, bigger xfuel tank

* Mateba jumpsuit, touches pulse + rocket, adds implant

* delete comments + weird spacing
  • Loading branch information
Xander3359 authored Aug 16, 2023
1 parent 29ae2b9 commit 1bae0ed
Show file tree
Hide file tree
Showing 19 changed files with 206 additions and 133 deletions.
13 changes: 4 additions & 9 deletions code/datums/emergency_calls/deathsquad.dm
Original file line number Diff line number Diff line change
Expand Up @@ -40,18 +40,13 @@
to_chat(H, "<p style='font-size:1.5em'>[span_notice("You are the leader of the elite Asset Protection commando squad.")]</p>")
return

if(prob(30))
var/datum/job/J = SSjob.GetJobType(/datum/job/deathsquad/standard/energy)
if(prob(70))
var/datum/job/J = SSjob.GetJobType(/datum/job/deathsquad/standard)
H.apply_assigned_role_to_spawn(J)
to_chat(H, "<p style='font-size:1.5em'>[span_notice("You are a member of the elite Asset Protection commando squad.")]</p>")
return

if(prob(30))
var/datum/job/J = SSjob.GetJobType(/datum/job/deathsquad/gunner)
H.apply_assigned_role_to_spawn(J)
to_chat(H, "<p style='font-size:1.5em'>[span_notice("You are a member of the elite Asset Protection commando squad.")]</p>")
return

var/datum/job/J = SSjob.GetJobType(/datum/job/deathsquad/standard)
var/datum/job/J = SSjob.GetJobType(/datum/job/deathsquad/gunner)
H.apply_assigned_role_to_spawn(J)
to_chat(H, "<p style='font-size:1.5em'>[span_notice("You are a member of the elite Asset Protection commando squad.")]</p>")
return
216 changes: 99 additions & 117 deletions code/datums/jobs/job/deathsquad.dm

Large diffs are not rendered by default.

49 changes: 49 additions & 0 deletions code/datums/skills.dm
Original file line number Diff line number Diff line change
Expand Up @@ -605,6 +605,55 @@ engineer, construction, leadership, medical, surgery, pilot, police, powerloader
powerloader = SKILL_POWERLOADER_MASTER
large_vehicle = SKILL_LARGE_VEHICLE_TRAINED

/* Deathsquad */
/datum/skills/deathsquad
name = "Deathsquad Elite"
cqc = SKILL_CQC_TRAINED
construction = SKILL_CONSTRUCTION_METAL
firearms = SKILL_FIREARMS_TRAINED
smartgun = SKILL_SMART_TRAINED
leadership = SKILL_LEAD_BEGINNER
melee_weapons = SKILL_MELEE_TRAINED
pistols = SKILL_PISTOLS_TRAINED
smgs = SKILL_SMGS_TRAINED
rifles = SKILL_RIFLES_TRAINED
shotguns = SKILL_SHOTGUNS_TRAINED
heavy_weapons = SKILL_HEAVY_WEAPONS_TRAINED
medical = SKILL_MEDICAL_PRACTICED
surgery = SKILL_SURGERY_TRAINED

/datum/skills/smartgunner/deathsquad
name = "Deathsquad Elite Gunner"
cqc = SKILL_CQC_TRAINED
construction = SKILL_CONSTRUCTION_METAL
firearms = SKILL_FIREARMS_TRAINED
smartgun = SKILL_SMART_MASTER
leadership = SKILL_LEAD_BEGINNER
melee_weapons = SKILL_MELEE_TRAINED
pistols = SKILL_PISTOLS_TRAINED
smgs = SKILL_SMGS_TRAINED
rifles = SKILL_RIFLES_TRAINED
shotguns = SKILL_SHOTGUNS_TRAINED
heavy_weapons = SKILL_HEAVY_WEAPONS_TRAINED
medical = SKILL_MEDICAL_PRACTICED
surgery = SKILL_SURGERY_TRAINED

/datum/skills/sl/deathsquad
name = "Deathsquad Elite Captain"
cqc = SKILL_CQC_TRAINED
construction = SKILL_CONSTRUCTION_METAL
firearms = SKILL_FIREARMS_TRAINED
smartgun = SKILL_SMART_TRAINED
leadership = SKILL_LEAD_MASTER
melee_weapons = SKILL_MELEE_TRAINED
pistols = SKILL_PISTOLS_TRAINED
smgs = SKILL_SMGS_TRAINED
rifles = SKILL_RIFLES_TRAINED
shotguns = SKILL_SHOTGUNS_TRAINED
heavy_weapons = SKILL_HEAVY_WEAPONS_TRAINED
medical = SKILL_MEDICAL_PRACTICED
surgery = SKILL_SURGERY_TRAINED

/*====== I.o.M. ======*/

/datum/skills/imperial
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/items/storage/pouch.dm
Original file line number Diff line number Diff line change
Expand Up @@ -341,7 +341,7 @@
fill_type = /obj/item/ammo_magazine/rifle/ap
fill_number = 3

/obj/item/storage/pouch/magazine/drum
/obj/item/storage/pouch/magazine/drum //Deprecated from old DS loadout, maybe consider reworking it before giving it to anyone else -Xander
name = "drum magazine pouch"
desc = "It can contain one drum magazine."
icon_state = "large_ammo_drum"
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/items/weapons/shields.dm
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@
to_chat(user, span_notice("[src] is now active."))
else
force = initial(force)
w_class = WEIGHT_CLASS_TINY
w_class = WEIGHT_CLASS_SMALL
playsound(user, 'sound/weapons/saberoff.ogg', 25, TRUE)
to_chat(user, span_notice("[src] can now be concealed."))
add_fingerprint(user, "turned [active ? "on" : "off"]")
Expand Down
1 change: 1 addition & 0 deletions code/modules/clothing/modular_armor/attachments/storage.dm
Original file line number Diff line number Diff line change
Expand Up @@ -380,6 +380,7 @@
/obj/item/armor_module/storage/boot/som_knife/Initialize(mapload)
. = ..()
new /obj/item/attachable/bayonetknife/som(storage)

/obj/item/armor_module/storage/helmet
name = "Jaeger Pattern helmet storage"
desc = "A small set of bands and straps to allow easy storage of small items."
Expand Down
9 changes: 7 additions & 2 deletions code/modules/clothing/modular_armor/attachments/uniform.dm
Original file line number Diff line number Diff line change
Expand Up @@ -116,8 +116,6 @@
icon_state = "holster"
storage = /obj/item/storage/internal/holster

/obj/item/armor_module/storage/uniform/holster/freelancer

/obj/item/armor_module/storage/uniform/holster/freelancer/Initialize(mapload)
. = ..()
new /obj/item/weapon/gun/pistol/g22(storage)
Expand All @@ -139,6 +137,13 @@
new /obj/item/ammo_magazine/pistol/highpower(storage)
new /obj/item/ammo_magazine/pistol/highpower(storage)

/obj/item/armor_module/storage/uniform/holster/deathsquad/Initialize(mapload)
. = ..()
new /obj/item/ammo_magazine/revolver/mateba(storage)
new /obj/item/ammo_magazine/revolver/mateba(storage)
new /obj/item/ammo_magazine/revolver/mateba(storage)
new /obj/item/weapon/gun/revolver/mateba(storage)

/obj/item/storage/internal/holster
storage_slots = 4
max_storage_space = 10
Expand Down
4 changes: 3 additions & 1 deletion code/modules/clothing/shoes/marine_shoes.dm
Original file line number Diff line number Diff line change
Expand Up @@ -85,10 +85,11 @@
flags_inventory = NOSLIPPING
siemens_coefficient = 0.6

/obj/item/clothing/shoes/veteran/pmc/commando
/obj/item/clothing/shoes/marine/deathsquad
name = "\improper PMC commando boots"
desc = "A pair of heavily armored, acid-resistant boots."
icon_state = "commando_boots"
item_state = "commando_boots"
permeability_coefficient = 0.01
flags_armor_protection = FEET
soft_armor = list(MELEE = 40, BULLET = 20, LASER = 20, ENERGY = 20, BOMB = 30, BIO = 20, FIRE = 20, ACID = 25)
Expand All @@ -98,6 +99,7 @@
flags_heat_protection = FEET
siemens_coefficient = 0.2
resistance_flags = UNACIDABLE
starting_attachments = list(/obj/item/armor_module/storage/boot/full)

/*=========Imperium=========*/

Expand Down
1 change: 1 addition & 0 deletions code/modules/clothing/under/marine_uniform.dm
Original file line number Diff line number Diff line change
Expand Up @@ -307,6 +307,7 @@
icon_state = "commando_jumpsuit"
soft_armor = list(MELEE = 10, BULLET = 10, LASER = 10, ENERGY = 20, BOMB = 10, BIO = 10, FIRE = 20, ACID = 20)
has_sensor = 0
starting_attachments = list(/obj/item/armor_module/storage/uniform/holster/deathsquad)

/obj/item/clothing/under/marine/veteran/UPP
name = "\improper USL fatigues"
Expand Down
1 change: 1 addition & 0 deletions code/modules/clothing/under/under.dm
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
/obj/item/armor_module/storage/uniform/holster/freelancer,
/obj/item/armor_module/storage/uniform/holster/vp,
/obj/item/armor_module/storage/uniform/holster/highpower,
/obj/item/armor_module/storage/uniform/holster/deathsquad,
/obj/item/armor_module/armor/badge,
/obj/item/armor_module/armor/cape,
/obj/item/armor_module/armor/cape/kama,
Expand Down
2 changes: 1 addition & 1 deletion code/modules/projectiles/ammo_datums.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2744,7 +2744,7 @@ GLOBAL_LIST_INIT(no_sticky_resin, typecacheof(list(/obj/item/clothing/mask/faceh
name = "pulse bolt"
icon_state = "pulse2"
hud_state = "pulse"
damage = 90 // this is gotta hurt...
damage = 45 // this is gotta hurt...
max_range = 40
penetration = 100
sundering = 100
Expand Down
9 changes: 8 additions & 1 deletion code/modules/projectiles/guns/energy.dm
Original file line number Diff line number Diff line change
Expand Up @@ -206,14 +206,21 @@
default_ammo_type = /obj/item/cell/lasgun/pulse
allowed_ammo_types = list(/obj/item/cell/lasgun/pulse)

flags_equip_slot = ITEM_SLOT_BACK|ITEM_SLOT_BELT
flags_gun_features = GUN_CAN_POINTBLANK|GUN_AMMO_COUNTER|GUN_ENERGY|GUN_AMMO_COUNT_BY_SHOTS_REMAINING|GUN_NO_PITCH_SHIFT_NEAR_EMPTY
attachable_offset = list("muzzle_x" = 32, "muzzle_y" = 18,"rail_x" = 12, "rail_y" = 23, "under_x" = 23, "under_y" = 15, "stock_x" = 22, "stock_y" = 12)
ammo_level_icon = "m19c4"
fire_delay = 8
fire_delay = 4
burst_delay = 0.2 SECONDS
accuracy_mult = 1.15
accuracy_mult_unwielded = 0.95
scatter_unwielded = 25
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
gun_firemode = GUN_FIREMODE_AUTOMATIC

/obj/item/weapon/gun/energy/lasgun/pulse/Initialize(mapload, spawn_empty)
. = ..()
AddComponent(/datum/component/reequip, list(SLOT_BELT)) //Innate mag harness, no more free pulse rifles for you >:(

//-------------------------------------------------------
//A practice version of M43, only for memes
Expand Down
11 changes: 11 additions & 0 deletions code/modules/projectiles/guns/flamer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -382,6 +382,7 @@
/obj/item/attachable/stock/t84stock,
/obj/item/attachable/flamer_nozzle,
/obj/item/attachable/flamer_nozzle/wide,
/obj/item/attachable/flamer_nozzle/wide/red,
/obj/item/attachable/flamer_nozzle/long,
/obj/item/weapon/gun/flamer/hydro_cannon,
)
Expand Down Expand Up @@ -416,6 +417,16 @@
/obj/item/attachable/magnetic_harness,
)

/obj/item/weapon/gun/flamer/big_flamer/marinestandard/deathsquad
allowed_ammo_types = list(/obj/item/ammo_magazine/flamer_tank/large/X/deathsquad)
default_ammo_type = /obj/item/ammo_magazine/flamer_tank/large/X/deathsquad
starting_attachment_types = list(
/obj/item/attachable/flamer_nozzle/wide/red,
/obj/item/attachable/stock/t84stock,
/obj/item/weapon/gun/flamer/hydro_cannon,
/obj/item/attachable/magnetic_harness,
)

/turf/proc/ignite(fire_lvl, burn_lvl, f_color, fire_stacks = 0, fire_damage = 0)
//extinguish any flame present
var/obj/flamer_fire/old_fire = locate(/obj/flamer_fire) in src
Expand Down
3 changes: 3 additions & 0 deletions code/modules/projectiles/guns/rifles.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1245,6 +1245,9 @@
/obj/item/weapon/gun/rifle/standard_smartmachinegun/pmc
starting_attachment_types = list(/obj/item/attachable/stock/sgstock, /obj/item/attachable/sgbarrel, /obj/item/attachable/motiondetector, /obj/item/attachable/lasersight)

/obj/item/weapon/gun/rifle/standard_smartmachinegun/deathsquad
starting_attachment_types = list(/obj/item/attachable/stock/sgstock, /obj/item/attachable/sgbarrel, /obj/item/attachable/magnetic_harness, /obj/item/attachable/lasersight)

/obj/item/weapon/gun/rifle/standard_smartmachinegun/patrol
starting_attachment_types = list(/obj/item/attachable/stock/sgstock, /obj/item/attachable/sgbarrel, /obj/item/attachable/motiondetector, /obj/item/attachable/verticalgrip)

Expand Down
8 changes: 8 additions & 0 deletions code/modules/projectiles/guns/specialist.dm
Original file line number Diff line number Diff line change
Expand Up @@ -723,6 +723,14 @@ Note that this means that snipers will have a slowdown of 3, due to the scope

placed_overlay_iconstate = "thermo"

/obj/item/weapon/gun/launcher/rocket/m57a4/deathsquad
attachable_allowed = list(
/obj/item/attachable/buildasentry,
/obj/item/attachable/shoulder_mount,
/obj/item/attachable/magnetic_harness,
)
starting_attachment_types = list(/obj/item/attachable/magnetic_harness)

/obj/item/weapon/gun/launcher/rocket/m57a4/t57
name = "\improper RL-57 quad thermobaric launcher"
desc = "The RL-57 is posssibly the most awful man portable weapon. It is a 4-barreled missile launcher capable of burst-firing 4 thermobaric missiles with nearly no force to the rocket. Enough said."
Expand Down
7 changes: 7 additions & 0 deletions code/modules/projectiles/magazines/flamer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,13 @@
icon_state_mini = "tank_blue"
dispenser_type = /obj/structure/reagent_dispensers/fueltank/xfuel

/obj/item/ammo_magazine/flamer_tank/large/X/deathsquad
name = "Gargantuan flamethrower X-tank"
desc = "Using Bluespace technology, Nanotrasen has managed to fit in way more x-fuel than you would ever hope to need in a single lifetime into this specialized tank."
max_rounds = 225
current_rounds = 225
reload_delay = 2 SECONDS

/obj/item/ammo_magazine/flamer_tank/backtank
name = "back fuel tank"
desc = "A specialized fuel tank for use with the FL-84 flamethrower and FL-240 incinerator unit."
Expand Down
1 change: 1 addition & 0 deletions code/modules/projectiles/magazines/specialist.dm
Original file line number Diff line number Diff line change
Expand Up @@ -249,6 +249,7 @@
icon_state = "quad_rocket"
max_rounds = 4
default_ammo = /datum/ammo/rocket/wp/quad/ds
reload_delay = 2 SECONDS

/obj/item/ammo_magazine/internal/launcher/rocket/m57a4
desc = "The internal tube of an RL-57 thermobaric launcher."
Expand Down
Binary file modified icons/mob/clothing/feet.dmi
Binary file not shown.
Binary file modified icons/obj/clothing/shoes.dmi
Binary file not shown.

0 comments on commit 1bae0ed

Please sign in to comment.