From f4f2dd31bfe6ef1d9201fb7757238b6935485441 Mon Sep 17 00:00:00 2001 From: EgorDinamit <53223414+EgorDinamit@users.noreply.github.com> Date: Tue, 13 Feb 2024 18:52:11 +0300 Subject: [PATCH] Adds quantum keycards (#547) --- baystation12.dme | 1 + code/game/machinery/quantum_pad.dm | 12 +++++ .../objects/items/devices/quantum_keycard.dm | 49 ++++++++++++++++++ .../research/designs/designs_bluespace.dm | 9 ++++ icons/obj/device.dmi | Bin 39553 -> 40369 bytes 5 files changed, 71 insertions(+) create mode 100644 code/game/objects/items/devices/quantum_keycard.dm diff --git a/baystation12.dme b/baystation12.dme index 9e229bc0498..8856939f6ba 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -985,6 +985,7 @@ #include "code\game\objects\items\devices\paint_sprayer.dm" #include "code\game\objects\items\devices\personal_shield.dm" #include "code\game\objects\items\devices\powersink.dm" +#include "code\game\objects\items\devices\quantum_keycard.dm" #include "code\game\objects\items\devices\remote_weapon_controller.dm" #include "code\game\objects\items\devices\slide_projector.dm" #include "code\game\objects\items\devices\spy_bug.dm" diff --git a/code/game/machinery/quantum_pad.dm b/code/game/machinery/quantum_pad.dm index ae2a33f2a3a..a75a7646feb 100644 --- a/code/game/machinery/quantum_pad.dm +++ b/code/game/machinery/quantum_pad.dm @@ -82,6 +82,18 @@ anchored = !anchored return TRUE + if(istype(I, /obj/item/quantum_keycard)) + var/obj/item/quantum_keycard/K = I + if(K.qpad) + to_chat(user, SPAN_NOTICE("You insert [K] into [src]'s card slot, activating it.")) + physical_attack_hand(user, K.qpad) + else + to_chat(user, SPAN_NOTICE("You insert [K] into [src]'s card slot, initiating the link procedure.")) + if(do_after(user, 40, target = src)) + to_chat(user, SPAN_NOTICE("You complete the link between [K] and [src].")) + K.LinkPad(src) + return TRUE + return ..() /obj/machinery/quantumpad/physical_attack_hand(mob/user, obj/machinery/quantumpad/target_pad = linked_pad) diff --git a/code/game/objects/items/devices/quantum_keycard.dm b/code/game/objects/items/devices/quantum_keycard.dm new file mode 100644 index 00000000000..69aefa81992 --- /dev/null +++ b/code/game/objects/items/devices/quantum_keycard.dm @@ -0,0 +1,49 @@ +/obj/item/quantum_keycard + name = "quantum keycard" + desc = "A keycard able to link to a quantum pad's particle signature, allowing other quantum pads to travel there instead of their linked pad." + icon = 'icons/obj/device.dmi' + icon_state = "quantum_keycard" + item_state = "card-id" + w_class = ITEM_SIZE_TINY + origin_tech = list(TECH_BLUESPACE = 6, TECH_ENGINEERING = 5, TECH_DATA = 5) + var/obj/machinery/quantumpad/qpad = null + +/obj/item/quantum_keycard/examine(mob/user) + . = ..() + if(qpad) + to_chat(user, "It's currently linked to a [qpad.name].") + to_chat(user, SPAN_NOTICE("Alt-click to unlink the keycard.")) + else + to_chat(user, SPAN_NOTICE("Insert [src] into an active quantum pad to link it.")) + +/obj/item/quantum_keycard/AltClick(mob/living/user) + if(!istype(user) || user.incapacitated() || !Adjacent(user)) + return + to_chat(user, SPAN_NOTICE("You start pressing [src]'s unlink button...")) + if(do_after(user, 40, target = src)) + to_chat(user, SPAN_NOTICE("The keycard beeps twice and disconnects the quantum link.")) + UnlinkPad() + +/obj/item/quantum_keycard/on_update_icon() + if(qpad) + icon_state = "quantum_keycard_on" + else + icon_state = initial(icon_state) + +/obj/item/quantum_keycard/proc/LinkPad(obj/machinery/quantumpad/pad) + if(!istype(pad)) + return + + qpad = pad + update_icon() + RegisterSignal(pad, COMSIG_PARENT_QDELETING, .proc/PadDeleted) + +/obj/item/quantum_keycard/proc/UnlinkPad() + UnregisterSignal(qpad, COMSIG_PARENT_QDELETING) + qpad = null + update_icon() + +/obj/item/quantum_keycard/proc/PadDeleted() + SIGNAL_HANDLER + visible_message(SPAN_WARNING("\The [src] beeps as it loses connection to its pad!")) + UnlinkPad() diff --git a/code/modules/research/designs/designs_bluespace.dm b/code/modules/research/designs/designs_bluespace.dm index 1b7b5b235bb..cf946e662f9 100644 --- a/code/modules/research/designs/designs_bluespace.dm +++ b/code/modules/research/designs/designs_bluespace.dm @@ -46,3 +46,12 @@ materials = list(MATERIAL_GOLD = 3000, MATERIAL_DIAMOND = 1500, MATERIAL_URANIUM = 250, MATERIAL_PLASTIC = 250) build_path = /obj/item/storage/backpack/holding/duffle sort_string = "VAFAB" + +/datum/design/item/bluespace/quantum_keycard + name = "quantum keycard" + desc = "A keycard able to link to a quantum pad's particle signature, allowing other quantum pads to travel there instead of their linked pad." + id = "quantum_keycard" + req_tech = list(TECH_BLUESPACE = 6, TECH_ENGINEERING = 5, TECH_DATA = 5) + materials = list(MATERIAL_PLASTIC = 3000, MATERIAL_DIAMOND = 1000, MATERIAL_URANIUM = 500) + build_path = /obj/item/quantum_keycard + sort_string = "VAGAA" diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index cc5b06bcd6338c91e873fa7843515dbe69f3fdd2..69a8606b64bfc507e169e689c531e075bffb50b0 100644 GIT binary patch delta 20041 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 UWg0K4yZ^;ZZ5d;T0h3Z$3h@)G~vt~u$Y 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 z zLS(E(KOr*{(E$NAf2&_zT@6P^@h2g;oR6YM&7Mtxl!KL#u` zr!HK_kcZtcey|hvpl6f0c*hTR;X1Qr7jc3DZj|SZ4F<^p_3WY*}`ntL%OOEpL^48r~X8}?) za->iCf7YtcA&2?uBZT={17yI2)swh=8xu8oidlC(I*1tk5`-?dy+*$P88AT*1YssyWxnTk z*=L_OvqmLlH3Wl_un2-62%ALiBrLIWRtSP1A_#&o0U0ns5ClQU!2bvCzqpWBeG2;k O0000