3838using Content . Shared . _Starlight . Language . Components ;
3939using Content . Shared . Ghost ;
4040using Content . Server . _Starlight . TextToSpeech ; //Starlight
41+ using Content . Shared . _Starlight . Clothing ;
4142
4243namespace Content . Server . Radio . EntitySystems ;
4344
@@ -118,9 +119,9 @@ public void SendRadioMessage(
118119 LanguagePrototype ? language = null , // Starlight
119120 bool suppressTTS = false , // Starlight
120121 bool escapeMarkup = true ,
121- bool loudMode = false ) // Starlight
122+ HeadsetLoudModeComponent ? loudComp = null ) // Starlight
122123 {
123- SendRadioMessage ( messageSource , message , _prototype . Index ( channel ) , radioSource , escapeMarkup : escapeMarkup , language : language , suppressTTS : suppressTTS , loudMode : loudMode ) ; // Starlight
124+ SendRadioMessage ( messageSource , message , _prototype . Index ( channel ) , radioSource , escapeMarkup : escapeMarkup , language : language , suppressTTS : suppressTTS , loudComp : loudComp ) ; // Starlight
124125 }
125126
126127 /// <summary>
@@ -136,7 +137,7 @@ public void SendRadioMessage(
136137 LanguagePrototype ? language = null , // Starlight
137138 bool suppressTTS = false , // Starlight
138139 bool escapeMarkup = true ,
139- bool loudMode = false ) // Starlight
140+ HeadsetLoudModeComponent ? loudComp = null ) // Starlight
140141 {
141142 // Starlight - start
142143 if ( channel . AutoTranslate is not null )
@@ -184,18 +185,18 @@ public void SendRadioMessage(
184185
185186 _chime . TryGetSenderHeadsetChime ( messageSource , out var chime ) ;
186187
187- var wrappedMessage = WrapRadioMessage ( messageSource , channel , selectedName , content , language , false , loudMode ) ; // Starlight
188+ var wrappedMessage = WrapRadioMessage ( messageSource , channel , selectedName , content , language , false , loudComp ) ; // Starlight
188189
189190 // most radios are relayed to chat, so lets parse the chat message beforehand
190191
191192 var msg = new ChatMessage ( ChatChannel . Radio , content , wrappedMessage , NetEntity . Invalid , null ) ; // Starlight
192193
193194 var obfuscated = _language . ObfuscateSpeech ( content , language ) ;
194- var obfuscatedWrapped = WrapRadioMessage ( messageSource , channel , selectedName , obfuscated , language , true , loudMode ) ;
195+ var obfuscatedWrapped = WrapRadioMessage ( messageSource , channel , selectedName , obfuscated , language , true , loudComp ) ;
195196 var notUdsMsg = new ChatMessage ( ChatChannel . Radio , obfuscated , obfuscatedWrapped , NetEntity . Invalid , null ) { Chime = chime , } ;
196197 var ev = new RadioReceiveEvent ( messageSource , channel , msg , notUdsMsg , language , radioSource , [ ] ) ;
197198
198- var ghostwrappedMessage = WrapRadioMessage ( messageSource , channel , name , content , language , false , loudMode ) ;
199+ var ghostwrappedMessage = WrapRadioMessage ( messageSource , channel , name , content , language , false , loudComp ) ;
199200 var ghostmsg = new ChatMessage ( ChatChannel . Radio , content , ghostwrappedMessage , NetEntity . Invalid , null ) ;
200201 var ghostev = new RadioReceiveEvent ( messageSource , channel , ghostmsg , notUdsMsg , language , radioSource , [ ] ) ;
201202 // Starlight - End
@@ -303,7 +304,7 @@ public void SendCustomRadioMessage(
303304 EntityUid radioSource ,
304305 LanguagePrototype ? language = null ,
305306 bool escapeMarkup = true ,
306- bool loudMode = false )
307+ HeadsetLoudModeComponent ? loudComp = null )
307308 {
308309 if ( language == null )
309310 language = _language . GetLanguage ( messageSource ) ;
@@ -338,12 +339,12 @@ public void SendCustomRadioMessage(
338339
339340 _chime . TryGetSenderHeadsetChime ( messageSource , out var chime ) ;
340341
341- var wrappedMessage = WrapCustomRadioMessage ( messageSource , channel , name , content , language , false , loudMode ) ;
342+ var wrappedMessage = WrapCustomRadioMessage ( messageSource , channel , name , content , language , false , loudComp ) ;
342343
343344 var msg = new ChatMessage ( ChatChannel . Radio , content , wrappedMessage , NetEntity . Invalid , null ) ;
344345
345346 var obfuscated = _language . ObfuscateSpeech ( content , language ) ;
346- var obfuscatedWrapped = WrapCustomRadioMessage ( messageSource , channel , name , obfuscated , language , true , loudMode ) ;
347+ var obfuscatedWrapped = WrapCustomRadioMessage ( messageSource , channel , name , obfuscated , language , true , loudComp ) ;
347348 var notUdsMsg = new ChatMessage ( ChatChannel . Radio , obfuscated , obfuscatedWrapped , NetEntity . Invalid , null ) { Chime = chime , } ;
348349 var ev = new RadioReceiveEvent ( messageSource , null , msg , notUdsMsg , language , radioSource , [ ] ) ;
349350
@@ -450,7 +451,7 @@ private string WrapRadioMessage(
450451 string message ,
451452 LanguagePrototype language ,
452453 bool obfuscated ,
453- bool loudMode = false ) // Starlight
454+ HeadsetLoudModeComponent ? loudComp = null ) // Starlight
454455 {
455456 // TODO: code duplication with ChatSystem.WrapMessage
456457 var speech = _chat . GetSpeechVerb ( source , message ) ;
@@ -480,11 +481,11 @@ private string WrapRadioMessage(
480481 if ( speech . ID == "DefaultExclamationStrong" )
481482 isYelling = true ;
482483
483- return Loc . GetString ( loudMode ? "chat-radio-message-wrap-command" : speech . Bold ? "chat-radio-message-wrap-bold" : "chat-radio-message-wrap" , // starlight edit: loud mode
484+ return Loc . GetString ( speech . Bold ? "chat-radio-message-wrap-bold" : "chat-radio-message-wrap" ,
484485 ( "color" , channel . Color ) ,
485486 ( "languageColor" , languageColor ) ,
486487 ( "fontType" , fonttype ) ,
487- ( "fontSize" , isYelling ? speech . FontSize : language . Speech . FontSize ?? speech . FontSize ) ,
488+ ( "fontSize" , loudComp is not null ? loudComp . FontSize + speech . FontSize : isYelling ? speech . FontSize : language . Speech . FontSize ?? speech . FontSize ) , // starlight edit: loud mode
488489 ( "verb" , Loc . GetString ( verbId ) ) ,
489490 ( "channel" , $ "\\ [{ channel . LocalizedName } \\ ]") ,
490491 ( "name" , namestring ) ,
@@ -498,7 +499,7 @@ private string WrapCustomRadioMessage(
498499 string message ,
499500 LanguagePrototype language ,
500501 bool obfuscated ,
501- bool loudMode = false
502+ HeadsetLoudModeComponent ? loudComp = null
502503 )
503504 {
504505 // TODO: code duplication with ChatSystem.WrapMessage
@@ -522,11 +523,11 @@ private string WrapCustomRadioMessage(
522523 if ( speech . ID == "DefaultExclamationStrong" )
523524 isYelling = true ;
524525
525- return Loc . GetString ( loudMode ? "chat-radio-message-wrap-command" : speech . Bold ? "chat-radio-message-wrap-bold" : "chat-radio-message-wrap" ,
526+ return Loc . GetString ( speech . Bold ? "chat-radio-message-wrap-bold" : "chat-radio-message-wrap" ,
526527 ( "color" , channel . Color ) ,
527528 ( "languageColor" , languageColor ) ,
528529 ( "fontType" , fonttype ) ,
529- ( "fontSize" , isYelling ? speech . FontSize : language . Speech . FontSize ?? speech . FontSize ) ,
530+ ( "fontSize" , loudComp is not null ? loudComp . FontSize + speech . FontSize : isYelling ? speech . FontSize : language . Speech . FontSize ?? speech . FontSize ) ,
530531 ( "verb" , Loc . GetString ( _random . Pick ( speech . SpeechVerbStrings ) ) ) ,
531532 ( "channel" , $ "\\ [{ channel . LocalizedName } \\ ]") ,
532533 ( "name" , namestring ) ,
0 commit comments