-
Notifications
You must be signed in to change notification settings - Fork 4.7k
Update Space Villain's UI #40963
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
base: master
Are you sure you want to change the base?
Update Space Villain's UI #40963
Conversation
This should probably just be converted to use xaml instead of defining every single element of the UI in C#. |
@slarticodefast Rewrote the menu using XAML! It seems to work; please let me know if I should do something differently! |
I'll merge #40962 into this so that I can localize all strings. |
Potentially breaking: All strings related to Space Villain now share the `space-villain` prefix, instead of mixing `spacevillain` and `space-villain`.
Localized and made a few more tweaks! |
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
Is it me or is the notification button for this issue exceptionally broken for everyone, opening a diff between two random commits...? GitHub what are you doing?! 😆 |
About the PR
I attempted to improve the UI of the Space Villain arcade machine.
Why / Balance
I wanted to experiment a bit with SS14's layout code, and figured I could try doing something useful as well.
Without this PR, some of Space Villain's messages are too long to be displayed in the game's window, and end up being clipped, looking kinda weird and unpolished as a result.
The window's rescaling functionality also was strange, so I attempted to address that by making the new layout fill any window size it's given, while making sure that the Attack / Heal / Recharge buttons do not change position during gameplay.
Technical details
Made a lot of use of
GridContainer
s andHorizontalExpand
andHAlignment.Stretch
.Used
BoxContainer
as spacers to shift messages to the middle of the window and buttons to the bottom.Split the fighter info label into two separate HP and MP labels so that they could be colored appropriately.
Made use of Fluent's functionality (functions, terms, replacements) to improve the localization support of the minigame.
Media
2025-10-19.18-39-43.mp4
Requirements
Breaking changes
For consistency, all
spacevillain-*
localization keys were changed tospace-villain-*
.Changelog
🆑