Adds KH life crystal fluff/loadout item

It just exists as a fluff excuse as to how you get cloned offsite if you don't get cloned at CC, if you want an alternative. The little lore behind it is that it notifies an offsite agency if you die so you can get cloned by them. It has a little paper in the carrying case explaining that.

It's a uniform accessory, or you can just pocket it. They are unmarked, so finding a broken one shouldn't be very interesting evidence or influence much outside just the fluff idea of their existence.

(Also, it's a crystal, but no it's not magic. The manual goes into detail about the power source, transmitter, etc.)
This commit is contained in:
Arokha Sieyes
2016-10-14 01:52:28 -04:00
parent 03695bd381
commit 00405946a4
3 changed files with 124 additions and 1 deletions

View File

@@ -36,3 +36,8 @@
display_name = "Saddle Bag"
path = /obj/item/weapon/storage/backpack/saddlebag
slot = slot_back
/datum/gear/accessory/khcrystal
display_name = "KH Life Crystal"
path = /obj/item/weapon/storage/box/khcrystal
description = "A small necklace device that will notify an offsite cloning facility should you expire after activating it."

View File

@@ -370,4 +370,122 @@ obj/item/weapon/material/hatchet/tacknife/combatknife/fluff/katarina/handle_shie
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "serdyhelm_mob"
*/
*/
//arokha:Aronai Kadigan, but anyone is welcome to use it.
/obj/item/clothing/accessory/collar/khcrystal
name = "life crystal"
desc = "A small crystal with four little dots in it. It feels slightly warm to the touch. \
Read manual before use! NOTE: Device contains antimatter."
w_class = ITEMSIZE_SMALL
icon = 'icons/vore/custom_items_vr.dmi'
icon_override = 'icons/vore/custom_items_vr.dmi'
icon_state = "khlife"
item_state = "khlife_overlay"
overlay_state = "khlife_overlay"
slot_flags = SLOT_TIE
var/mob/owner = null
var/client/owner_c = null //They'll be dead when we message them probably.
var/state = 0 //0 - New, 1 - Paired, 2 - Breaking, 3 - Broken (same as iconstates)
New()
..()
update_state(0)
Destroy() //Waitwaitwait
if(state == 1)
process() //Nownownow
..() //Okfine
process()
check_owner()
if(state > 1)
processing_objects.Remove(src)
attack_self(mob/user as mob)
if(state > 0) //Can't re-pair, one time only, for security reasons.
user << "<span class='notice'>The [name] doesn't do anything.</span>"
return 0
owner = user //We're paired to this guy
owner_c = user.client //This is his client
update_state(1)
user << "<span class='notice'>The [name] glows pleasantly blue.</span>"
processing_objects.Add(src)
proc/check_owner()
//He's dead, jim
if(!owner || owner.stat == DEAD)
update_state(2)
audible_message("<span class='warning'>The [name] begins flashing red.</span>")
sleep(30)
visible_message("<span class='warning'>The [name] shatters into dust!</span>")
if(owner_c)
owner_c << "<span class='notice'>The HAVENS system is notified of your demise via \the [name].</span>"
update_state(3)
name = "broken [initial(name)]"
desc = "This seems like a necklace, but the actual pendant is missing."
proc/update_state(var/tostate)
state = tostate
icon_state = "[initial(icon_state)][tostate]"
update_icon()
/obj/item/weapon/paper/khcrystal_manual
name = "KH-LC91-1 manual"
info = {"<h4>KH-LC91-1 Life Crystal</h4>
<h5>Usage</h5>
<ol>
<li>Hold new crystal in hand.</li>
<li>Make fist with that hand.</li>
<li>Wait 1 second.</li>
</ol>
<br />
<h5>Purpose</h5>
<p>The Kitsuhana Life Crystal is a small device typically worn around the neck for the purpose of reporting your status to the HAVENS (Kitsuhana's High-AVailability ENgram Storage) system, so that appropriate measures can be taken in the case of your body's demise. The whole device is housed inside a pleasing-to-the-eye elongated diamond.</p>
<p>Upon your body's desmise, the crystal will send a transmission to HAVENS. Depending on your membership level, the appropriate actions can be taken to ensure that you are back up and enjoying existence as soon as possible.</p>
<p>Nanotrasen has negotiated a <i>FREE</i> Star membership for you in the HAVENS system, though an upgrade can be obtained depending on your citizenship and reputation level.</p>
As a reminder, the membership levels in HAVENS are:
<ul>
<li><b>HAVENS Star:</b> Upon reciving a signal from a transmitter indicating body demise, HAVENS will attempt to contact the owner for 48 hours, before starting the process of resleeving the owner into a new body they selected when registering their HAVENS membership.</li>
<li><b>HAVENS Nebula:</b> After the contact period from the Star service has expired, an agent will be alotted a HAVENS spacecraft, and will attempt to locate your remains, and any belongings you had, for up to one week. If possible, any more recent memory recordings or mindstates will be recovered before your resleeving. (Great for explorers! Don't miss out on anything you discovered!)</li>
<li><b>HAVENS Galaxy:</b> Upon reciving the signal from the Star service, a HAVENS High-Threat Response Team will be alotted a HAVENS FTL-capable Interdictor-class spacecraft and dispatched to your last known position to locate and recover your remains, plus any belongings. You will be resleeved on-site to continue where you left off.</li>
</ul>
<br />
<h5>Technical</h5>
<p>The Life Crystal is a small 5cm long diamond containing four main components which are visible inside the translucent gem.</p>
From tip to top, they are:
<ol>
<li><b>Qubit Bucket:</b> This small cube contains 200 bits worth of quantum-entangled bits for transmitting to HAVENS. QE transmission technologies cannot be jammed or interfered with, and are effectively instant over any distance.
<li><b>Antimatter Bottle:</b> This tiny antimatter vessel is required to power the transmitter for the time it takes to transmit the signal to HAVENS. The inside of the crystal is thick enough to block any alpha or beta particles emitted when this antimatter contacts matter, however the crystal will be destroyed when activated.
<li><b>Decay Reactor:</b> This long-term microreactor will last for around one month and provide sufficient power to power all but the transmitter. This power is required for containing the antimatter bottle.
<li><b>Sensor Suite:</b> The sensor that tracks the owner's life-state, such that it can be transmitted back to HAVENS when necessary.
</ol>
<p>The diamond itself is coated in a layer of graphene, to give it a pleasant rainbow finish. This also serves as a conductor that, if broken, will discharge the antimatter bottle immediately as it is unsafe to do so any point after the crystal is broken via physical means.</p>
<br />
<h5>Special Notes</h5>
<i>\[AM WARNING\]</i>
<p>This device contains antimatter. Please consult all local regulations when travelling to ensure compliance with local laws.</p>"}
/obj/item/weapon/storage/box/khcrystal
name = "KH-LC91-1 carrying case"
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "khlifebox"
desc = "This case can only hold the KH-LC91-1 and a manual."
item_state_slots = list(slot_r_hand_str = "syringe_kit", slot_l_hand_str = "syringe_kit")
storage_slots = 2
can_hold = list(/obj/item/weapon/paper/khcrystal_manual, /obj/item/clothing/accessory/collar/khcrystal)
max_storage_space = ITEMSIZE_COST_SMALL * 2
w_class = ITEMSIZE_SMALL
/obj/item/weapon/storage/box/khcrystal/New()
..()
new /obj/item/weapon/paper/khcrystal_manual(src)
new /obj/item/clothing/accessory/collar/khcrystal(src)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 25 KiB