From e1d2dd4aa11ed0412e208a086ccbe89241cc1b09 Mon Sep 17 00:00:00 2001 From: Chinsky Date: Thu, 10 Oct 2013 15:33:02 +0400 Subject: [PATCH] Coat racks. Can hold either labcoat or detective coat. --- code/game/objects/structures/coathanger.dm | 25 ++++++++++++--------- icons/obj/coatrack.dmi | Bin 538 -> 606 bytes 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/code/game/objects/structures/coathanger.dm b/code/game/objects/structures/coathanger.dm index 0894ea67c1a..b79588b78f3 100644 --- a/code/game/objects/structures/coathanger.dm +++ b/code/game/objects/structures/coathanger.dm @@ -6,7 +6,7 @@ var/obj/item/clothing/suit/coat var/list/allowed = list(/obj/item/clothing/suit/storage/labcoat, /obj/item/clothing/suit/storage/det_suit) -/obj/structure/mirror/attack_hand(mob/user as mob) +/obj/structure/coatrack/attack_hand(mob/user as mob) user.visible_message("[user] takes [coat] off \the [src].", "You take [coat] off the \the [src]") if(!user.put_in_active_hand(coat)) coat.loc = get_turf(user) @@ -17,24 +17,27 @@ var/can_hang = 0 for (var/T in allowed) if(istype(W,T)) - cam_hang = 1 - if (can_hang) - user.visible_message("[user] hangs [coat] on \the [src].", "You hang [coat] on the \the [src]") + can_hang = 1 + if (can_hang && !coat) + user.visible_message("[user] hangs [W] on \the [src].", "You hang [W] on the \the [src]") coat = W user.drop_item(src) + coat.loc = src update_icon() else user << "You cannot hang [W] on [src]" return ..() /obj/structure/coatrack/CanPass(atom/movable/mover, turf/target, height=0, air_group=0) + var/can_hang = 0 for (var/T in allowed) if(istype(mover,T)) - cam_hang = 1 + can_hang = 1 - if (can_hang) + if (can_hang && !coat) src.visible_message("[mover] lands on \the [src].") coat = mover + coat.loc = src update_icon() return 0 else @@ -42,7 +45,9 @@ /obj/structure/coatrack/update_icon() overlays.Cut() - if (istype(W, /obj/item/clothing/suit/storage/labcoat)) - overlays += image(iconn, icon_state = "coat_lab") - if (istype(W, /obj/item/clothing/suit/storage/det_suit)) - overlays += image(iconn, icon_state = "coat_det") \ No newline at end of file + if (istype(coat, /obj/item/clothing/suit/storage/labcoat)) + overlays += image(icon, icon_state = "coat_lab") + if (istype(coat, /obj/item/clothing/suit/storage/labcoat/cmo)) + overlays += image(icon, icon_state = "coat_cmo") + if (istype(coat, /obj/item/clothing/suit/storage/det_suit)) + overlays += image(icon, icon_state = "coat_det") \ No newline at end of file diff --git a/icons/obj/coatrack.dmi b/icons/obj/coatrack.dmi index ad51d5e5d5a140d9e3185fc6a34f4fac8c92dedb..5d19abaeee75097440732e75e566fcf7a365c5d9 100644 GIT binary patch delta 519 zcmV+i0{H!!1l|OHiBL{Q4GJ0x0000DNk~Le0001B0000$2m=5B0MhD$JOBUyKTu3m zMZmzoYDfTmUOJg(09QaIvW{z|l!23PM|V~+nPv%=U@B%wD8RtLfPjEAX8->G|C!AH zW|{xr-`}~pxd55}h7$N500001bW%=J06^y0W&i*HgL+hvaAJRBs5B%>Wqe9%32_Q@ z5|fBin4FuBOQEuYtDg(l{{XdOOEG79Qq2GW0X|7YK~z|U?Uh>(gCGorb$arp8U&6iSA02O{J z1=xMrMrzQ~kN|&o8%`?!K~C)MQQ5PY3ky9Et+y zjm86H>e~UrEfj2{5q?I#3rO!|!p{N-0)Y9XRJfmPGv$A05WL>^tNvaC2=gt7l|POn z2C&mSa{$AF1MI{D_e45e#-mvqJA^nh>uy1$(VxzGERaI35^#u1s69kBO*!utg002ov JPDHLkV1jX3;8Xwr delta 466 zcmV;@0WJRC1eyeYiBL{Q4GJ0x0000DNk~Le0000$0000$2m=5B0G+pi>;M1&Fi=cX zMZmzoYDfT?W&l?}C4F8xlW#|NRxz1o31&$srIdkyfPk`&YySWL-{0SsU@Ez}xsfs- z000000d!JMQvg8b*k%9#0DyW_Sad{Xb7OL8aCB*JZU6w0j#Gc5sEkiZEg?!F$Vfxt zjLb<)!lh7I!PU@5Ih1wT$n`du9W009h1L_t(oh3(ei5`rKM0AOHHLXz+Qwhhrg z32m|zuWM(2^!B-7a8v49p>=n_R38Bb{q_Wus{m^)1(^IZB>=1=fs~C`J)Z