From eb0d2559c5040bba033c49cb157e7b8b2720e51d Mon Sep 17 00:00:00 2001 From: SoundScopes Date: Sun, 31 Aug 2014 05:05:44 +0100 Subject: [PATCH] Grilling people - grill people --- code/modules/food/food_grill.dm | 87 +++++++++++++++++++++++++++++++++ html/changelog.html | 1 + 2 files changed, 88 insertions(+) diff --git a/code/modules/food/food_grill.dm b/code/modules/food/food_grill.dm index 54290c80..3964b635 100644 --- a/code/modules/food/food_grill.dm +++ b/code/modules/food/food_grill.dm @@ -27,3 +27,90 @@ obj/machinery/cooker/foodgrill/putIn(obj/item/In, mob/chef) sleep(50) overlays = 0 + +//Lets grill people, because why not. +/obj/machinery/cooker/foodgrill/proc/fry_mob_by_limb(var/mob/living/M, var/limb) + switch(limb) + if("head") + M.apply_damage(40, BURN, limb) + M << "\red Your thoughts are overwritten by the pain from the searing hot metal pressed against your face." + M.say("*scream") + return "face" + if("l_leg") + M.apply_damage(20, BURN, limb) + M.apply_damage(30, BURN, "l_foot") + M << "\red Your thoughts are overwritten by the pain from the searing hot metal pressed against your left leg and foot." + M.say("*scream") + return "left leg" + if("l_foot") + M.apply_damage(20, BURN, limb) + M << "\red Your thoughts are overwritten by the pain from the searing hot metal pressed against your left foot." + M.say("*scream") + return "left foot" + if("r_leg") + M.apply_damage(20, BURN, limb) + M.apply_damage(30, BURN, "r_foot") + M << "\red Your thoughts are overwritten by the pain from the searing hot metal pressed against your right leg and foot." + M.say("*scream") + return "right leg" + if("r_foot") + M.apply_damage(20, BURN, limb) + M << "\red Your thoughts are overwritten by the pain from the searing hot metal pressed against your right foot." + M.say("*scream") + return "right foot" + if("l_arm") + M.apply_damage(20, BURN, limb) + M.apply_damage(30, BURN, "l_hand") + M << "\red Your thoughts are overwritten by the pain from the searing hot metal pressed against your left arm and hand." + M.say("*scream") + return "left arm" + if("l_hand") + M.apply_damage(20, BURN, limb) + M << "\red Your thoughts are overwritten by the pain from the searing hot metal pressed against your left hand." + M.say("*scream") + return "left hand" + if("r_arm") + M.apply_damage(20, BURN, limb) + M.apply_damage(30, BURN, "r_hand") + M << "\red Your thoughts are overwritten by the pain from the searing hot metal pressed against your right arm and hand." + M.say("*scream") + return "right arm" + if("r_hand") + M.apply_damage(20, BURN, limb) + M << "\red Your thoughts are overwritten by the pain from the searing hot metal pressed against your right hand." + M.say("*scream") + return "right hand" + return null + +/obj/machinery/cooker/foodgrill/attackby(obj/item/I, mob/user) + if(on) + var/obj/item/weapon/grab/G = I + if(istype(G)) // handle grabbed mob + if(ismob(G.affecting)) + var/mob/living/GM = G.affecting + user.visible_message("[user] starts pushing [GM.name] into the grill.", "You try to force [GM.name] towards the grill.", "You hear a struggle.") + + if(do_after(usr, 20)) + var/body_part = fry_mob_by_limb(GM, user.zone_sel.selecting) + if(!body_part) //If you fry a valid part this will be set + if(GM.sleeping||GM.resting) + user.visible_message("[GM.name] falls limp.", "[GM.name] is to much of a dead weight to be place in the grill", "You hear a thump.") + else + GM.visible_message("[GM.name] breaks free.", "You broke free from [user]'s grip", "You stop hearing a struggle.") + return + + user.visible_message("[GM.name]'s [body_part] has been placed in the [src] by [user]", "You place [GM.name]'s [body_part] in the grill", "You hear a sizzling.") + del(G) + usr.attack_log += text("\[[time_stamp()]\] Has placed [GM.name] ([GM.ckey]) in in the grill.") + GM.attack_log += text("\[[time_stamp()]\] Has been fried by [usr.name] ([usr.ckey])") + msg_admin_attack("[usr] ([usr.ckey]) placed [GM] ([GM.ckey])'s [body_part] in a grill. (JMP)") + else + GM.visible_message("[GM.name] breaks free.", "You broke free from [user]'s grip", "You stop hearing a struggle.") + return + + else + user << "[src] is still active!" + return + + else + ..() \ No newline at end of file diff --git a/html/changelog.html b/html/changelog.html index 5f663eb9..78449662 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -64,6 +64,7 @@ should be listed in the changelog upon commit though. Thanks. -->
  • Alcohol and thermite now flammable
  • Flash's available in delicious incendiary flavor
  • AI's can contact CentComm once every half an hour
  • +
  • Grilling people
  • Cancel button on kitchen equipment
  • Messages when frying people
  • Splashing people with welding fuel to make them easy to ignite