mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-29 16:10:02 +01:00
This makes the Psionic Awakener actually give the user points to spend in the psionic power shop. This item is strictly limited to the crew-psionics, so to make it a bit more interesting it gives 3 points instead of the standard 2. It did not previously give any points, essentially meaning the user only had telepathy and nothing interesting.
185 lines
6.3 KiB
Plaintext
185 lines
6.3 KiB
Plaintext
//Psi-boosting item (antag only)
|
|
/obj/item/clothing/head/helmet/space/psi_amp
|
|
name = "cerebro-energetic enhancer"
|
|
desc = "A matte-black, eyeless cerebro-energetic enhancement helmet. It uses highly sophisticated, and illegal, techniques to drill into your brain and install psi-infected AIs into the fluid cavities between your lobes."
|
|
action_button_name = "Install Boosters"
|
|
icon = 'icons/obj/clothing/hats.dmi'
|
|
contained_sprite = FALSE
|
|
icon_state = "amp"
|
|
|
|
item_state_slots = list(
|
|
slot_l_hand_str = "helmet",
|
|
slot_r_hand_str = "helmet"
|
|
)
|
|
|
|
var/operating = FALSE
|
|
var/boosted_rank = PSI_RANK_HARMONIOUS
|
|
var/boosted_psipower = 120
|
|
|
|
/obj/item/clothing/head/helmet/space/psi_amp/mechanics_hints(mob/user, distance, is_adjacent)
|
|
. += ..()
|
|
. += "Due to the nature of this headgear, it will also protect you from the pressure of space."
|
|
. += "When installing the boosters, your chosen faculties will be boosted to the headgear's maximum potential, but the unchosen faculties will also be boosted somewhat."
|
|
|
|
/obj/item/clothing/head/helmet/space/psi_amp/lesser
|
|
name = "psionic amplifier"
|
|
desc = "A crown-of-thorns cerebro-energetic enhancer that interfaces directly with the brain, isolating and strengthening psionic signals. It kind of looks like a tiara."
|
|
flags_inv = 0
|
|
body_parts_covered = 0
|
|
|
|
boosted_rank = PSI_RANK_HARMONIOUS
|
|
boosted_psipower = 50
|
|
|
|
/obj/item/clothing/head/helmet/space/psi_amp/Initialize()
|
|
. = ..()
|
|
verbs += /obj/item/clothing/head/helmet/space/psi_amp/proc/integrate
|
|
|
|
/obj/item/clothing/head/helmet/space/psi_amp/proc/deintegrate()
|
|
set name = "Remove Psi-Amp"
|
|
set desc = "Removes your psi-amp."
|
|
set category = "Abilities"
|
|
set src in usr
|
|
|
|
if(operating)
|
|
return
|
|
|
|
if(canremove)
|
|
return
|
|
|
|
var/mob/living/carbon/human/H = loc
|
|
if(!istype(H) || H.head != src)
|
|
canremove = TRUE
|
|
return
|
|
|
|
to_chat(H, SPAN_WARNING("You feel a strange tugging sensation as \the [src] begins removing the slave-minds from your brain..."))
|
|
playsound(H, 'sound/weapons/circsawhit.ogg', 50, 1, -1)
|
|
operating = TRUE
|
|
|
|
sleep(80)
|
|
|
|
if(H.psi)
|
|
H.psi.reset()
|
|
|
|
to_chat(H, SPAN_NOTICE("\The [src] chimes quietly as it finishes removing the slave-minds from your brain."))
|
|
|
|
canremove = TRUE
|
|
operating = FALSE
|
|
|
|
verbs -= /obj/item/clothing/head/helmet/space/psi_amp/proc/deintegrate
|
|
verbs |= /obj/item/clothing/head/helmet/space/psi_amp/proc/integrate
|
|
|
|
action_button_name = "Integrate Psionic Amplifier"
|
|
H.update_action_buttons()
|
|
|
|
set_light(0)
|
|
|
|
/obj/item/clothing/head/helmet/space/psi_amp/Move()
|
|
var/lastloc = loc
|
|
. = ..()
|
|
if(.)
|
|
var/mob/living/carbon/human/H = lastloc
|
|
if(istype(H) && H.psi)
|
|
H.psi.reset()
|
|
H = loc
|
|
if(!istype(H) || H.head != src)
|
|
canremove = TRUE
|
|
|
|
/obj/item/clothing/head/helmet/space/psi_amp/proc/integrate()
|
|
set name = "Integrate Psionic Amplifier"
|
|
set desc = "Enhance your brainpower."
|
|
set category = "Abilities"
|
|
set src in usr
|
|
|
|
if(operating)
|
|
return
|
|
|
|
if(!canremove)
|
|
return
|
|
|
|
var/mob/living/carbon/human/H = loc
|
|
if(!istype(H) || H.head != src)
|
|
to_chat(usr, SPAN_WARNING("\The [src] must be worn on your head in order to be activated."))
|
|
return
|
|
|
|
canremove = FALSE
|
|
operating = TRUE
|
|
to_chat(H, SPAN_WARNING("You feel a series of sharp pinpricks as \the [src] anaesthetises your scalp before drilling down into your brain."))
|
|
playsound(H, 'sound/weapons/circsawhit.ogg', 50, 1, -1)
|
|
|
|
sleep(80)
|
|
|
|
H.set_psi_rank(boosted_rank, temporary = TRUE)
|
|
if(H.psi)
|
|
H.psi.max_stamina = boosted_psipower
|
|
H.psi.stamina = H.psi.max_stamina
|
|
H.psi.update(force = TRUE)
|
|
|
|
to_chat(H, SPAN_NOTICE("You experience a brief but powerful wave of deja vu as \the [src] finishes modifying your brain."))
|
|
verbs |= /obj/item/clothing/head/helmet/space/psi_amp/proc/deintegrate
|
|
verbs -= /obj/item/clothing/head/helmet/space/psi_amp/proc/integrate
|
|
operating = FALSE
|
|
action_button_name = "Remove Psionic Amplifier"
|
|
H.update_action_buttons()
|
|
H.client.init_verbs()
|
|
|
|
set_light(0.5, 0.1, 3, 2, l_color = "#880000")
|
|
|
|
/obj/item/psionic_jumpstarter
|
|
name = "psionic jumpstarter"
|
|
desc = "Use this to jumpstart your psionic rank to Psionically Harmonious, enabling you to use the Psionic Point Shop and buy offensive psionic abilities. \
|
|
This won't work on species with no Zona Bovinae, like synthetics, vaurcae or dionae! This item is definitely not canon."
|
|
icon = 'icons/obj/clothing/hats.dmi'
|
|
icon_state = "amp"
|
|
contained_sprite = FALSE
|
|
|
|
/**
|
|
* The psi rank that this jumpstarter will set a user to.
|
|
* If the user is below this psi-rank, it will upgrade them
|
|
*/
|
|
var/psi_rank_to_set = PSI_RANK_HARMONIOUS
|
|
|
|
/**
|
|
* The amount of psi-points this jumpstarter will set a user to have.
|
|
* Due to limitations of the current psionics code, it's not actually feasible for me to make this a modifier.
|
|
* If this is set to -1, it will set the points to whatever the default point total is for the given psi-rank.
|
|
*/
|
|
var/psi_points_override = 8
|
|
|
|
/// The message displayed to a character that is not eligible for psionics when attempting to use the psionic jumpstarter.
|
|
var/non_eligible_message = SPAN_WARNING("You don't have a Zona Bovinae!")
|
|
|
|
/// The message displayed to a character that is already at or above the jumpstarter's psionic rating.
|
|
var/already_psionic_message = SPAN_WARNING("You've already awakened your psionic potential!")
|
|
|
|
/// The message displayed to a player who successfully uses a psionic jumpstarter.
|
|
var/awakening_message = SPAN_NOTICE("You've awakened your psionic potential. Note that you have a reduced point pool than usual.")
|
|
|
|
/obj/item/psionic_jumpstarter/attack_self(mob/user)
|
|
. = ..()
|
|
if(!ishuman(user))
|
|
return
|
|
var/mob/living/carbon/human/H = user
|
|
if(!H.has_zona_bovinae())
|
|
to_chat(H, non_eligible_message)
|
|
return
|
|
|
|
if(H.psi && H.psi.get_rank() >= psi_rank_to_set)
|
|
to_chat(H, already_psionic_message)
|
|
return
|
|
|
|
H.set_psi_rank(psi_rank_to_set)
|
|
|
|
if(psi_points_override != -1)
|
|
H.psi.psi_points = psi_points_override
|
|
|
|
to_chat(H, awakening_message)
|
|
qdel(src)
|
|
|
|
/obj/item/psionic_jumpstarter/sensitive
|
|
name = "psionic awakener"
|
|
desc = "Use this to jumpstart your psionic rank to Psionically Sensitive, enabling you to use the Psionic Point Shop and buy basic psionic abilities. \
|
|
This won't work on species with no Zona Bovinae, like synthetics, vaurcae or dionae! This item is definitely not canon."
|
|
psi_rank_to_set = PSI_RANK_SENSITIVE
|
|
psi_points_override = 3
|
|
awakening_message = SPAN_NOTICE("You've awakened your psionic potential.")
|