mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-23 03:57:48 +01:00
52 lines
1.3 KiB
Plaintext
52 lines
1.3 KiB
Plaintext
/obj/item/clothing/accessory/locket
|
|
name = "silver locket"
|
|
desc = "A small locket of high-quality metal."
|
|
icon_state = "locket"
|
|
drop_sound = 'sound/items/drop/ring.ogg'
|
|
pickup_sound = 'sound/items/pickup/ring.ogg'
|
|
w_class = ITEMSIZE_SMALL
|
|
slot_flags = SLOT_MASK | SLOT_TIE
|
|
slot = ACCESSORY_SLOT_DECOR
|
|
var/base_icon
|
|
var/open
|
|
var/obj/item/held //Item inside locket.
|
|
special_handling = TRUE
|
|
|
|
/obj/item/clothing/accessory/locket/attack_self(mob/user)
|
|
. = ..(user)
|
|
if(.)
|
|
return TRUE
|
|
if(!base_icon)
|
|
base_icon = icon_state
|
|
|
|
if(!icon_exists(icon, "[base_icon]_open"))
|
|
to_chat(user, "\The [src] doesn't seem to open.")
|
|
return
|
|
|
|
open = !open
|
|
to_chat(user, "You flip \the [src] [open?"open":"closed"].")
|
|
if(open)
|
|
icon_state = "[base_icon]_open"
|
|
if(held)
|
|
to_chat(user, "\The [held] falls out!")
|
|
held.loc = get_turf(user)
|
|
held = null
|
|
else
|
|
icon_state = "[base_icon]"
|
|
|
|
/obj/item/clothing/accessory/locket/attackby(obj/item/O, mob/user)
|
|
if(!open)
|
|
to_chat(user, "You have to open it first.")
|
|
return
|
|
|
|
if(istype(O,/obj/item/paper) || istype(O, /obj/item/photo))
|
|
if(held)
|
|
to_chat(user, "\The [src] already has something inside it.")
|
|
else
|
|
to_chat(user, "You slip [O] into [src].")
|
|
user.drop_item()
|
|
O.loc = src
|
|
held = O
|
|
return
|
|
..()
|