Merge branch 'cooker' of https://github.com/RetroDECK/RetroDECK into feat/okonomiyaki

This commit is contained in:
XargonWan 2024-09-25 17:05:37 +09:00
commit 6c4fc4b54c
18 changed files with 510 additions and 335 deletions

View file

@ -1148,6 +1148,7 @@
"portmaster": {
"description": "PortMaster",
"name": "PortMaster",
"url": "https://retrodeck.readthedocs.io/en/latest/wiki_about/what-is-retrodeck/",
"system": "portmaster",
"launch": "PortMaster"
},

View file

@ -0,0 +1,171 @@
# The RetroDECK Configurator
**Please note that we are going to rebuild the Configurator into a controller friendly GODOT application and that the current version is not the final design.**
<img src="../../wiki_images/graphics/configurator/configurator.png" width="500">
The `RetroDECK Configurator` is a unique multi-use utility that exists within RetroDECK to manage many aspects of the application and exposes functions from the `RetroDECK Framework` to the user.
The `RetroDECK Configurator` can be opened from:
- The main menu inside the ES-DE interface and choose `RetroDECK Configurator`.
<img src="../../wiki_images/graphics/configurator/configurator-esde.png" width="500">
* From the `RetroDECK Configurator.desktop` desktop shortcut, available in your application menu.
<img src="../../wiki_images/graphics/configurator/configurator-kde.png" width="500">
* From CLI by calling `flatpak run net.retrodeck.retrodeck --configurator`
What follows are the commands you can use inside the Configurator (more commands will be added during development).
## Presets & Settings
In this menu you can set various presets.
#### Widescreen: Enable/Disable
Enables or disables Widescreen in all supported emulators and cores.
#### Ask to Exit prompt: Enable/Disable
Enables or disables ask to exit prompts in all supported emulators and cores.
Note: If you disable this, the emulators will directly exit.
### Global: Presets & Settings
In this menu you will find presets and settings that span over multiple emulators.
#### RetroAchivements: Login
Login to RetroAchievements in all supported emulators and cores.
#### RetroAchivements: Logut
Logut from RetroAchievements in all supported emulators and cores.
#### RetroAchivements: Hardcore Mode
Enables `Hardcore Mode` from RetroAchievements in all supported emulators and cores.
#### Swap A/B and X/Y: Enable/Disable
Swaps `A/B` `X/Y` in supported emulators and cores.
#### Quick Resume: Enable/Disable
Enables `Quick Resume` aka `Auto Save` + `Auto Load` on exit in supported emulators and cores.
### RetroArch: Presets & Settings
In this menu you will find presets and settings for RetroArch.
#### Borders: Enable/Disable
Enable / Disable borders across the RetroArch cores you choose.
#### Rewind: Enable/Disable
Enable / Disable rewind across all of RetroArch (this may impact performance on some more demanding systems).
### Wii & Gamecube: Presets & Settings
In this menu you will find presets and settings for Dolphin and Primehack.
#### Dolphin Textures: Universal Dynamic Input
Enable / Disable Venomalias's Universal Dynamic Input Texture for Dolphin.
#### Primehack Textures: Universal Dynamic Input
Enable / Disable Venomalias's Universal Dynamic Input Texture for Primehack.
## Open Emulator
Here you launch and configure each emulator's settings, the option you choose will open that emulators GUI. For documentation on how to change the settings of each emulator's settings please check the website of each emulator.
(Please note that most of the emulator interfaces where not designed with controller input in mind for handling the applications GUI, just the games. You might need to use other inputs like the Steam Decks touchscreen or a mouse and keyboard to navigate properly).
## RetroDECK: Tools
### Tool: Remove empty ROM folders
This tool removes all the roms folders under retrodeck/roms/ that are empty to only leave those that are populated with content.
### Tool: Rebuild all ROM folders
This tool rebuilds rom folders you have accidentally removed or used the `Remove empty ROM folders` tool.
### Tool: Move files
This option lets you choose the installation path of the RetroDECK folder that handles ROMS, Saves, BIOS, etc... to a new location.
You get the following three options.
`Internal Storage` - Moves the folder to the internal storage.
`SD CARD` - Moves the folder to the SD CARD
`Custom Location` - Choose where you want the RetroDECK folder to be.
### Tool: Compress games
This option enables you to compress disc-based game image files `.gdi` `.iso` `.bin` `.cue` to the less space demanding `.chd` format.
You can choose either a single game or many.
### Install: RetroDECK SD Controller Profile
This option installs the Steam controller profiles that RetroDECK into Steam.
### Install: PS3 Firmware
This option downloads and installs the latest PS3 firmware. At the end of the download, RPCS3 will open requesting the user to install it (just press OK).
### RetroDECK: Change update settings (cooker only)
This option lets you turn on or off automatic updates on launch.
## RetroDECK: Troubleshooting
Various troubleshooting options.
### Backup: RetroDECK Userdata
Creates backups of the user data folders
### Check & Verify: Multi-file structure
Verifies the structure of multi disc/file games that uses `.m3u` files.
### Check & Verify: BIOS
Shows a detailed BIOS list of missing and current BIOS.
### RetroDECK: Reset
The reset menu resets various features
#### Reset Specific Emulator
Opens a menu where you can reset a specific emulator
#### Reset All Emulators
Resets all the emulators at once
#### Reset RetroDECK
Resets the entirety of RetroDECK.
`⚠️ WARNING! BACK UP YOUR DATA BEFORE RUNNING THIS! ⚠️`
## RetroDECK: About
This menu contains information about RetroDECK
### Version history
Displays the changelogs
### Credits
Displays the credits

View file

@ -11,10 +11,11 @@ var BIOS_COLUMNS_EXPERT := ["BIOS File Name", "System", "Found", "Hash Match", "
@onready var custom_theme: Theme = get_tree().current_scene.custom_theme
func _ready():
#var font_size = get_theme_font_size("font")
#custom_theme.default_font_size = 16
$".".theme = custom_theme
var table := $Table
if bios_type == 0: #Basic BIOS button pressed
var table: Tree = %Table
if bios_type == 1: #Basic BIOS button pressed
table.columns = BIOS_COLUMNS_BASIC.size()
for i in BIOS_COLUMNS_BASIC.size():
table.set_column_title(i, BIOS_COLUMNS_BASIC[i])
@ -25,11 +26,7 @@ func _ready():
var root = table.create_item()
table.hide_root = true
if bios_type == 0: #Basic BIOS button pressed
#OS.execute("/app/tools/retrodeck_function_wrapper.sh",["check_bios_files", "basic"])
#var parameters = ["log", "i", "Configurator: " + "check_bios_files"]
# classFunctions.execute_command(command, parameters, false)
if bios_type == 1: #Basic BIOS button pressed
var parameters = ["check_bios_files","basic"]
bios_result = await class_functions.run_thread_command(class_functions.wrapper_command, parameters, console)
else: #Assume advanced BIOS button pressed

View file

@ -1,14 +1,17 @@
[gd_scene load_steps=2 format=3 uid="uid://bihon3xtx45y7"]
[gd_scene load_steps=3 format=3 uid="uid://bihon3xtx45y7"]
[ext_resource type="Script" path="res://components/bios_check/bios_check.gd" id="1_qrkee"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_8e2dh"]
bg_color = Color(0.133, 0.133, 0.133, 1)
[node name="PopupContent" type="Control"]
top_level = true
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_right = -355.0
offset_right = -1.0
offset_bottom = -71.0
grow_horizontal = 2
grow_vertical = 2
@ -30,12 +33,17 @@ PS3 BIOS IS VERY BAD
I'm not sure what else?"
[node name="Table" type="Tree" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
unique_name_in_owner = true
clip_contents = false
layout_mode = 2
offset_right = 1277.0
offset_bottom = 723.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_font_sizes/font_size = 16
theme_override_styles/panel = SubResource("StyleBoxFlat_8e2dh")
columns = 5
column_titles_visible = true
select_mode = 1

View file

@ -16,7 +16,7 @@ func _ready():
$Panel/MarginContainer/VBoxContainer/ContentContainer/MarginContainer.add_child(content)
func _process(delta):
func _process(_delta):
if Input.is_action_pressed("back_button"):
lbhide.visible=true
rbhide.visible=true

View file

@ -77,7 +77,7 @@
[ext_resource type="Texture2D" uid="uid://3sw7gtoiuab3" path="res://assets/icons/pixelitos/128/help-browser.png" id="46_feagl"]
[ext_resource type="Texture2D" uid="uid://b0awa8venu1h8" path="res://assets/icons/pixelitos/128/cs-network.png" id="50_5d2ui"]
[ext_resource type="Texture2D" uid="uid://be3tmvgoa1wua" path="res://assets/icons/pixelitos/128/applications-development.png" id="50_tl5ty"]
[ext_resource type="Script" path="res://scripts/ToolsTab.gd" id="50_wqa5h"]
[ext_resource type="Script" path="res://scripts/TabTools.gd" id="50_wqa5h"]
[ext_resource type="Texture2D" uid="uid://33f5uahr5tqm" path="res://assets/icons/pixelitos/128/mate-system-log.png" id="52_1rasc"]
[ext_resource type="Script" path="res://scripts/TabSettings.gd" id="54_bxhvn"]
[ext_resource type="Texture2D" uid="uid://dk4567tpvqpr6" path="res://assets/icons/pixelitos/128/preferences-desktop-plasma-theme.png" id="54_dah1j"]
@ -268,33 +268,25 @@ layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="globals_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer"]
layout_mode = 2
[node name="systems_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_container"]
layout_mode = 2
text = "GLOBAL CONFIGURATION"
[node name="systems_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_container"]
layout_mode = 2
[node name="globals_gridcontainer" type="GridContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer"]
layout_mode = 2
theme_override_constants/h_separation = 25
theme_override_constants/v_separation = 25
columns = 3
theme_override_constants/h_separation = 15
theme_override_constants/v_separation = 15
columns = 4
[node name="ask_to_exit_button" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(375, 125)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "ASK TO EXIT"
icon = ExtResource("5_ahd1x")
alignment = 1
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
metadata/description = "This function will prompt you to exit on quiting an emulator."
metadata/description = "Enables or disables ask to exit prompts in all supported emulators and cores. Note: If you disable this, the emulators will directly exit."
metadata/rekku = "If this box is orange blame monkeyx he loves Blaclpool FC. Or long press to reset and turm them all on again. You can also edit individual options for systems in the System TAB. "
[node name="ask_to_exit_progress" type="ProgressBar" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer/ask_to_exit_button"]
unique_name_in_owner = true
@ -310,14 +302,15 @@ show_percentage = false
[node name="border_button" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(375, 125)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "BORDERS"
icon = ExtResource("4_jldgc")
alignment = 1
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
[node name="border_progress" type="ProgressBar" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer/border_button"]
unique_name_in_owner = true
@ -333,15 +326,16 @@ show_percentage = false
[node name="button_swap_button" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(375, 125)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "BUTTON SWAP
"
icon = ExtResource("4_caaxx")
alignment = 1
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
[node name="button_swap_progress" type="ProgressBar" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer/button_swap_button"]
unique_name_in_owner = true
@ -356,39 +350,42 @@ theme_override_styles/fill = SubResource("StyleBoxFlat_1161k")
show_percentage = false
[node name="mods_button" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer"]
custom_minimum_size = Vector2(375, 125)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
disabled = true
text = "MODS"
icon = ExtResource("5_vehlp")
alignment = 1
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
metadata/description = "This feature is planned for a future release."
[node name="quick_resume_button" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(375, 125)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "QUICK RESUME"
icon = ExtResource("12_3jrmi")
alignment = 1
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
metadata/description = "Testing 1,2,3 .."
[node name="quick_rewind_button" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(375, 125)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "REWIND"
icon = ExtResource("11_c3qcy")
alignment = 1
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
[node name="quick_rewind_progress" type="ProgressBar" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer/quick_rewind_button"]
unique_name_in_owner = true
@ -403,39 +400,42 @@ theme_override_styles/fill = SubResource("StyleBoxFlat_1161k")
show_percentage = false
[node name="tate_mode_button" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer"]
custom_minimum_size = Vector2(375, 125)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
disabled = true
text = "TATE MODE"
icon = ExtResource("10_jm3oh")
alignment = 1
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
metadata/description = "This feature is planned for a future release."
[node name="shaders_button" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer"]
custom_minimum_size = Vector2(375, 125)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
disabled = true
text = "SHADERS"
icon = ExtResource("4_q6hd2")
alignment = 1
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
metadata/description = "This feature is planned for a future release."
[node name="widescreen_button" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(375, 125)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "WIDESCREEN"
icon = ExtResource("4_jldgc")
alignment = 1
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
[node name="widescreen_progress" type="ProgressBar" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer/widescreen_button"]
unique_name_in_owner = true
@ -449,50 +449,6 @@ grow_vertical = 2
theme_override_styles/fill = SubResource("StyleBoxFlat_1161k")
show_percentage = false
[node name="reset_retrodeck_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(375, 125)
layout_mode = 2
text = "RESET RETRODECK"
icon = ExtResource("11_g1uhn")
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
[node name="reset_retrodeck_progress" type="ProgressBar" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer/reset_retrodeck_button"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/fill = SubResource("StyleBoxFlat_1161k")
show_percentage = false
[node name="reset_all_emulators_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(375, 125)
layout_mode = 2
text = "RESET ALL EMULATORS"
icon = ExtResource("45_qxd26")
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
[node name="reset_all_emulators_progress" type="ProgressBar" parent="Background/SplitContainer/MarginContainer/TabContainer/GLOBALS/ScrollContainer/VBoxContainer/globals_gridcontainer/reset_all_emulators_button"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/fill = SubResource("StyleBoxFlat_1161k")
show_percentage = false
[node name="SYSTEM" type="MarginContainer" parent="Background/SplitContainer/MarginContainer/TabContainer"]
visible = false
layout_mode = 2
@ -510,144 +466,175 @@ size_flags_vertical = 3
[node name="system_gridcontainer" type="GridContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer"]
unique_name_in_owner = true
layout_mode = 2
theme_override_constants/h_separation = 25
theme_override_constants/v_separation = 25
columns = 4
theme_override_constants/h_separation = 15
theme_override_constants/v_separation = 15
columns = 5
[node name="retroarch_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "RETROARCH"
icon = ExtResource("4_xcuib")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
metadata/rekku = "This is my favourite emulator!"
[node name="mame_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "MAME"
icon = ExtResource("36_dj81i")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="ruffle_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "RUFFLE"
icon = ExtResource("37_7hhbn")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="melonds_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "MELONDS"
icon = ExtResource("7_4otos")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="pcsx2_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "PCSX2"
icon = ExtResource("38_44je8")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="duckstation_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "DUCKSTATION"
icon = ExtResource("6_winpq")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="ppsspp_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "PPSSPP"
icon = ExtResource("8_akxf7")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="vita3k_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "VITA3K"
icon = ExtResource("38_vsjf2")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="rpcs3_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "RPCS3"
icon = ExtResource("8_ec4gt")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="ryujinx_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "RYUJINX"
icon = ExtResource("40_7fdvq")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="dolphin_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "DOLPHIN"
icon = ExtResource("11_61sak")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="primehack_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "PRIMEHACK"
icon = ExtResource("41_55e56")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="cemu_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "CEMU"
icon = ExtResource("42_n3n7j")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="xemu_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "XEMU"
icon = ExtResource("43_ifi6j")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="esde_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer/system_gridcontainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 125)
layout_mode = 2
theme_override_constants/icon_max_width = 128
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "ES-DE"
icon = ExtResource("44_7lpj5")
expand_icon = true
icon_alignment = 1
vertical_icon_alignment = 0
[node name="action_gridcontainer" type="GridContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/SYSTEM/ScrollContainer/VBoxContainer"]
unique_name_in_owner = true
@ -856,7 +843,7 @@ theme_override_constants/separation = 64
[node name="cheevos_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer"]
layout_mode = 2
theme_override_constants/separation = 25
theme_override_constants/separation = 15
[node name="check_conn_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TOOLS/ScrollContainer/VBoxContainer/troubleshoot_container"]
unique_name_in_owner = true
@ -1231,22 +1218,23 @@ layout_mode = 2
unique_name_in_owner = true
custom_minimum_size = Vector2(0, 100)
layout_mode = 2
theme_override_constants/icon_max_width = 64
text = "AUTO UPDATES"
icon = ExtResource("55_x32s4")
alignment = 1
expand_icon = true
[node name="sound_button" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/system_container"]
unique_name_in_owner = true
custom_minimum_size = Vector2(0, 100)
layout_mode = 2
theme_override_constants/icon_max_width = 64
text = "SOUND EFFECTS"
icon = ExtResource("9_qwq2k")
alignment = 1
expand_icon = true
[node name="volume_effects_slider" type="HSlider" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/system_container"]
unique_name_in_owner = true
visible = false
custom_minimum_size = Vector2(0, 75)
layout_mode = 2
min_value = 1.0
@ -1259,8 +1247,8 @@ tick_count = 25
unique_name_in_owner = true
custom_minimum_size = Vector2(0, 100)
layout_mode = 2
theme_override_constants/icon_max_width = 64
alignment = 1
expand_icon = true
selected = 0
item_count = 4
popup/item_0/text = "CHOOSE FONT"
@ -1277,23 +1265,6 @@ popup/item_3/text = "OpenDyslexic3"
popup/item_3/icon = ExtResource("56_ubqc2")
popup/item_3/id = 2
[node name="menu_music" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/system_container"]
layout_mode = 2
disabled = true
text = "TK_MUSIC"
icon = ExtResource("58_oismn")
alignment = 1
expand_icon = true
[node name="easter_eggs" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer/VBoxContainer/system_container"]
layout_mode = 2
disabled = true
button_pressed = true
text = "TK_EASTEREGGS"
icon = ExtResource("56_witym")
alignment = 1
expand_icon = true
[node name="locale_option" type="OptionButton" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/system_container"]
unique_name_in_owner = true
custom_minimum_size = Vector2(0, 100)
@ -1317,6 +1288,48 @@ popup/item_5/id = 5
popup/item_6/icon = ExtResource("11_ri2fv")
popup/item_6/id = 6
[node name="reset_retrodeck_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/system_container"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "RESET RETRODECK"
icon = ExtResource("11_g1uhn")
[node name="reset_retrodeck_progress" type="ProgressBar" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/system_container/reset_retrodeck_button"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/fill = SubResource("StyleBoxFlat_1161k")
show_percentage = false
[node name="reset_all_emulators_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/system_container"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/icon_max_width = 64
text = "RESET ALL EMULATORS"
icon = ExtResource("45_qxd26")
[node name="reset_all_emulators_progress" type="ProgressBar" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/system_container/reset_all_emulators_button"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/fill = SubResource("StyleBoxFlat_1161k")
show_percentage = false
[node name="cheevos_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer"]
layout_mode = 2
@ -1371,20 +1384,41 @@ placeholder_text = "password"
secret = true
secret_character = "*"
[node name="cheevos_hardcore" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container"]
[node name="blank_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 5
[node name="cheevos_disconnect_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container"]
layout_mode = 2
text = "TK_NETPLAYCONNECT"
[node name="cheevos_hardcore_button" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container"]
unique_name_in_owner = true
custom_minimum_size = Vector2(0, 100)
layout_mode = 2
text = "TK_CHEEVOSHARDCORE"
[node name="cheevos_hardcore_progress" type="ProgressBar" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container/cheevos_hardcore_button"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/fill = SubResource("StyleBoxFlat_1161k")
show_percentage = false
[node name="netplay_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer"]
layout_mode = 2
[node name="netplay" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/netplay_container"]
custom_minimum_size = Vector2(0, 100)
layout_mode = 2
text = "TK_NETPLAY"
[node name="netplay_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/netplay_container"]
layout_mode = 2
[node name="netplay_id_container" type="GridContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/netplay_container"]
layout_mode = 2
theme_override_constants/h_separation = 64
@ -1461,6 +1495,23 @@ size_flags_horizontal = 3
disabled = true
text = "TK_FTPBTN"
[node name="menu_music" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/data_mng_container"]
layout_mode = 2
theme_override_constants/icon_max_width = 64
disabled = true
text = "TK_MUSIC"
icon = ExtResource("58_oismn")
alignment = 1
[node name="easter_eggs" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/SETTINGS/ScrollContainer/VBoxContainer/data_mng_container"]
layout_mode = 2
theme_override_constants/icon_max_width = 64
disabled = true
button_pressed = true
text = "TK_EASTEREGGS"
icon = ExtResource("56_witym")
alignment = 1
[node name="ABOUT" type="MarginContainer" parent="Background/SplitContainer/MarginContainer/TabContainer"]
visible = false
layout_mode = 2
@ -1503,8 +1554,8 @@ text = "ABOUT RETRODECK"
[node name="GridContainer" type="GridContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_ABOUT/ScrollContainer/about_container"]
unique_name_in_owner = true
layout_mode = 2
theme_override_constants/h_separation = 20
theme_override_constants/v_separation = 20
theme_override_constants/h_separation = 15
theme_override_constants/v_separation = 15
columns = 4
[node name="WIP" type="MarginContainer" parent="Background/SplitContainer/MarginContainer/TabContainer"]
@ -1857,6 +1908,7 @@ frame = 4
frame_progress = 1.0
[node name="side_logo" type="Control" parent="Background/SplitContainer"]
z_index = 4
layout_mode = 2
[node name="rekku" type="Control" parent="Background/SplitContainer/side_logo"]
@ -1895,6 +1947,7 @@ autoplay = "speech"
[node name="speach_bubble" type="Panel" parent="Background/SplitContainer/side_logo/rekku"]
unique_name_in_owner = true
visible = false
layout_mode = 0
offset_left = 371.0
offset_top = -1120.0
@ -1902,7 +1955,8 @@ offset_right = 644.0
offset_bottom = -786.0
theme_override_styles/panel = SubResource("StyleBoxTexture_rf0rc")
[node name="helper_text" type="RichTextLabel" parent="Background/SplitContainer/side_logo/rekku"]
[node name="helper_text" type="Label" parent="Background/SplitContainer/side_logo/rekku/speach_bubble"]
visible = false
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
@ -1915,14 +1969,26 @@ offset_right = 668.0
offset_bottom = -420.0
grow_horizontal = 2
grow_vertical = 2
text = "Rekku:
When \"Quick Resume\" is enabled, a savestate is created upon quit and it will be loaded once the game is started.
This is mot working on the following systems: Switch, WiiU."
fit_content = true
scroll_following = true
script = ExtResource("5_cprkf")
[node name="rekku_sprite" type="Sprite2D" parent="Background/SplitContainer/side_logo/rekku"]
position = Vector2(511, -826)
scale = Vector2(0.5, 0.5)
texture = ExtResource("57_1n3u5")
[node name="blink_anim" type="AnimatedSprite2D" parent="Background/SplitContainer/side_logo/rekku/rekku_sprite"]
position = Vector2(-72, -252)
sprite_frames = SubResource("SpriteFrames_k7pd1")
animation = &"blink"
autoplay = "blink"
frame_progress = 0.188668
[node name="speech_anim" type="AnimatedSprite2D" parent="Background/SplitContainer/side_logo/rekku/rekku_sprite"]
position = Vector2(-76, -198)
sprite_frames = SubResource("SpriteFrames_l20mt")
animation = &"speech"
autoplay = "speech"
[node name="TextureRect" type="TextureRect" parent="Background/SplitContainer/side_logo"]
visible = false
layout_mode = 0
@ -1947,7 +2013,8 @@ offset_top = 703.0
offset_right = 1271.0
offset_bottom = 797.0
theme_override_styles/normal = SubResource("StyleBoxFlat_4gcyr")
text = "TEST MESSAGE"
horizontal_alignment = 1
autowrap_mode = 2
[node name="CanvasModulate" type="CanvasModulate" parent="."]
visible = false

View file

@ -1087,7 +1087,7 @@ cache/0/16/0/glyphs/95/uv_rect = Rect2(92, 148, 6, 1)
cache/0/16/0/glyphs/95/texture_idx = 0
cache/0/16/0/kerning_overrides/16/0 = Vector2(0, 0)
[sub_resource type="Image" id="Image_cx80n"]
[sub_resource type="Image" id="Image_hiwdq"]
data = {
"data": PackedByteArray("4ODg4ODg4OD//////////+Dg4ODg4ODg///////////g4ODg4ODg4P//////////4ODg4ODg4OD//////////+Dg4ODg4ODg///////////g4ODg4ODg4P//////////4ODg4ODg4OD//////////+Dg4ODg4ODg/////////////////////+Dg4ODg4ODg///////////g4ODg4ODg4P//////////4ODg4ODg4OD//////////+Dg4ODg4ODg///////////g4ODg4ODg4P//////////4ODg4ODg4OD//////////+Dg4ODg4ODg///////////g4ODg4ODg4A=="),
"format": "Lum8",
@ -1097,9 +1097,9 @@ data = {
}
[sub_resource type="ImageTexture" id="447"]
image = SubResource("Image_cx80n")
image = SubResource("Image_hiwdq")
[sub_resource type="Image" id="Image_o7ypa"]
[sub_resource type="Image" id="Image_cakv4"]
data = {
"data": PackedByteArray("AAQACgARABkAHwAiACQAJAAkACQAIgAfABkAEQAKAAQACgAVACUANAA/AEYARwBIAEgARwBGAD8ANAAlABUACgARACU/d1rvVv9W/1b/Vv9W/1b/Vv9W/1rvP3cAJQARABkANFnvSP9E/0P/Q/9D/0P/Q/9D/0T/SP9Z7wA0ABkAHwA/VP9D/0P/Q/9D/0P/Q/9D/0P/Q/9D/1T/AD8AHwAiAEZS/0L/Qv9C/0L/Qv9C/0L/Qv9C/0L/Uv8ARgAiACQAR1H/QP9A/0D/QP9A/0D/QP9A/0D/QP9R/wBHACQAJABIT/8//z//P/8//z//P/8//z//P/8//0//AEgAJAAkAEhN/z7/Pv8+/z7/Pv8+/z7/Pv8+/z7/Tf8ASAAkACQAR0z/Pf89/z3/Pf89/z3/Pf89/z3/Pf9M/wBHACQAIgBGSv87/zv/O/87/zv/O/87/zv/O/87/0r/AEYAIgAfAD9J/zr/Ov86/zr/Ov86/zr/Ov86/zr/Sf8APwAfABkANEvvPf85/zn/Of85/zn/Of85/zn/Pf9L7wA0ABkAEQAlNXdK70f/Rv9G/0b/Rv9G/0b/R/9K7TV3ACUAEQAKABUAJQA0AD8ARgBHAEgASABHAEYAPwA0ACUAFQAKAAQACgARABkAHwAiACQAJAAkACQAIgAfABkAEQAKAAQ="),
"format": "LumAlpha8",
@ -1109,7 +1109,7 @@ data = {
}
[sub_resource type="ImageTexture" id="53"]
image = SubResource("Image_o7ypa")
image = SubResource("Image_cakv4")
[sub_resource type="StyleBoxTexture" id="54"]
content_margin_left = 6.0
@ -1123,7 +1123,7 @@ expand_margin_right = 2.0
expand_margin_bottom = 2.0
region_rect = Rect2(0, 0, 16, 16)
[sub_resource type="Image" id="Image_1mjn7"]
[sub_resource type="Image" id="Image_4x6uc"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEeMvw5HjL85R4y/aEeMv3pHjL97R4y/e0eMv3tHjL97R4y/ekeMv2hHjL85R4y/DgAAAAAAAAAAAAAAAAAAAABHjL86R4y/dEeMvxBHjL8IR4y/CEeMvwhHjL8IR4y/CEeMvwhHjL8QR4y/dEeMvzoAAAAAAAAAAAAAAAAAAAAAR4y/aUeMvw8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEeMvw9HjL9pAAAAAAAAAAAAAAAAAAAAAEeMv3tHjL8GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABHjL8GR4y/ewAAAAAAAAAAAAAAAAAAAABHjL97R4y/CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR4y/CEeMv3sAAAAAAAAAAAAAAAAAAAAAR4y/e0eMvwgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEeMvwhHjL97AAAAAAAAAAAAAAAAAAAAAEeMv3tHjL8IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABHjL8IR4y/ewAAAAAAAAAAAAAAAAAAAABHjL97R4y/CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR4y/CEeMv3sAAAAAAAAAAAAAAAAAAAAAR4y/e0eMvwYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEeMvwZHjL97AAAAAAAAAAAAAAAAAAAAAEeMv2lHjL8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABHjL8OR4y/aQAAAAAAAAAAAAAAAAAAAABHjL86R4y/dUeMvw9HjL8IR4y/CEeMvwhHjL8IR4y/CEeMvwhHjL8RR4y/dEeMvzoAAAAAAAAAAAAAAAAAAAAAR4y/DkeMvzpHjL9oR4y/ekeMv3tHjL97R4y/e0eMv3tHjL96R4y/aEeMvzlHjL8OAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="),
"format": "RGBA8",
@ -1133,7 +1133,7 @@ data = {
}
[sub_resource type="ImageTexture" id="56"]
image = SubResource("Image_1mjn7")
image = SubResource("Image_4x6uc")
[sub_resource type="StyleBoxTexture" id="57"]
content_margin_left = 6.0
@ -1147,7 +1147,7 @@ expand_margin_right = 2.0
expand_margin_bottom = 2.0
region_rect = Rect2(0, 0, 16, 16)
[sub_resource type="Image" id="Image_nx1w6"]
[sub_resource type="Image" id="Image_odx3h"]
data = {
"data": PackedByteArray("AAAABAAAAAoAAAARAAAAGQAAAB8AAAAiAAAAJAAAACQAAAAkAAAAJAAAACIAAAAfAAAAGQAAABEAAAAKAAAABAAAAAoAAAAVAAAAJQAAADQAAAA/AAAARgAAAEcAAABIAAAASAAAAEcAAABGAAAAPwAAADQAAAAlAAAAFQAAAAoAAAARAAAAJUJAS3dfWmzvW1do/1pWZ/9aVmf/WlZn/1pWZ/9aVmf/WlZn/1tXaP9fWmzvQkBLdwAAACUAAAARAAAAGQAAADRfWmvvTUpX/0lGUv9IRVH/SEVR/0hFUf9IRVH/SEVR/0hFUf9JRlL/TUpX/19aa+8AAAA0AAAAGQAAAB8AAAA/W1dm/0lGUv9IRVH/SEVR/0hFUf9IRVH/SEVR/0hFUf9IRVH/SEVR/0lGUv9bV2b/AAAAPwAAAB8AAAAiAAAARllVZP9HRFD/R0RQ/0dEUP9HRFD/R0RQ/0dEUP9HRFD/R0RQ/0dEUP9HRFD/WVVk/wAAAEYAAAAiAAAAJAAAAEdYVGT/RkNQ/0ZDUP9GQ1D/RkNQ/0ZDUP9GQ1D/RkNQ/0ZDUP9GQ1D/RkNQ/1hUZP8AAABHAAAAJAAAACQAAABIVlNj/0VCT/9FQk//RUJP/0VCT/9FQk//RUJP/0VCT/9FQk//RUJP/0VCT/9WU2P/AAAASAAAACQAAAAkAAAASFZTYv9FQk7/RUJO/0VCTv9FQk7/RUJO/0VCTv9FQk7/RUJO/0VCTv9FQk7/VlNi/wAAAEgAAAAkAAAAJAAAAEdVUWL/REFO/0RBTv9EQU7/REFO/0RBTv9EQU7/REFO/0RBTv9EQU7/REFO/1VRYv8AAABHAAAAJAAAACIAAABGVVFg/0RBTf9EQU3/REFN/0RBTf9EQU3/REFN/0RBTf9EQU3/REFN/0RBTf9VUWD/AAAARgAAACIAAAAfAAAAP1VRYP9EQU3/Q0BM/0NATP9DQEz/Q0BM/0NATP9DQEz/Q0BM/0NATP9EQU3/VVFg/wAAAD8AAAAfAAAAGQAAADRWU2TvR0NR/0M/Tf9CP0z/Qj9M/0I/TP9CP0z/Qj9M/0I/TP9DP03/R0NR/1dTZO8AAAA0AAAAGQAAABEAAAAlPjtGd1dTY+9TUF//U09e/1NPXv9TT17/U09e/1NPXv9TT17/U1Bf/1dTY+0+O0Z3AAAAJQAAABEAAAAKAAAAFQAAACUAAAA0AAAAPwAAAEYAAABHAAAASAAAAEgAAABHAAAARgAAAD8AAAA0AAAAJQAAABUAAAAKAAAABAAAAAoAAAARAAAAGQAAAB8AAAAiAAAAJAAAACQAAAAkAAAAJAAAACIAAAAfAAAAGQAAABEAAAAKAAAABA=="),
"format": "RGBA8",
@ -1157,7 +1157,7 @@ data = {
}
[sub_resource type="ImageTexture" id="59"]
image = SubResource("Image_nx1w6")
image = SubResource("Image_odx3h")
[sub_resource type="StyleBoxTexture" id="60"]
content_margin_left = 6.0
@ -1175,7 +1175,7 @@ expand_margin_right = 2.0
expand_margin_bottom = 2.0
region_rect = Rect2(0, 0, 16, 16)
[sub_resource type="Image" id="Image_645t5"]
[sub_resource type="Image" id="Image_jx0w7"]
data = {
"data": PackedByteArray("AAAABAAAAAoAAAARAAAAGQAAAB8AAAAiAAAAJAAAACQAAAAkAAAAJAAAACIAAAAfAAAAGQAAABEAAAAKAAAABAAAAAoAAAAVAAAAJQAAADQAAAA/AAAARgAAAEcAAABIAAAASAAAAEcAAABGAAAAPwAAADQAAAAlAAAAFQAAAAoAAAARAAAAJTw6RHdWU2HvUlBd/1FPXf9RT13/UU9d/1FPXf9RT13/UU9d/1JQXf9WU2HvPDpEdwAAACUAAAARAAAAGQAAADRWUmDvRkJO/0I+Sv9BPkn/QT5J/0E+Sf9BPkn/QT5J/0E+Sf9CPkr/RkJO/1ZSYO8AAAA0AAAAGQAAAB8AAAA/UU5b/0E+Sf9APkj/QD5I/0A+SP9APkj/QD5I/0A+SP9APkj/QD5I/0E+Sf9RTlv/AAAAPwAAAB8AAAAiAAAARk9MWf8/PUf/Pz1H/z89R/8/PUf/Pz1H/z89R/8/PUf/Pz1H/z89R/8/PUf/T0xZ/wAAAEYAAAAiAAAAJAAAAEdOSlj/PjtG/z47Rv8+O0b/PjtG/z47Rv8+O0b/PjtG/z47Rv8+O0b/PjtG/05KWP8AAABHAAAAJAAAACQAAABIS0lV/zw6RP88OkT/PDpE/zw6RP88OkT/PDpE/zw6RP88OkT/PDpE/zw6RP9LSVX/AAAASAAAACQAAAAkAAAASEpHVP87OUP/OzlD/zs5Q/87OUP/OzlD/zs5Q/87OUP/OzlD/zs5Q/87OUP/SkdU/wAAAEgAAAAkAAAAJAAAAEdJRlP/OjhC/zo4Qv86OEL/OjhC/zo4Qv86OEL/OjhC/zo4Qv86OEL/OjhC/0lGU/8AAABHAAAAJAAAACIAAABGR0VQ/zk3QP85N0D/OTdA/zk3QP85N0D/OTdA/zk3QP85N0D/OTdA/zk3QP9HRVD/AAAARgAAACIAAAAfAAAAP0dDUP84NT//ODU//zg1P/84NT//ODU//zg1P/84NT//ODU//zg1P/84NT//R0NQ/wAAAD8AAAAfAAAAGQAAADRHRFLvOjhC/zY0Pv82ND7/NjQ+/zY0Pv82ND7/NjQ+/zY0Pv82ND7/OjhC/0dEUu8AAAA0AAAAGQAAABEAAAAlMzE5d0dEUO9EQk3/REFM/0RBTP9EQUz/REFM/0RBTP9EQUz/REJN/0dEUe0zMTl3AAAAJQAAABEAAAAKAAAAFQAAACUAAAA0AAAAPwAAAEYAAABHAAAASAAAAEgAAABHAAAARgAAAD8AAAA0AAAAJQAAABUAAAAKAAAABAAAAAoAAAARAAAAGQAAAB8AAAAiAAAAJAAAACQAAAAkAAAAJAAAACIAAAAfAAAAGQAAABEAAAAKAAAABA=="),
"format": "RGBA8",
@ -1185,7 +1185,7 @@ data = {
}
[sub_resource type="ImageTexture" id="62"]
image = SubResource("Image_645t5")
image = SubResource("Image_jx0w7")
[sub_resource type="StyleBoxTexture" id="63"]
content_margin_left = 6.0
@ -1199,7 +1199,7 @@ expand_margin_right = 2.0
expand_margin_bottom = 2.0
region_rect = Rect2(0, 0, 16, 16)
[sub_resource type="Image" id="Image_6cwok"]
[sub_resource type="Image" id="Image_nfq1y"]
data = {
"data": PackedByteArray("AAAABAAAAAoAAAARAAAAGQAAAB8AAAAiAAAAJAAAACQAAAAkAAAAJAAAACIAAAAfAAAAGQAAABEAAAAKAAAABAAAAAsAAAAWAAAAJwAAADYAAABBAAAASQAAAEoAAABLAAAASwAAAEoAAABJAAAAQQAAADYAAAAnAAAAFgAAAAsAAAATAAAAKTEvN4BGQ0/xQ0BM/0JAS/9CQEv/QkBL/0JAS/9CQEv/QkBL/0NATP9GQ0/xMS83fwAAACkAAAATAAAAHgAAAD1HRFDyOjhB/wsLDP8LCgz/CwoM/wsKDP8LCgz/CwsM/wsLDP8LCwz/OjhB/0dEUPIAAAA9AAAAHgAAACcAAABNREJO/w8OEf8PDhH/Dw4R/w8OEf8PDhH/Dw4R/w8OEf8PDhH/Dw4R/w8OEf9EQk7/AAAATQAAACcAAAAsAAAAWEZCT/8UExb/ExIW/xMSFv8UExb/ExIW/xQTFv8UExb/FBMW/xQTFv8TEhb/RkJP/wAAAFgAAAAsAAAAMgAAAF1HRVD/GBcb/xgXG/8YFxv/GBcb/xgXG/8YFxv/GBcb/xkYHP8YFxv/GBcb/0dFUP8AAABdAAAAMgAAADMAAABjSUZT/x0cIf8dHCH/HRwh/x0cIf8dHCH/HRwh/x0cIf8dHCH/HRwh/x0cIf9JRlP/AAAAYwAAADMAAAA2AAAAZkpHVP8iISf/IiEn/yIhJ/8iISf/IiEn/yIhJ/8iISf/IiEn/yIhJ/8iISf/SkdU/wAAAGYAAAA2AAAAOQAAAGlLSVX/JyYt/ycmLf8nJi3/JyYt/ycmLf8nJi3/JyYt/ygmLf8nJi3/KCYt/0tJVf8AAABpAAAAOQAAADgAAABsTkpY/y0rM/8tKzP/LSsz/y0rM/8tKzP/LSsz/y0rM/8tKzP/LSsz/y0rM/9OSlj/AAAAbAAAADgAAAA1AAAAZVBNWv8zMTr/MzE5/zMxOf8zMTn/MzE5/zMxOf8zMTn/MzE5/zMxOf8zMTr/UE1a/wAAAGUAAAA1AAAALQAAAFlVUl/8RUJN/zk3QP84N0D/OTdA/zg3QP84N0D/ODdA/zg3QP86N0H/RUJN/1VSYPwAAABZAAAALQAAACAAAABEPTpFtFZSYP1STlz/UU5b/1FOW/9RTlv/UU5b/1FOW/9RTlv/Uk5c/1ZSYP09OkW0AAAARAAAACAAAAAUAAAAKAAAAEUAAABdAAAAbgAAAHkAAAB6AAAAfAAAAHwAAAB6AAAAeQAAAG4AAABdAAAARQAAACgAAAAUAAAACAAAABQAAAAhAAAAMAAAADoAAAA/AAAAQwAAAEMAAABDAAAAQwAAAD8AAAA6AAAAMAAAACEAAAAUAAAACA=="),
"format": "RGBA8",
@ -1209,7 +1209,7 @@ data = {
}
[sub_resource type="ImageTexture" id="65"]
image = SubResource("Image_6cwok")
image = SubResource("Image_nfq1y")
[sub_resource type="StyleBoxTexture" id="66"]
content_margin_left = 6.0
@ -1223,7 +1223,7 @@ expand_margin_right = 2.0
expand_margin_bottom = 2.0
region_rect = Rect2(0, 0, 16, 16)
[sub_resource type="Image" id="Image_yq8x5"]
[sub_resource type="Image" id="Image_nfupi"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/wAAAADf39+IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P8AAAAA4ODg/9/f34gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/AAAAAODg4P/g4OD/39/fiAAAAAAAAAAAAAAAAAAAAAAAAAAA4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/wAAAADg4OD/4ODg/+Dg4P/f39+IAAAAAAAAAAAAAAAAAAAAAODg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P8AAAAAAAAAAAAAAAAAAAAA4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/AAAAAAAAAAAAAAAAAAAAAODg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/wAAAAAAAAAAAAAAAAAAAADg4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P8AAAAAAAAAAAAAAAAAAAAA4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/AAAAAAAAAAAAAAAAAAAAAODg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/wAAAAAAAAAAAAAAAAAAAADg4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P8AAAAAAAAAAAAAAAAAAAAA4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/AAAAAAAAAAAAAAAAAAAAAODg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="),
"format": "RGBA8",
@ -1233,9 +1233,9 @@ data = {
}
[sub_resource type="ImageTexture" id="425"]
image = SubResource("Image_yq8x5")
image = SubResource("Image_nfupi")
[sub_resource type="Image" id="Image_osx3u"]
[sub_resource type="Image" id="Image_jgbx6"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4MXg/+D/4P/g/+D/4P/gwwAAAAAAAAAAAAAAAAAAAADg/+D/4P/g/+D/4P/g/+D/AAAAAAAAAAAAAAAAAAAAAOD/4P/g/+D/4P/g/+D/4P/hPAAAAAAAAAAAAAAAAAAA4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P/gwwAAAADg/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/AAAAAOD/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P8AAAAA4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/wAAAADg/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/AAAAAOD/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P8AAAAA4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/wAAAADg/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/AAAAAODD4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/38IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"format": "LumAlpha8",
@ -1245,9 +1245,9 @@ data = {
}
[sub_resource type="ImageTexture" id="427"]
image = SubResource("Image_osx3u")
image = SubResource("Image_jgbx6")
[sub_resource type="Image" id="Image_e358d"]
[sub_resource type="Image" id="Image_5tcav"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3hfgz+DO3hcAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3Bbh0uD+4P7g1+AZAAAAAAAAAAAAAAAAAAAAAAAA3Bbh0uD+4P7g/uD+4NfgGQAAAAAAAAAAAAAAAAAA3hfg1OD+4NHg/uD94dLg/uDU3hcAAAAAAAAAAAAAAADgzeD+4NDcFuD+4P3bFeDR4P7gzAAAAAAAAAAAAAAAAOC+4MXZFP8B4P7g/QAA2xXhyeDFAAAAAAAAAAAAAAAAAAAAAAAA/wHg/uD9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AeD+4P0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4MThwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"format": "LumAlpha8",
@ -1257,9 +1257,9 @@ data = {
}
[sub_resource type="ImageTexture" id="429"]
image = SubResource("Image_e358d")
image = SubResource("Image_5tcav")
[sub_resource type="Image" id="Image_sc2ny"]
[sub_resource type="Image" id="Image_adbo0"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADbB99u4Mfg8+Dz4MfebdsHAAAAAAAAAAAAAAAAAADjG+DP4P7g/uD+4P7g/uD+4M7jGwAAAAAAAAAAAADbB+DP4P7g4eBT2A3YDd9Q4Nfg/uDO2wcAAAAAAAAAAN9u4P7g4eMSAAAAAAAAAADhEeDh4P7ebAAAAAAAAAAA4Mjg/uBTAAAAAAAAAAAAAAAA3lXg/uDGAAAAAAAAAADg8uD+2A0AAAAAAAAAAAAAAADbDuD+4PEAAAAA4J7g/uD+4P7g/uCeAAAAAAAAAAAAAN0P4P7g8QAAAADoC+DU4P7g/uDU6AsAAAAAAAAAAAAA3lbg/uDGAAAAAAAA4Svg8+Dz4SsAAAAAAAAAAAAA5BPh4uD+3mwAAAAAAAAAAN9g32AAAAAAAAAAANsO3lbh4uD+4M7VBgAAAAAAAAAAAAAAAAAAAAAAAAAA4P7g/uD+4M7jGwAAAAAAAAAAAAAAAAAAAAAAAAAAAADg8uDF3mzVBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"format": "LumAlpha8",
@ -1269,9 +1269,9 @@ data = {
}
[sub_resource type="ImageTexture" id="431"]
image = SubResource("Image_sc2ny")
image = SubResource("Image_adbo0")
[sub_resource type="Image" id="Image_f4p5c"]
[sub_resource type="Image" id="Image_fx31s"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA39/fCN7e3mzg4ODF4ODg9ODg4PPg4ODF3t7ebePj4wkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3t7eLuDg4Njg4OD+4ODg/uDg4P7g4OD+4ODg/uDg4P7h4eHa4ODgMgAAAAAAAAAAAAAAAAAAAAAAAAAA3t7eL+Dg4PDg4OD+4ODg4eDg4FPY2NgN2NjYDd/f31Dg4ODX4ODg/uDg4PLh4eEzAAAAAAAAAAAAAAAA4+PjCeDg4Nzg4OD+4ODg4ePj4xIAAAAAAAAAAAAAAAAAAAAA4eHhEeDg4OHg4OD+4ODg3+bm5goAAAAAAAAAAN/f33fg4OD+4ODg/uDg4FMAAAAA4ODgS+Dg4OPh4eHi4ODgSQAAAADe3t5V4ODg/uDg4P7f3995AAAAAAAAAADh4eHa4ODg/uDg4P7Y2NgNAAAAAOHh4eLg4OD+4ODg/uDg4OEAAAAA29vbDuDg4P7g4OD+4eHh2gAAAAAAAAAA4ODg2+Dg4P7g4OD+2NjYDQAAAADh4eHi4ODg/uDg4P7g4ODhAAAAAN3d3Q/g4OD+4ODg/uDg4NsAAAAAAAAAAN7e3nzg4OD+4ODg/t/f31AAAAAA4ODgSeHh4eLg4ODh39/fSAAAAADe3t5W4ODg/uDg4P7g4OB7AAAAAAAAAADV1dUM4ODg4+Dg4P7g4ODX4eHhEQAAAAAAAAAAAAAAAAAAAADk5OQT4eHh4uDg4P7g4ODh1dXVDAAAAAAAAAAAAAAAAN/f3zjg4OD04ODg/uDg4OHe3t5V29vbDtvb2w7e3t5W4eHh4uDg4P7g4OD03t7eNgAAAAAAAAAAAAAAAAAAAAAAAAAA39/fN+Dg4N7g4OD+4ODg/uDg4P7g4OD+4ODg/uDg4P7g4ODd3t7eNgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADm5uYK39/fcODg4MXg4ODz4ODg8+Dg4MXf399u5ubmCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="),
"format": "RGBA8",
@ -1281,7 +1281,7 @@ data = {
}
[sub_resource type="ImageTexture" id="433"]
image = SubResource("Image_f4p5c")
image = SubResource("Image_fx31s")
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_g6bu4"]
texture = ExtResource("1_ak8qr")
@ -1377,7 +1377,7 @@ bg_color = Color(0.490196, 0.490196, 0.490196, 1)
corner_detail = 1
anti_aliasing = false
[sub_resource type="Image" id="Image_4no34"]
[sub_resource type="Image" id="Image_xmr6q"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN9Y3BYAAAAAAAAAAAAAAADcFt9YAAAAAAAAAAAAAN9Y4P7g09wWAAAAAAAAAADcFuDT4P7fWAAAAAAAAAAA2xXf0uD/4NfgGQAAAADbFd/S4P/g198YAAAAAAAAAAAAANsV39Lg/+DX4BnbFd/S4P/g198YAAAAAAAAAAAAAAAAAADbFd/S4P/h2uDW4P/g198YAAAAAAAAAAAAAAAAAAAAAAAA2xXf1uD/4P/g298YAAAAAAAAAAAAAAAAAAAAAAAAAADbFd/W4P/g/+Db4BkAAAAAAAAAAAAAAAAAAAAAAADbFd/S4P/f2uDW4P/g1+AZAAAAAAAAAAAAAAAAAADbFd/S4P/g198Y2xXf0uD/4NfgGQAAAAAAAAAAAADbFd/S4P/g198YAAAAANsV39Lg/+DX4BkAAAAAAAAAAN9Y4P7g09wWAAAAAAAAAADcFuDT4P7fWAAAAAAAAAAAAADfWNwWAAAAAAAAAAAAAAAA3BbfWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"format": "LumAlpha8",
@ -1387,7 +1387,7 @@ data = {
}
[sub_resource type="ImageTexture" id="49"]
image = SubResource("Image_4no34")
image = SubResource("Image_xmr6q")
[sub_resource type="StyleBoxTexture" id="127"]
content_margin_left = 4.0
@ -2208,7 +2208,7 @@ texture_margin_right = 2.0
texture_margin_bottom = 2.0
region_rect = Rect2(72, 64, 8, 8)
[sub_resource type="Image" id="Image_81fer"]
[sub_resource type="Image" id="Image_13i50"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAc5uqs87c4bPO3OGzztzhs87c4bPO3OGzztzhs3ObqrMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="),
"format": "RGBA8",
@ -2218,7 +2218,7 @@ data = {
}
[sub_resource type="ImageTexture" id="199"]
image = SubResource("Image_81fer")
image = SubResource("Image_13i50")
[sub_resource type="StyleBoxTexture" id="200"]
texture = SubResource("199")
@ -2242,7 +2242,7 @@ texture_margin_right = 2.0
texture_margin_bottom = 2.0
region_rect = Rect2(64, 64, 8, 8)
[sub_resource type="Image" id="Image_o4hso"]
[sub_resource type="Image" id="Image_jtlgm"]
data = {
"data": PackedByteArray("/wD//wD//wD//wD/Z3qFZnqGaHuGaHuGaHuGaHuGZnqGZ3qF/wD//wD//wD//wD//wD//wD/Z3qFZnqGV1FRTEJATUNBTUNBTUNBTUNBTEJAV1FRZnqGZ3qF/wD//wD//wD/Z3qFVkxLTEJATURBTUNBTkRCTkRCTkRCTkRCTUNBTURBTEJAV1FRZ3qF/wD//wD/ZnqGTEJATEJATUNBT0VDT0VDT0VDT0VDT0VDT0VDTUNBTEJATEJAZ3uH/wD/Z3qFV1FRTEJATEJATkRCT0RDUEVEUkZEUkZEUUZFT0RDTkRCTEJATEJAV1FRZ3qFZnqGS0A/TEJATUNBT0RDUUdFUkhGU0hHU0hHUkhGUUdFT0RDTkRCTEJAS0E/Z3uHZ3uHS0E/TEJATUNBT0RDUUdFVElGVUpHVUlHVUpHUkhGUEVETUNBTEJAS0E/aHyIZ3uHSkA+S0E/TUNBT0VDUUdFVElGVUtJVk1LVElGU0lHUEZETkRCTEJAS0E/aHyIZ3uHSkE+S0E/TEJAT0VDUUdFVElGVUtJVUtJVUpHUkhGUEZETkRCTEJASkA+aHyIZ3uHSD48S0I/S0E/TkRCUEVEUUZFU0lHU0lHUkhGUEVETkRCTEJAS0E/ST89aHyIZ3uHRj08SD48SkA+TEJATkRCT0RDUEVEUEVEUEZET0VDTEJAS0A/ST89Rz07Z3uHZ3qFV1FRRz47SUA9S0E/TEJATUNBTkRCTkRCTUNBTEJAS0E/ST89Rz07V1FRaHuG/wD/Z3uHRj08Rz07SD48ST89SkA+S0E/S0E/S0A/SkA+SD48Rz47Rz07Z3uH/wD//wD/Z3qFV1FRRTw7Rz07Rz07Rz07SD48SD48Rz07Rz07Rz47Rj08V1FRZnqG/wD//wD//wD/Z3qFZ3uHV1FRRjw6Rjw6Rz47Rz47Rjw6Rjw6V1FRZ3uHaHuG/wD//wD//wD//wD//wD//wD/ZnqGZ3uHaHyIaHyIaHyIaHyIZ3uHaHuG/wD//wD//wD//wD/"),
"format": "RGB8",
@ -2252,7 +2252,7 @@ data = {
}
[sub_resource type="ImageTexture" id="204"]
image = SubResource("Image_o4hso")
image = SubResource("Image_jtlgm")
[sub_resource type="StyleBoxTexture" id="205"]
texture = SubResource("204")
@ -2365,7 +2365,7 @@ axis_stretch_horizontal = 2
axis_stretch_vertical = 2
region_rect = Rect2(80, 0, 16, 8)
[sub_resource type="Image" id="Image_1giar"]
[sub_resource type="Image" id="Image_io2yo"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOD/4P/g/+D/4P/g/+D/4P8AAAAAAAAAAOD/4P/g/+D/4P/g/+D/4P8AAAAAAAAAAOD/4P/g/+D/4P/g/+D/4P8AAAAAAAAAAOFe4PTg/+D/4P/g/+D24WYAAAAAAAAAAAAA3yjf0uD/4P/g1+MtAAAAAAAAAAAAAAAAAADoC+Gf4Z/oCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"),
"format": "LumAlpha8",
@ -2375,9 +2375,9 @@ data = {
}
[sub_resource type="ImageTexture" id="306"]
image = SubResource("Image_1giar")
image = SubResource("Image_io2yo")
[sub_resource type="Image" id="Image_shov6"]
[sub_resource type="Image" id="Image_f15ac"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4P/g/+D/32AAAAAAAAAAAAAAAAAAAAAA4P/g/+D/4PThKwAAAAAAAAAAAAAAAAAA4P/g/+D/4P/g1egLAAAAAAAAAAAAAAAA4P/g/+D/4P/g/+GfAAAAAAAAAAAAAAAA4P/g/+D/4P/g/+GfAAAAAAAAAAAAAAAA4P/g/+D/4P/g1egLAAAAAAAAAAAAAAAA4P/g/+D/4PThKwAAAAAAAAAAAAAAAAAA4P/g/+D/32AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"),
"format": "LumAlpha8",
@ -2387,9 +2387,9 @@ data = {
}
[sub_resource type="ImageTexture" id="308"]
image = SubResource("Image_shov6")
image = SubResource("Image_f15ac")
[sub_resource type="Image" id="Image_txvms"]
[sub_resource type="Image" id="Image_qxhfe"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAA/1n/FP8U/1kAAAAAAAAAAAAA/1n/FP8U/1kAAAAAAAAAAAAA/1n/FP8U/1kAAAAAAAAAAP9Z/xT/FP9ZAAAAAAAA/1n/FP8U/1kAAAAAAAD/Wf8U/xT/WQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"format": "LumAlpha8",
@ -2399,9 +2399,9 @@ data = {
}
[sub_resource type="ImageTexture" id="292"]
image = SubResource("Image_txvms")
image = SubResource("Image_qxhfe")
[sub_resource type="Image" id="Image_nqxn3"]
[sub_resource type="Image" id="Image_y2yvs"]
data = {
"data": PackedByteArray("FxYabx0cIe8gHiT3IR8l9yEfJfchHyX3IR8l9yAeJPcdHCHvFxYabx0cIfAkIin/KCYt/ygmLv8oJi7/KCYu/ygmLv8oJi3/JCIp/x0cIfAgHiT5KCYt/ysqMf8sKjL/LCoy/ywqMv8sKjL/Kyox/ygmLf8gHiT5IR8l9ygmLv8sKjL/LCoy/ywqMv8sKjL/LCoy/ywqMv8oJi7/IR8l9yEfJfcoJi7/LCoy/ywqMv8sKjL/LCoy/ywqMv8sKjL/KCYu/yEfJfchHyX3KCYu/ywqMv8sKjL/LCoy/ywqMv8sKjL/LCoy/ygmLv8hHyX3IR8l9ygmLv8sKjL/LCoy/ywqMv8sKjL/LCoy/ywqMv8oJi7/IR8l9yAeJPkoJi3/Kyox/ywqMv8sKjL/LCoy/ywqMv8rKjH/KCYt/yAeJPkdHCHwJCIp/ygmLf8oJi7/KCYu/ygmLv8oJi7/KCYt/yQiKf8dHCHxFxYabx0cIfAgHiT3IR8l9yEfJfchHyX3IR8l9yAeJPcdHCHuFxYabw=="),
"format": "RGBA8",
@ -2411,7 +2411,7 @@ data = {
}
[sub_resource type="ImageTexture" id="39"]
image = SubResource("Image_nqxn3")
image = SubResource("Image_y2yvs")
[sub_resource type="StyleBoxTexture" id="272"]
content_margin_left = 0.0
@ -2471,7 +2471,7 @@ axis_stretch_horizontal = 2
axis_stretch_vertical = 2
region_rect = Rect2(24, 40, 8, 8)
[sub_resource type="Image" id="Image_7ahc2"]
[sub_resource type="Image" id="Image_l2hig"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNS1kHTUtZJ01LWVBNS1lmTUtZaE1LWWhNS1loTUtZaE1LWWhNS1loWFZjarCvtYFNS1knTUtZBwAAAAAAAAAATUtZJzg3QLQgICT6Hh4i/x8fI/8fHyP/Hx8j/x8fI/8fHyP/Hx8j/4uLjf//////tra53U1LWScAAAAAAAAAAE1LWVAgICT6ICAk/yIiJ/8jIyj/IyMo/yMjKP8jIyj/IyMo/0JCR//4+Pj//v7+/1dXWvtNS1lQAAAAAAAAAABNS1lmHh4i/yIiJ/8lJSr/JSUq/05OUv8mJiv/JSUq/yUlKv/Fxcf//////6qqq/8eHiL/TUtZZgAAAAAAAAAATUtZaB8fI/8jIyj/JSUq/7i4uv//////X19j/yUlKv90dHf//////+3t7f8zMzj/Hx8j/01LWWgAAAAAAAAAAE1LWWgfHyP/IyMo/yUlKv+NjY///////7i4uf81NTn/7e3t//////90dHf/IyMo/x8fI/9NS1loAAAAAAAAAABNS1loHx8j/yMjKP8lJSr/Ojo+//v7+//6+vr/srK0///////Fxcf/JSUq/yMjKP8fHyP/TUtZaAAAAAAAAAAATUtZaB8fI/8jIyj/JSUq/yUlKv+4uLr///////7+/v/4+Pj/RUVJ/yUlKv8jIyj/Hx8j/01LWWgAAAAAAAAAAE1LWWgfHyP/IyMo/yUlKv8lJSr/YWFl////////////j4+S/yUlKv8lJSr/IyMo/x8fI/9NS1loAAAAAAAAAABNS1loHx8j/yMjKP8lJSr/JSUq/yYmK/9OTlL/Y2Nm/yoqL/8lJSr/JSUq/yMjKP8fHyP/TUtZaAAAAAAAAAAATUtZZh4eIv8iIif/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8iIif/Hh4i/01LWWYAAAAAAAAAAE1LWVAgICT6ICAk/yIiJ/8jIyj/IyMo/yMjKP8jIyj/IyMo/yMjKP8iIif/ICAk/yAgJPtNS1lQAAAAAAAAAABNS1knODZAtCAgJPseHiL/Hx8j/x8fI/8fHyP/Hx8j/x8fI/8fHyP/Hh4i/yAgJfo4NkC0TUtZJwAAAAAAAAAATUtZB01LWSdNS1lQTUtZZk1LWWhNS1loTUtZaE1LWWhNS1loTUtZaE1LWWZNS1lQTUtZJ01LWQcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="),
"format": "RGBA8",
@ -2481,9 +2481,9 @@ data = {
}
[sub_resource type="ImageTexture" id="334"]
image = SubResource("Image_7ahc2")
image = SubResource("Image_l2hig")
[sub_resource type="Image" id="Image_n6ur5"]
[sub_resource type="Image" id="Image_jjthi"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNS1kHTUtZJ01LWVBNS1lmTUtZaE1LWWhNS1loTUtZaE1LWWhNS1loTUtZZk1LWVBNS1knTUtZBwAAAAAAAAAATUtZJzg3QLQgICT6Hh4i/x8fI/8fHyP/Hx8j/x8fI/8fHyP/Hx8j/x4eIv8gICT6ODdAtE1LWScAAAAAAAAAAE1LWVAgICT6ICAk/yIiJ/8jIyj/IyMo/yMjKP8jIyj/IyMo/yMjKP8iIif/ICAk/yAgJPpNS1lQAAAAAAAAAABNS1lmHh4i/yIiJ/8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yIiJ/8eHiL/TUtZZgAAAAAAAAAATUtZaB8fI/8jIyj/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8jIyj/Hx8j/01LWWgAAAAAAAAAAE1LWWgfHyP/IyMo/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/IyMo/x8fI/9NS1loAAAAAAAAAABNS1loHx8j/yMjKP8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yMjKP8fHyP/TUtZaAAAAAAAAAAATUtZaB8fI/8jIyj/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8jIyj/Hx8j/01LWWgAAAAAAAAAAE1LWWgfHyP/IyMo/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/IyMo/x8fI/9NS1loAAAAAAAAAABNS1loHx8j/yMjKP8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yMjKP8fHyP/TUtZaAAAAAAAAAAATUtZZh4eIv8iIif/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8iIif/Hh4i/01LWWYAAAAAAAAAAE1LWVAgICT6ICAk/yIiJ/8jIyj/IyMo/yMjKP8jIyj/IyMo/yMjKP8iIif/ICAk/yAgJPtNS1lQAAAAAAAAAABNS1knODZAtCAgJPseHiL/Hx8j/x8fI/8fHyP/Hx8j/x8fI/8fHyP/Hh4i/yAgJfo4NkC0TUtZJwAAAAAAAAAATUtZB01LWSdNS1lQTUtZZk1LWWhNS1loTUtZaE1LWWhNS1loTUtZaE1LWWZNS1lQTUtZJ01LWQcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="),
"format": "RGBA8",
@ -2493,7 +2493,7 @@ data = {
}
[sub_resource type="ImageTexture" id="336"]
image = SubResource("Image_n6ur5")
image = SubResource("Image_jjthi")
[sub_resource type="AtlasTexture" id="359"]
atlas = ExtResource("1_ak8qr")
@ -2581,7 +2581,7 @@ region = Rect2(96, 96, 16, 16)
atlas = ExtResource("1_ak8qr")
region = Rect2(96, 80, 16, 16)
[sub_resource type="Image" id="Image_iyjpi"]
[sub_resource type="Image" id="Image_npfsi"]
data = {
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIKCgnmNjY15mJiYeYGirQCMrLgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOFVfAE5OTjGCgoJ5jY2NeZiYmHlOTk4xTk5OMU5OTjE4VV8AOFVfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADhVXwBOTk4cTk5OMU5OTjFOTk4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="),
"format": "RGBA8",
@ -2591,7 +2591,7 @@ data = {
}
[sub_resource type="ImageTexture" id="111"]
image = SubResource("Image_iyjpi")
image = SubResource("Image_npfsi")
[sub_resource type="StyleBoxTexture" id="4"]
content_margin_left = 6.0
@ -2791,12 +2791,7 @@ TabContainer/constants/label_valign_bg = 0
TabContainer/constants/label_valign_fg = 0
TabContainer/constants/side_margin = 0
TabContainer/constants/top_margin = 0
TabContainer/icons/decrement = null
TabContainer/icons/decrement_highlight = null
TabContainer/icons/increment = null
TabContainer/icons/increment_highlight = null
TabContainer/icons/menu = null
TabContainer/icons/menu_highlight = null
TabContainer/styles/panel = SubResource("420")
TabContainer/styles/tab_bg = SubResource("525")
TabContainer/styles/tab_disabled = SubResource("422")

View file

@ -1,5 +1,6 @@
extends Control
var split_max: int = 1280
var split_min: int = 925
func _input(event):
if event.is_action_released("rekku_hide"):
@ -7,9 +8,24 @@ func _input(event):
if class_functions.rekku_state == false:
self.visible = true
class_functions.rekku_state = true
%SplitContainer.split_offset=925
for n in range (split_max, split_min,-2):
await class_functions.wait(0.000000001)
%SplitContainer.split_offset=n
%pop_rtl.visible = false
%TabContainer.set_tab_title(0, "GLOBALS")
%TabContainer.set_tab_title(1, "SYSTEM")
%TabContainer.set_tab_title(2, "TOOLS")
%TabContainer.set_tab_title(3, "SETTINGS")
%TabContainer.set_tab_title(4, "ABOUT")
elif event.is_action_released("rekku_hide") and class_functions.rekku_state == true:
%TabContainer.set_tab_title(0, " GLOBALS ")
%TabContainer.set_tab_title(1, " SYSTEM ")
%TabContainer.set_tab_title(2, " TOOLS ")
%TabContainer.set_tab_title(3, " SETTINGS ")
%TabContainer.set_tab_title(4, " ABOUT ")
%pop_rtl.visible = false
for n in range (split_min, split_max,2):
await class_functions.wait(0.000000001)
%SplitContainer.split_offset=n
class_functions.rekku_state = false
self.visible = false
%SplitContainer.split_offset=1280

View file

@ -41,11 +41,18 @@ func create_buttons() -> void:
_setup_button(button, web_data)
func _setup_button(button: Button, web_data: Link) -> void:
button.size_flags_horizontal = Control.SIZE_EXPAND_FILL
button.size_flags_vertical = Control.SIZE_EXPAND_FILL
button.text = web_data.name
var vect2 = Vector2(200,100)
button.custom_minimum_size = vect2
#button.tooltip_text = web_data.description
button.icon = ResourceLoader.load(web_data.icon)
#button.editor_description = web_data.url
button.set_meta("url", web_data.url)
button.set_meta("description", web_data.description)
button.icon_alignment = HORIZONTAL_ALIGNMENT_LEFT
button.vertical_icon_alignment = VERTICAL_ALIGNMENT_CENTER
button.add_theme_constant_override("icon_max_width", 64)
button.icon_alignment = HORIZONTAL_ALIGNMENT_CENTER
button.alignment = HORIZONTAL_ALIGNMENT_CENTER
button.vertical_icon_alignment = VERTICAL_ALIGNMENT_TOP

View file

@ -1,90 +0,0 @@
extends TabContainer
var icon_width: int = 32
@onready var tcount: int = get_tab_count()-2
func _ready():
focusFirstFocusableChild() #grab focus on first element to enable controller focusing
%TabContainer.add_theme_icon_override("decrement",ResourceLoader.load("res://assets/icons/kenney_input-prompts-pixel-16/Tiles/tile_0797.png"))
%TabContainer.add_theme_icon_override("decrement_highlight",ResourceLoader.load("res://assets/icons/kenney_input-prompts-pixel-16/Tiles/tile_0763.png"))
%TabContainer.add_theme_icon_override("increment",ResourceLoader.load("res://assets/icons/kenney_input-prompts-pixel-16/Tiles/tile_0798.png"))
%TabContainer.add_theme_icon_override("increment_highlight",ResourceLoader.load("res://assets/icons/kenney_input-prompts-pixel-16/Tiles/tile_0764.png"))
<<<<<<< HEAD
set_tab_icon(0, ResourceLoader.load("res://assets/icons/pixelitos/128/applications-graphics.png"))
=======
if class_functions.font_select !=3:
%TabContainer.add_theme_font_size_override("font_size", class_functions.font_tab_size)
elif class_functions.font_select == 3:
%TabContainer.add_theme_font_size_override("font_size", 15)
else:
%TabContainer.add_theme_font_size_override("font_size", class_functions.font_tab_size)
set_tab_title(0, " GLOBALS ")
set_tab_title(1, " SYSTEM ")
set_tab_title(2, " TOOLS ")
set_tab_title(3, " SETTINGS ")
set_tab_title(4, " ABOUT ")
set_tab_hidden(5, true)
set_tab_icon(0, ResourceLoader.load("res://assets/icons/pixelitos/128/map-globe.png"))
>>>>>>> be95a1bf935fae24a2ab447f99022a39ae7a896a
set_tab_icon_max_width(0,icon_width)
set_tab_icon(1, ResourceLoader.load("res://assets/icons/pixelitos/128/preferences-system-windows.png"))
set_tab_icon_max_width(1,icon_width)
set_tab_icon(2, ResourceLoader.load("res://assets/icons/pixelitos/128/utilities-tweak-tool.png"))
set_tab_icon_max_width(2,icon_width)
set_tab_icon(3, ResourceLoader.load("res://assets/icons/pixelitos/128/network-workgroup.png"))
set_tab_icon_max_width(3,icon_width)
set_tab_icon(4, ResourceLoader.load("res://assets/icons/pixelitos/128/utilities-system-monitor.png"))
set_tab_icon_max_width(4,icon_width)
connect_focus_signals(self)
%volume_effects_slider.value = class_functions.volume_effects
func connect_focus_signals(node):
for child in node.get_children():
if child is Button:
child.focus_entered.connect(_on_Button_focus_entered.bind(child))
child.focus_exited.connect(_on_Button_focus_exited.bind())
elif child is Control:
connect_focus_signals(child)
func _on_Button_focus_exited():
%pop_rtl.visible = false
func _on_Button_focus_entered(button: Button):
if button and class_functions.sound_effects:
%AudioStreamPlayer2D.volume_db = class_functions.volume_effects
%AudioStreamPlayer2D.play()
if button and class_functions.rekku_state == false and button.has_meta("description"):
%pop_rtl.visible = true
%pop_rtl.text = button.get_meta("description")
else:
%pop_rtl.visible = true
%pop_rtl.text = "Hey, there's no description"
func _input(event):
if (event.is_action_pressed("next_tab")):
if current_tab == tcount:
current_tab = 0
else:
self.select_next_available()
focusFirstFocusableChild()
if (event.is_action_pressed("previous_tab")):
if current_tab == 0:
current_tab = tcount
else:
self.select_previous_available()
focusFirstFocusableChild()
func focusFirstFocusableChild():
var children = findElements(get_current_tab_control(), "Control")
for n: Control in children:
if (n.focus_mode == FOCUS_ALL):
n.grab_focus.call_deferred()
break
func findElements(node: Node, className: String, result: Array = []) -> Array:
if node.is_class(className):
result.push_back(node)
for child in node.get_children():
result = findElements(child, className, result)
return result

View file

@ -1,5 +1,4 @@
extends MarginContainer
extends Control
func _ready():
_connect_signals()
@ -34,7 +33,3 @@ func _connect_signals():
%quick_rewind_button.button_down.connect(class_functions._do_action.bind(%quick_rewind_progress, %quick_rewind_button, class_functions.quick_rewind_state))
%quick_rewind_button.button_up.connect(class_functions._on_button_released.bind(%quick_rewind_progress))
%quick_rewind_button.pressed.connect(class_functions.run_function.bind(%quick_rewind_button, "rewind"))
%reset_retrodeck_button.button_down.connect(class_functions._do_action.bind(%reset_retrodeck_progress, %reset_retrodeck_button, "mixed"))
%reset_retrodeck_button.button_up.connect(class_functions._on_button_released.bind(%reset_retrodeck_progress))
%reset_all_emulators_button.button_down.connect(class_functions._do_action.bind(%reset_all_emulators_progress, %reset_all_emulators_button, "mixed"))
%reset_all_emulators_button.button_up.connect(class_functions._on_button_released.bind(%reset_all_emulators_progress))

View file

@ -18,6 +18,13 @@ func _connect_signals() -> void:
%cheevos_button.button_down.connect(class_functions._do_action.bind(%cheevos_progress, %cheevos_button, class_functions.cheevos_state))
%cheevos_button.button_up.connect(class_functions._on_button_released.bind(%cheevos_progress))
%cheevos_button.pressed.connect(class_functions.run_function.bind(%cheevos_button, "cheevos"))
%cheevos_hardcore_button.button_down.connect(class_functions._do_action.bind(%cheevos_hardcore_progress, %cheevos_hardcore_button, class_functions.cheevos_hardcore_state))
%cheevos_hardcore_button.button_up.connect(class_functions._on_button_released.bind(%cheevos_hardcore_progress))
%cheevos_hardcore_button.pressed.connect(class_functions.run_function.bind(%cheevos_hardcore_button, "cheevos_hardcore"))
%reset_retrodeck_button.button_down.connect(class_functions._do_action.bind(%reset_retrodeck_progress, %reset_retrodeck_button, "mixed"))
%reset_retrodeck_button.button_up.connect(class_functions._on_button_released.bind(%reset_retrodeck_progress))
%reset_all_emulators_button.button_down.connect(class_functions._do_action.bind(%reset_all_emulators_progress, %reset_all_emulators_button, "mixed"))
%reset_all_emulators_button.button_up.connect(class_functions._on_button_released.bind(%reset_all_emulators_progress))
func _on_request_completed(_result, response_code, _headers, body):
var response_text = JSON.parse_string(body.get_string_from_utf8())
@ -37,4 +44,3 @@ func cheevos(button: Button):
await class_functions.run_thread_command(class_functions.wrapper_command,["change_preset_dialog", "cheevos"], false)
set_process_input(true)
$"../..".visible=true
print ("FIN?")

View file

@ -89,6 +89,7 @@ func _do_action(button: Button) -> void:
match [button.name, current_system.name]:
["help_button", current_system.name]:
if class_functions.desktop_mode != "gamescope":
print ("URL %s" %current_system.url)
class_functions.logger("i", "Launching " + current_system.name + " Help")
class_functions.launch_help(current_system.url)
else:

View file

@ -37,7 +37,7 @@ var font_tab_size: int = 35
var font_size: int = 20
var locale: String
enum preset_list {abxy_button_swap, ask_to_exit, borders, widescreen, rewind, cheevos, cheevos_hardcore}
var button_list: Array = ["button_swap_button", "ask_to_exit_button", "border_button", "widescreen_button", "quick_rewind_button", "reset_retrodeck_button", "reset_all_emulators_button", "cheevos_button"]
var button_list: Array = ["button_swap_button", "ask_to_exit_button", "border_button", "widescreen_button", "quick_rewind_button", "reset_retrodeck_button", "reset_all_emulators_button", "cheevos_button", "cheevos_hardcore_button"]
signal update_global_signal
var rekku_state: bool = false
var press_time: float = 0.0

View file

@ -34,9 +34,9 @@ func load_base_data() -> AppData:
var emulator = Emulator.new()
emulator.name = emulator_data["name"]
emulator.description = emulator_data["description"]
<<<<<<< HEAD
=======
#emulator.url = emulator_data["url"]
print (emulator.name)
emulator.url = emulator_data["url"]
print (emulator.name +" : " +emulator.url)
#emulator.system = emulator_data["system"]
emulator.launch = emulator_data["launch"]
>>>>>>> be95a1bf935fae24a2ab447f99022a39ae7a896a

View file

@ -1,4 +1,4 @@
extends RichTextLabel
extends Label
@onready var helper_text_node = self
@ -7,7 +7,7 @@ func _ready():
get_viewport().connect("gui_focus_changed", _on_focus_changed)
func _on_focus_changed(selected_element:Control) -> void:
if selected_element != null and selected_element.has_meta("description"):
helper_text_node.text = selected_element.get_meta("description")
else:
helper_text_node.text = "Hey, there's no description"
if selected_element != null and selected_element.has_meta("rekku"):
#helper_text_node.text = selected_element.get_meta("rekku")
%pop_rtl.visible = true
%pop_rtl.text = selected_element.get_meta("rekku")

View file

@ -217,8 +217,9 @@ func _set_up_globals(state: Array) -> void:
mixed_mode(%cheevos_button, class_functions.cheevos_state)
if class_functions.cheevos_state == "true":
%cheevos_login_container.visible = true
else:
elif class_functions.cheevos_state == "false":
%cheevos_login_container.visible = false
mixed_mode(%cheevos_hardcore_button, class_functions.cheevos_hardcore_state)
func mixed_mode (button: Button, state: String) -> void:
match [class_functions.button_list]:
@ -255,7 +256,7 @@ func change_font(index: int) -> void:
1:
font_file = load("res://assets/fonts/munro/munro.ttf")
%TabContainer.add_theme_font_size_override("font_size", class_functions.font_tab_size)
font_size = 30
font_size = 25
2:
font_file = load("res://assets/fonts/akrobat/Akrobat-Regular.otf")
%TabContainer.add_theme_font_size_override("font_size", class_functions.font_tab_size)