mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-27 17:41:50 +00:00
* [Ready] MODsuits * we dont need to add these people as codeowners, goodness gracious * have to remove this because upstream * part 1 of these fixes * EEEE * Update peacekeeper_clothing.dm * E * E * Auto stash before merge of "upstream-merge-59109" and "origin/upstream-merge-59109" * E * Update expeditionary_trooper.dm * more removal * nice * modsuti modstui modusuti * fixes * E * ITS MODsuit not HARDSUIT * more hardsuit references * MODSUIT NOT HARSUITEDSA * Maps * More ,map * oop * e * oo aa * 0 * ting tang * Update modsuit_tailsprites.dm * hi fikou * bs tech update Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com> Co-authored-by: jjpark-kb <55967837+jjpark-kb@users.noreply.github.com> Co-authored-by: Gandalf <jzo123@hotmail.com> Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
66 lines
1.8 KiB
Plaintext
66 lines
1.8 KiB
Plaintext
/obj/item/storage
|
|
name = "storage"
|
|
icon = 'icons/obj/storage.dmi'
|
|
w_class = WEIGHT_CLASS_NORMAL
|
|
var/rummage_if_nodrop = TRUE
|
|
var/component_type = /datum/component/storage/concrete
|
|
/// Should we preload the contents of this type?
|
|
/// BE CAREFUL, THERE'S SOME REALLY NASTY SHIT IN THIS TYPEPATH
|
|
/// SANTA IS EVIL
|
|
var/preload = FALSE
|
|
|
|
/obj/item/storage/Initialize(mapload)
|
|
. = ..()
|
|
PopulateContents()
|
|
for (var/obj/item/item in src)
|
|
item.item_flags |= IN_STORAGE
|
|
|
|
/obj/item/storage/ComponentInitialize()
|
|
AddComponent(component_type)
|
|
|
|
/obj/item/storage/AllowDrop()
|
|
return FALSE
|
|
|
|
/obj/item/storage/contents_explosion(severity, target)
|
|
switch(severity)
|
|
if(EXPLODE_DEVASTATE)
|
|
SSexplosions.high_mov_atom += contents
|
|
if(EXPLODE_HEAVY)
|
|
SSexplosions.med_mov_atom += contents
|
|
if(EXPLODE_LIGHT)
|
|
SSexplosions.low_mov_atom += contents
|
|
|
|
/obj/item/storage/canStrip(mob/who)
|
|
. = ..()
|
|
if(!. && rummage_if_nodrop)
|
|
return TRUE
|
|
|
|
/obj/item/storage/doStrip(mob/who)
|
|
if(HAS_TRAIT(src, TRAIT_NODROP) && rummage_if_nodrop)
|
|
var/datum/component/storage/CP = GetComponent(/datum/component/storage)
|
|
CP.do_quick_empty()
|
|
return TRUE
|
|
return ..()
|
|
|
|
/obj/item/storage/contents_explosion(severity, target)
|
|
//Cyberboss says: "USE THIS TO FILL IT, NOT INITIALIZE OR NEW"
|
|
|
|
/obj/item/storage/proc/PopulateContents()
|
|
|
|
/obj/item/storage/proc/emptyStorage()
|
|
var/datum/component/storage/ST = GetComponent(/datum/component/storage)
|
|
ST.do_quick_empty()
|
|
|
|
/obj/item/storage/Destroy()
|
|
for(var/obj/important_thing in contents)
|
|
if(!(important_thing.resistance_flags & INDESTRUCTIBLE))
|
|
continue
|
|
important_thing.forceMove(drop_location())
|
|
return ..()
|
|
|
|
/// Returns a list of object types to be preloaded by our code
|
|
/// I'll say it again, be very careful with this. We only need it for a few things
|
|
/// Don't do anything stupid, please
|
|
/obj/item/storage/proc/get_types_to_preload()
|
|
return
|