From 223876f1ab3fbe56af4f1c72acc1da9bde438c2b Mon Sep 17 00:00:00 2001 From: Heroman Date: Fri, 18 Aug 2023 06:11:34 +1000 Subject: [PATCH 1/2] Fixes some shadekin issues --- .../shadekin/_defines.dm => __defines/shadekin.dm} | 3 ++- code/modules/mob/language/language.dm | 2 +- code/modules/mob/living/carbon/human/human.dm | 2 ++ code/modules/mob/living/carbon/human/say.dm | 2 ++ .../human/species/shadekin/shadekin_abilities.dm | 12 ++++++++++-- vorestation.dme | 2 +- 6 files changed, 18 insertions(+), 5 deletions(-) rename code/{modules/mob/living/carbon/human/species/shadekin/_defines.dm => __defines/shadekin.dm} (76%) diff --git a/code/modules/mob/living/carbon/human/species/shadekin/_defines.dm b/code/__defines/shadekin.dm similarity index 76% rename from code/modules/mob/living/carbon/human/species/shadekin/_defines.dm rename to code/__defines/shadekin.dm index 2a9d17d37f..c79879e1eb 100644 --- a/code/modules/mob/living/carbon/human/species/shadekin/_defines.dm +++ b/code/__defines/shadekin.dm @@ -3,7 +3,8 @@ #define SHIFTED_OR_NOT 3 #define AB_PHASE_SHIFTED 0x1 -#define AB_SHADE_REGEN 0x2 +#define AB_PHASE_SHIFTING 0x2 +#define AB_SHADE_REGEN 0x4 //Porting over the type system of the mobs #define BLUE_EYES 1 diff --git a/code/modules/mob/language/language.dm b/code/modules/mob/language/language.dm index 5ab9416da3..ee64f3cc7b 100644 --- a/code/modules/mob/language/language.dm +++ b/code/modules/mob/language/language.dm @@ -132,7 +132,7 @@ speaker.verbs |= /mob/proc/adjust_hive_range //VOREStation Add - If you don't have the verb you should. - if(!speaker_mask) speaker_mask = speaker.name + if(!speaker_mask) speaker_mask = speaker.real_name message = "[get_spoken_verb(message)], \"[format_message(message, get_spoken_verb(message))]\"" //VOREStation Edit Start if(speaker.hive_lang_range == -1) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index cc61ca0bd6..990b6b4c3f 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -266,6 +266,8 @@ //repurposed proc. Now it combines get_id_name() and get_face_name() to determine a mob's name variable. Made into a seperate proc as it'll be useful elsewhere /mob/living/carbon/human/proc/get_visible_name() + if(ability_flags & AB_PHASE_SHIFTED) + return "Something" // Something if( wear_mask && (wear_mask.flags_inv&HIDEFACE) ) //Wearing a mask which hides our face, use id-name if possible return get_id_name("Unknown") if( head && (head.flags_inv&HIDEFACE) ) diff --git a/code/modules/mob/living/carbon/human/say.dm b/code/modules/mob/living/carbon/human/say.dm index a1f0e78564..afd50763dc 100644 --- a/code/modules/mob/living/carbon/human/say.dm +++ b/code/modules/mob/living/carbon/human/say.dm @@ -1,4 +1,6 @@ /mob/living/carbon/human/GetAltName() + if(ability_flags & AB_PHASE_SHIFTED) + return "" if(name != GetVoice()) return " (as [get_id_name("Unknown")])" diff --git a/code/modules/mob/living/carbon/human/species/shadekin/shadekin_abilities.dm b/code/modules/mob/living/carbon/human/species/shadekin/shadekin_abilities.dm index e336a461e3..e64a4bf938 100644 --- a/code/modules/mob/living/carbon/human/species/shadekin/shadekin_abilities.dm +++ b/code/modules/mob/living/carbon/human/species/shadekin/shadekin_abilities.dm @@ -39,6 +39,9 @@ to_chat(src,"You can't use that here!") return FALSE + if(ability_flags & AB_PHASE_SHIFTING) + return FALSE + var/brightness = T.get_lumcount() //Brightness in 0.0 to 1.0 darkness = 1-brightness //Invert @@ -87,8 +90,9 @@ //Shifting in if(ability_flags & AB_PHASE_SHIFTED) ability_flags &= ~AB_PHASE_SHIFTED + ability_flags |= AB_PHASE_SHIFTING mouse_opacity = 1 - name = real_name + name = get_visible_name() for(var/obj/belly/B as anything in vore_organs) B.escapable = initial(B.escapable) @@ -119,6 +123,8 @@ target.forceMove(vore_selected) to_chat(target,"\The [src] phases in around you, [vore_selected.vore_verb]ing you into their [vore_selected.name]!") + ability_flags &= ~AB_PHASE_SHIFTING + //Affect nearby lights var/destroy_lights = 0 @@ -134,9 +140,10 @@ //Shifting out else ability_flags |= AB_PHASE_SHIFTED + ability_flags |= AB_PHASE_SHIFTING mouse_opacity = 0 custom_emote(1,"phases out!") - name = "Something" + name = get_visible_name() for(var/obj/belly/B as anything in vore_organs) B.escapable = FALSE @@ -156,6 +163,7 @@ incorporeal_move = TRUE density = FALSE force_max_speed = TRUE + ability_flags &= ~AB_PHASE_SHIFTING /datum/modifier/shadekin_phase_vision name = "Shadekin Phase Vision" diff --git a/vorestation.dme b/vorestation.dme index e2cf2699c3..fb311b0f68 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -81,6 +81,7 @@ #include "code\__defines\research.dm" #include "code\__defines\roguemining_vr.dm" #include "code\__defines\rust_g.dm" +#include "code\__defines\shadekin.dm" #include "code\__defines\shields.dm" #include "code\__defines\shuttle.dm" #include "code\__defines\sound.dm" @@ -2918,7 +2919,6 @@ #include "code\modules\mob\living\carbon\human\species\outsider\skeleton.dm" #include "code\modules\mob\living\carbon\human\species\outsider\vox.dm" #include "code\modules\mob\living\carbon\human\species\outsider\vox_vr.dm" -#include "code\modules\mob\living\carbon\human\species\shadekin\_defines.dm" #include "code\modules\mob\living\carbon\human\species\shadekin\shadekin.dm" #include "code\modules\mob\living\carbon\human\species\shadekin\shadekin_abilities.dm" #include "code\modules\mob\living\carbon\human\species\shadekin\shadekin_hud.dm" From feb9fa3fd623a9d82e909e79f6d725fa25b22259 Mon Sep 17 00:00:00 2001 From: Heroman3003 <31296024+Heroman3003@users.noreply.github.com> Date: Fri, 18 Aug 2023 06:29:15 +1000 Subject: [PATCH 2/2] Update language.dm --- code/modules/mob/language/language.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/language/language.dm b/code/modules/mob/language/language.dm index ee64f3cc7b..fd4ebb8048 100644 --- a/code/modules/mob/language/language.dm +++ b/code/modules/mob/language/language.dm @@ -130,7 +130,7 @@ /datum/language/proc/broadcast(var/mob/living/speaker,var/message,var/speaker_mask) log_say("(HIVE) [message]", speaker) - speaker.verbs |= /mob/proc/adjust_hive_range //VOREStation Add - If you don't have the verb you should. + speaker.verbs |= /mob/proc/adjust_hive_range if(!speaker_mask) speaker_mask = speaker.real_name message = "[get_spoken_verb(message)], \"[format_message(message, get_spoken_verb(message))]\""