Working preference toggle & chat message parsing. Ready for testing.

Let's goooo
This commit is contained in:
nevimer
2021-05-26 21:12:22 -04:00
parent dcdf68ffe2
commit ee5bc05014
5 changed files with 24 additions and 3 deletions

View File

@@ -275,6 +275,12 @@ var/list/_client_preferences_by_type
var/datum/plane_holder/PH = preference_mob.plane_holder
PH.set_vis(VIS_STATUS, enabled)
/datum/client_preference/overhead_chat
description = "Overhead Chat"
key = "OVERHEAD_CHAT"
enabled_description = "Show"
disabled_description = "Hide"
enabled_by_default = TRUE
/********************
* Staff Preferences *

View File

@@ -306,6 +306,20 @@
to_chat(src, "You will now [(is_preference_enabled(/datum/client_preference/status_indicators)) ? "see" : "not see"] status indicators.")
feedback_add_details("admin_verb","TStatusIndicators")
/client/verb/toggle_overhead_chat()
set name = "Toggle Overhead Chat"
set category = "Preferences"
set desc = "Enable/Disable seeing overhead chat messages."
var/pref_path = /datum/client_preference/overhead_chat
toggle_preference(pref_path)
SScharacter_setup.queue_preferences_save(prefs)
to_chat(src, "You will now [(is_preference_enabled(/datum/client_preference/overhead_chat)) ? "see" : "not see"] overhead chat messages..")
feedback_add_details("admin_verb","TOHChat")
//Toggles for Staff
//Developers

View File

@@ -35,7 +35,7 @@ var/list/floating_chat_colors = list()
var/image/gibberish = speaking ? generate_floating_text(src, speaking.scramble(message), style, fontsize, duration, show_to) : understood
for(var/client/C in show_to)
if(!C.mob.is_deaf())
if(!C.mob.is_deaf() && C.is_preference_enabled(/datum/client_preference/overhead_chat))
if(C.mob.say_understands(null, speaking))
C.images += understood
else

View File

@@ -230,7 +230,7 @@ proc/get_radio_key_from_channel(var/channel)
//Handle language-specific verbs and adverb setup if necessary
if(!whispering) //Just doing normal 'say' (for now, may change below)
verb = say_quote(message, speaking)
//usr.say_overhead(message, speaking) Disabled until I get this finished.
//usr.say_overhead(message, speaking) // Old latch on spot - Works, but doesn't process stuttering.
else if(whispering && speaking.whisper_verb) //Language has defined whisper verb
verb = speaking.whisper_verb
w_not_heard = "[verb] something"
@@ -376,6 +376,7 @@ proc/get_radio_key_from_channel(var/channel)
listening[item] = z_speech_bubble
listening_obj |= results["objs"]
above = above.shadow
usr.say_overhead(message, speaking)
//Main 'say' and 'whisper' message delivery
for(var/mob/M in listening)

View File

@@ -2,7 +2,7 @@
var/image/I = image('icons/mob/talk_vr.dmi') //VOREStation Edit - talk_vr.dmi instead of talk.dmi for right-side icons
var/list/speech_bubble_hearers = list()
for(var/mob/M in get_mobs_in_view(7, src))
for(var/mob/M in get_mobs_in_view(7, usr))
if(M.client)
speech_bubble_hearers += M.client
INVOKE_ASYNC(GLOBAL_PROC, .proc/animate_speech_bubble, I, speech_bubble_hearers , 30)