extends Control @onready var shortcuts_vbox: VBoxContainer = %shortcutsVBox @onready var shortcuts_panel: Panel = %ShortcutsPanel var shortcuts_dic: Dictionary = { "Alt + S": "Search", "Alt + A": "Add Players", "Alt + Z": "Reset", "Alt + X": "Play/Pause", "Alt + C": "Next Song", "Alt + V": "Show Answer", "Alt + L": "Show Debug Log", "Alt + K": "Show shortcuts", "Alt + Enter": "Fullscreen", "Alt + UP": "Volume up", "Alt + DOWN": "Volume down", "Alt + LEFT": "Jump back in song", "Alt + Ctrl + LEFT": "Restart song", "Alt + RIGHT": "Jump forward in song", "Alt + 1 - 9": "Give player point", "Alt + Ctrl + 1 - 9": "Take point from player", } #Color(0.18, 0.18, 0.18) #Color(0.302, 0.302, 0.302) #Color(0.259, 0.259, 0.259) func _input(event: InputEvent) -> void: if self.visible == true: if shortcuts_panel == null: return if event is InputEventMouseButton && event.is_pressed(): var evLocal: InputEvent = make_input_local(event) if !Rect2(Vector2(0, 0), shortcuts_panel.size).has_point(evLocal.position): self.visible = false func _ready() -> void: shortcuts_dic.sort() Settings.delete_children(shortcuts_vbox) var title: Label = Label.new() title.set_texture_filter(TextureFilter.TEXTURE_FILTER_NEAREST) title.add_theme_font_size_override("font_size", 20) title.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER title.text = "Shortcuts" shortcuts_vbox.add_child(title) var count: int = 0 for shortcut: String in shortcuts_dic.keys(): var panel: PanelContainer = PanelContainer.new() var hbox: HBoxContainer = HBoxContainer.new() hbox.alignment = BoxContainer.ALIGNMENT_CENTER var label: Label = Label.new() label.set_texture_filter(TextureFilter.TEXTURE_FILTER_NEAREST) label.add_theme_font_size_override("font_size", 20) label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER label.text = shortcut label.autowrap_mode = TextServer.AUTOWRAP_WORD label.size_flags_horizontal = Control.SIZE_EXPAND_FILL var label2: Label = Label.new() label2.set_texture_filter(TextureFilter.TEXTURE_FILTER_NEAREST) label2.add_theme_font_size_override("font_size", 20) label2.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER label2.text = shortcuts_dic[shortcut] label2.autowrap_mode = TextServer.AUTOWRAP_WORD label2.size_flags_horizontal = Control.SIZE_EXPAND_FILL if count % 2 == 0: var new_stylebox_normal: Resource = panel.get_theme_stylebox("panel").duplicate() new_stylebox_normal.bg_color = Color(0.18, 0.18, 0.18) panel.add_theme_stylebox_override("panel", new_stylebox_normal) #label.add_theme_stylebox_override("normal", new_stylebox_normal) #label2.add_theme_stylebox_override("normal", new_stylebox_normal) hbox.add_child(label) hbox.add_child(label2) panel.add_child(hbox) shortcuts_vbox.add_child(panel) count += 1