From 991bd8c702858faf8f29e1baf55bcaac98275b06 Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Fri, 17 Mar 2017 18:28:23 -0400 Subject: [PATCH] Fixes Abductor Surgery --- code/modules/surgery/surgery.dm | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/code/modules/surgery/surgery.dm b/code/modules/surgery/surgery.dm index 9ed77cd2c9f..de3d84796f4 100644 --- a/code/modules/surgery/surgery.dm +++ b/code/modules/surgery/surgery.dm @@ -99,18 +99,23 @@ return surgery.step_in_progress = 1 + var/speed_mod = 1 + if(begin_step(user, target, target_zone, tool, surgery) == -1) surgery.step_in_progress = 0 return - var/advance = 0 - var/prob_chance = 100 + if(tool) + speed_mod = tool.toolspeed + + if(do_after(user, time * speed_mod, target = target)) + var/advance = 0 + var/prob_chance = 100 + + if(implement_type) //this means it isn't a require nd or any item step. + prob_chance = allowed_tools[implement_type] + prob_chance *= get_location_modifier(target) - if(implement_type) //this means it isn't a require nd or any item step. - prob_chance = min(allowed_tools[implement_type], 100) - prob_chance *= get_location_modifier(target) - - if(do_after(user, time * tool.toolspeed, target = target)) if(prob(prob_chance) || isrobot(user)) if(end_step(user, target, target_zone, tool, surgery)) advance = 1