Small storage refactor and examine change (#44109)

* Removes repeated line

* Description change for clothing items that can only store specific items

* Get all children of can_hold listed items.

* can_hold only needs the top most item, child items are dealt automatically

* cant_hold related change

* Text change

* Moves the item check to the line above, and removes the current.

* Same changes, but to belt/wallet code.

* Change to using signals instead

* Generic signal on datum/topic

* Cache typecache, and small signal change

* Small argument tweaks and remove unneeded lists

* Change to proc

* Change call can_holds/cant_holds to use new proc

* initial, and cleaned up display code

* Null check
This commit is contained in:
Akrilla
2019-05-30 19:20:29 +01:00
committed by Emmett Gaines
parent 471705d622
commit 2d32be1904
23 changed files with 132 additions and 98 deletions

View File

@@ -1,6 +1,6 @@
#define DUEL_IDLE 1
#define DUEL_PREPARATION 2
#define DUEL_READY 3
#define DUEL_READY 3
#define DUEL_COUNTDOWN 4
#define DUEL_FIRING 5
@@ -219,7 +219,7 @@
else
duel.fired[src] = TRUE
. = ..()
/obj/item/gun/energy/dueling/before_firing(target,user)
var/obj/item/ammo_casing/energy/duel/D = chambered
D.setting = setting
@@ -297,7 +297,7 @@
var/mob/living/L = target
if(!istype(target))
return BULLET_ACT_BLOCK
var/obj/item/bodypart/B = L.get_bodypart(BODY_ZONE_HEAD)
B.dismember()
qdel(B)
@@ -321,7 +321,7 @@
GET_COMPONENT(STR, /datum/component/storage)
STR.max_w_class = WEIGHT_CLASS_SMALL
STR.max_items = 2
STR.can_hold = typecacheof(list(/obj/item/gun/energy/dueling))
STR.set_holdable(list(/obj/item/gun/energy/dueling))
/obj/item/storage/lockbox/dueling/update_icon()
cut_overlays()