mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-01-22 06:54:24 +00:00
Fixed Erro's backpack derp- backpacks are wearable once again. Added a obj/structure ex_act(), blob_act(), and meteorhit(). Made gasmasks block visibility of glasses and ears. Fixed being able to wear plasma tanks on your back. Fixed the gas mixer sprite not lining up with horizontal pipes correctly. Removed a bunch of pointless text()s from a few files. I was going to get rid of all of them, but I gave up after a while. Most of the diffs are this. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3662 316c924e-a436-60f5-8080-3fe189b3f50e
67 lines
2.4 KiB
Plaintext
67 lines
2.4 KiB
Plaintext
/obj/structure/closet/secure_closet/personal/var/registered_name = null
|
|
/obj/structure/closet/secure_closet/personal/req_access = list(access_all_personal_lockers)
|
|
|
|
/obj/structure/closet/secure_closet/personal/New()
|
|
..()
|
|
spawn(2)
|
|
new /obj/item/weapon/storage/backpack( src )
|
|
new /obj/item/device/radio/headset( src )
|
|
return
|
|
|
|
/obj/structure/closet/secure_closet/personal/patient/New()
|
|
..()
|
|
spawn(4)
|
|
contents = list()
|
|
new /obj/item/clothing/under/color/white( src )
|
|
new /obj/item/clothing/shoes/white( src )
|
|
return
|
|
|
|
|
|
/obj/structure/closet/secure_closet/personal/cabinet/New()
|
|
..()
|
|
spawn(4)
|
|
contents = list()
|
|
new /obj/item/weapon/storage/backpack/satchel/withwallet( src )
|
|
new /obj/item/device/radio/headset( src )
|
|
return
|
|
|
|
/obj/structure/closet/secure_closet/personal/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
|
if (src.opened)
|
|
if (istype(W, /obj/item/weapon/grab))
|
|
src.MouseDrop_T(W:affecting, user) //act like they were dragged onto the closet
|
|
user.drop_item()
|
|
if (W) W.loc = src.loc
|
|
else if(istype(W, /obj/item/weapon/card/id))
|
|
if(src.broken)
|
|
user << "\red It appears to be broken."
|
|
return
|
|
var/obj/item/weapon/card/id/I = W
|
|
if(!I || !I.registered_name) return
|
|
if(src.allowed(user) || !src.registered_name || (istype(I) && (src.registered_name == I.registered_name)))
|
|
//they can open all lockers, or nobody owns this, or they own this locker
|
|
src.locked = !( src.locked )
|
|
if(src.locked) src.icon_state = src.icon_locked
|
|
else src.icon_state = src.icon_closed
|
|
|
|
if(!src.registered_name)
|
|
src.registered_name = I.registered_name
|
|
src.desc = "Owned by [I.registered_name]."
|
|
else
|
|
user << "\red Access Denied"
|
|
else if( (istype(W, /obj/item/weapon/card/emag)||istype(W, /obj/item/weapon/melee/energy/blade)) && !src.broken)
|
|
broken = 1
|
|
locked = 0
|
|
desc = "It appears to be broken."
|
|
icon_state = src.icon_broken
|
|
if(istype(W, /obj/item/weapon/melee/energy/blade))
|
|
var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread()
|
|
spark_system.set_up(5, 0, src.loc)
|
|
spark_system.start()
|
|
playsound(src.loc, 'blade1.ogg', 50, 1)
|
|
playsound(src.loc, "sparks", 50, 1)
|
|
for(var/mob/O in viewers(user, 3))
|
|
O.show_message("\blue The locker has been sliced open by [user] with an energy blade!", 1, "\red You hear metal being sliced and sparks flying.", 2)
|
|
else
|
|
user << "\red Access Denied"
|
|
return
|