From de31ff77d499ead360850ca2c5f6261b779371c3 Mon Sep 17 00:00:00 2001 From: SkyratBot <59378654+SkyratBot@users.noreply.github.com> Date: Sat, 15 Jan 2022 17:31:47 +0100 Subject: [PATCH] [READY] Adds the Hat Stabilizer Module, inbuilt to the Captain and CC MODsuits (#10687) Co-authored-by: OrionTheFox <76465278+OrionTheFox@users.noreply.github.com> --- .../objects/effects/spawners/random/mod.dm | 1 + code/modules/mod/mod_theme.dm | 2 + code/modules/mod/modules/modules_general.dm | 99 ++++++++++++++++++ icons/obj/clothing/modsuit/mod_modules.dmi | Bin 0 -> 36923 bytes 4 files changed, 102 insertions(+) create mode 100644 icons/obj/clothing/modsuit/mod_modules.dmi diff --git a/code/game/objects/effects/spawners/random/mod.dm b/code/game/objects/effects/spawners/random/mod.dm index 05a1c975c25..53f10441777 100644 --- a/code/game/objects/effects/spawners/random/mod.dm +++ b/code/game/objects/effects/spawners/random/mod.dm @@ -11,6 +11,7 @@ /obj/item/mod/module/tanner, /obj/item/mod/module/balloon, /obj/item/mod/module/paper_dispenser, + /obj/item/mod/module/hat_stabilizer, ) /obj/effect/spawner/random/mod/maint/Initialize(mapload) diff --git a/code/modules/mod/mod_theme.dm b/code/modules/mod/mod_theme.dm index a46dc9e6604..fef66529d38 100644 --- a/code/modules/mod/mod_theme.dm +++ b/code/modules/mod/mod_theme.dm @@ -518,6 +518,7 @@ complexity_max = DEFAULT_MAX_COMPLEXITY + 5 slowdown_inactive = 0.75 slowdown_active = 0.25 + inbuilt_modules = list(/obj/item/mod/module/hat_stabilizer) skins = list( "magnate" = list( HELMET_LAYER = NECK_LAYER, @@ -903,6 +904,7 @@ siemens_coefficient = 0 slowdown_inactive = 0.5 slowdown_active = 0 + inbuilt_modules = list(/obj/item/mod/module/hat_stabilizer) skins = list( "corporate" = list( HELMET_LAYER = null, diff --git a/code/modules/mod/modules/modules_general.dm b/code/modules/mod/modules/modules_general.dm index 91490aeaf44..f38c970477f 100644 --- a/code/modules/mod/modules/modules_general.dm +++ b/code/modules/mod/modules/modules_general.dm @@ -636,3 +636,102 @@ /obj/item/mod/module/plasma_stabilizer/on_unequip() REMOVE_TRAIT(mod.wearer, TRAIT_NOSELFIGNITION, MOD_TRAIT) + +//Finally, https://pipe.miroware.io/5b52ba1d94357d5d623f74aa/mspfa/Nuke%20Ops/Panels/0648.gif can be real: +///Hat Stabilizer - Allows displaying a hat over the MOD-helmet, à la plasmamen helmets. +/obj/item/mod/module/hat_stabilizer + name = "MOD hat stabilizer module" + desc = "A simple set of deployable stands, directly atop one's head; \ + these will deploy under a select few hats to keep them from falling off, allowing them to be worn atop the sealed helmet. \ + You still need to take the hat off your head while the helmet deploys, though. \ + This is a must-have for Nanotrasen Captains, enabling them to show off their authoritative hat even while in their MODsuit." + icon_state = "hat_holder" + incompatible_modules = list(/obj/item/mod/module/hat_stabilizer) + /*Intentionally left inheriting 0 complexity and removable = TRUE; + even though it comes inbuilt into the Magnate/Corporate MODS and spawns in maints, I like the idea of stealing them*/ + ///Currently "stored" hat. No armor or function will be inherited, ONLY the icon. + var/obj/item/clothing/head/attached_hat + ///Whitelist of attachable hats; read note in Initialize() below this line + var/static/list/attachable_hats_list + +/obj/item/mod/module/hat_stabilizer/Initialize() + . = ..() + attachable_hats_list = typecacheof( + //List of attachable hats. Make sure these and their subtypes are all tested, so they dont appear janky. + //This list should also be gimmicky, so captains can have fun. I.E. the Santahat, Pirate hat, Tophat, Chefhat... + //Yes, I said it, the captain should have fun. + list( + /obj/item/clothing/head/caphat, + /obj/item/clothing/head/crown, + /obj/item/clothing/head/centhat, + /obj/item/clothing/head/centcom_cap, + /obj/item/clothing/head/pirate, + /obj/item/clothing/head/santa, + /obj/item/clothing/head/hardhat/reindeer, + /obj/item/clothing/head/sombrero, + /obj/item/clothing/head/kitty, + /obj/item/clothing/head/rabbitears, + /obj/item/clothing/head/festive, + /obj/item/clothing/head/powdered_wig, + /obj/item/clothing/head/weddingveil, + /obj/item/clothing/head/that, + /obj/item/clothing/head/nursehat, + /obj/item/clothing/head/chefhat, + /obj/item/clothing/head/papersack, + )) - /obj/item/clothing/head/caphat/beret + //Need to subtract the beret because its annoying + +/obj/item/mod/module/hat_stabilizer/on_suit_activation() + RegisterSignal(mod.helmet, COMSIG_PARENT_EXAMINE, .proc/add_examine) + RegisterSignal(mod.helmet, COMSIG_PARENT_ATTACKBY, .proc/place_hat) + RegisterSignal(mod.helmet, COMSIG_ATOM_ATTACK_HAND_SECONDARY, .proc/remove_hat) + +/obj/item/mod/module/hat_stabilizer/on_suit_deactivation() + if(attached_hat) //knock off the helmet if its on their head. Or, technically, auto-rightclick it for them; that way it saves us code, AND gives them the bubble + remove_hat(src, mod.wearer) + UnregisterSignal(mod.helmet, COMSIG_PARENT_EXAMINE) + UnregisterSignal(mod.helmet, COMSIG_PARENT_ATTACKBY) + UnregisterSignal(mod.helmet, COMSIG_ATOM_ATTACK_HAND_SECONDARY) + +/obj/item/mod/module/hat_stabilizer/proc/add_examine(datum/source, mob/user, list/base_examine) + SIGNAL_HANDLER + if(attached_hat) + base_examine += span_notice("There's \a [attached_hat] placed on the helmet. Right-click to remove it.") + else + base_examine += span_notice("There's nothing placed on the helmet. Yet.") + +/obj/item/mod/module/hat_stabilizer/proc/place_hat(datum/source, obj/item/hitting_item, mob/user) + SIGNAL_HANDLER + if(!istype(hitting_item, /obj/item/clothing/head)) + return + if(!mod.active) + balloon_alert(user, "suit must be active!") + return + if(!is_type_in_typecache(hitting_item, attachable_hats_list)) + balloon_alert(user, "this hat won't fit!") + return + if(attached_hat) + balloon_alert(user, "hat already attached!") + return + if(mod.wearer.transferItemToLoc(hitting_item, src, force = FALSE, silent = TRUE)) + attached_hat = hitting_item + balloon_alert(user, "hat attached, right click to remove") + mod.wearer.update_inv_back() + +/obj/item/mod/module/hat_stabilizer/generate_worn_overlay() + . = ..() + if(attached_hat) + . += attached_hat.build_worn_icon(default_layer = ABOVE_BODY_FRONT_HEAD_LAYER-0.1, default_icon_file = 'icons/mob/clothing/head.dmi') + +/obj/item/mod/module/hat_stabilizer/proc/remove_hat(datum/source, mob/user) + SIGNAL_HANDLER + . = SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN + if(!attached_hat) + return + attached_hat.forceMove(drop_location()) + if(user.put_in_active_hand(attached_hat)) + balloon_alert(user, "hat removed") + else + balloon_alert_to_viewers("the hat falls to the floor!") + attached_hat = null + mod.wearer.update_inv_back() diff --git a/icons/obj/clothing/modsuit/mod_modules.dmi b/icons/obj/clothing/modsuit/mod_modules.dmi new file mode 100644 index 0000000000000000000000000000000000000000..50798f4845dd15451c564c7573d015a5b0edb240 GIT binary patch literal 36923 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 literal 0 HcmV?d00001