From 44db14a47eb54685a5af4f4fe00022f9331601d2 Mon Sep 17 00:00:00 2001 From: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> Date: Wed, 21 May 2025 18:51:49 -0400 Subject: [PATCH] AI Programs: Nanosurgeon Adjustment (#29279) * nanosurgeon adjustment * Whoops * Makes moving only work at max level, prompts target when they're a target --------- Co-authored-by: warriorstar-orion --- code/modules/mob/living/silicon/ai/ai_programs.dm | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/silicon/ai/ai_programs.dm b/code/modules/mob/living/silicon/ai/ai_programs.dm index 25c95d517f1..42f20af4998 100644 --- a/code/modules/mob/living/silicon/ai/ai_programs.dm +++ b/code/modules/mob/living/silicon/ai/ai_programs.dm @@ -748,9 +748,20 @@ revert_cast() return var/mob/living/silicon/ai/AI = user - AI.play_sound_remote(target, 'sound/goonstation/misc/fuse.ogg', 50) + AI.play_sound_remote(target, 'sound/magic/magic_block.ogg', 50) camera_beam(target, "medbeam", 'icons/effects/beam.dmi', 5 SECONDS) - if(do_after_once(AI, 5 SECONDS, target = target, allow_moving = TRUE)) + // Only allow moving targets if the program is max level. + var/allow_moving = FALSE + if(spell_level == level_max) + allow_moving = TRUE + to_chat(target, "You feel a flow of healing nanites stream to you from a nearby camera.") + else + to_chat(target, "You feel a flow of healing nanites stream to you from a nearby camera. Hold still for them to work!") + if(do_after(AI, 5 SECONDS, target = target, allow_moving_target = allow_moving)) + // Check camera vision again. + if(!check_camera_vision(user, target)) + revert_cast() + return AI.program_picker.nanites -= 75 var/damage_healed = 20 + (min(30, (10 * spell_level))) target.heal_overall_damage(damage_healed, damage_healed)