extends Control @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.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 _input(event: InputEvent) -> void: if self.visible == true: if event is InputEventMouseButton && event.is_pressed(): var evLocal: InputEvent = make_input_local(event) if !Rect2(Vector2(0, 0), about_panel.size).has_point(evLocal.position): self.visible = false func show_window() -> void: visible = true 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 func hide_window() -> void: visible = false