diff --git a/code/defines/janicart.dm b/code/game/objects/structures/janicart.dm
similarity index 78%
rename from code/defines/janicart.dm
rename to code/game/objects/structures/janicart.dm
index c1924bb0693..1f5f0a4450e 100644
--- a/code/defines/janicart.dm
+++ b/code/game/objects/structures/janicart.dm
@@ -7,6 +7,7 @@
flags = OPENCONTAINER
//copypaste sorry
var/amount_per_transfer_from_this = 5 //shit I dunno, adding this so syringes stop runtime erroring. --NeoFite
+ var/obj/item/weapon/trashbag/mybag = null
/obj/structure/stool/bed/chair/janicart/New()
handle_rotation()
@@ -19,6 +20,8 @@
/obj/structure/stool/bed/chair/janicart/examine()
set src in usr
usr << "\icon[src] This pimpin' ride contains [reagents.total_volume] unit\s of water!"
+ if(mybag)
+ usr << "\A [mybag] is hanging on the pimpin' ride."
/obj/structure/stool/bed/chair/janicart/attackby(obj/item/W, mob/user)
if(istype(W, /obj/item/weapon/mop))
@@ -30,15 +33,29 @@
user << "This pimpin' ride is out of water!"
else if(istype(W, /obj/item/key))
user << "Hold [W] in one of your hands while you drive this pimpin' ride."
- return
+ else if(istype(W, /obj/item/weapon/trashbag))
+ user << "You hook the trashbag onto the pimpin' ride."
+ user.drop_item()
+ W.loc = src
+ mybag = W
+
+
+/obj/structure/stool/bed/chair/janicart/attack_hand(mob/user)
+ if(mybag)
+ mybag.loc = get_turf(user)
+ user.put_in_hands(mybag)
+ mybag = null
+
/obj/structure/stool/bed/chair/janicart/relaymove(mob/user, direction)
+ if(user.stat || user.stunned)
+ unbuckle()
if(istype(user.l_hand, /obj/item/key) || istype(user.r_hand, /obj/item/key))
step(src, direction)
update_mob()
handle_rotation()
else
- user << "You'll need the keys to drive this pimpin' ride."
+ user << "You'll need the keys in one of your hands to drive this pimpin' ride."
/obj/structure/stool/bed/chair/janicart/Move()
..()
@@ -53,8 +70,8 @@
unbuckle()
M.visible_message(\
- "[M] climbs onto [src]!",\
- "You climb onto [src]!")
+ "[M] climbs onto the pimpin' ride!",\
+ "You climb onto the pimpin' ride!")
M.buckled = src
M.loc = loc
M.dir = dir
diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi
index 61bfae94086..a7308e9f14f 100644
Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ
diff --git a/tgstation.dme b/tgstation.dme
index 5502dd9b06e..94e95f41738 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -137,7 +137,6 @@
#include "code\datums\spells\trigger.dm"
#include "code\datums\spells\turf_teleport.dm"
#include "code\datums\spells\wizard.dm"
-#include "code\defines\janicart.dm"
#include "code\defines\obj.dm"
#include "code\defines\obj\hydro.dm"
#include "code\defines\obj\machinery.dm"
@@ -535,6 +534,7 @@
#include "code\game\objects\structures\flora.dm"
#include "code\game\objects\structures\girders.dm"
#include "code\game\objects\structures\grille.dm"
+#include "code\game\objects\structures\janicart.dm"
#include "code\game\objects\structures\kitchen_spike.dm"
#include "code\game\objects\structures\ladders.dm"
#include "code\game\objects\structures\lamarr_cage.dm"