From 7de83ec6b02c933176c3f376d7acf24bbbaecea2 Mon Sep 17 00:00:00 2001 From: Techhead0 Date: Tue, 17 Mar 2015 06:52:03 -0400 Subject: [PATCH] Can pat burning mobs to put them out. Click on them with help intent to do so. This has a mild chance of lighting you on fire yourself. If you're already doused in fuel, this is guaranteed. Also, burning people can set others on fire by hugging them. Now with improved if(do_mob) --- code/modules/mob/living/carbon/carbon.dm | 29 +++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 464fb3a055..843d8864cd 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -192,6 +192,29 @@ src.show_message(text("\t []My [] is [].",status=="OK"?"\blue ":"\red ",org.display_name,status),1) if((SKELETON in H.mutations) && (!H.w_uniform) && (!H.wear_suit)) H.play_xylophone() + else if (on_fire) + playsound(src.loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + if (M.on_fire) + M.visible_message("[M] tries to pat out [src]'s flames, but to no avail!", \ + "You try to pat out [src]'s flames, but to no avail! Put yourself out first!") + else + M.visible_message("[M] tries to pat out [src]'s flames!", \ + "You try to pat out [src]'s flames! Hot!") + if(do_mob(M, src, 15)) + if (prob(10) && (M.fire_stacks <= 0)) + src.fire_stacks -= 2 + M.fire_stacks += 1 + M.IgniteMob() + if (M.on_fire) + M.visible_message("The fire spreads from [src] to [M]!", \ + "The fire spreads to you as well!") + else + src.fire_stacks -= 3 //Less effective than stop, drop, and roll + if (src.fire_stacks <= 0) + M.visible_message("[M] successfully pats out [src]'s flames.", \ + "You successfully pat out [src]'s flames.") + src.ExtinguishMob() + src.fire_stacks = 0 else var/t_him = "it" if (src.gender == MALE) @@ -218,7 +241,11 @@ else M.visible_message("[M] hugs [src] to make [t_him] feel better!", \ "You hug [src] to make [t_him] feel better!") - + if(M.fire_stacks >= (src.fire_stacks + 3)) + src.fire_stacks += 1 + M.fire_stacks -= 1 + if(M.on_fire) + src.IgniteMob() AdjustParalysis(-3) AdjustStunned(-3) AdjustWeakened(-3)