Skip to content

Commit

Permalink
Contractor Stuff - armor booster speed consistency, bank accs, etc. (#…
Browse files Browse the repository at this point in the history
…1812)

* slowdown, armor speed consistency, accs, bugfix

* the exploitables button

* guts baton upgrades, repaths pins

---------

Co-authored-by: Hatterhat <[email protected]>
Co-authored-by: Hatterhat <[email protected]>
  • Loading branch information
3 people authored Feb 6, 2024
1 parent aca085c commit 480bdac
Show file tree
Hide file tree
Showing 12 changed files with 39 additions and 180 deletions.
3 changes: 0 additions & 3 deletions code/__DEFINES/~nova_defines/baton_upgrades.dm

This file was deleted.

1 change: 1 addition & 0 deletions code/modules/jobs/job_types/spawner/ghost_role.dm
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@
/datum/job/ghost_role
title = ROLE_GHOST_ROLE
policy_index = ROLE_GHOST_ROLE
paycheck = PAYCHECK_ZERO // nuh uh
32 changes: 0 additions & 32 deletions modular_nova/modules/contractor/code/datums/contractor_items.dm
Original file line number Diff line number Diff line change
Expand Up @@ -122,38 +122,6 @@
var/datum/round_event_control/event = locate(/datum/round_event_control/communications_blackout) in SSevents.control
event.run_event()

/datum/contractor_item/mod_baton_holster
name = "Baton Holster Module"
desc = "Never worry about dropping your baton again with this holster module! Simply insert your baton into the module, put it in your MODsuit, and the baton will retract whenever dropped."
item = /obj/item/mod/module/baton_holster
item_icon = "wrench" //I cannot find anything better, replace if you find something more fitting
limited = 1
cost = 2

/datum/contractor_item/baton_upgrade_cuff
name = "Baton Cuff Upgrade"
desc = "Using technology reverse-engineered from some alien batons we had lying around, you can now cuff people using your baton with the secondary attack. Due to technical limitations, only cable cuffs and zipties work, and they need to be loaded into the baton manually."
item = /obj/item/baton_upgrade/cuff
item_icon = "bacon" //ditto
limited = 1
cost = 1

/datum/contractor_item/baton_upgrade_mute
name = "Baton Mute Upgrade"
desc = "A relatively new advancement in completely proprietary baton technology, this baton upgrade will mute anyone hit for ten seconds, maximizing at twenty seconds."
item = /obj/item/baton_upgrade/mute
item_icon = "comment-slash"
limited = 1
cost = 2

/datum/contractor_item/baton_upgrade_focus
name = "Baton Focus Upgrade"
desc = "When applied to a baton, it will exhaust the target even more, should they be the target of your current contract."
item = /obj/item/baton_upgrade/focus
item_icon = "eye"
limited = 1
cost = 2

/datum/contractor_item/mod_magnetic_suit
name = "Magnetic Deployment Module"
desc = "A module that utilizes magnets to largely reduce the time needed to deploy and retract your MODsuit."
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
antag_moodlet = /datum/mood_event/focused
show_to_ghosts = TRUE
suicide_cry = "FOR THE CONTRACTS!!"
view_exploitables = TRUE
/// The outfit the contractor is equipped with
var/contractor_outfit = /datum/outfit/contractor

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
mind.active = TRUE
mind.transfer_to(operative)
mind.add_antag_datum(/datum/antagonist/contractor)
mind.handle_exploitables()

message_admins("[ADMIN_LOOKUPFLW(operative)] has been made into [src] by an event.")
log_game("[key_name(operative)] was spawned as a [src] by an event.")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,13 @@

id_trim = /datum/id_trim/chameleon/contractor

/datum/outfit/contractor/post_equip(mob/living/carbon/human/user, visualsOnly)
. = ..()
if(visualsOnly)
return
handlebank(user)


/datum/outfit/contractor_preview
name = "Syndicate Contractor (Preview only)"

Expand Down
107 changes: 0 additions & 107 deletions modular_nova/modules/contractor/code/items/baton.dm

This file was deleted.

12 changes: 6 additions & 6 deletions modular_nova/modules/contractor/code/items/modsuit/modsuit.dm
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
/obj/item/mod/module/tether,
)
default_pins = list(
/obj/item/mod/module/armor_booster,
/obj/item/mod/module/armor_booster/contractor,
/obj/item/mod/module/tether,
)

Expand All @@ -30,23 +30,23 @@
/obj/item/mod/module/storage/syndicate,
)
default_pins = list(
/obj/item/mod/module/armor_booster,
/obj/item/mod/module/armor_booster/contractor,
/obj/item/mod/module/jetpack,
/obj/item/mod/module/baton_holster,
/obj/item/mod/module/baton_holster/preloaded,
)

/obj/item/mod/control/pre_equipped/contractor/upgraded/adminbus
applied_modules = list(
/obj/item/mod/module/baton_holster/preloaded/upgraded,
/obj/item/mod/module/baton_holster/preloaded,
/obj/item/mod/module/emp_shield,
/obj/item/mod/module/jetpack/advanced,
/obj/item/mod/module/scorpion_hook,
/obj/item/mod/module/springlock/contractor/no_complexity,
/obj/item/mod/module/storage/syndicate,
)
default_pins = list(
/obj/item/mod/module/armor_booster,
/obj/item/mod/module/jetpack,
/obj/item/mod/module/armor_booster/contractor,
/obj/item/mod/module/jetpack/advanced,
/obj/item/mod/module/baton_holster/preloaded,
/obj/item/mod/module/scorpion_hook,
)
Expand Down
31 changes: 12 additions & 19 deletions modular_nova/modules/contractor/code/items/modsuit/modules.dm
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
/obj/item/mod/module/baton_holster
name = "MOD baton holster module"
desc = "A module installed into the chest of a MODSuit, this allows you \
to retrieve an inserted baton from the suit at will. Insert a baton \
by hitting the module, while it is removed from the suit, with the baton."
desc = "A module installed into the forearm and palm of a MODsuit, this allows you \
to retrieve an inserted baton from the suit at will, and provides the benefit of being \
magnetically locked, making it near-impossible to force out of a user's hands. \
Insert a baton by hitting the module, while it is removed from the suit, with the baton."
icon_state = "holster"
icon = 'modular_nova/modules/contractor/icons/modsuit_modules.dmi'
module_type = MODULE_ACTIVE
Expand All @@ -21,12 +22,6 @@
return
balloon_alert(user, "[attacking_item] inserted")
eaten_baton = TRUE
for(var/obj/item/melee/baton/telescopic/contractor_baton/device_baton as anything in src)
for(var/obj/item/baton_upgrade/original_upgrade in attacking_item)
var/obj/item/baton_upgrade/new_upgrade = new original_upgrade.type(device_baton)
device_baton.add_upgrade(new_upgrade)
for(var/obj/item/restraints/handcuffs/cable/baton_cuffs in attacking_item)
baton_cuffs.forceMove(device_baton)
qdel(attacking_item)

/obj/item/mod/module/baton_holster/on_activation()
Expand All @@ -37,21 +32,19 @@

/obj/item/mod/module/baton_holster/preloaded
eaten_baton = TRUE
device = /obj/item/melee/baton/telescopic/contractor_baton

/obj/item/mod/module/baton_holster/preloaded/upgraded
device = /obj/item/melee/baton/telescopic/contractor_baton/upgraded

/obj/item/mod/module/chameleon/contractor // zero complexity module to match pre-TGification
removable = FALSE
complexity = 0

/obj/item/mod/module/armor_booster/contractor // Much flatter distribution because contractor suit gets a shitton of armor already
armor_mod = /datum/armor/contract_booster
speed_added = -0.5 //Bulky as shit
desc = "An embedded set of armor plates, allowing the suit's already extremely high protection \
to be increased further. However, the plating, while deployed, will slow down the user \
and make the suit unable to vacuum seal so this extra armor provides zero ability for extravehicular activity while deployed."
desc = "An integrated set of auxiliary armor plates, allowing the suit's modest protection to be increased further. \
However, the plating cannot deploy with the suit's vacuum sealing components, and thus provides zero ability for extravehicular activity while deployed."

// 35 melee 40 bullet 35 laser 35 energy when deployed
// compare/contrast w/ syndicate mod:
// 40 melee 50 bullet 30 laser 30 energy
/datum/armor/contract_booster
melee = 20
bullet = 20
Expand All @@ -60,8 +53,8 @@

/obj/item/mod/module/springlock/contractor
name = "MOD magnetic deployment module"
desc = "A much more modern version of a springlock system. \
This is a module that uses magnets to speed up the deployment and retraction time of your MODsuit."
desc = "A much more modern version of a springlock system, utilizing magnets to speed up the deployment and retraction time of a MODsuit \
with a distinct lack of ability to snap into place when exposed to moisture."
icon_state = "magnet"
icon = 'modular_nova/modules/contractor/icons/modsuit_modules.dmi'

Expand Down
22 changes: 11 additions & 11 deletions modular_nova/modules/contractor/code/items/modsuit/theme.dm
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
/datum/mod_theme/contractor
name = "contractor"
desc = "A top-tier MODSuit developed with cooperation of Cybersun Industries and the Gorlex Marauders, a favorite of Syndicate Contractors."
extended_desc = "A rare depart from the Syndicate's usual color scheme, the Contractor MODsuit is produced and manufactured \
for specialty contractors. The build is a streamlined layering consisting of shaped Plastitanium, \
and composite ceramic, while the under suit is lined with a lightweight Kevlar and durathread hybrid weave \
to provide ample protection to the user where the plating doesn't, with an illegal onboard electric powered \
ablative shield module to provide resistance against conventional energy firearms. \
In addition, it has an in-built chameleon system, allowing you to disguise the suit while undeployed. \
A small tag hangs off of it reading; 'Property of the Gorlex Marauders, with assistance from Cybersun Industries. \
All rights reserved, tampering with suit will void warranty."
desc = "A MODSuit developed as a joint venture of Cybersun Industries and the Gorlex Marauders; standard-issue for Syndicate contractors."
extended_desc = "A rare departure from the Syndicate's usual color scheme, the Contractor MODsuit is produced and manufactured \
for specialty contractors, built for travelling and fighting light, providing no encumberance when deactivated, but slight encumberance otherwise. \
The external plating is composed of streamlined layers of shaped plastitanium and composite ceramic, \
while the undersuit is lined with an ablative kevlar hybrid weave to provide ample protection to the user where the plating doesn't. \
Unfortunately, the sacrifices made for a lightweight build mean that it is slightly less armored than its crimson siblings. \
In addition, it has an integrated chameleon system, allowing you to disguise the suit while undeployed. \
A small tag hangs off of it, reading 'Property of the Gorlex Marauders, with assistance from Cybersun Industries. \
All rights reserved, tampering with suit will void warranty.'"
default_skin = "contractor"
armor_type = /datum/armor/mod_theme_contractor
resistance_flags = FIRE_PROOF
atom_flags = PREVENT_CONTENTS_EXPLOSION_1
max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT
siemens_coefficient = 0
slowdown_inactive = 0.5
slowdown_active = 0
slowdown_inactive = 0 // for the chameleon module synergy
slowdown_active = 0.5
ui_theme = "syndicate"
inbuilt_modules = list(/obj/item/mod/module/armor_booster/contractor, /obj/item/mod/module/chameleon/contractor)
allowed_suit_storage = list(
Expand Down
Binary file not shown.
2 changes: 0 additions & 2 deletions tgstation.dme
Original file line number Diff line number Diff line change
Expand Up @@ -406,7 +406,6 @@
#include "code\__DEFINES\~nova_defines\automapper.dm"
#include "code\__DEFINES\~nova_defines\banning.dm"
#include "code\__DEFINES\~nova_defines\barsigns.dm"
#include "code\__DEFINES\~nova_defines\baton_upgrades.dm"
#include "code\__DEFINES\~nova_defines\cargo_import_companies.dm"
#include "code\__DEFINES\~nova_defines\cells.dm"
#include "code\__DEFINES\~nova_defines\chat.dm"
Expand Down Expand Up @@ -6959,7 +6958,6 @@
#include "modular_nova\modules\contractor\code\datums\midround\outfit.dm"
#include "modular_nova\modules\contractor\code\datums\midround\ruleset.dm"
#include "modular_nova\modules\contractor\code\datums\midround\trim.dm"
#include "modular_nova\modules\contractor\code\items\baton.dm"
#include "modular_nova\modules\contractor\code\items\boxes.dm"
#include "modular_nova\modules\contractor\code\items\hook.dm"
#include "modular_nova\modules\contractor\code\items\misc.dm"
Expand Down

0 comments on commit 480bdac

Please sign in to comment.