From 79946730a2bf487aa3b712229e119dd837e80938 Mon Sep 17 00:00:00 2001 From: Cameron Lennox Date: Sat, 23 May 2026 10:12:04 -0400 Subject: [PATCH] Pain fix (#19483) --- code/modules/organs/pain.dm | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/code/modules/organs/pain.dm b/code/modules/organs/pain.dm index a8d3adf692f..bf48ee49911 100644 --- a/code/modules/organs/pain.dm +++ b/code/modules/organs/pain.dm @@ -29,21 +29,25 @@ switch(power) if(0 to 5) next_pain_time = world.time + 300 SECONDS - multilimb_pain_time = world.time + 45 SECONDS + multilimb_pain_time = world.time + 1 MINUTE if(6 to 20) - next_pain_time = world.time + clamp((30 - power) SECONDS, 10 SECONDS, 30 SECONDS) - multilimb_pain_time = world.time + clamp((30 - power) SECONDS, 10 SECONDS, 30 SECONDS) + next_pain_time = world.time + clamp((100 - power) SECONDS, 80 SECONDS, 95 SECONDS) + multilimb_pain_time = world.time + clamp((100 - power) SECONDS, 80 SECONDS, 95 SECONDS) if(21 to INFINITY) - next_pain_time = world.time + (100 - power) - multilimb_pain_time = world.time + (100 - power) + next_pain_time = world.time + clamp((200 - power) SECONDS, 100 SECONDS, 3 MINUTES) + multilimb_pain_time = world.time + clamp((200 - power) SECONDS, 100 SECONDS, 3 MINUTES) last_pain_message = message to_chat(src,message) + if(prob(power / 10) && !isbelly(loc)) // No pain noises inside bellies. + emote("pain") else if(force || (message != last_pain_message) || (world.time >= next_pain_time)) last_pain_message = message to_chat(src,message) - next_pain_time = world.time + (100 - power) - multilimb_pain_time = world.time + (100 - power) + next_pain_time = world.time + clamp((200 - power) SECONDS, 100 SECONDS, 3 MINUTES) + multilimb_pain_time = clamp(world.time + (200 - power) SECONDS, 100 SECONDS, 3 MINUTES) + if(prob(power / 10) && !isbelly(loc)) // No pain noises inside bellies. + emote("pain") /mob/living/carbon/human/proc/handle_pain() if(stat)