Commit Graph
13 Commits
Author SHA1 Message Date
Sansan c7d49bc5cc Rework popups and fix blurry text and player list layout
Popups:
- All nine popups now extend a shared PopupWindow class with open(),
  close() and toggle(), instead of each copying its own close-on-click
  code. Popups that need cleanup override close().
- A click outside a popup closed it and also pressed whatever was
  underneath, e.g. Reset playlist. The closing click is now consumed.
- Popups used Godot's see-through default panel, so the song list and
  titles showed through. They now use an opaque popup theme, and a
  backdrop dims the window behind them.
- The main window root now fills the screen, so the backdrop covers it.

Text and images:
- Many labels and buttons forced nearest filtering, which made text and
  icons jagged when the window is not 1920x1080. They now use the
  default smooth filtering. Only the pixel-art "no character" picture
  keeps nearest filtering when the winner window enlarges it.

Player list:
- A long player name pushed that row's character and buttons to the
  right. Names now take the free space and shorten with an ellipsis, so
  all rows line up and use the full width of the panel.
2026-10-06 08:32:56 +02:00
Sansan 56e9fe66d3 Move server calls to MusicServerClient and give players stable ids
Server requests move out of Settings into a new MusicServerClient
autoload with one function per endpoint. It sends requests through a
swappable HttpTransport so tests can fake the server, and it frees its
HTTPRequest nodes after use.

Players now have a UUID that never changes. Their position in
Settings.player_array is only used for the Alt+<number> keybinds.
Previously the position doubled as the id, so removing a player made
points and wins land on the wrong player, and could delete another
player's point from a song.

Also fixes:
- format_time showed 59.6 seconds as "00:60"
- searches containing regex characters such as "Q*bert" broke search
- SongObject and PlayerObject were Nodes that were never freed; they
  are now RefCounted
- search matching is split out of the UI code into find_matches()
2026-10-06 08:32:55 +02:00
Sansan 8da6fc442f Made improvements to the Search window, Made small changes to the inspiration list scrolling, Made small changes to the player list, Changed the term game to soundtrack, #28: Made changes to the sync window
Build / build (push) Successful in 1m14s
Publish / build (push) Successful in 1m10s
2026-09-26 16:21:02 +02:00
Sansan bae5831a3e #22: Now block add player if player name is empty
Build / build (push) Successful in 1m21s
#23: Add a log for when points are given to players
#25: Fixed some graphical stuff
#26: Changed so the same character can be on a song multiple times
#27: Turning off statistics after win
2025-11-15 14:53:51 +01:00
Sansan 166705f2ab #4 #5 Added a new character select window that now fetches images from the server
Publish / build (push) Successful in 2m39s
Build / build (push) Successful in 1m31s
2025-11-07 20:46:45 +01:00
Sansan 3e4d417b4f #1: Fixed bug with inspiration list and search list not updating on sync and server changed
Build / build (push) Successful in 1m30s
2025-08-24 12:00:29 +02:00
Sansan c4a7d743d3 Added auto repeat and made some small fixes 2024-10-20 20:28:06 +02:00
Sansan e8171d81a9 Fixed light icons. Made the search "better". Added more shortcuts and tried to fix som bugs. 2024-08-15 20:10:22 +02:00
Sansan 2f12c1e25c Added icons, a lot of refactoring and optimising 2024-06-12 22:20:33 +02:00
Sansan d43a1c7df6 Fixed settings and updated player view. Fixed many other smaler things 2024-05-19 13:39:18 +02:00
Sansan c9ea40215d Fixed sounds effects with points. Fixed buttons statistics and about 2023-09-08 22:14:54 +02:00
Sansan 050d19039c Fixed add player process where name can be set. Added signals for points. Added settings file. Changed some shortcuts. 2023-09-07 21:55:31 +02:00
Sansan 90ce661982 Added some buttons and added search view 2023-09-02 23:14:19 +02:00