# Description
Cleaned up Logger obsolete compiler warnings in non robust code.
Should probably be changed to a ISawmill reference in classes to avoid
repeated lookups in heavy logging logic.
---
# Changelog
🆑
- tweak: Logger to Logger.GetSawmill("name");
---------
Co-authored-by: ilmenwe <no@mail.com>
(cherry picked from commit 2e8ffd971716d38dc6d5a520bebdf88b743045a3)
# Description
Chatstack.
Can be changed/disabled in settings, and the chat automatically updates
to reflect the change.
Does not interfere with filters, etc.
Also updated ChatMessage class and serverside IChatManager with a new
IgnoreChatStack bool option, default false.
Currently is limited to looking up to 3 messages behind, only because I
feel off adding a textbox to the options.
---
# TODO
- [x] Make sure it works
- [x] Add it to settings
---
<details><summary><h1>Media</h1></summary>
<p>

[ee.webm](https://github.com/user-attachments/assets/bf1c92f0-b52a-47a0-b142-70b1ee5003cc)
</p>
</details>
---
# Changelog
🆑
- add: Chatstack. Look for it in Options under "General -
Accessibility".
---------
Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
(cherry picked from commit 78edbab4308bcef190fe387d36df79d90200e084)
* Add codeword highlighting (#30092)
* Added codeword highlighting
* Updated to support more codeword roles, color is set serverside
* Review feedback
* Change to a Component-based system using SessionSpecific
* Tidied up CanGetState, set Access restrictions on component
* Clean-up
* Makes the injection ignore brackets, restore some codewords, remove "Taste/Touch" from adjectives
* codewords translate
* one more
---------
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
# Description
Due to some inherent limitations of maintenance, code review, and me
having both severely crippling ADHD and a lifelong adderal dependency,
I've made the executive decision to break apart the Psionic Refactor
into a multitude of smaller, bite sized PRs. I'm keeping the original
Psionic Refactor PR open, because I'm going to need it for code
reference to keep track of the changes I had originally worked on, but I
need to essentially restart the entire refactor from scratch, and
approach it from a new angle that's going to make everything actually
way easier. I also need to be able to work on each available system
individually wherever possible, and this fact is most readily shown by
how the Lightning Refactor and Oracle Refactor were both done
separately.
To start off, this PR is ONLY moving all of the relevant psionics code
to core folders, and nothing more. I'm doing this first so that I can
immediately cut down massively on the "Files Changed" with the simplest,
most basic change necessary to start my work.
No changelog because this isn't player facing, and no media because
there's literally nothing to show.
* Adds a new slider to the misc tab in options that lets the player set chat window transparency
* Tweaked variable names
* Fixed order to match UI
* Renamed set chat window transparency function
* Changed and refactored to opacity instead of transparency
* Remove unnecessary int to float conversions
Slider used to be 0-100 while the CCVar was 0.0-1.0f. This is confusing and was only used for rounding to 2 decimal points.
* Round the value to two decimal points
* Remove rounding for now
* Rename
* Unhardcode chat color by moving to stylesheet
* Fix indent
* Make opacity slider only change opacity
---------
Co-authored-by: Your Name <you@example.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
## Mirror of PR #26159: [Obsolete `Logger` cleanup for `EntitySystem`s
part 2](https://github.com/space-wizards/space-station-14/pull/26159)
from <img src="https://avatars.githubusercontent.com/u/10567778?v=4"
alt="space-wizards" width="22"/>
[space-wizards](https://github.com/space-wizards)/[space-station-14](https://github.com/space-wizards/space-station-14)
###### `7d275a4b5e4188db424cc417c609dced3f9aca89`
PR opened by <img
src="https://avatars.githubusercontent.com/u/27449516?v=4"
width="16"/><a href="https://github.com/LordCarve"> LordCarve</a> at
2024-03-15 20:15:41 UTC
---
PR changed 14 files with 36 additions and 25 deletions.
The PR had the following labels:
- Status: Needs Review
---
<details open="true"><summary><h1>Original Body</h1></summary>
> <!-- Please read these guidelines before opening your PR:
https://docs.spacestation14.io/en/getting-started/pr-guideline -->
> <!-- The text between the arrows are comments - they will not be
visible on your PR. -->
>
> ## About the PR
> <!-- What did you change in this PR? -->
> Part 2 of 2, continuation of #25941
> Gets rid of the remaining obsolete `Logger` method calls from all
`EntitySystem`s and uses the expected `Log` to get at the proper
sawmill.
>
> In particular:
> 1. Make the `ExamineSystemShared`'s `InRangeUnObstructed` non-`static`
(so finally able to use instance-based `Log` rather than `Logger`) and
inject dependency to all systems that were using it as `static`.
> 2. Adjust 4 more `EntitySystem`s to use `Log` rather than `Logger`
that were missed in the previous PR.
>
> Tested that the game runs and the affected systems direct logs to the
correct sawmill.
>
> ## Why / Balance
> <!-- Why was it changed? Link any discussions or issues here. Please
discuss how this would affect game balance. -->
> Using Logger directly for logging is marked obsolete. Brings some
order to logs (i.e. all `EntitySystem` logs start with a preceding
`system.`).
>
> ## Technical details
> <!-- If this is a code change, summarize at high level how your new
code works. This makes it easier to review. -->
> I'm pretty sure `ExamineSystemShared`'s `InRangeUnObstructed` not
being `static` is the intended way since it being `static` dodges the
IoC entirely. It even has dirty hacks such as getting the occluder
system inside to make it happen. I didn't fix any of that as it's beyond
the scope of this PR, but it's another thing that needs improving.
>
> These are the changes to the log sawmills:
> `ExamineSystemShared.cs`: BEFORE: `root` -> NEW: `system.examine`
> `AtmosphereSystem.Monstermos.cs`: BEFORE: `root` -> NEW:
`system.atmosphere`
> `TypingIndicatorSystem.cs`: BEFORE: `root` -> NEW:
`system.typing_indicator`
> `PiratesRuleSystem.cs` BEFORE: `pirates` -> NEW: `system.pirates_rule`
> `TabletopSystem.Session.cs` BEFORE: `root` -> NEW: `system.tabletop`
>
> ## Media
> <!--
> PRs which make ingame changes (adding clothing, items, new features,
etc) are required to have media attached that showcase the changes.
> Small fixes/refactors are exempt.
> Any media may be used in SS14 progress reports, with clear credit
given.
>
> If you're unsure whether your PR will require media, ask a maintainer.
>
> Check the box below to confirm that you have in fact seen this (put an
X in the brackets, like [X]):
> -->
>
> - [X] I have added screenshots/videos to this PR showcasing its
changes ingame, **or** this PR does not require an ingame showcase
>
> ## Breaking changes
> <!--
> List any breaking changes, including namespace, public
class/method/field changes, prototype renames; and provide instructions
for fixing them. This will be pasted in #codebase-changes.
> -->
> Some logs now fall under a different sawmill (more precise). Any
software that analyzes logs and makes assumptions on which sawmill do
these logs fall to will need to be adjusted.
</details>
---------
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: SimpleStation14 <Unknown>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
* 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>
(cherry picked from commit 68ce53ae17985876d6d112b764b2144964a9f42e)
* 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
(cherry picked from commit 247be5b5c770261544f4e468ea09422efb0f7028)
* Fix chat filter button
Oh look, the popup code was copy pasted between chat filter and channel selector.
Hilarious.
Anyways same stuff as 995f506aafd770dd6572dfc9e7bf9e18186e485a. I pulled it all out into a base class so NO MORE COPY PASTE.
Fixes#22360
* Remove all further EnableAllKeybinds buttons.
Fixes#22346
Yeah none of these are valid use cases, why is this set...
* Psionics
It's a ton of stuff relating to the basic Psionics system and all the powers.
I'm saving this as a bit of a sanity check before moving forward.
Left to do:
1. Implementing the Psionic faction so that the chat works as intended.
2. Adding the start-state cooldown timers to the actions.
* Cleaned up everything with the word 'Psionic' on it.
Got the psionic chat working. Got some other stuff working
* Some final psionic cleanup.
The last batch of content.
* Update RobustToolbox
* rebased
* Revert "Update RobustToolbox"
This reverts commit c0cf35d03f828f6ccfeb05fcffd91cf074818fc9.
* Update RobustToolbox
* Revert "Update RobustToolbox"
This reverts commit c4dc828df7912e063ea856b2a83a790bc88d1e09.
* Update RobustToolbox
* Psionics
It's a ton of stuff relating to the basic Psionics system and all the powers.
I'm saving this as a bit of a sanity check before moving forward.
Left to do:
1. Implementing the Psionic faction so that the chat works as intended.
2. Adding the start-state cooldown timers to the actions.
* Cleaned up everything with the word 'Psionic' on it.
Got the psionic chat working. Got some other stuff working
* Some final psionic cleanup.
The last batch of content.
* rebased
* Cleaned up everything with the word 'Psionic' on it.
Got the psionic chat working. Got some other stuff working
* Broken Commit
With these changes in place, the unit does not work. Recording them so i don't lose my work.
* Brings it All Together.
Dawn of the final Commit. Rebase completed.
* Update RobustToolbox
* Changed 'Station Events' to 'StationEvents' and cleaned up the Delta-V Events.yml file of duplicate events.
* Delete ghost_roles.yml
Duplicate.
* Update familiars.yml
* Update familiars.yml
* Update GlimmerReactiveSystem.cs
* Makes tinfoil hats craftable.
* Decided I'm not dealing with adding fugitives or Glimmer Wisps right now.
* Psionic invisibility won't work now that Eye component exists. Or at least, the integrator test won't psas.
* Update special.yml
* Added #nyanotrasen code or //Nyanotrasen code to many, many files.
* Properly fixes comments.
---------
Signed-off-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
Signed-off-by: PHCodes <47927305+PHCodes@users.noreply.github.com>
Co-authored-by: Debug <sidneymaatman@gmail.com>
Co-authored-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>