* Adds the option for you to toggle your OOC Patron color visibility to yourself and others.
* Makes the button magically disappear if you arent a patron
* Use new Subs.CVar helper
Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.
This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.
* Fix a bunch of warnings
* More warning fixes
* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.
* Get rid of some more ISerializationHooks for enums
* And a little more
* Apply suggestions from code review
Co-authored-by: 0x6273 <0x40@keemail.me>
---------
Co-authored-by: 0x6273 <0x40@keemail.me>
* Adds option to disable character names in chat/speechbubbles
* Moved the coloring of names to clientside
* Move string functions to SharedChatSystem to avoid duplicate code in SpeechBubble.cs
* Changed to be put under Accessibility section
* Cache CVar
* Implemented electricity speech verb masking
* Handle speech verb override elsewhere in the system, even though we're not using it
* Fix that protoId business
* No nullable component fields
* Use ProtoId, and try going back to a nullable.
Specifiy DataFields on VoiceMaskComponent.
A few bugs have popped up where (legal) string formatting tags
have been duplicated out into whisper and local.
Using the RemoveMarkup static we can sanitize attempted
speech to remove markup.
* Borgs can speak while crit, also radio bug fix
* Revert "Borgs can speak while crit, also radio bug fix"
This reverts commit e1136ad781229cf5fc3cadcf70742168fc73d961.
* Borgs can speak in crit + radio bug fix
* Tied to a new generic component on SpeechComponent
* Ignoring Speech Block via Component uses an event!
* Remove debug logs and bypass if already true
* added more slang to the sanitization manager
* idk why this file is here
* Added new sanitization accent
* No longer is an acccent, instead is a dictionary
* Reverted back to a system similar to before, added the new netspeak from the dictionary
* Added some new words to the chat san
* Added (wdym --> what do you mean) to the chatsan
* merge conflict
* removed boolvalue
* remove space
* Upcoming
* Added MF and ETC to chatsan :))
* upcoming
* added FYI and WYD to speech-chatsan.ftl
* Made the chatsan accent string a const string with [ValidatePrototypeId<AccentPrototype>]
* forgot the ';' :(((
* fixed error throw [AccentPrototype] --> [ReplacementAccentPrototype]