update heretic (#22105)

This commit is contained in:
cowbot92
2024-06-21 22:04:29 -04:00
committed by GitHub
parent 6f7ff64f25
commit aeb0a8c721
18 changed files with 68 additions and 11 deletions

View File

@@ -1,3 +1,15 @@
/*
* Simple helper to generate a string of
* garbled symbols up to [length] characters.
*
* Used in creating spooky-text for heretic ascension announcements.
*/
/proc/generate_heretic_text(length = 25)
. = ""
for(var/i in 1 to length)
. += pick("!", "$", "^", "@", "&", "#", "*", "(", ")", "?")
/datum/antagonist/heretic /datum/antagonist/heretic
name = "Heretic" name = "Heretic"
roundend_category = "Heretics" roundend_category = "Heretics"
@@ -108,7 +120,7 @@
log_admin("[key_name(admin)] has heresized [key_name(new_owner)].") log_admin("[key_name(admin)] has heresized [key_name(new_owner)].")
/datum/antagonist/heretic/greet() /datum/antagonist/heretic/greet()
owner.current.playsound_local(get_turf(owner.current), 'sound/ambience/antag/ecult_op.ogg', 100, FALSE, pressure_affected = FALSE)//subject to change owner.current.playsound_local(get_turf(owner.current), 'sound/ambience/antag/heretic/heretic_gain.ogg', 100, FALSE, pressure_affected = FALSE, use_reverb = FALSE) // no longer subject to change
to_chat(owner, span_userdanger("You are the Heretic.")) to_chat(owner, span_userdanger("You are the Heretic."))
owner.announce_objectives() owner.announce_objectives()
to_chat(owner, "<span class='cult'>The text whispers, and forbidden knowledge licks at your mind!<br>\ to_chat(owner, "<span class='cult'>The text whispers, and forbidden knowledge licks at your mind!<br>\

View File

@@ -13,7 +13,7 @@
log_admin("[key_name(admin)] has heresized [key_name(new_owner)].") log_admin("[key_name(admin)] has heresized [key_name(new_owner)].")
/datum/antagonist/heretic_monster/greet() /datum/antagonist/heretic_monster/greet()
owner.current.playsound_local(get_turf(owner.current), 'sound/ambience/antag/ecult_op.ogg', 100, FALSE, pressure_affected = FALSE)//subject to change owner.current.playsound_local(get_turf(owner.current), 'sound/ambience/antag/heretic/heretic_gain.ogg', 100, FALSE, pressure_affected = FALSE, use_reverb = FALSE)
to_chat(owner, span_boldannounce("You became an Eldritch Horror!")) to_chat(owner, span_boldannounce("You became an Eldritch Horror!"))
/datum/antagonist/heretic_monster/on_gain() /datum/antagonist/heretic_monster/on_gain()

View File

@@ -69,7 +69,12 @@
required_shit_list = "Three dead bodies." required_shit_list = "Three dead bodies."
/datum/eldritch_transmutation/final/ash_final/on_finished_recipe(mob/living/user, list/atoms, loc) /datum/eldritch_transmutation/final/ash_final/on_finished_recipe(mob/living/user, list/atoms, loc)
priority_announce("Immense destabilization of the bluespace veil has been observed. Our scanners report a fiery entity of unknown power is quickly escalating the station temperature to unhabitable levels. Immediate evacuation is advised.", "Anomaly Alert", ANNOUNCER_SPANOMALIES) priority_announce(
text = "[generate_heretic_text()] Fear the blaze, for the Ashlord, [user.real_name] has ascended! The flames shall consume all! [generate_heretic_text()]",
title = "[generate_heretic_text()]",
sound = 'sound/ambience/antag/heretic/ascend_ash.ogg',
color_override = "pink",
)
var/datum/action/cooldown/spell/fire_sworn/circle_spell = new(user.mind) var/datum/action/cooldown/spell/fire_sworn/circle_spell = new(user.mind)
circle_spell.Grant(user) circle_spell.Grant(user)

View File

@@ -23,7 +23,12 @@
required_shit_list = "Three dead bodies." required_shit_list = "Three dead bodies."
/datum/eldritch_transmutation/final/blade_final/on_finished_recipe(mob/living/user, list/atoms, loc) /datum/eldritch_transmutation/final/blade_final/on_finished_recipe(mob/living/user, list/atoms, loc)
priority_announce("Master of blades, the Torn Champion's disciple, [user.real_name] has ascended! Their steel is that which will cut reality in a maelstom of silver!", ANNOUNCER_SPANOMALIES) priority_announce(
text = "[generate_heretic_text()] Master of blades, the Torn Champion's disciple, [user.real_name] has ascended! Their steel is that which will cut reality in a maelstom of silver! [generate_heretic_text()]",
title = "[generate_heretic_text()]",
sound = 'sound/ambience/antag/heretic/ascend_blade.ogg',
color_override = "pink",
)
var/mob/living/carbon/human/H = user var/mob/living/carbon/human/H = user
user.apply_status_effect(/datum/status_effect/protective_blades/recharging, null, 8, 30, 0.25 SECONDS, 1 MINUTES) user.apply_status_effect(/datum/status_effect/protective_blades/recharging, null, 8, 30, 0.25 SECONDS, 1 MINUTES)

View File

@@ -32,7 +32,12 @@
ADD_TRAIT(user, TRAIT_RESISTHIGHPRESSURE, MAGIC_TRAIT) ADD_TRAIT(user, TRAIT_RESISTHIGHPRESSURE, MAGIC_TRAIT)
ADD_TRAIT(user, TRAIT_NOBREATH, MAGIC_TRAIT) ADD_TRAIT(user, TRAIT_NOBREATH, MAGIC_TRAIT)
var/mob/dead/observer/ghost_candidate = pick(candidates) var/mob/dead/observer/ghost_candidate = pick(candidates)
priority_announce("Immense destabilization of the bluespace veil has been observed. Our scanners report two entitites of immeasurable power. Beginning sector purge. Immediate evacuation is advised.", "Anomaly Alert", ANNOUNCER_SPANOMALIES) priority_announce(
text = "[generate_heretic_text()] A Star Gazer has arrived into the station, [user.real_name] has ascended! This station is the domain of the Cosmos! [generate_heretic_text()]",
title = "[generate_heretic_text()]",
sound = 'sound/ambience/antag/heretic/ascend_cosmic.ogg',
color_override = "pink",
)
log_game("[key_name_admin(ghost_candidate)] has taken control of ([key_name_admin(summoned)]).") log_game("[key_name_admin(ghost_candidate)] has taken control of ([key_name_admin(summoned)]).")
summoned.ghostize(FALSE) summoned.ghostize(FALSE)
@@ -50,7 +55,12 @@
if(istype(spells, /datum/action/cooldown/spell/jaunt/ethereal_jaunt/ash)) //I dont want big mobs to be able to use ash jaunt if(istype(spells, /datum/action/cooldown/spell/jaunt/ethereal_jaunt/ash)) //I dont want big mobs to be able to use ash jaunt
spells.Remove(user) spells.Remove(user)
qdel(spells) qdel(spells)
priority_announce("$^@&#*$^@(#&$(@&#^$&#^@# Fear the cosmos, for The Creator has ascended! Unmake all of reality! $^@&#*$^@(#&$(@&#^$&#^@#","#$^@&#*$^@(#&$(@&#^$&#^@#", ANNOUNCER_SPANOMALIES) priority_announce(
text = "[generate_heretic_text()] Fear the cosmos, for The Creator, [user.real_name] Unmake all of reality! [generate_heretic_text()]",
title = "[generate_heretic_text()]",
sound = 'sound/ambience/antag/heretic/ascend_cosmic.ogg',
color_override = "pink",
)
var/atom/movable/gravity_lens/shockwave = new(get_turf(user)) var/atom/movable/gravity_lens/shockwave = new(get_turf(user))
SSsecurity_level.set_level(SEC_LEVEL_GAMMA) SSsecurity_level.set_level(SEC_LEVEL_GAMMA)

View File

@@ -115,7 +115,12 @@
var/datum/eldritch_transmutation/voiceless_dead/ghoul2 = heretic.get_transmutation(/datum/eldritch_transmutation/voiceless_dead) var/datum/eldritch_transmutation/voiceless_dead/ghoul2 = heretic.get_transmutation(/datum/eldritch_transmutation/voiceless_dead)
ghoul2.max_amt *= 3 ghoul2.max_amt *= 3
var/mob/dead/observer/ghost_candidate = pick(candidates) var/mob/dead/observer/ghost_candidate = pick(candidates)
priority_announce("Immense destabilization of the bluespace veil has been observed. Our scanners report two entitites of immeasurable power, one of which is of a considerable volume of organic mass. Immediate evacuation is advised.", "Anomaly Alert", ANNOUNCER_SPANOMALIES) priority_announce(
text = "[generate_heretic_text()] Ever coiling vortex. Reality unfolded. ARMS OUTREACHED, THE LORD OF THE NIGHT, [user.real_name] has ascended! Fear the ever twisting hand! [generate_heretic_text()]",
title = "[generate_heretic_text()]",
sound = 'sound/ambience/antag/heretic/ascend_flesh.ogg',
color_override = "pink",
)
log_game("[key_name_admin(ghost_candidate)] has taken control of ([key_name_admin(summoned)]).") log_game("[key_name_admin(ghost_candidate)] has taken control of ([key_name_admin(summoned)]).")
summoned.ghostize(FALSE) summoned.ghostize(FALSE)
@@ -133,7 +138,12 @@
if(istype(spells, /datum/action/cooldown/spell/jaunt/ethereal_jaunt/ash)) //vitally important since ashen passage breaks the shit out of armsy if(istype(spells, /datum/action/cooldown/spell/jaunt/ethereal_jaunt/ash)) //vitally important since ashen passage breaks the shit out of armsy
spells.Remove(user) spells.Remove(user)
qdel(spells) qdel(spells)
priority_announce("$^@&#*$^@(#&$(@&#^$&#^@# Fear the dark, for King of Arms has ascended! Our Lord of the Night has come! $^@&#*$^@(#&$(@&#^$&#^@#","#$^@&#*$^@(#&$(@&#^$&#^@#", ANNOUNCER_SPANOMALIES) priority_announce(
text = "[generate_heretic_text()] Fear the dark, for King of Arms, [user.real_name] has ascended! Our Lord of the Night has come! [generate_heretic_text()]",
title = "[generate_heretic_text()]",
sound = 'sound/ambience/antag/heretic/ascend_flesh.ogg',
color_override = "pink",
)
SSsecurity_level.set_level(SEC_LEVEL_GAMMA) SSsecurity_level.set_level(SEC_LEVEL_GAMMA)
var/atom/movable/gravity_lens/shockwave = new(get_turf(user)) var/atom/movable/gravity_lens/shockwave = new(get_turf(user))

View File

@@ -16,7 +16,12 @@
required_shit_list = "Three dead bodies." required_shit_list = "Three dead bodies."
/datum/eldritch_transmutation/final/knock_final/on_finished_recipe(mob/living/user, list/atoms, loc) /datum/eldritch_transmutation/final/knock_final/on_finished_recipe(mob/living/user, list/atoms, loc)
priority_announce("Immense destabilization of the bluespace veil has been observed. Our scanners report a fiery entity of unknown power is quickly escalating the station temperature to unhabitable levels. Immediate evacuation is advised.", "Anomaly Alert", ANNOUNCER_SPANOMALIES) priority_announce(
text = "Delta-class dimensional anomaly detec[generate_heretic_text()] Reality rended, torn. Gates open, doors open, [user.real_name] has ascended! Fear the rising tide! [generate_heretic_text()]",
title = "[generate_heretic_text()]",
sound = 'sound/ambience/antag/heretic/ascend_knock.ogg',
color_override = "pink",
)
new /obj/structure/knock_tear(loc, user.mind) new /obj/structure/knock_tear(loc, user.mind)
var/mob/living/carbon/human/H = user var/mob/living/carbon/human/H = user

View File

@@ -33,7 +33,12 @@
H.physiology.burn_mod *= 0.5 H.physiology.burn_mod *= 0.5
H.physiology.stamina_mod = 0 H.physiology.stamina_mod = 0
H.physiology.stun_mod = 0 H.physiology.stun_mod = 0
priority_announce("Immense destabilization of the bluespace veil has been observed. Our scanners report significant and rapid decay of the station's infrastructure with a single entity as its source. Immediate evacuation is advised.", "Anomaly Alert", ANNOUNCER_SPANOMALIES) priority_announce(
text = "[generate_heretic_text()] Fear the decay, for the Rustbringer, [user.real_name] has ascended! None shall escape the corrosion! [generate_heretic_text()]",
title = "[generate_heretic_text()]",
sound = 'sound/ambience/antag/heretic/ascend_rust.ogg',
color_override = "pink",
)
new /datum/rust_spread(loc) new /datum/rust_spread(loc)
var/datum/antagonist/heretic/ascension = H.mind.has_antag_datum(/datum/antagonist/heretic) var/datum/antagonist/heretic/ascension = H.mind.has_antag_datum(/datum/antagonist/heretic)

View File

@@ -91,7 +91,12 @@
storm.impacted_areas = list(source_area) storm.impacted_areas = list(source_area)
storm.update_areas() storm.update_areas()
priority_announce("Immense destabilization of the bluespace veil has been observed. @&#^$&#^@# The nobleman of void [user.real_name] has arrived, stepping along the Waltz that ends worlds! $&#^@#@&#^ Immediate evacuation is advised.", "Anomaly Alert", ANNOUNCER_SPANOMALIES) priority_announce(
text = "[generate_heretic_text()] The nobleman of void [user.real_name] has arrived, stepping along the Waltz that ends worlds! [generate_heretic_text()]",
title = "[generate_heretic_text()]",
sound = 'sound/ambience/antag/heretic/ascend_void.ogg',
color_override = "pink",
)
var/datum/antagonist/heretic/ascension = H.mind.has_antag_datum(/datum/antagonist/heretic) var/datum/antagonist/heretic/ascension = H.mind.has_antag_datum(/datum/antagonist/heretic)
ascension.ascended = TRUE ascension.ascended = TRUE

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.