2|@#dMNL}9{*|wG(3lWO%pYPUonaDX^jj!JI-5P(V1K#e
zZ*1S)7+KrLVSG?c*VY5^?08806^wrE%eK-oyoJ~Ich@{x`yiS(W5Fl;q|0)&5?sEb
z=!kgH*XjDz77ePzGQr(Wj6oBHt@*z2_+FJAuT5hCe6oTPE14{$d5|$*tWtC2Yhj6K
z?MnEyE-4^zFGsZEZn*Hnb^!5U=5QMn@+X*nRmdjMdxwr*ey3JQ$CI3wx1~Q71luf6
zBp~KORwvi2SC{4j)^~~+eOrmHd4*MvL<-j-g#}W>1k~&P`C9-h3GQjzT%%R2Y9OVc
zkjT~rq?vom^3qa01zCa%5&)1BlZj>JrvhfN8w>3cSn#4YdinW`$G?yB!}Ea+3U6L#
zE{Y!*q+i%XUUc>>?V-PLB}-eUYv>M$Mr7oz53zNAQM>h-*&dSQ+vR&uxMBd3(S^8K
zE-xc56ZhCU{mRPhkd)SysPDkt^-P=wdM={P?Pm>B&-A)1fy6V^Us+^fzT1iGX$z?>=|W_n(tB9r+#|!G%<+Iz=*ZTe@aUBE
zl57D>@OO%_kiP4|WzYPztfHba#^!JGe7|?@MX~!#F_P~q@v3eygS`z+M&(!D!f1j8GJ{
zztF#GxRrF3RBB0~g;F+WmjzmtqFKw?%=Vbu6dG&vOXKU;&(QMH(gXsB!u9q}<+3!U
za@k})e{)y?sVQ!~
z=_HhJO!0u2FqyQ81^xW|-u?A5_RW>7++2I4ls{7mKWB|OZr3+9mV+s^$z{vXE6KCX
zo0DY!Gd~9yAce$EKVB(aoiyd_)fw|IGfm=ZzaLn1(}}
zvx9YKU8QB{bb7T~w*@V?m5*khZHA?}JC(1=;29s{m`tWfzX$+G33Z(M`fVY)?c44t
zg5}@sGTS6v&f+1v=R>bf>58AOb+*$;$8Mj)dlriEXa;4IlE)hO23KsOCnjumxhe<-iqcjxneCGS0&8^J$E4aqy*Ic?WZ=eSn`22K1zSZMG
zTjlT1`7yWUT^iVV{(f*D^ojrgobz>uG!4zpt|<80>eP3Y;u^U*!#XXbSu`$)|CF~a
z!4v%~fxN6NFYegLh|?XVYvAQpa&m+#uh#iI0)copl`=|OD`y?tzj>jNIz?z;l9Q8@
zLlSG7n^}#206>^Z!hBRPkvPgG5(tlbLCa#NwdV4>gsU=&~I6Zu9p){dnLUW^04uqC`{=C+X|MfXt
z9tlwC%elSAA8vmHwKxAsgHMw@{v$vp!ER;aJo4qex60wu!3Y
zzFvnkrM`uIcRgs$CbR11jX&!Qu1=hk6brbchF<-t>NHVgjMCbRp2VFbQ_fd8Vil4_
z_4QA3qj{_1YzE^+@egbMN;PN2`{$-bwS4*Vg)DDX@&QLQs?3g)=SDJ1KFnyA?Q#iO
z(@(Y#k|Th=zE#7f+q3BpoEq98E0IkGd}K$E4IvEoJYjtRK=$+}A{TE38C8D^__e&C
ZfaThSzJkOjjoTIimgX1C%1^sR{2v6{W^Mog
diff --git a/paradise.dme b/paradise.dme
index 303c0ebaed9..0c4d56eeff5 100644
--- a/paradise.dme
+++ b/paradise.dme
@@ -807,6 +807,7 @@
#include "code\game\objects\items\mountable_frames\air_alarm.dm"
#include "code\game\objects\items\mountable_frames\apc_frame.dm"
#include "code\game\objects\items\mountable_frames\buttons_switches.dm"
+#include "code\game\objects\items\mountable_frames\extinguisher_frame.dm"
#include "code\game\objects\items\mountable_frames\fire_alarm.dm"
#include "code\game\objects\items\mountable_frames\frames.dm"
#include "code\game\objects\items\mountable_frames\intercom.dm"
From a135d0183522948e6d2ff6201a54e4bde7459d7c Mon Sep 17 00:00:00 2001
From: Anasari
Date: Thu, 23 Aug 2018 14:47:43 +0800
Subject: [PATCH 2/2] Fixes
---
.../mountable_frames/extinguisher_frame.dm | 2 +-
.../items/stacks/sheets/sheet_types.dm | 2 +-
code/game/objects/structures/extinguisher.dm | 26 ++++++++++++++++---
3 files changed, 25 insertions(+), 5 deletions(-)
diff --git a/code/game/objects/items/mountable_frames/extinguisher_frame.dm b/code/game/objects/items/mountable_frames/extinguisher_frame.dm
index 531005ca902..5356a154a6d 100644
--- a/code/game/objects/items/mountable_frames/extinguisher_frame.dm
+++ b/code/game/objects/items/mountable_frames/extinguisher_frame.dm
@@ -6,5 +6,5 @@
mount_reqs = list("simfloor", "nospace")
/obj/item/mounted/frame/extinguisher/do_build(turf/on_wall, mob/user)
- new /obj/structure/extinguisher_cabinet(get_turf(src), get_dir(user, on_wall))
+ new /obj/structure/extinguisher_cabinet/empty(get_turf(src), get_dir(user, on_wall))
qdel(src)
diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm
index 0e9be717ca1..b7ea68ae0df 100644
--- a/code/game/objects/items/stacks/sheets/sheet_types.dm
+++ b/code/game/objects/items/stacks/sheets/sheet_types.dm
@@ -90,7 +90,7 @@ var/global/list/datum/stack_recipe/metal_recipes = list(
new /datum/stack_recipe("air alarm frame", /obj/item/mounted/frame/alarm_frame, 2),
new /datum/stack_recipe("fire alarm frame", /obj/item/mounted/frame/firealarm, 2),
new /datum/stack_recipe("intercom frame", /obj/item/mounted/frame/intercom, 2),
- new /datum/stack_recipe("extinguisher cabinet frame", /obj/item/mounted/frame/extinguisher, 5),
+ new /datum/stack_recipe("extinguisher cabinet frame", /obj/item/mounted/frame/extinguisher, 2),
null
)
diff --git a/code/game/objects/structures/extinguisher.dm b/code/game/objects/structures/extinguisher.dm
index ce550871c63..568fb0ededc 100644
--- a/code/game/objects/structures/extinguisher.dm
+++ b/code/game/objects/structures/extinguisher.dm
@@ -1,3 +1,8 @@
+#define NO_EXTINGUISHER 0
+#define NORMAL_EXTINGUISHER 1
+#define MINI_EXTINGUISHER 2
+
+
/obj/structure/extinguisher_cabinet
name = "extinguisher cabinet"
desc = "A small wall mounted cabinet designed to hold a fire extinguisher."
@@ -5,7 +10,8 @@
icon_state = "extinguisher_closed"
anchored = 1
density = 0
- var/obj/item/extinguisher/has_extinguisher = new/obj/item/extinguisher
+ var/obj/item/extinguisher/has_extinguisher = null
+ var/extinguishertype
var/opened = 0
var/material_drop = /obj/item/stack/sheet/metal
@@ -14,11 +20,18 @@
if(ndir)
pixel_x = (ndir & EAST|WEST) ? (ndir == EAST ? 28 : -28) : 0
pixel_y = (ndir & NORTH|SOUTH)? (ndir == WEST ? 28 : -28) : 0
+ switch(extinguishertype)
+ if(NO_EXTINGUISHER)
+ return
+ if(MINI_EXTINGUISHER)
+ has_extinguisher = new/obj/item/extinguisher/mini
+ else
+ has_extinguisher = new/obj/item/extinguisher
/obj/structure/extinguisher_cabinet/Destroy()
QDEL_NULL(has_extinguisher)
return ..()
-
+
/obj/structure/extinguisher_cabinet/attackby(obj/item/O, mob/user, params)
if(isrobot(user) || isalien(user))
return
@@ -39,7 +52,6 @@
return
var/obj/item/weldingtool/WT = O
if(!WT.remove_fuel(0, user))
- to_chat(user, "You need more welding fuel to complete this task.")
return
to_chat(user, "You begin cutting [src] apart...")
playsound(loc, WT.usesound, 40, 1)
@@ -99,3 +111,11 @@
icon_state = "extinguisher_full"
else
icon_state = "extinguisher_empty"
+
+/obj/structure/extinguisher_cabinet/empty/New(turf/loc, ndir = null)
+ extinguishertype = NO_EXTINGUISHER
+ ..()
+
+#undef NO_EXTINGUISHER
+#undef NORMAL_EXTINGUISHER
+#undef MINI_EXTINGUISHER