mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-01-25 16:53:28 +00:00
* Your unbeatable smile wrecks the media We wanna know your secret, so mysterious * Even the things she lacks end up in her area Such a perfect liar, you are * Miss ingenious, godly idol! (You're my savior, you're my saving grace) * So, what'd you eat today? What's your favorite book? * And if you wanna go to play, where are you gonna go? I haven't eaten at all * That's a secret No matter what you ask * She's elusive, evasive * So nonchalant Yet still shining bright; * Her secret: out of sight, as if visible, has the taste of honey There is none, none, none of this * And also none, none, none of that What type of guy do you like? * Who is your partner? Come on, answer me * "I don't understand what falling in love with someone else is like" (Hey! Hey!) I cannot tell what is true from what is a lie (Hey! Hey! Hey! Hey!) * And yet again, someone falls for such words (Hey! Hey! Hey! Hey!) Gently lulled into love * Drawing everyone's eyes You are the perfect, ultimate idol * Never to appear again A reincarnation of Venus * With that smile, with that "I love you" You captivate everyone * Even if those eyes, those words, are false They make up a perfect love (Ai) * Yeah, yeah, that girl stands out, exceptional We were extras from the beginning * BS that acted as adornments for the star's leading role Everything we've accomplished is thanks to her — no! * How impudent How could envy and jealousy not exist? * examine * This isn't some made-up drama for appearances So I cannot forgive * You're not perfect, I cannot forgive you I cannot forgive myself * I cannot accept any version of you other than the one stronger than everyone else * Everybody trusts and worships The very strongest, most invincible idol * Weaknesses and whatnot are not to be found Carrying the morning star within * Showing any weakness is no good, no good (Hey! Hey!) Don't let them see anything that they don't want to know (Hey! Hey! Hey! Hey!) * Anything but being one-of-a-kind is a definite no, no (Hey! Hey! Hey! Hey!) That is the real love (Hey!) * can commune fixes * can commune rename * fix is psi blocked * fixes agian * My signature smile that fires up the media The only secret that I shall keep is this: * My career was built upon fake "I love you"s This is love, in my own way * Even the flowing sweats are beautiful Aqua These eyelids that hid the Ruby within * Sing, dance, flutter, I am Maria — Right, lying is the most exquisite form of love * I have never been loved by anyone Nor have I loved anyone else * That such lies of mine will become true someday I trust in it * Someday, surely, I will have it all in hand I am such a greedy idol * Because I wish to love everybody properly in a life-sized way I shall lie today as well (Hey! Hey! Hey! Hey!) * a * b * c * d * And yet, still, (Hey! Hey!) I have been unable to tell you, and you, alone (Hey! Hey! Hey! Hey!) * jesus christ * Update code/controllers/subsystems/processing/psi.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/controllers/subsystems/processing/psi.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/controllers/subsystems/processing/psi.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/game/gamemodes/technomancer/spell_objs.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/mob/living/carbon/human/human.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/mob/living/carbon/human/human_helpers.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/organs/organ_external.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/assay.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/command.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/emotional_suggestion.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/grip.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/grip.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/mend.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/mend.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/mend.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/psi_search.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/shockwave.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/shockwave.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/singularity.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/abilities/time_stop.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/events/mini_spasm.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/interface/ui_hub.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/interface/ui_hub.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/interface/ui_hub.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/interface/ui_hub.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/interface/ui_hub.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/psionics/interface/ui_hub.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * cl update --------- Co-authored-by: Matt Atlas <liermattia@gmail.com> Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
109 lines
3.8 KiB
Plaintext
109 lines
3.8 KiB
Plaintext
/datum/psi_complexus/proc/update(var/force)
|
|
set waitfor = FALSE
|
|
|
|
if(force || last_psionic_rank != psionic_rank)
|
|
if(psionic_rank == 0)
|
|
qdel(src)
|
|
return
|
|
else
|
|
sound_to(owner, 'sound/effects/psi/power_unlock.ogg')
|
|
cost_modifier = 1
|
|
if(psionic_rank > 1)
|
|
cost_modifier -= min(1, max(0.1, psionic_rank / 10))
|
|
if(!ui)
|
|
ui = new(owner)
|
|
if(owner.client)
|
|
owner.client.screen += ui
|
|
else
|
|
if(owner.client)
|
|
owner.client.screen |= ui
|
|
|
|
var/image/aura_image = get_aura_image()
|
|
if(psionic_rank >= PSI_RANK_APEX) // spooky boosters
|
|
aura_color = "#aaffaa"
|
|
aura_image.blend_mode = BLEND_SUBTRACT
|
|
else
|
|
aura_image.blend_mode = BLEND_ADD
|
|
if(psionic_rank == PSI_RANK_SENSITIVE)
|
|
aura_color = "#cccc33"
|
|
else if(psionic_rank == PSI_RANK_HARMONIOUS)
|
|
aura_color = "#64c464"
|
|
|
|
if(psionic_rank > PSI_RANK_SENSITIVE && last_psionic_rank < PSI_RANK_HARMONIOUS)
|
|
switch(psionic_rank)
|
|
if(PSI_RANK_HARMONIOUS)
|
|
psi_points = PSI_POINTS_HARMONIOUS
|
|
if(PSI_RANK_APEX)
|
|
psi_points = PSI_POINTS_APEX
|
|
if(PSI_RANK_LIMITLESS)
|
|
psi_points = PSI_POINTS_LIMITLESS
|
|
/// We had special abilities unique to our level, so get rid of 'em.
|
|
if(last_psionic_rank > PSI_RANK_HARMONIOUS)
|
|
wipe_user_abilities()
|
|
|
|
if(last_psionic_rank > PSI_RANK_SENSITIVE && psionic_rank < PSI_RANK_HARMONIOUS)
|
|
psi_points = 0
|
|
wipe_user_abilities()
|
|
|
|
if(!announced && owner && owner.client && !QDELETED(src))
|
|
announced = TRUE
|
|
to_chat(owner, "<hr>")
|
|
to_chat(owner, SPAN_NOTICE("<font size = 3>You are <b>psionic</b>, touched by powers beyond understanding.</font>"))
|
|
to_chat(owner, SPAN_NOTICE("<b>Left-click</b> your psionic icon to open your Psionic Point Shop, which contains information about your powers. \
|
|
You can also <b>shift-click</b> your ability icons on the top right to know more about them. \
|
|
Beware: overusing your gifts can have <b>deadly consequences</b>."))
|
|
to_chat(owner, "<hr>")
|
|
|
|
if(get_rank() >= PSI_RANK_SENSITIVE)
|
|
for(var/singleton/psionic_power/P in GET_SINGLETON_SUBTYPE_LIST(/singleton/psionic_power))
|
|
if((P.ability_flags & PSI_FLAG_FOUNDATIONAL) || (P.ability_flags & PSI_FLAG_APEX && get_rank() >= PSI_RANK_APEX) || (P.ability_flags & PSI_FLAG_LIMITLESS && get_rank() >= PSI_RANK_LIMITLESS))
|
|
if(!(P.type in psionic_powers))
|
|
P.apply(owner)
|
|
|
|
/datum/psi_complexus/proc/wipe_user_abilities()
|
|
for(var/obj/screen/ability/obj_based/psionic/P in owner.ability_master.ability_objects)
|
|
if((P.connected_power.ability_flags & PSI_FLAG_APEX) && get_rank() < PSI_RANK_APEX)
|
|
owner.ability_master.remove_ability(P)
|
|
if((P.connected_power.ability_flags & PSI_FLAG_LIMITLESS) && get_rank() < PSI_RANK_LIMITLESS)
|
|
owner.ability_master.remove_ability(P)
|
|
|
|
/datum/psi_complexus/process()
|
|
|
|
var/update_hud
|
|
|
|
if(stun)
|
|
stun--
|
|
if(stun)
|
|
if(!suppressed)
|
|
suppressed = TRUE
|
|
update_hud = TRUE
|
|
else
|
|
to_chat(owner, SPAN_NOTICE("You have recovered your mental composure."))
|
|
suppressed = FALSE
|
|
update_hud = TRUE
|
|
return
|
|
|
|
else if(stamina < max_stamina)
|
|
if(owner?.stat == CONSCIOUS)
|
|
stamina = min(max_stamina, stamina + rand(1,3))
|
|
else if(owner?.stat == UNCONSCIOUS)
|
|
stamina = min(max_stamina, stamina + rand(3,5))
|
|
|
|
if(armor_component)
|
|
spend_power(1)
|
|
|
|
var/next_aura_size = max(0.1, ((stamina / max_stamina)*min(3, psionic_rank)) / 3)
|
|
var/next_aura_alpha = round(((suppressed ? max(0, psionic_rank - 2) : psionic_rank) / 5)*255)
|
|
|
|
if(next_aura_alpha != last_aura_alpha || next_aura_size != last_aura_size || aura_color != last_aura_color)
|
|
last_aura_size = next_aura_size
|
|
last_aura_alpha = next_aura_alpha
|
|
last_aura_color = aura_color
|
|
var/matrix/M = matrix()
|
|
if(next_aura_size != 1)
|
|
M.Scale(next_aura_size)
|
|
animate(get_aura_image(), alpha = next_aura_alpha, transform = M, color = aura_color, time = 3)
|
|
|
|
if(update_hud)
|
|
ui.update_icon()
|