diff --git a/code/modules/mob/living/silicon/robot/robot_animation_vr.dm b/code/modules/mob/living/silicon/robot/robot_animation_vr.dm index 6d1c66be63c..8af106bb207 100644 --- a/code/modules/mob/living/silicon/robot/robot_animation_vr.dm +++ b/code/modules/mob/living/silicon/robot/robot_animation_vr.dm @@ -12,10 +12,17 @@ var/prev_lockcharge = lockcharge SetLockdown(1) anchored = TRUE - sleep(2) - for(var/i in 1 to 6) + addtimer(CALLBACK(src, PROC_REF(transform_animation_sounds), 6, prev_lockcharge), 0.2 SECONDS) + +/mob/living/silicon/robot/proc/transform_animation_sounds(var/recall, var/prev_lockcharge) + if(recall > 0) playsound(src, pick('sound/items/drill_use.ogg', 'sound/items/jaws_cut.ogg', 'sound/items/jaws_pry.ogg', 'sound/items/Welder.ogg', 'sound/items/Wirecutter.ogg', 'sound/items/Crowbar.ogg', 'sound/items/Ratchet.ogg'), 80, 1, -1) - sleep(8) + recall-- + addtimer(CALLBACK(src, PROC_REF(transform_animation_sounds), recall, prev_lockcharge), 0.8 SECONDS) + return + transform_animation_end_lockdown(prev_lockcharge) + +/mob/living/silicon/robot/proc/transform_animation_end_lockdown(var/prev_lockcharge) if(!prev_lockcharge) SetLockdown(0) anchored = FALSE