mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-17 21:24:01 +00:00
44 lines
1.2 KiB
Plaintext
44 lines
1.2 KiB
Plaintext
/obj/structure/closet/crate/bin
|
|
desc = "A trash bin, place your trash here for the janitor to collect."
|
|
name = "trash bin"
|
|
icon_state = "largebins"
|
|
open_sound = 'sound/effects/bin_open.ogg'
|
|
close_sound = 'sound/effects/bin_close.ogg'
|
|
anchored = TRUE
|
|
horizontal = FALSE
|
|
delivery_icon = null
|
|
|
|
/obj/structure/closet/crate/bin/Initialize()
|
|
. = ..()
|
|
update_icon()
|
|
|
|
/obj/structure/closet/crate/bin/update_overlays()
|
|
. = ..()
|
|
if(contents.len == 0)
|
|
. += "largebing"
|
|
else if(contents.len >= storage_capacity)
|
|
. += "largebinr"
|
|
else
|
|
. += "largebino"
|
|
|
|
/obj/structure/closet/crate/bin/attackby(obj/item/W, mob/user, params)
|
|
if(istype(W, /obj/item/storage/bag/trash))
|
|
var/obj/item/storage/bag/trash/T = W
|
|
to_chat(user, "<span class='notice'>You fill the bag.</span>")
|
|
for(var/obj/item/O in src)
|
|
SEND_SIGNAL(T, COMSIG_TRY_STORAGE_INSERT, O, user, TRUE)
|
|
T.update_icon()
|
|
do_animate()
|
|
return TRUE
|
|
else
|
|
return ..()
|
|
|
|
/obj/structure/closet/crate/bin/proc/do_animate()
|
|
playsound(loc, open_sound, 15, TRUE, -3)
|
|
flick("animate_largebins", src)
|
|
addtimer(CALLBACK(src, .proc/do_close), 13)
|
|
|
|
/obj/structure/closet/crate/bin/proc/do_close()
|
|
playsound(loc, close_sound, 15, TRUE, -3)
|
|
update_icon()
|