From 9c47b32571b9b2838067009160d59025c2fa593e Mon Sep 17 00:00:00 2001
From: jjpark-kb <55967837+jjpark-kb@users.noreply.github.com>
Date: Thu, 30 Jul 2020 17:51:55 -0400
Subject: [PATCH] adds hiding objects
---
code/game/objects/structures/trash_piles.dm | 51 +++++++++++++++++----
1 file changed, 43 insertions(+), 8 deletions(-)
diff --git a/code/game/objects/structures/trash_piles.dm b/code/game/objects/structures/trash_piles.dm
index 89c4c67d..f4a5a522 100644
--- a/code/game/objects/structures/trash_piles.dm
+++ b/code/game/objects/structures/trash_piles.dm
@@ -9,9 +9,12 @@
layer = BELOW_OBJ_LAYER
var/hide_person_time = 30
+ var/hide_item_time = 15
var/list/used_players = list()
+ var/obj/hidden_obj
+
/obj/structure/trash_pile/Initialize()
. = ..()
icon_state = "pile[rand(1,11)]"
@@ -25,15 +28,47 @@
/obj/structure/trash_pile/attack_hand(mob/user)
var/turf/T = get_turf(src)
- if(user in used_players)
- to_chat(user, "You already have looted [src].")
+ if(contents.len) //There's something hidden
+ var/atom/A = contents[contents.len] //Get the most recent hidden thing
+ if(istype(A, /mob/living))
+ var/mob/living/M = A
+ to_chat(user,"You found someone in the trash!")
+ eject_mob(M)
+ else if (istype(A, /obj/item))
+ var/obj/item/I = A
+ to_chat(user,"You found something!")
+ I.forceMove(src.loc)
+ else
+ if(user in used_players)
+ to_chat(user, "You already have looted [src].")
+ return
+ if(!do_after(user, rand(2 SECONDS, 4 SECONDS), FALSE, src))
+ return
+ for(var/i=0, i 10)
+ return FALSE
+ return TRUE
+
+/obj/structure/trash_pile/attackby(obj/item/I, mob/user, params)
+ if(user.a_intent == INTENT_HELP)
+ if(can_hide_item(I))
+ to_chat(user,"You begin to stealthily hide [I] in the [src].")
+ if(do_mob(user, user, hide_item_time))
+ if(src.loc)
+ if(user.transferItemToLoc(I, src))
+ to_chat(user,"You hide [I] in the trash.")
+ else
+ to_chat(user, "\The [I] is stuck to your hand, you cannot put it in the trash!")
+ else
+ to_chat(user,"The [src] is way too full to fit [I].")
return
- if(!do_after(user, rand(2 SECONDS, 4 SECONDS), FALSE, src))
- return
- for(var/i=0, i