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