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.
65 lines
2.3 KiB
GDScript
65 lines
2.3 KiB
GDScript
extends PopupWindow
|
|
|
|
@onready
|
|
var about_panel: Panel = %AboutPanel
|
|
|
|
@onready
|
|
var version_label: Label = %VersionLabel
|
|
|
|
@onready
|
|
var whats_new_label: Label = %WhatsNewLabel
|
|
|
|
|
|
|
|
# Changelog as Dictionary with version as key and description as value
|
|
const WHATS_NEW: Dictionary = {
|
|
"1.9.0": "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
|
|
#34: Fixed bug in Character Select when clicking or scrolling",
|
|
"1.8.5": "#9: New winner screen with positions of all players
|
|
#32: New setting for how long to hide the beginning
|
|
#33: Fixed bug with hiding beginning when song restarts",
|
|
"1.8.0": "#14: Updated About page
|
|
#15: Create new keymap page
|
|
#20: The winner song can now be stopped
|
|
#24: The speed of the inspiration list can now be changed
|
|
#29: New settings to hide time left and things like that
|
|
#31: Added a QR page",
|
|
"1.7.0": "#22: Now block add player if player name is empty
|
|
#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",
|
|
"1.6.1": "#17: Removed Debug text in release
|
|
#18: Fixed bug with new character select screen",
|
|
"1.6.0": "#1: Fixed bug with inspiration list not reloading after sync
|
|
#2: New dialog for sync
|
|
#4: Now downloads characters from the server
|
|
#5: New character select screen
|
|
#6: Now show progress during sync
|
|
#7: Blocking all requests to the server during sync
|
|
#8: Added functionality to cache more than one song",
|
|
"1.5.0": "Made big changes to players and the song list and how the local song list works",
|
|
"0.9.0-Beta": "Fixed settings and updated the player view",
|
|
"0.8.0-Beta": "Fixed reset buttons and some other small things",
|
|
"0.7.8-Beta": "Added shortcuts. Added dialog for winner. Started cleaning code.",
|
|
"0.7.5-Beta": "Added settings menu, most things don't do anything yet",
|
|
"0.7-Beta": "Can now hop between songs"
|
|
}
|
|
|
|
|
|
func open() -> void:
|
|
super()
|
|
version_label.text = Settings.version
|
|
|
|
# Build changelog text with version headers
|
|
var changelog_text: String = ""
|
|
for version: String in WHATS_NEW.keys():
|
|
changelog_text += "\n" + version + "\n"
|
|
changelog_text += WHATS_NEW[version] + "\n"
|
|
|
|
whats_new_label.text = changelog_text
|