diff --git a/code/__HELPERS/pronouns.dm b/code/__HELPERS/pronouns.dm index 6568909c964..9c238ed45db 100644 --- a/code/__HELPERS/pronouns.dm +++ b/code/__HELPERS/pronouns.dm @@ -88,7 +88,7 @@ return gender = targeted_gender else - gender = targeted_atom.gender + gender = targeted_atom.get_visible_gender() ///The pronouns are ordered by their length to avoid %PRONOUN_Theyve being translated to "Heve" instead of "He's", for example var/regex/pronoun_regex = regex("%PRONOUN(_(theirs|Theirs|theyve|Theyve|theyre|Theyre|their|Their|they|They|them|Them|have|were|are|do|es|s))") while(pronoun_regex.Find(target_string)) @@ -300,82 +300,61 @@ else return "itself" +/// Reports what gender this atom appears to be +/atom/proc/get_visible_gender() + return gender + +/mob/living/carbon/human/get_visible_gender() + if(HAS_TRAIT(src, TRAIT_UNKNOWN)) + return PLURAL + var/face_hidden = (wear_mask?.flags_inv & HIDEFACE) || (head?.flags_inv & HIDEFACE) + if(face_hidden && (check_obscured_slots() & ITEM_SLOT_ICLOTHING)) + return PLURAL + return gender + //humans need special handling, because they can have their gender hidden /mob/living/carbon/human/p_they(temp_gender) - var/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((obscured & ITEM_SLOT_ICLOTHING) && skipface) - temp_gender = PLURAL + temp_gender ||= get_visible_gender() return ..() /mob/living/carbon/human/p_their(temp_gender) - var/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((obscured & ITEM_SLOT_ICLOTHING) && skipface) - temp_gender = PLURAL + temp_gender ||= get_visible_gender() return ..() /mob/living/carbon/human/p_theirs(capitalized, temp_gender) - var/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((obscured & ITEM_SLOT_ICLOTHING) && skipface) - temp_gender = PLURAL + temp_gender ||= get_visible_gender() return ..() /mob/living/carbon/human/p_them(capitalized, temp_gender) - var/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((obscured & ITEM_SLOT_ICLOTHING) && skipface) - temp_gender = PLURAL + temp_gender ||= get_visible_gender() return ..() /mob/living/carbon/human/p_have(temp_gender) - var/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((obscured & ITEM_SLOT_ICLOTHING) && skipface) - temp_gender = PLURAL + temp_gender ||= get_visible_gender() return ..() /mob/living/carbon/human/p_are(temp_gender) - var/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((obscured & ITEM_SLOT_ICLOTHING) && skipface) - temp_gender = PLURAL + temp_gender ||= get_visible_gender() return ..() /mob/living/carbon/human/p_were(temp_gender) - var/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((obscured & ITEM_SLOT_ICLOTHING) && skipface) - temp_gender = PLURAL + temp_gender ||= get_visible_gender() return ..() /mob/living/carbon/human/p_do(temp_gender) - var/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((obscured & ITEM_SLOT_ICLOTHING) && skipface) - temp_gender = PLURAL + temp_gender ||= get_visible_gender() return ..() /mob/living/carbon/human/p_s(temp_gender) - var/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((obscured & ITEM_SLOT_ICLOTHING) && skipface) - temp_gender = PLURAL + temp_gender ||= get_visible_gender() return ..() /mob/living/carbon/human/p_es(temp_gender) - var/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((obscured & ITEM_SLOT_ICLOTHING) && skipface) - temp_gender = PLURAL + temp_gender ||= get_visible_gender() return ..() /mob/living/carbon/human/p_themselves(temp_gender) - var/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((obscured & ITEM_SLOT_ICLOTHING) && skipface) - temp_gender = PLURAL + temp_gender ||= get_visible_gender() return ..() //clothing need special handling due to pairs of items, ie gloves vs a singular glove, shoes, ect. diff --git a/code/game/objects/items/dice.dm b/code/game/objects/items/dice.dm index e65b4bada08..c0de4d76383 100644 --- a/code/game/objects/items/dice.dm +++ b/code/game/objects/items/dice.dm @@ -482,7 +482,7 @@ school = SCHOOL_CONJURATION cooldown_time = 10 SECONDS - invocation = "JE VES" + invocation = "JE VES?" invocation_type = INVOCATION_WHISPER spell_requirements = NONE spell_max_level = 0 //cannot be improved diff --git a/code/modules/antagonists/heretic/magic/aggressive_spread.dm b/code/modules/antagonists/heretic/magic/aggressive_spread.dm index 77c6a6227de..8f775f871f3 100644 --- a/code/modules/antagonists/heretic/magic/aggressive_spread.dm +++ b/code/modules/antagonists/heretic/magic/aggressive_spread.dm @@ -10,7 +10,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 30 SECONDS - invocation = "A'GRSV SPR'D" + invocation = "A'GRSV SPR'D." invocation_type = INVOCATION_WHISPER spell_requirements = NONE diff --git a/code/modules/antagonists/heretic/magic/ash_ascension.dm b/code/modules/antagonists/heretic/magic/ash_ascension.dm index 9d69acdd258..dcedaf03cec 100644 --- a/code/modules/antagonists/heretic/magic/ash_ascension.dm +++ b/code/modules/antagonists/heretic/magic/ash_ascension.dm @@ -10,7 +10,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 70 SECONDS - invocation = "FL'MS" + invocation = "FL'MS." invocation_type = INVOCATION_WHISPER spell_requirements = NONE @@ -72,7 +72,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 30 SECONDS - invocation = "C'SC'DE" + invocation = "C'SC'D." invocation_type = INVOCATION_WHISPER spell_requirements = NONE @@ -112,7 +112,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 300 - invocation = "F'RE" + invocation = "F'R." invocation_type = INVOCATION_WHISPER spell_requirements = NONE diff --git a/code/modules/antagonists/heretic/magic/blood_siphon.dm b/code/modules/antagonists/heretic/magic/blood_siphon.dm index 1801b6d9dbc..c63b17a703f 100644 --- a/code/modules/antagonists/heretic/magic/blood_siphon.dm +++ b/code/modules/antagonists/heretic/magic/blood_siphon.dm @@ -11,7 +11,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 15 SECONDS - invocation = "FL'MS O'ET'RN'ITY." + invocation = "FL'MS O' 'T'RN'TY." invocation_type = INVOCATION_WHISPER spell_requirements = NONE diff --git a/code/modules/antagonists/heretic/magic/cosmic_expansion.dm b/code/modules/antagonists/heretic/magic/cosmic_expansion.dm index 9baf3366f4b..a3330aefabd 100644 --- a/code/modules/antagonists/heretic/magic/cosmic_expansion.dm +++ b/code/modules/antagonists/heretic/magic/cosmic_expansion.dm @@ -11,7 +11,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 45 SECONDS - invocation = "C'SM'S 'XP'ND" + invocation = "C'SM'S 'XP'ND!" invocation_type = INVOCATION_SHOUT spell_requirements = NONE diff --git a/code/modules/antagonists/heretic/magic/cosmic_runes.dm b/code/modules/antagonists/heretic/magic/cosmic_runes.dm index 7eee200dd4a..af023e73a03 100644 --- a/code/modules/antagonists/heretic/magic/cosmic_runes.dm +++ b/code/modules/antagonists/heretic/magic/cosmic_runes.dm @@ -11,7 +11,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 15 SECONDS - invocation = "ST'R R'N'" + invocation = "ST'R R'N." invocation_type = INVOCATION_WHISPER spell_requirements = NONE diff --git a/code/modules/antagonists/heretic/magic/eldritch_blind.dm b/code/modules/antagonists/heretic/magic/eldritch_blind.dm index 8df20503821..facde89ade7 100644 --- a/code/modules/antagonists/heretic/magic/eldritch_blind.dm +++ b/code/modules/antagonists/heretic/magic/eldritch_blind.dm @@ -5,7 +5,7 @@ overlay_icon_state = "bg_heretic_border" school = SCHOOL_FORBIDDEN - invocation = "E'E'S" + invocation = "E'E'S." spell_requirements = NONE cast_range = 10 diff --git a/code/modules/antagonists/heretic/magic/eldritch_emplosion.dm b/code/modules/antagonists/heretic/magic/eldritch_emplosion.dm index c68ed07c81f..35d7f600081 100644 --- a/code/modules/antagonists/heretic/magic/eldritch_emplosion.dm +++ b/code/modules/antagonists/heretic/magic/eldritch_emplosion.dm @@ -8,7 +8,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 30 SECONDS - invocation = "E'P" + invocation = "E'P." invocation_type = INVOCATION_WHISPER spell_requirements = NONE diff --git a/code/modules/antagonists/heretic/magic/eldritch_shapeshift.dm b/code/modules/antagonists/heretic/magic/eldritch_shapeshift.dm index e598f1f9215..514236771e2 100644 --- a/code/modules/antagonists/heretic/magic/eldritch_shapeshift.dm +++ b/code/modules/antagonists/heretic/magic/eldritch_shapeshift.dm @@ -7,7 +7,7 @@ overlay_icon_state = "bg_heretic_border" school = SCHOOL_FORBIDDEN - invocation = "SH'PE" + invocation = "SH'PE." invocation_type = INVOCATION_WHISPER spell_requirements = NONE diff --git a/code/modules/antagonists/heretic/magic/mind_gate.dm b/code/modules/antagonists/heretic/magic/mind_gate.dm index 7963c4d6c02..74a04eba396 100644 --- a/code/modules/antagonists/heretic/magic/mind_gate.dm +++ b/code/modules/antagonists/heretic/magic/mind_gate.dm @@ -11,7 +11,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 20 SECONDS - invocation = "Op' 'oY 'Mi'd" + invocation = "Op'n y'r m'd." invocation_type = INVOCATION_WHISPER spell_requirements = NONE cast_range = 6 diff --git a/code/modules/antagonists/heretic/magic/moon_parade.dm b/code/modules/antagonists/heretic/magic/moon_parade.dm index d8873c816cc..48df0ab58df 100644 --- a/code/modules/antagonists/heretic/magic/moon_parade.dm +++ b/code/modules/antagonists/heretic/magic/moon_parade.dm @@ -11,7 +11,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 30 SECONDS - invocation = "L'N'R P'RAD" + invocation = "L'N'R P'R'D!" invocation_type = INVOCATION_SHOUT spell_requirements = NONE diff --git a/code/modules/antagonists/heretic/magic/moon_ringleader.dm b/code/modules/antagonists/heretic/magic/moon_ringleader.dm index beacd0f5afa..130212f9455 100644 --- a/code/modules/antagonists/heretic/magic/moon_ringleader.dm +++ b/code/modules/antagonists/heretic/magic/moon_ringleader.dm @@ -12,7 +12,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 1 MINUTES antimagic_flags = MAGIC_RESISTANCE|MAGIC_RESISTANCE_MIND - invocation = "R''S 'E" + invocation = "R'S 'E!" invocation_type = INVOCATION_SHOUT spell_requirements = NONE diff --git a/code/modules/antagonists/heretic/magic/moon_smile.dm b/code/modules/antagonists/heretic/magic/moon_smile.dm index 62e1fa6747e..fd98dc0d841 100644 --- a/code/modules/antagonists/heretic/magic/moon_smile.dm +++ b/code/modules/antagonists/heretic/magic/moon_smile.dm @@ -12,7 +12,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 20 SECONDS antimagic_flags = MAGIC_RESISTANCE|MAGIC_RESISTANCE_MIND - invocation = "Mo'N S'M'LE" + invocation = "M'N S'M'LE!" invocation_type = INVOCATION_SHOUT spell_requirements = NONE cast_range = 6 diff --git a/code/modules/antagonists/heretic/magic/nightwatcher_rebirth.dm b/code/modules/antagonists/heretic/magic/nightwatcher_rebirth.dm index 4e37f5db17f..6b156e01653 100644 --- a/code/modules/antagonists/heretic/magic/nightwatcher_rebirth.dm +++ b/code/modules/antagonists/heretic/magic/nightwatcher_rebirth.dm @@ -11,7 +11,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 1 MINUTES - invocation = "GL'RY T' TH' N'GHT'W'TCH'ER" + invocation = "GL'RY T' TH' N'GHT'W'TCH'ER." invocation_type = INVOCATION_WHISPER spell_requirements = SPELL_REQUIRES_HUMAN diff --git a/code/modules/antagonists/heretic/magic/rust_construction.dm b/code/modules/antagonists/heretic/magic/rust_construction.dm index 72546f66592..59aeacf3004 100644 --- a/code/modules/antagonists/heretic/magic/rust_construction.dm +++ b/code/modules/antagonists/heretic/magic/rust_construction.dm @@ -10,6 +10,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 8 SECONDS + // Both of these are changed in before_cast invocation = "Someone raises a wall of rust." invocation_self_message = "You raise a wall of rust." invocation_type = INVOCATION_EMOTE diff --git a/code/modules/antagonists/heretic/magic/rust_wave.dm b/code/modules/antagonists/heretic/magic/rust_wave.dm index 1464829aa4c..45f1f878cff 100644 --- a/code/modules/antagonists/heretic/magic/rust_wave.dm +++ b/code/modules/antagonists/heretic/magic/rust_wave.dm @@ -13,7 +13,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 30 SECONDS - invocation = "'NTR'P'C PL'M'" + invocation = "'NTR'P'C PL'M!" invocation_type = INVOCATION_WHISPER spell_requirements = NONE @@ -78,7 +78,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 35 SECONDS - invocation = "SPR'D TH' WO'D" + invocation = "SPR'D TH' W'D." invocation_type = INVOCATION_WHISPER spell_requirements = NONE diff --git a/code/modules/antagonists/heretic/magic/void_prison.dm b/code/modules/antagonists/heretic/magic/void_prison.dm index 517fdc2984c..a70c4e36ffa 100644 --- a/code/modules/antagonists/heretic/magic/void_prison.dm +++ b/code/modules/antagonists/heretic/magic/void_prison.dm @@ -15,7 +15,7 @@ sound = null school = SCHOOL_FORBIDDEN - invocation = "V''D PR'S'N!" + invocation = "V'D PR'S'N!" invocation_type = INVOCATION_SHOUT spell_requirements = NONE diff --git a/code/modules/antagonists/heretic/magic/wolves_among_sheep.dm b/code/modules/antagonists/heretic/magic/wolves_among_sheep.dm index 031c641724a..ab52bbf4152 100644 --- a/code/modules/antagonists/heretic/magic/wolves_among_sheep.dm +++ b/code/modules/antagonists/heretic/magic/wolves_among_sheep.dm @@ -16,7 +16,7 @@ school = SCHOOL_FORBIDDEN cooldown_time = 5 MINUTES - invocation = "D`M``N `XP`NS``N!" + invocation = "D'M'N XP'NS'N!" invocation_type = INVOCATION_SHOUT spell_requirements = NONE /// Max distance our effect is expected to reach diff --git a/code/modules/spells/spell.dm b/code/modules/spells/spell.dm index 1ef4cf33aa3..eb83e8ae139 100644 --- a/code/modules/spells/spell.dm +++ b/code/modules/spells/spell.dm @@ -404,7 +404,11 @@ invoker.whisper(used_invocation_message, forced = "spell ([src])") if(INVOCATION_EMOTE) - invoker.visible_message(used_invocation_message, invocation_self_message) + invoker.visible_message( + capitalize(REPLACE_PRONOUNS(replacetext(used_invocation_message, "%CASTER", invoker.name), invoker)), + capitalize(REPLACE_PRONOUNS(replacetext(invocation_self_message, "%CASTER", invoker.name), invoker)), + visible_message_flags = ALWAYS_SHOW_SELF_MESSAGE, + ) /// Checks if the current OWNER of the spell is in a valid state to say the spell's invocation /datum/action/cooldown/spell/proc/try_invoke(mob/living/invoker, feedback = TRUE) diff --git a/code/modules/spells/spell_types/aoe_spell/knock.dm b/code/modules/spells/spell_types/aoe_spell/knock.dm index 8e4f453b5d6..49b20555c27 100644 --- a/code/modules/spells/spell_types/aoe_spell/knock.dm +++ b/code/modules/spells/spell_types/aoe_spell/knock.dm @@ -8,7 +8,7 @@ cooldown_time = 10 SECONDS cooldown_reduction_per_rank = 2 SECONDS - invocation = "AULIE OXIN FIERA" + invocation = "AULIE OXIN FIERA!" invocation_type = INVOCATION_WHISPER spell_requirements = SPELL_REQUIRES_NO_ANTIMAGIC aoe_radius = 3 diff --git a/code/modules/spells/spell_types/aoe_spell/magic_missile.dm b/code/modules/spells/spell_types/aoe_spell/magic_missile.dm index 743ea8b23d8..7272b2ff267 100644 --- a/code/modules/spells/spell_types/aoe_spell/magic_missile.dm +++ b/code/modules/spells/spell_types/aoe_spell/magic_missile.dm @@ -8,7 +8,7 @@ cooldown_time = 20 SECONDS cooldown_reduction_per_rank = 3.5 SECONDS - invocation = "FORTI GY AMA" + invocation = "FORTI GY AMA!" invocation_type = INVOCATION_SHOUT aoe_radius = 7 diff --git a/code/modules/spells/spell_types/aoe_spell/repulse.dm b/code/modules/spells/spell_types/aoe_spell/repulse.dm index 453b9475b6c..df52547f28f 100644 --- a/code/modules/spells/spell_types/aoe_spell/repulse.dm +++ b/code/modules/spells/spell_types/aoe_spell/repulse.dm @@ -76,7 +76,7 @@ sound = 'sound/effects/magic/repulse.ogg' school = SCHOOL_EVOCATION - invocation = "GITTAH WEIGH" + invocation = "GITTAH WEIGH!" invocation_type = INVOCATION_SHOUT aoe_radius = 5 diff --git a/code/modules/spells/spell_types/aoe_spell/sacred_flame.dm b/code/modules/spells/spell_types/aoe_spell/sacred_flame.dm index e0041525839..59fbb22e547 100644 --- a/code/modules/spells/spell_types/aoe_spell/sacred_flame.dm +++ b/code/modules/spells/spell_types/aoe_spell/sacred_flame.dm @@ -7,7 +7,7 @@ school = SCHOOL_EVOCATION cooldown_time = 6 SECONDS - invocation = "FI'RAN DADISKO" + invocation = "FI'RAN DADISKO!" invocation_type = INVOCATION_SHOUT spell_requirements = SPELL_REQUIRES_NO_ANTIMAGIC diff --git a/code/modules/spells/spell_types/conjure/bees.dm b/code/modules/spells/spell_types/conjure/bees.dm index 28636cde709..5d803c0d060 100644 --- a/code/modules/spells/spell_types/conjure/bees.dm +++ b/code/modules/spells/spell_types/conjure/bees.dm @@ -10,7 +10,7 @@ cooldown_time = 1 MINUTES cooldown_reduction_per_rank = 10 SECONDS - invocation = "NOT THE BEES" + invocation = "NOT THE BEES!" invocation_type = INVOCATION_SHOUT summon_radius = 3 diff --git a/code/modules/spells/spell_types/conjure/carp.dm b/code/modules/spells/spell_types/conjure/carp.dm index 85257914051..b48842bfb8e 100644 --- a/code/modules/spells/spell_types/conjure/carp.dm +++ b/code/modules/spells/spell_types/conjure/carp.dm @@ -6,7 +6,7 @@ school = SCHOOL_CONJURATION cooldown_time = 2 MINUTES - invocation = "NOUK FHUNMM SACP RISSKA" + invocation = "NOUK FHUNMM SACP RISSKA!" invocation_type = INVOCATION_SHOUT summon_radius = 1 diff --git a/code/modules/spells/spell_types/conjure/cheese.dm b/code/modules/spells/spell_types/conjure/cheese.dm index c017ebb6c20..879f00472c8 100644 --- a/code/modules/spells/spell_types/conjure/cheese.dm +++ b/code/modules/spells/spell_types/conjure/cheese.dm @@ -8,7 +8,7 @@ cooldown_time = 1 MINUTES spell_requirements = null - invocation = "PL`YR DOT PL`CTM` OOO`BEE G" //player.placeatme 00064B33 9 + invocation = "PL'YR DOT PL'CTM' OOO'BEE G!" //player.placeatme 00064B33 9 invocation_type = INVOCATION_SHOUT garbled_invocation_prob = 0 //i'd rather it remain like this diff --git a/code/modules/spells/spell_types/conjure/creatures.dm b/code/modules/spells/spell_types/conjure/creatures.dm index 1fcd11c579d..e8f0df41a08 100644 --- a/code/modules/spells/spell_types/conjure/creatures.dm +++ b/code/modules/spells/spell_types/conjure/creatures.dm @@ -6,7 +6,7 @@ school = SCHOOL_CONJURATION cooldown_time = 2 MINUTES - invocation = "IA IA" + invocation = "IA IA!" invocation_type = INVOCATION_SHOUT spell_requirements = NONE diff --git a/code/modules/spells/spell_types/conjure/invisible_chair.dm b/code/modules/spells/spell_types/conjure/invisible_chair.dm index 125cd4cf75f..cadb99a7476 100644 --- a/code/modules/spells/spell_types/conjure/invisible_chair.dm +++ b/code/modules/spells/spell_types/conjure/invisible_chair.dm @@ -11,7 +11,7 @@ school = SCHOOL_MIME cooldown_time = 30 SECONDS - invocation = "Someone does a weird gesture." // Overriden in before cast + invocation = span_notice("%CASTER pulls out an invisible chair and sits down.") invocation_self_message = span_notice("You conjure an invisible chair and sit down.") invocation_type = INVOCATION_EMOTE @@ -23,10 +23,6 @@ summon_type = list(/obj/structure/chair/mime) summon_lifespan = 25 SECONDS -/datum/action/cooldown/spell/conjure/invisible_chair/before_cast(atom/cast_on) - . = ..() - invocation = span_notice("[cast_on] pulls out an invisible chair and sits down.") - /datum/action/cooldown/spell/conjure/invisible_chair/post_summon(atom/summoned_object, mob/living/carbon/human/cast_on) if(!isobj(summoned_object)) return diff --git a/code/modules/spells/spell_types/conjure/invisible_wall.dm b/code/modules/spells/spell_types/conjure/invisible_wall.dm index a61db7cf74e..41fc8d74f3e 100644 --- a/code/modules/spells/spell_types/conjure/invisible_wall.dm +++ b/code/modules/spells/spell_types/conjure/invisible_wall.dm @@ -11,7 +11,7 @@ school = SCHOOL_MIME cooldown_time = 30 SECONDS - invocation = "Someone does a weird gesture." // Overriden in before cast + invocation = span_notice("%CASTER looks as if a wall is in front of %PRONOUN_them.") invocation_self_message = span_notice("You form a wall in front of yourself.") invocation_type = INVOCATION_EMOTE @@ -22,7 +22,3 @@ summon_radius = 0 summon_type = list(/obj/effect/forcefield/mime) summon_lifespan = 30 SECONDS - -/datum/action/cooldown/spell/conjure/invisible_wall/before_cast(atom/cast_on) - . = ..() - invocation = span_notice("[cast_on] looks as if a wall is in front of [cast_on.p_them()].") diff --git a/code/modules/spells/spell_types/conjure/link_worlds.dm b/code/modules/spells/spell_types/conjure/link_worlds.dm index 242227c4d0a..c3f8aafcbc9 100644 --- a/code/modules/spells/spell_types/conjure/link_worlds.dm +++ b/code/modules/spells/spell_types/conjure/link_worlds.dm @@ -6,7 +6,7 @@ button_icon_state = "nether" cooldown_time = 1 MINUTES cooldown_reduction_per_rank = 10 SECONDS - invocation = "FL'NT N' ST'L" + invocation = "FL'NT N' ST'L!" invocation_type = INVOCATION_SHOUT spell_requirements = NONE summon_radius = 1 diff --git a/code/modules/spells/spell_types/conjure/presents.dm b/code/modules/spells/spell_types/conjure/presents.dm index b630c43225c..3b3cea99300 100644 --- a/code/modules/spells/spell_types/conjure/presents.dm +++ b/code/modules/spells/spell_types/conjure/presents.dm @@ -6,7 +6,7 @@ cooldown_time = 1 MINUTES cooldown_reduction_per_rank = 13.75 SECONDS - invocation = "HO HO HO" + invocation = "HO HO HO!" invocation_type = INVOCATION_SHOUT summon_radius = 3 diff --git a/code/modules/spells/spell_types/conjure/the_traps.dm b/code/modules/spells/spell_types/conjure/the_traps.dm index bd25d163a56..d780a8185c3 100644 --- a/code/modules/spells/spell_types/conjure/the_traps.dm +++ b/code/modules/spells/spell_types/conjure/the_traps.dm @@ -6,7 +6,7 @@ cooldown_time = 25 SECONDS cooldown_reduction_per_rank = 5 SECONDS - invocation = "CAVERE INSIDIAS" + invocation = "CAVERE INSIDIAS!" invocation_type = INVOCATION_SHOUT summon_radius = 3 diff --git a/code/modules/spells/spell_types/conjure_item/invisible_box.dm b/code/modules/spells/spell_types/conjure_item/invisible_box.dm index 42da02121d3..979a0de033f 100644 --- a/code/modules/spells/spell_types/conjure_item/invisible_box.dm +++ b/code/modules/spells/spell_types/conjure_item/invisible_box.dm @@ -13,7 +13,7 @@ school = SCHOOL_MIME cooldown_time = 30 SECONDS - invocation = "Someone does a weird gesture." // Overriden in before cast + invocation = span_notice("%CASTER moves %PRONOUN_their hands in the shape of a box, pressing a box out of the air.") invocation_self_message = span_notice("You conjure up an invisible box, large enough to store a few things.") invocation_type = INVOCATION_EMOTE @@ -26,10 +26,6 @@ /// How long boxes last before going away var/box_lifespan = 50 SECONDS -/datum/action/cooldown/spell/conjure_item/invisible_box/before_cast(atom/cast_on) - . = ..() - invocation = span_notice("[cast_on] moves [cast_on.p_their()] hands in the shape of a cube, pressing a box out of the air.") - /datum/action/cooldown/spell/conjure_item/invisible_box/make_item(atom/caster) . = ..() var/obj/item/made_box = . diff --git a/code/modules/spells/spell_types/pointed/blind.dm b/code/modules/spells/spell_types/pointed/blind.dm index 208564d250a..2f5361e3520 100644 --- a/code/modules/spells/spell_types/pointed/blind.dm +++ b/code/modules/spells/spell_types/pointed/blind.dm @@ -9,7 +9,7 @@ cooldown_time = 30 SECONDS cooldown_reduction_per_rank = 6.25 SECONDS - invocation = "STI KALY" + invocation = "STI KALY." invocation_type = INVOCATION_WHISPER spell_requirements = SPELL_REQUIRES_NO_ANTIMAGIC diff --git a/code/modules/spells/spell_types/pointed/finger_guns.dm b/code/modules/spells/spell_types/pointed/finger_guns.dm index cf80489fc91..ed44f2578ce 100644 --- a/code/modules/spells/spell_types/pointed/finger_guns.dm +++ b/code/modules/spells/spell_types/pointed/finger_guns.dm @@ -13,9 +13,9 @@ school = SCHOOL_MIME cooldown_time = 30 SECONDS - invocation = "" - invocation_type = INVOCATION_EMOTE + invocation = span_notice("%CASTER fires %PRONOUN_their finger gun!") invocation_self_message = span_danger("You fire your finger gun!") + invocation_type = INVOCATION_EMOTE spell_requirements = SPELL_REQUIRES_HUMAN|SPELL_REQUIRES_MIME_VOW antimagic_flags = NONE @@ -43,10 +43,3 @@ return FALSE return ..() - -/datum/action/cooldown/spell/pointed/projectile/finger_guns/before_cast(atom/cast_on) - . = ..() - if(isnull(owner)) - invocation = initial(invocation) - else - invocation = span_notice("[owner] fires [owner.p_their()] finger gun!") diff --git a/code/modules/spells/spell_types/pointed/mind_transfer.dm b/code/modules/spells/spell_types/pointed/mind_transfer.dm index 0d5fece02d1..bb632140c9e 100644 --- a/code/modules/spells/spell_types/pointed/mind_transfer.dm +++ b/code/modules/spells/spell_types/pointed/mind_transfer.dm @@ -11,7 +11,7 @@ antimagic_flags = MAGIC_RESISTANCE|MAGIC_RESISTANCE_MIND check_flags = AB_CHECK_CONSCIOUS|AB_CHECK_PHASED|AB_CHECK_OPEN_TURF - invocation = "GIN'YU CAPAN" + invocation = "GIN'YU CAPAN." invocation_type = INVOCATION_WHISPER antimagic_flags = MAGIC_RESISTANCE|MAGIC_RESISTANCE_MIND diff --git a/code/modules/spells/spell_types/self/charge.dm b/code/modules/spells/spell_types/self/charge.dm index af345f8cb13..050e835b2cc 100644 --- a/code/modules/spells/spell_types/self/charge.dm +++ b/code/modules/spells/spell_types/self/charge.dm @@ -10,7 +10,7 @@ cooldown_time = 60 SECONDS cooldown_reduction_per_rank = 5 SECONDS - invocation = "DIRI CEL" + invocation = "Diri Cel!" invocation_type = INVOCATION_WHISPER spell_requirements = SPELL_REQUIRES_NO_ANTIMAGIC diff --git a/code/modules/spells/spell_types/self/disable_tech.dm b/code/modules/spells/spell_types/self/disable_tech.dm index c357ef9a749..6eea25d6638 100644 --- a/code/modules/spells/spell_types/self/disable_tech.dm +++ b/code/modules/spells/spell_types/self/disable_tech.dm @@ -23,7 +23,7 @@ cooldown_time = 40 SECONDS cooldown_reduction_per_rank = 5 SECONDS - invocation = "NEC CANTIO" + invocation = "NEC CANTIO!" invocation_type = INVOCATION_SHOUT emp_heavy = 6 diff --git a/code/modules/spells/spell_types/self/forcewall.dm b/code/modules/spells/spell_types/self/forcewall.dm index 3bacb58e6a0..1907f2e0af5 100644 --- a/code/modules/spells/spell_types/self/forcewall.dm +++ b/code/modules/spells/spell_types/self/forcewall.dm @@ -8,7 +8,7 @@ cooldown_time = 10 SECONDS cooldown_reduction_per_rank = 1.25 SECONDS - invocation = "TARCOL MINTI ZHERI" + invocation = "TARCOL MINTI ZHERI!" invocation_type = INVOCATION_SHOUT spell_requirements = SPELL_REQUIRES_NO_ANTIMAGIC @@ -59,13 +59,9 @@ spell_requirements = SPELL_REQUIRES_HUMAN|SPELL_REQUIRES_MIME_VOW antimagic_flags = NONE - invocation = "" - invocation_type = INVOCATION_EMOTE + invocation = span_notice("%CASTER looks as if a blockade is in front of %PRONOUN_them.") invocation_self_message = span_notice("You form a blockade in front of yourself.") + invocation_type = INVOCATION_EMOTE spell_max_level = 1 wall_type = /obj/effect/forcefield/mime/advanced - -/datum/action/cooldown/spell/forcewall/mime/before_cast(atom/cast_on) - . = ..() - invocation = span_notice("[cast_on] looks as if a blockade is in front of [cast_on.p_them()].") diff --git a/code/modules/spells/spell_types/self/mutate.dm b/code/modules/spells/spell_types/self/mutate.dm index cb976875dec..e7392a986d8 100644 --- a/code/modules/spells/spell_types/self/mutate.dm +++ b/code/modules/spells/spell_types/self/mutate.dm @@ -43,7 +43,7 @@ cooldown_reduction_per_rank = 5 SECONDS spell_max_level = 3 - invocation = "BIRUZ BENNAR" + invocation = "BIRUZ BENNAR!" invocation_type = INVOCATION_SHOUT mutations_to_add = list(/datum/mutation/human/laser_eyes, /datum/mutation/human/hulk/wizardly, /datum/mutation/human/gigantism) diff --git a/code/modules/spells/spell_types/self/sanguine_strike.dm b/code/modules/spells/spell_types/self/sanguine_strike.dm index 64cb2a11d6a..5cd95862fbb 100644 --- a/code/modules/spells/spell_types/self/sanguine_strike.dm +++ b/code/modules/spells/spell_types/self/sanguine_strike.dm @@ -15,7 +15,7 @@ cooldown_time = 60 SECONDS cooldown_reduction_per_rank = 10 SECONDS - invocation = "SHAPSDAY" + invocation = "SHAPSDAY." invocation_type = INVOCATION_WHISPER spell_requirements = SPELL_REQUIRES_NO_ANTIMAGIC diff --git a/code/modules/spells/spell_types/self/summonitem.dm b/code/modules/spells/spell_types/self/summonitem.dm index acea28fc19b..e05486db5c0 100644 --- a/code/modules/spells/spell_types/self/summonitem.dm +++ b/code/modules/spells/spell_types/self/summonitem.dm @@ -6,7 +6,7 @@ school = SCHOOL_TRANSMUTATION cooldown_time = 10 SECONDS - invocation = "GAR YOK" + invocation = "Gar Yok!" invocation_type = INVOCATION_WHISPER spell_requirements = SPELL_REQUIRES_NO_ANTIMAGIC diff --git a/code/modules/spells/spell_types/shapeshift/dragon.dm b/code/modules/spells/spell_types/shapeshift/dragon.dm index 061a342d1d3..948bbc41dd8 100644 --- a/code/modules/spells/spell_types/shapeshift/dragon.dm +++ b/code/modules/spells/spell_types/shapeshift/dragon.dm @@ -2,8 +2,9 @@ /datum/action/cooldown/spell/shapeshift/dragon name = "Dragon Form" desc = "Take on the shape a lesser ash drake." - invocation = "RAAAAAAAAWR!" - invocation_type = INVOCATION_SHOUT + invocation = span_danger("%CASTER lets out a mighty roar!") + invocation_self_message = span_danger("You let out a mighty roar!") + invocation_type = INVOCATION_EMOTE spell_requirements = NONE possible_shapes = list(/mob/living/simple_animal/hostile/megafauna/dragon/lesser) diff --git a/code/modules/spells/spell_types/shapeshift/polar_bear.dm b/code/modules/spells/spell_types/shapeshift/polar_bear.dm index af3efc878d3..93e1f6cea91 100644 --- a/code/modules/spells/spell_types/shapeshift/polar_bear.dm +++ b/code/modules/spells/spell_types/shapeshift/polar_bear.dm @@ -1,8 +1,9 @@ /datum/action/cooldown/spell/shapeshift/polar_bear name = "Polar Bear Form" desc = "Take on the shape of a polar bear." - invocation = "RAAAAAAAAWR!" - invocation_type = INVOCATION_SHOUT + invocation = span_danger("%CASTER lets out a mighty roar!") + invocation_self_message = span_danger("You let out a mighty roar!") + invocation_type = INVOCATION_EMOTE spell_requirements = NONE possible_shapes = list(/mob/living/simple_animal/hostile/asteroid/polarbear/lesser) diff --git a/code/modules/spells/spell_types/teleport/teleport.dm b/code/modules/spells/spell_types/teleport/teleport.dm index eaf71109808..ea7ba3c486a 100644 --- a/code/modules/spells/spell_types/teleport/teleport.dm +++ b/code/modules/spells/spell_types/teleport/teleport.dm @@ -10,7 +10,7 @@ cooldown_reduction_per_rank = 20 SECONDS spell_max_level = 3 - invocation = "SCYAR NILA" + invocation = "SCYAR NILA" // gets punctuation auto applied invocation_type = INVOCATION_SHOUT smoke_type = /datum/effect_system/fluid_spread/smoke