From 96ab44536d18eddd01ddf2b32044e9f1a6a1a1cf Mon Sep 17 00:00:00 2001 From: xxalpha Date: Mon, 4 May 2015 22:31:21 +0100 Subject: [PATCH] Fixed smoking pipe messages. Fixed emptying empty pipes. Improved check. --- .../objects/items/weapons/cigs_lighters.dm | 46 ++++++++++++------- html/changelogs/xxalpha-ash.yml | 7 +++ 2 files changed, 37 insertions(+), 16 deletions(-) create mode 100644 html/changelogs/xxalpha-ash.yml diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm index 230226e315b..633bda44fd6 100644 --- a/code/game/objects/items/weapons/cigs_lighters.dm +++ b/code/game/objects/items/weapons/cigs_lighters.dm @@ -122,21 +122,11 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/clothing/mask/cigarette/attackby(obj/item/weapon/W as obj, mob/user as mob, params) ..() - var/lighting_text = "[user] lights their [name] with [W]." - if(istype(W, /obj/item/weapon/weldingtool)) - lighting_text = "[user] casually lights the [name] with [W], what a badass." - else if(istype(W, /obj/item/weapon/lighter/zippo)) - lighting_text = "With a single flick of their wrist, [user] smoothly lights their [name] with [W]. Damn they're cool." - else if(istype(W, /obj/item/weapon/lighter)) - lighting_text = "After some fiddling, [user] manages to light their [name] with [W]." - else if(istype(W, /obj/item/weapon/melee/energy)) - lighting_text = "[user] swings their [W], barely missing their nose. They light their [name] in the process." - else if(istype(W, /obj/item/device/assembly/igniter)) - lighting_text = "[user] fiddles with [W], and manages to light their [name]." - else if(istype(W, /obj/item/device/flashlight/flare)) - lighting_text = "[user] lights their [name] with [W] like a real badass." - if(is_hot(W)) - light(lighting_text) + if(!lit && smoketime > 0) + var/lighting_text = is_lighter(W,user) + if(lighting_text) + light(lighting_text) + return return /obj/item/clothing/mask/cigarette/afterattack(obj/item/weapon/reagent_containers/glass/glass, mob/user as mob, proximity) @@ -151,6 +141,23 @@ CIGARETTE PACKETS ARE IN FANCY.DM else user << "[src] is full." +/obj/item/clothing/mask/cigarette/proc/is_lighter(obj/O, mob/user) + var/lighting_text = null + if(istype(O, /obj/item/weapon/weldingtool)) + lighting_text = "[user] casually lights the [name] with [O], what a badass." + else if(istype(O, /obj/item/weapon/lighter/zippo)) + lighting_text = "With a single flick of their wrist, [user] smoothly lights their [name] with [O]. Damn they're cool." + else if(istype(O, /obj/item/weapon/lighter)) + lighting_text = "After some fiddling, [user] manages to light their [name] with [O]." + else if(istype(O, /obj/item/weapon/melee/energy)) + lighting_text = "[user] swings their [O], barely missing their nose. They light their [name] in the process." + else if(istype(O, /obj/item/device/assembly/igniter)) + lighting_text = "[user] fiddles with [O], and manages to light their [name]." + else if(istype(O, /obj/item/device/flashlight/flare)) + lighting_text = "[user] lights their [name] with [O] like a real badass." + else if(is_hot(O)) + lighting_text = "[user] lights their [name] with [O]." + return lighting_text /obj/item/clothing/mask/cigarette/proc/light(var/flavor_text = null) if(!src.lit) @@ -385,7 +392,14 @@ CIGARETTE PACKETS ARE IN FANCY.DM else user << "It is already packed!" else - user << "You can't put that in the pipe!" + var/lighting_text = is_lighter(O,user) + if(lighting_text) + if(smoketime > 0) + light(lighting_text) + else + user << "There is nothing to smoke!" + else + user << "You can't put that in the pipe!" ..() diff --git a/html/changelogs/xxalpha-ash.yml b/html/changelogs/xxalpha-ash.yml new file mode 100644 index 00000000000..35be80147ed --- /dev/null +++ b/html/changelogs/xxalpha-ash.yml @@ -0,0 +1,7 @@ +author: xxalpha + +delete-after: True + +changes: + - bugfix: "Fixed smoking pipe messages. Fixed emptying a smoking pipe with nothing in it." +