diff --git a/modular_doppler/modsuit_pda_app/tap_to_control.dm b/modular_doppler/modsuit_pda_app/tap_to_control.dm new file mode 100644 index 0000000000000..4686a90d09bbe --- /dev/null +++ b/modular_doppler/modsuit_pda_app/tap_to_control.dm @@ -0,0 +1,23 @@ +/datum/computer_file/program/maintenance/modsuit_control/tap(atom/tapped_atom, mob/living/user, params) + . = ..() + + if(!ishuman(tapped_atom)) + return + var/mob/living/carbon/human/john_modsuit = tapped_atom + for(var/obj/item/mod/control/target_suit in john_modsuit.contents) + if(!do_after(user, 5 SECONDS, john_modsuit)) + return + var/response = tgui_alert( + john_modsuit, + "[user] is attempting to link their PDA to your MOD, [target_suit]. This gives them TOTAL control of your suit, do you let them?", + "Connection Attempt", + list( + "Connect", + "Refuse", + ), + ) + if(response == "Connect") + sync_modsuit(target_suit, user) + playsound(target_suit, 'sound/effects/industrial_scan/industrial_scan2.ogg', 50, TRUE) + else + return diff --git a/tgstation.dme b/tgstation.dme index a6670aafba7e4..a9267acdaa3ce 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -6842,6 +6842,7 @@ #include "modular_doppler\lore\overrides\station_traits\neutral_traits.dm" #include "modular_doppler\lore\overrides\station_traits\positive_traits.dm" #include "modular_doppler\loud_asay\code\loud_asay.dm" +#include "modular_doppler\modsuit_pda_app\tap_to_control.dm" #include "modular_doppler\modular_antagonists\_dynamic_rulesets.dm" #include "modular_doppler\modular_antagonists\changeling\changeling.dm" #include "modular_doppler\modular_antagonists\datums\antag_recipes.dm"