diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index 15fe1b0f192..14b361ed1ed 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -227,10 +227,10 @@ var/interaction_range = 0 //how far a mob has to be to interact with something without caring about obsctruction, defaulted to 0 tiles - /// Typing indicator - mob is typing into a input - var/typing_indicator = FALSE - /// Thinking indicator - mob has input window open - var/thinking_indicator = FALSE + ///the icon currently used for the typing indicator's bubble + var/active_typing_indicator + ///the icon currently used for the thinking indicator's bubble + var/active_thinking_indicator /// User is thinking in character. Used to revert to thinking state after stop_typing var/thinking_IC = FALSE diff --git a/code/modules/tgui_input/say_modal/typing.dm b/code/modules/tgui_input/say_modal/typing.dm index 60de7199b8f..51361768a45 100644 --- a/code/modules/tgui_input/say_modal/typing.dm +++ b/code/modules/tgui_input/say_modal/typing.dm @@ -1,9 +1,3 @@ -/// Thinking -GLOBAL_DATUM_INIT(thinking_indicator, /mutable_appearance, mutable_appearance('icons/mob/talk.dmi', "default3", TYPING_LAYER)) -/// Typing -GLOBAL_DATUM_INIT(typing_indicator, /mutable_appearance, mutable_appearance('icons/mob/talk.dmi', "default0", TYPING_LAYER)) - - /** Creates a thinking indicator over the mob. */ /mob/proc/create_thinking_indicator() return @@ -81,28 +75,28 @@ GLOBAL_DATUM_INIT(typing_indicator, /mutable_appearance, mutable_appearance('ico /// Overrides for overlay creation /mob/living/create_thinking_indicator() - if(thinking_indicator || typing_indicator || !thinking_IC || stat != CONSCIOUS ) + if(active_thinking_indicator || active_typing_indicator || !thinking_IC || stat != CONSCIOUS ) return FALSE - add_overlay(GLOB.thinking_indicator) - thinking_indicator = TRUE + active_thinking_indicator = mutable_appearance('icons/mob/talk.dmi', "[bubble_icon]3", TYPING_LAYER) + add_overlay(active_thinking_indicator) /mob/living/remove_thinking_indicator() - if(!thinking_indicator) + if(!active_thinking_indicator) return FALSE - cut_overlay(GLOB.thinking_indicator) - thinking_indicator = FALSE + cut_overlay(active_thinking_indicator) + active_thinking_indicator = null /mob/living/create_typing_indicator() - if(typing_indicator || thinking_indicator || !thinking_IC || stat != CONSCIOUS) + if(active_typing_indicator || active_thinking_indicator || !thinking_IC || stat != CONSCIOUS) return FALSE - add_overlay(GLOB.typing_indicator) - typing_indicator = TRUE + active_typing_indicator = mutable_appearance('icons/mob/talk.dmi', "[bubble_icon]0", TYPING_LAYER) + add_overlay(active_typing_indicator) /mob/living/remove_typing_indicator() - if(!typing_indicator) + if(!active_typing_indicator) return FALSE - cut_overlay(GLOB.typing_indicator) - typing_indicator = FALSE + cut_overlay(active_typing_indicator) + active_typing_indicator = null /mob/living/remove_all_indicators() thinking_IC = FALSE diff --git a/icons/mob/talk.dmi b/icons/mob/talk.dmi index 6b2fc395cba..e4006442c96 100644 Binary files a/icons/mob/talk.dmi and b/icons/mob/talk.dmi differ