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)