From 865ef804adfa3efee074d43469e9f4babb77064e Mon Sep 17 00:00:00 2001 From: Ephemeralis Date: Sun, 17 Dec 2023 02:44:27 +1100 Subject: [PATCH] Use preloaded MODlink scryers in loadout & exosuit fabs (#25604) * Loadout & exosuit fab MODsuit scryers now have NT frequency by default * Prevent MODlink scryers from calling from ghost cafe areas * Condense override formatting Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> * Modularise mechfabricator recipe changes * Reorder include * Code format improvements Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> --------- Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> --- .../code/game/objects/items/devices/mod_link.dm | 13 +++++++++++++ .../research/designs/mechfabricator_designs.dm | 3 +++ .../loadouts/loadout_items/loadout_datum_neck.dm | 2 +- tgstation.dme | 2 ++ 4 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 modular_skyrat/master_files/code/game/objects/items/devices/mod_link.dm create mode 100644 modular_skyrat/master_files/code/modules/research/designs/mechfabricator_designs.dm diff --git a/modular_skyrat/master_files/code/game/objects/items/devices/mod_link.dm b/modular_skyrat/master_files/code/game/objects/items/devices/mod_link.dm new file mode 100644 index 00000000000..4dc4b0fa457 --- /dev/null +++ b/modular_skyrat/master_files/code/game/objects/items/devices/mod_link.dm @@ -0,0 +1,13 @@ +/obj/item/clothing/neck/link_scryer/can_call() + . = ..() + var/mob/living/user = loc + if(!istype(user)) + return FALSE + + var/area/user_area = get_area(user) + + // if we're in a ghost-cafe, we can't call or be called. + // this will still work on the interlink (/area/centcom/interlink) + if(istype(user_area, /area/centcom/holding)) + return FALSE + diff --git a/modular_skyrat/master_files/code/modules/research/designs/mechfabricator_designs.dm b/modular_skyrat/master_files/code/modules/research/designs/mechfabricator_designs.dm new file mode 100644 index 00000000000..148526d93b8 --- /dev/null +++ b/modular_skyrat/master_files/code/modules/research/designs/mechfabricator_designs.dm @@ -0,0 +1,3 @@ +/datum/design/modlink_scryer + // use the loaded modlink scryer object to have the frequency set to NT upon creation + build_path = /obj/item/clothing/neck/link_scryer/loaded diff --git a/modular_skyrat/modules/loadouts/loadout_items/loadout_datum_neck.dm b/modular_skyrat/modules/loadouts/loadout_items/loadout_datum_neck.dm index 617a1523b35..8e24564f85e 100644 --- a/modular_skyrat/modules/loadouts/loadout_items/loadout_datum_neck.dm +++ b/modular_skyrat/modules/loadouts/loadout_items/loadout_datum_neck.dm @@ -287,7 +287,7 @@ GLOBAL_LIST_INIT(loadout_necks, generate_loadout_items(/datum/loadout_item/neck) /datum/loadout_item/neck/link_scryer name = "MODlink Scryer" - item_path = /obj/item/clothing/neck/link_scryer + item_path = /obj/item/clothing/neck/link_scryer/loaded /datum/loadout_item/neck/holobadge name = "Holobadge" diff --git a/tgstation.dme b/tgstation.dme index 5a81afb0d95..77684eb4e90 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -6194,6 +6194,7 @@ #include "modular_skyrat\master_files\code\game\objects\items\wiki_manuals.dm" #include "modular_skyrat\master_files\code\game\objects\items\devices\anomaly_neutralizer.dm" #include "modular_skyrat\master_files\code\game\objects\items\devices\chameleonproj.dm" +#include "modular_skyrat\master_files\code\game\objects\items\devices\mod_link.dm" #include "modular_skyrat\master_files\code\game\objects\items\devices\traitordevices.dm" #include "modular_skyrat\master_files\code\game\objects\items\stacks\sheets\sheet_types.dm" #include "modular_skyrat\master_files\code\game\objects\items\storage\backpack.dm" @@ -6429,6 +6430,7 @@ #include "modular_skyrat\master_files\code\modules\religion\religious_sects.dm" #include "modular_skyrat\master_files\code\modules\research\designs\biogenerator_designs.dm" #include "modular_skyrat\master_files\code\modules\research\designs\limbgrower_designs.dm" +#include "modular_skyrat\master_files\code\modules\research\designs\mechfabricator_designs.dm" #include "modular_skyrat\master_files\code\modules\research\designs\medical_designs.dm" #include "modular_skyrat\master_files\code\modules\research\designs\misc_designs.dm" #include "modular_skyrat\master_files\code\modules\research\designs\tool_designs.dm"