Webbings now use internal storage

Clothing no longer manipulates webbing members for better encapsulation.
Instead attackby() and attack_hand() are forwarded to accessories if
they are present.
Removed "Look in Storage" verb for less verb clutter.
This commit is contained in:
Mike
2014-04-29 20:34:01 -04:00
parent 172bda548e
commit ae49ba210b
4 changed files with 87 additions and 49 deletions
@@ -19,7 +19,6 @@
//Helper procs to cleanly implement internal storages - storage items that provide inventory slots for other items.
//These procs are completely optional, it is up to the master item to decide when it's storage get's opened by calling open()
//However they are helpful for allowing the master item to pretend it is a storage item itself.
//Mostly just copypasta'd from /obj/item/weapon/storage. Not sure how else to do it, other than moving all of this into storage.dm
//If you are using these you will probably want to override attackby() as well.
//See /obj/item/clothing/suit/storage for an example.
@@ -317,17 +317,17 @@
if(isrobot(user))
user << "\blue You're a robot. No."
return 1 //Robots can't interact with storage items.
return //Robots can't interact with storage items.
if(!can_be_inserted(W))
return 0
return
if(istype(W, /obj/item/weapon/tray))
var/obj/item/weapon/tray/T = W
if(T.calc_carry() > 0)
if(prob(85))
user << "\red The tray won't fit in [src]."
return 1
return
else
W.loc = user.loc
if ((user.client && user.s_active != src))
@@ -335,8 +335,9 @@
W.dropped(user)
user << "\red God damnit!"
W.add_fingerprint(user)
handle_item_insertion(W)
return 1
return
/obj/item/weapon/storage/dropped(mob/user as mob)
return