-
Notifications
You must be signed in to change notification settings - Fork 345
[PORTS] HUD Screen stuff #5830
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Absolucy
merged 9 commits into
Monkestation:master
from
LikeLakers2:project/port/tg-76772-hud-screens-try-2
Mar 8, 2025
Merged
[PORTS] HUD Screen stuff #5830
Absolucy
merged 9 commits into
Monkestation:master
from
LikeLakers2:project/port/tg-76772-hud-screens-try-2
Mar 8, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Adds an arg in huds' screens to add the hud owner in the Initialize, instead of manually setting it every time we need to. This is already done in ``New()`` for lobby screens, which I left intact as lobby screens are used for new players, and are given out before atoms are Initialized. Everything else, however, uses Initialize, so it does not mess with any other args in their own Initializes (like the Escape menu). This also allows us to set the screens' HUDs as a private var, to ensure this won't be messed with in the future. Lastly I replaced instances of ``client`` with ``cannon_client`` to be consistent with a lot of other parts of hud code. Huds are easy to break when they do not have a hud owner, and for something as important as that I believe it should be something you opt-out of when you don't want it, rather than something you opt-into by manually setting hud owner every time. This cuts down on a lot of copy paste in hud code for humans, aliens, etc. :cl: refactor: Huds now have their hud owner set in Initialize /:cl:
## About The Pull Request Improper tags were being passed around which left a blank menu on player's side and a bunch of runtimes on server's side ## Changelog :cl: fix: Fixed "Leave Body" escape menu tab runtiming /:cl:
this hard delete would happen everytime a player joins/observers the round. upon using the ref tracker i discovered this problem was caused by movable/screens not cleaning up after their owning huds if it gets deleted. i didnt weakref it was cause it meant id have to resolve it in so many places, but if weakrefing is preferable i will do it  fixes a hard delete
…mmediately SlowInit is called right after the button is created - so it's effectively the same as an immediate initialization
LikeLakers2
commented
Mar 6, 2025
@@ -143,17 +143,15 @@ | |||
return | |||
H.cybernetics_ammo[zone] = null | |||
|
|||
counter_ref.hud = null |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In case you're thinking "This looks odd!" - this doesn't actually change anything. Right below this (now-removed) line is QDEL_NULL(counter_ref)
- and counter_ref
's type will automatically null out .hud
upon deletion.
## About The Pull Request I forgot to add ``hud_owner`` arg to screens in plane_master.dm, so they were not sending the right args on Initialize. ## Why It's Good For The Game Closes tgstation/tgstation#76892 Closes tgstation/tgstation#76893 ## Changelog :cl: fix: Multi-z maps should now work again. /:cl:
This was referenced Mar 6, 2025
Open
Closed
This was referenced Mar 7, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
About The Pull Request
This PR ports the following PRs from tgstation:
These changes are intended to fix various issues regarding HUDs.
NOTE: While testing, I encountered certain HUD-related issues. The following is a list of issues I know NOT to be the result of this PR:
/mob/living/basic/possession_holder
will give you a black screen. (This is a bug caused by 516; reverting to 515 fixes the issue.)Why It's Good For The Game
Bugfixes and better code.
Changelog
🆑MichiRecRoom
refactor: The code behind many HUD systems has been refactored slightly. Due to the massive amount of HUD types we have, I only tested monkestation-specific HUDs - so please let me know if you see any broken HUDs!
refactor: (JohnFulpWillard) Huds now have their hud owner set in Initialize
/:cl: