Feat/godot (#929)
* On branch cooker Changes to be committed: modified: ../config/retrodeck/reference_lists/features.json modified: configurator.sh modified: configurator/TabContainer.gd modified: configurator/assets/themes/accesible_theme.tres modified: configurator/assets/themes/modern_theme.tres modified: configurator/assets/themes/retro_theme.tres modified: configurator/main.tscn modified: configurator/res/pixel_ui_theme/RetroDECKTheme.tres * Signal test * s * Oops Data Recovery On branch cooker Changes to be committed: modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * Sliding Rekku On branch cooker Changes to be committed: modified: tools/configurator/Rekku.gd modified: tools/configurator/main.gd modified: tools/configurator/main.tscn * Using less tabs? On branch cooker Changes to be committed: modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * Generic Save experiment On branch cooker Changes to be committed: modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * Let it flow On branch feat/godot Changes to be committed: new file: .github/workflows/build-godot.yml modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot Changes to be committed: modified: .github/workflows/build-godot.yml * FLow 2.0 * Flow 2.1 * Flow 2.2 * Flow 2.3 * Flow 2.4 * Flow 2.5 * Flow 2.6 * Flow 2.7 * Flow 2.8 * Flow 2.9 * Flow 2.9 * Flow 2.91 * Flow 2.92 * Emualtor==System * FFS revert! * Progress on Cores at last! * Progress on Cores at lastgit add .! * Functions * Bios change * Removed need for BIOS tmp file for Godot * Rotten the core! * Push TEst * fixed duplicate * fixed duplicate * Tidied Bios reading * Rekku assistant * Icons and System Tab work * Generic buttons please * Generic buttons pleases * Generic buttons please2 * Rekku gets the saw * Dialogues * Fixed link to json file * Feat/godot (#927) * Tidied parameter code * Tricky bios dialogue! * Mini change * Tidying icons * And then there were 5! * Time to Cook * INITOOL: added * SET_SETTING_VALUE: edited to use initool * Revert "SET_SETTING_VALUE: edited to use initool" This reverts commitb56916c2b0
. * Revert "INITOOL: added" This reverts commit127bcdb6cd
. * POST_UPDATE: update_rd_conf to include steam_sync * INJECT_FRAMEWORK: added force args [skip ci] * Progress buttons * Reset! --------- Co-authored-by: Rekku <rekku@retrodeck.net> Co-authored-by: XargonWan <XargonWan@gmail.com> --------- Co-authored-by: Rekku <rekku@retrodeck.net> Co-authored-by: XargonWan <XargonWan@gmail.com>
102
.github/workflows/build-godot.yml
vendored
Normal file
|
@ -0,0 +1,102 @@
|
|||
name: GoDot Configurator Build Debug
|
||||
run-name: Build Godot Configurator(DEBUG) for RetroDECK
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
job_target:
|
||||
description: 'Select the platform'
|
||||
required: true
|
||||
default: 'linux'
|
||||
type: choice
|
||||
options:
|
||||
- linux
|
||||
- windows
|
||||
- mac
|
||||
- all
|
||||
|
||||
env:
|
||||
GODOT_VERSION: 4.3
|
||||
GODOT_PROJECT_LOCATION: tools/configurator/project.godot
|
||||
EXPORT_FOLDER_LINUX: bin/Linux
|
||||
EXPORT_FOLDER_WINDOWS: bin/Windows
|
||||
EXPORT_FOLDER_MAC: bin/macOS
|
||||
APPLICATION_NAME: godot_configurator
|
||||
|
||||
jobs:
|
||||
linux-build:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: archlinux:latest
|
||||
steps:
|
||||
- name: Set up variable
|
||||
run: |
|
||||
echo "DATE=$(date +'%Y-%m-%d')" >> $GITHUB_ENV
|
||||
echo "MAIN_FOLDER=$(pwd)" >> $GITHUB_ENV
|
||||
|
||||
- name: Installing dependencies
|
||||
run: pacman -Syu --noconfirm git bash yasm python python-pip scons gcc diffutils make wget unzip tar mingw-w64
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
|
||||
- name: Prepare Godot
|
||||
run: |
|
||||
wget -q -O godot_linux.zip https://github.com/godotengine/godot-builds/releases/download/${GODOT_VERSION}-stable/Godot_v${GODOT_VERSION}-stable_linux.x86_64.zip
|
||||
unzip godot_linux.zip
|
||||
wget -q -O godot_export_templates.tpz https://github.com/godotengine/godot-builds/releases/download/${GODOT_VERSION}-stable/Godot_v${GODOT_VERSION}-stable_export_templates.tpz
|
||||
mkdir -p ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable
|
||||
unzip godot_export_templates.tpz -d ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable
|
||||
mv ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable/templates/* ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable/
|
||||
sed -i 's/config\/version=\"[^"]\*"/config\/version=\"${{ env.DATE }}-debug\"/' ${{ env.GODOT_PROJECT_LOCATION }}
|
||||
|
||||
# DEBUG BUILDS
|
||||
# LINUX
|
||||
- name: Building debug Linux
|
||||
if: ${{ github.event.inputs.job_target == 'linux' || github.event.inputs.job_target == 'all' }}
|
||||
run: |
|
||||
mkdir -p ${{ env.EXPORT_FOLDER_LINUX }}
|
||||
./Godot_v${GODOT_VERSION}-stable_linux.x86_64 --import ${{ env.GODOT_PROJECT_LOCATION }} --quiet --headless --export-debug "Linux/X11 64-bit" ${{ env.MAIN_FOLDER }}/${{ env.EXPORT_FOLDER_LINUX }}/${{ env.APPLICATION_NAME}}.x86_64
|
||||
chmod +x ${{ env.EXPORT_FOLDER_LINUX }}/${{ env.APPLICATION_NAME }}.sh
|
||||
chmod +x ${{ env.EXPORT_FOLDER_LINUX }}/${{ env.APPLICATION_NAME }}.x86_64
|
||||
|
||||
# TAR to keep permissions set above
|
||||
- name: Tar File
|
||||
if: ${{ github.event.inputs.job_target == 'linux' || github.event.inputs.job_target == 'all' }}
|
||||
run: tar cvf ${{ env.APPLICATION_NAME}}_linux_debug_${{ env.DATE}}.tar ${{ env.EXPORT_FOLDER_LINUX}}
|
||||
|
||||
- name: Uploading GDExtension artifact debug
|
||||
if: ${{ github.event.inputs.job_target == 'linux' || github.event.inputs.job_target == 'all' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ env.APPLICATION_NAME }}_linux_debug_${{ env.DATE }}.tar
|
||||
path: ${{ env.APPLICATION_NAME }}_linux_debug_${{ env.DATE }}.tar
|
||||
|
||||
# WINDOWS
|
||||
- name: Building debug Windows
|
||||
if: ${{ github.event.inputs.job_target == 'windows' || github.event.inputs.job_target == 'all' }}
|
||||
run: |
|
||||
mkdir -p ${{ env.EXPORT_FOLDER_WINDOWS }}
|
||||
./Godot_v${GODOT_VERSION}-stable_linux.x86_64 --import ${{ env.GODOT_PROJECT_LOCATION }} --quiet --headless --export-debug "windows" ${{ env.MAIN_FOLDER }}/${{ env.EXPORT_FOLDER_WINDOWS }}/${{ env.APPLICATION_NAME}}.exe
|
||||
|
||||
- name: Uploading GDExtension artifact debug
|
||||
if: ${{ github.event.inputs.job_target == 'windows' || github.event.inputs.job_target == 'all' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ env.APPLICATION_NAME }}_windows_debug_${{ env.DATE }}
|
||||
path: ${{ env.EXPORT_FOLDER_WINDOWS }}/
|
||||
|
||||
#MAC
|
||||
- name: Building debug macOS
|
||||
if: ${{ github.event.inputs.job_target == 'mac' || github.event.inputs.job_target == 'all' }}
|
||||
run: |
|
||||
mkdir -p ${{ env.EXPORT_FOLDER_MAC }}
|
||||
./Godot_v${GODOT_VERSION}-stable_linux.x86_64 --import ${{ env.GODOT_PROJECT_LOCATION }} --quiet --headless --export-debug "macOS" ${{ env.MAIN_FOLDER }}/${{ env.EXPORT_FOLDER_MAC}}/${{ env.APPLICATION_NAME}}.app
|
||||
|
||||
- name: Uploading GDExtension artifact debug
|
||||
if: ${{ github.event.inputs.job_target == 'mac' || github.event.inputs.job_target == 'all' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ env.APPLICATION_NAME }}_mac_debug_${{ env.DATE }}
|
||||
path: ${{ env.EXPORT_FOLDER_MAC }}/
|
6
.github/workflows/cooker-selfhosted.yml
vendored
|
@ -85,6 +85,11 @@ jobs:
|
|||
# Use GITHUB_HEAD_REF to get the source branch
|
||||
source_branch="${GITHUB_HEAD_REF}"
|
||||
|
||||
# Replace '/' with '-' in the branch name
|
||||
source_branch=${source_branch//\//-}
|
||||
# Use GITHUB_HEAD_REF to get the source branch
|
||||
source_branch="${GITHUB_HEAD_REF}"
|
||||
|
||||
# Replace '/' with '-' in the branch name
|
||||
source_branch=${source_branch//\//-}
|
||||
echo "[DEBUG] source branch is: $source_branch"
|
||||
|
@ -93,6 +98,7 @@ jobs:
|
|||
echo "TAG=PR-$source_branch-${{ env.buildid }}" >> $GITHUB_ENV
|
||||
echo "MAKE_LATEST=false" >> $GITHUB_ENV # Not marked as the latest cooker version if it's a feature branch
|
||||
else
|
||||
# Generate the tag for non-pull request branches
|
||||
# Generate the tag for non-pull request branches
|
||||
TAG="$MANIFEST_VERSION-${{ env.buildid }}"
|
||||
echo "TAG=$TAG" >> $GITHUB_ENV
|
||||
|
|
|
@ -8,22 +8,30 @@ func _ready():
|
|||
%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"))
|
||||
set_tab_icon(0, ResourceLoader.load("res://assets/icons/pixelitos/128/applications-graphics.png"))
|
||||
set_tab_icon(0, ResourceLoader.load("res://assets/icons/pixelitos/128/map-globe.png"))
|
||||
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(2, ResourceLoader.load("res://assets/icons/pixelitos/128/utilities-system-monitor.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(3, ResourceLoader.load("res://assets/icons/pixelitos/128/preferences-system-session-services.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(4, ResourceLoader.load("res://assets/icons/pixelitos/128/help-about.png"))
|
||||
set_tab_icon_max_width(4,icon_width)
|
||||
set_tab_icon(5, ResourceLoader.load("res://assets/icons/pixelitos/128/preferences-system-session-services.png"))
|
||||
set_tab_icon_max_width(5,icon_width)
|
||||
set_tab_icon(6, ResourceLoader.load("res://assets/icons/pixelitos/128/help-about.png"))
|
||||
set_tab_icon_max_width(6,icon_width)
|
||||
#%TK_GRAPHICS.name="BOB"
|
||||
#
|
||||
connect_focus_signals(self)
|
||||
|
||||
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))
|
||||
elif child is Control:
|
||||
connect_focus_signals(child)
|
||||
|
||||
func _on_Button_focus_entered(button: Button):
|
||||
if button:
|
||||
%AudioStreamPlayer2D.play()
|
||||
|
||||
func _input(event):
|
||||
if (event.is_action_pressed("next_tab")):
|
||||
self.select_next_available()
|
||||
|
|
BIN
tools/configurator/assets/graphics/rekku2/rekku_base.png
Normal file
After Width: | Height: | Size: 382 KiB |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://l3bredurb11m"
|
||||
path="res://.godot/imported/rekku_base.png-ba655e0b7ca5167750e3c33bad52b118.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/graphics/rekku2/rekku_base.png"
|
||||
dest_files=["res://.godot/imported/rekku_base.png-ba655e0b7ca5167750e3c33bad52b118.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/graphics/rekku2/rekku_eye_1.png
Normal file
After Width: | Height: | Size: 7.1 KiB |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cvlncuql8igrm"
|
||||
path="res://.godot/imported/rekku_eye_1.png-bdb05770012bbf8805a308be308f2f11.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/graphics/rekku2/rekku_eye_1.png"
|
||||
dest_files=["res://.godot/imported/rekku_eye_1.png-bdb05770012bbf8805a308be308f2f11.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/graphics/rekku2/rekku_eye_2.png
Normal file
After Width: | Height: | Size: 7 KiB |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bdrdu4nddkqjn"
|
||||
path="res://.godot/imported/rekku_eye_2.png-470f058d31522c2d3d622d57668ea739.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/graphics/rekku2/rekku_eye_2.png"
|
||||
dest_files=["res://.godot/imported/rekku_eye_2.png-470f058d31522c2d3d622d57668ea739.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/graphics/rekku2/rekku_mouth_a.png
Normal file
After Width: | Height: | Size: 4.9 KiB |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cb2hwhaq036mu"
|
||||
path="res://.godot/imported/rekku_mouth_a.png-279dcb9a384b18dcc5f0e9b1fce89965.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/graphics/rekku2/rekku_mouth_a.png"
|
||||
dest_files=["res://.godot/imported/rekku_mouth_a.png-279dcb9a384b18dcc5f0e9b1fce89965.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/graphics/rekku2/rekku_mouth_i.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dl2fd66fvn1an"
|
||||
path="res://.godot/imported/rekku_mouth_i.png-66f20d9dcec19841a364e26d8f38c17a.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/graphics/rekku2/rekku_mouth_i.png"
|
||||
dest_files=["res://.godot/imported/rekku_mouth_i.png-66f20d9dcec19841a364e26d8f38c17a.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/graphics/rekku2/rekku_mouth_m.png
Normal file
After Width: | Height: | Size: 5 KiB |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://3ktnkmuecxea"
|
||||
path="res://.godot/imported/rekku_mouth_m.png-f85c73bab4824d3102d50150c4e5375e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/graphics/rekku2/rekku_mouth_m.png"
|
||||
dest_files=["res://.godot/imported/rekku_mouth_m.png-f85c73bab4824d3102d50150c4e5375e.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/graphics/rekku2/rekku_mouth_o.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://d08ngewjvxkmn"
|
||||
path="res://.godot/imported/rekku_mouth_o.png-72bff84aecbb9047648fb98563492453.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/graphics/rekku2/rekku_mouth_o.png"
|
||||
dest_files=["res://.godot/imported/rekku_mouth_o.png-72bff84aecbb9047648fb98563492453.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/graphics/rekku2/rekku_nomouth.png
Normal file
After Width: | Height: | Size: 4.8 KiB |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dieva7tuxjrvy"
|
||||
path="res://.godot/imported/rekku_nomouth.png-6aea5248544dd97243fc5c179e0e2d58.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/graphics/rekku2/rekku_nomouth.png"
|
||||
dest_files=["res://.godot/imported/rekku_nomouth.png-6aea5248544dd97243fc5c179e0e2d58.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/icons/pixelitos/128/es-de.png
Normal file
After Width: | Height: | Size: 509 B |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dhf620jyq75t1"
|
||||
path="res://.godot/imported/es-de.png-7133c76b0fc370d6d2c311241df36cf6.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/pixelitos/128/es-de.png"
|
||||
dest_files=["res://.godot/imported/es-de.png-7133c76b0fc370d6d2c311241df36cf6.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/icons/pixelitos/128/flycast.png
Normal file
After Width: | Height: | Size: 675 B |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ctm3f56t7jhiw"
|
||||
path="res://.godot/imported/flycast.png-454d63296971d85691881883d8c379e3.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/pixelitos/128/flycast.png"
|
||||
dest_files=["res://.godot/imported/flycast.png-454d63296971d85691881883d8c379e3.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/icons/pixelitos/128/fuse.png
Normal file
After Width: | Height: | Size: 580 B |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://t4bq3t2l0rja"
|
||||
path="res://.godot/imported/fuse.png-798b47a8862532036e29b84ce0746e43.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/pixelitos/128/fuse.png"
|
||||
dest_files=["res://.godot/imported/fuse.png-798b47a8862532036e29b84ce0746e43.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/icons/pixelitos/128/lime3ds.png
Normal file
After Width: | Height: | Size: 823 B |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bjxqyxpxb8h8q"
|
||||
path="res://.godot/imported/lime3ds.png-46636e55aca4b1efb87cc2bb6ef805bd.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/pixelitos/128/lime3ds.png"
|
||||
dest_files=["res://.godot/imported/lime3ds.png-46636e55aca4b1efb87cc2bb6ef805bd.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/icons/pixelitos/128/nestopia.png
Normal file
After Width: | Height: | Size: 497 B |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://de3s3tkxffqk0"
|
||||
path="res://.godot/imported/nestopia.png-e3a5ed0832cb977733e851f186fe9167.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/pixelitos/128/nestopia.png"
|
||||
dest_files=["res://.godot/imported/nestopia.png-e3a5ed0832cb977733e851f186fe9167.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/icons/pixelitos/128/portal2.png
Normal file
After Width: | Height: | Size: 669 B |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://f8c6tobon13p"
|
||||
path="res://.godot/imported/portal2.png-8c359b0df7fa9dc3dad992debc6f16c3.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/pixelitos/128/portal2.png"
|
||||
dest_files=["res://.godot/imported/portal2.png-8c359b0df7fa9dc3dad992debc6f16c3.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
1
tools/configurator/assets/icons/pixelitos/128/portal2.png2
Symbolic link
|
@ -0,0 +1 @@
|
|||
portal2.png
|
BIN
tools/configurator/assets/icons/pixelitos/128/snes9x.png
Normal file
After Width: | Height: | Size: 684 B |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cyqdlugy5lts5"
|
||||
path="res://.godot/imported/snes9x.png-985444d2225cee74be2bbfe4fd683dbe.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/pixelitos/128/snes9x.png"
|
||||
dest_files=["res://.godot/imported/snes9x.png-985444d2225cee74be2bbfe4fd683dbe.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
1
tools/configurator/assets/icons/pixelitos/128/steam_icon_620.png
Symbolic link
|
@ -0,0 +1 @@
|
|||
portal2.png
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ck226cpy48rw"
|
||||
path="res://.godot/imported/steam_icon_620.png-7a9e73f3c8c9a5c04b15bb9b88f1fab3.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/pixelitos/128/steam_icon_620.png"
|
||||
dest_files=["res://.godot/imported/steam_icon_620.png-7a9e73f3c8c9a5c04b15bb9b88f1fab3.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/icons/pixelitos/128/stella.png
Normal file
After Width: | Height: | Size: 526 B |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://2fp4cq1l0843"
|
||||
path="res://.godot/imported/stella.png-e81484435d2c9330faaeb6dd19649c74.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/pixelitos/128/stella.png"
|
||||
dest_files=["res://.godot/imported/stella.png-e81484435d2c9330faaeb6dd19649c74.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
tools/configurator/assets/icons/pixelitos/128/zsnes.png
Normal file
After Width: | Height: | Size: 737 B |
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bsctvdrl5okkn"
|
||||
path="res://.godot/imported/zsnes.png-8880495aee27e317a73877d10d9f27e8.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/pixelitos/128/zsnes.png"
|
||||
dest_files=["res://.godot/imported/zsnes.png-8880495aee27e317a73877d10d9f27e8.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://b2vis56rc446"
|
||||
path="res://.godot/imported/538538__sjonas88__process-2.wav-7e0ab92936c07ed43d54872d5e9e3b4b.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538538__sjonas88__process-2.wav"
|
||||
dest_files=["res://.godot/imported/538538__sjonas88__process-2.wav-7e0ab92936c07ed43d54872d5e9e3b4b.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://buktnqo4i5lmh"
|
||||
path="res://.godot/imported/538539__sjonas88__pipe-sound.wav-6515783939644190febb3c8f23d3e912.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538539__sjonas88__pipe-sound.wav"
|
||||
dest_files=["res://.godot/imported/538539__sjonas88__pipe-sound.wav-6515783939644190febb3c8f23d3e912.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://h8v5imq2ghl6"
|
||||
path="res://.godot/imported/538540__sjonas88__fail-sound.wav-25ec50c6877c99ff966be2fd860a0bb1.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538540__sjonas88__fail-sound.wav"
|
||||
dest_files=["res://.godot/imported/538540__sjonas88__fail-sound.wav-25ec50c6877c99ff966be2fd860a0bb1.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://dvuhuo2irjhbu"
|
||||
path="res://.godot/imported/538541__sjonas88__fail-2.wav-122b4ea196164e5fa7c83a9cb72e40b1.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538541__sjonas88__fail-2.wav"
|
||||
dest_files=["res://.godot/imported/538541__sjonas88__fail-2.wav-122b4ea196164e5fa7c83a9cb72e40b1.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://ccfw0kgfshftj"
|
||||
path="res://.godot/imported/538542__sjonas88__rising-3.wav-e5be02dafb9d2b2e656f3e284cb59f41.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538542__sjonas88__rising-3.wav"
|
||||
dest_files=["res://.godot/imported/538542__sjonas88__rising-3.wav-e5be02dafb9d2b2e656f3e284cb59f41.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://7o37g1ldsqg8"
|
||||
path="res://.godot/imported/538543__sjonas88__rising-2.wav-94424088492c09d1baee466dfd04f771.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538543__sjonas88__rising-2.wav"
|
||||
dest_files=["res://.godot/imported/538543__sjonas88__rising-2.wav-94424088492c09d1baee466dfd04f771.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://7w073cgcaph8"
|
||||
path="res://.godot/imported/538544__sjonas88__process.wav-9eab6f84a156a2f52c7696fb11887a3c.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538544__sjonas88__process.wav"
|
||||
dest_files=["res://.godot/imported/538544__sjonas88__process.wav-9eab6f84a156a2f52c7696fb11887a3c.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://bsuubeqwno7gv"
|
||||
path="res://.godot/imported/538545__sjonas88__process-3.wav-7ffbb7f6eec788f1d198cdfc5bcd35da.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538545__sjonas88__process-3.wav"
|
||||
dest_files=["res://.godot/imported/538545__sjonas88__process-3.wav-7ffbb7f6eec788f1d198cdfc5bcd35da.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://c1gh1d0tp5ut3"
|
||||
path="res://.godot/imported/538546__sjonas88__rising.wav-be28154e2568a7901227e89f3cf4027f.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538546__sjonas88__rising.wav"
|
||||
dest_files=["res://.godot/imported/538546__sjonas88__rising.wav-be28154e2568a7901227e89f3cf4027f.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://ctks8i20nretn"
|
||||
path="res://.godot/imported/538547__sjonas88__rising-4.wav-cc2a6f85daa3fc6ba61d88b8bf523924.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538547__sjonas88__rising-4.wav"
|
||||
dest_files=["res://.godot/imported/538547__sjonas88__rising-4.wav-cc2a6f85daa3fc6ba61d88b8bf523924.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://fveqtwd33w7n"
|
||||
path="res://.godot/imported/538548__sjonas88__select-3.wav-3d75efee47597b1c7d77f9412f0b14b5.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538548__sjonas88__select-3.wav"
|
||||
dest_files=["res://.godot/imported/538548__sjonas88__select-3.wav-3d75efee47597b1c7d77f9412f0b14b5.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://dhejvg02t5o35"
|
||||
path="res://.godot/imported/538549__sjonas88__select-2.wav-8b1c4c60db51366ba4f01f6922bbf4d2.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538549__sjonas88__select-2.wav"
|
||||
dest_files=["res://.godot/imported/538549__sjonas88__select-2.wav-8b1c4c60db51366ba4f01f6922bbf4d2.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://b0tkc4uqeh75q"
|
||||
path="res://.godot/imported/538550__sjonas88__deep-tone.wav-95e9dc90f6e75bc6620575d07f709ba7.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538550__sjonas88__deep-tone.wav"
|
||||
dest_files=["res://.godot/imported/538550__sjonas88__deep-tone.wav-95e9dc90f6e75bc6620575d07f709ba7.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://ujv8kpegpmpt"
|
||||
path="res://.godot/imported/538551__sjonas88__3-select.wav-86b8ffff434ba08cc915003719c0dcd9.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538551__sjonas88__3-select.wav"
|
||||
dest_files=["res://.godot/imported/538551__sjonas88__3-select.wav-86b8ffff434ba08cc915003719c0dcd9.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://mm42tfxhowwe"
|
||||
path="res://.godot/imported/538552__sjonas88__rising-tones.wav-f484f3e32af39e2f6ece214b2cbbc19b.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538552__sjonas88__rising-tones.wav"
|
||||
dest_files=["res://.godot/imported/538552__sjonas88__rising-tones.wav-f484f3e32af39e2f6ece214b2cbbc19b.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://bmap54wuuumst"
|
||||
path="res://.godot/imported/538553__sjonas88__stars.wav-593d0d6b4e2052a07396971ced5315b5.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538553__sjonas88__stars.wav"
|
||||
dest_files=["res://.godot/imported/538553__sjonas88__stars.wav-593d0d6b4e2052a07396971ced5315b5.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://bu16hw2opbvp6"
|
||||
path="res://.godot/imported/538554__sjonas88__success.wav-617fb21a3a937ebffcac1034bc19f3de.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538554__sjonas88__success.wav"
|
||||
dest_files=["res://.godot/imported/538554__sjonas88__success.wav-617fb21a3a937ebffcac1034bc19f3de.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,24 @@
|
|||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://cgg08e1741i0m"
|
||||
path="res://.godot/imported/538555__sjonas88__shimmer.wav-c47d31735b366fa09f66d96c18887d7d.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sounds/30375__sjonas88__smooth-game-like-sounds/538555__sjonas88__shimmer.wav"
|
||||
dest_files=["res://.godot/imported/538555__sjonas88__shimmer.wav-c47d31735b366fa09f66d96c18887d7d.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
|
@ -0,0 +1,76 @@
|
|||
Sound pack downloaded from Freesound
|
||||
----------------------------------------
|
||||
|
||||
"Smooth Game-like Sounds"
|
||||
|
||||
This pack of sounds contains sounds by the following user:
|
||||
- Sjonas88 ( https://freesound.org/people/Sjonas88/ )
|
||||
|
||||
You can find this pack online at: https://freesound.org/people/Sjonas88/packs/30375/
|
||||
|
||||
|
||||
Licenses in this pack (see below for individual sound licenses)
|
||||
---------------------------------------------------------------
|
||||
|
||||
Creative Commons 0: http://creativecommons.org/publicdomain/zero/1.0/
|
||||
|
||||
|
||||
Sounds in this pack
|
||||
-------------------
|
||||
|
||||
* 538555__sjonas88__shimmer.wav
|
||||
* url: https://freesound.org/s/538555/
|
||||
* license: Creative Commons 0
|
||||
* 538554__sjonas88__success.wav
|
||||
* url: https://freesound.org/s/538554/
|
||||
* license: Creative Commons 0
|
||||
* 538553__sjonas88__stars.wav
|
||||
* url: https://freesound.org/s/538553/
|
||||
* license: Creative Commons 0
|
||||
* 538552__sjonas88__rising-tones.wav
|
||||
* url: https://freesound.org/s/538552/
|
||||
* license: Creative Commons 0
|
||||
* 538551__sjonas88__3-select.wav
|
||||
* url: https://freesound.org/s/538551/
|
||||
* license: Creative Commons 0
|
||||
* 538550__sjonas88__deep-tone.wav
|
||||
* url: https://freesound.org/s/538550/
|
||||
* license: Creative Commons 0
|
||||
* 538549__sjonas88__select-2.wav
|
||||
* url: https://freesound.org/s/538549/
|
||||
* license: Creative Commons 0
|
||||
* 538548__sjonas88__select-3.wav
|
||||
* url: https://freesound.org/s/538548/
|
||||
* license: Creative Commons 0
|
||||
* 538547__sjonas88__rising-4.wav
|
||||
* url: https://freesound.org/s/538547/
|
||||
* license: Creative Commons 0
|
||||
* 538546__sjonas88__rising.wav
|
||||
* url: https://freesound.org/s/538546/
|
||||
* license: Creative Commons 0
|
||||
* 538545__sjonas88__process-3.wav
|
||||
* url: https://freesound.org/s/538545/
|
||||
* license: Creative Commons 0
|
||||
* 538544__sjonas88__process.wav
|
||||
* url: https://freesound.org/s/538544/
|
||||
* license: Creative Commons 0
|
||||
* 538543__sjonas88__rising-2.wav
|
||||
* url: https://freesound.org/s/538543/
|
||||
* license: Creative Commons 0
|
||||
* 538542__sjonas88__rising-3.wav
|
||||
* url: https://freesound.org/s/538542/
|
||||
* license: Creative Commons 0
|
||||
* 538541__sjonas88__fail-2.wav
|
||||
* url: https://freesound.org/s/538541/
|
||||
* license: Creative Commons 0
|
||||
* 538540__sjonas88__fail-sound.wav
|
||||
* url: https://freesound.org/s/538540/
|
||||
* license: Creative Commons 0
|
||||
* 538539__sjonas88__pipe-sound.wav
|
||||
* url: https://freesound.org/s/538539/
|
||||
* license: Creative Commons 0
|
||||
* 538538__sjonas88__process-2.wav
|
||||
* url: https://freesound.org/s/538538/
|
||||
* license: Creative Commons 0
|
||||
|
||||
|
|
@ -1,9 +1,8 @@
|
|||
extends Control
|
||||
|
||||
|
||||
var file := FileAccess
|
||||
var bios_tempfile : String
|
||||
var command: String = "../../tools/retrodeck_function_wrapper.sh"
|
||||
var bios_result: Dictionary
|
||||
var console: bool = false
|
||||
var BIOS_COLUMNS_BASIC := ["BIOS File Name", "System", "Found", "Hash Match", "Description"]
|
||||
var BIOS_COLUMNS_EXPERT := ["BIOS File Name", "System", "Found", "Hash Match", "Description", "Subdirectory", "Hash"]
|
||||
|
@ -12,16 +11,8 @@ var BIOS_COLUMNS_EXPERT := ["BIOS File Name", "System", "Found", "Hash Match", "
|
|||
|
||||
func _ready():
|
||||
$".".theme = custom_theme
|
||||
#Check if XDG_RUNTIME_DIR is set and choose temp file location
|
||||
if OS.has_environment("XDG_RUNTIME_DIR"):
|
||||
bios_tempfile = OS.get_environment("XDG_RUNTIME_DIR") + "/godot_temp/godot_bios_files_checked.tmp"
|
||||
#bios_tempfile = "/var/config/retrodeck/godot/godot_bios_files_checked.tmp"
|
||||
else:
|
||||
bios_tempfile = "/var/config/retrodeck/godot/godot_bios_files_checked.tmp"
|
||||
|
||||
var table := $Table
|
||||
|
||||
if bios_type == 0: #Basic BIOS button pressed
|
||||
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])
|
||||
|
@ -33,32 +24,26 @@ 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"]
|
||||
#result = classFunctions.execute_command(command, parameters, false)
|
||||
#threaded
|
||||
await run_thread_command(command, parameters, console)
|
||||
|
||||
await run_thread_command(class_functions.wrapper_command, parameters, console)
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Exit code: " + str(bios_result["exit_code"])
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
|
||||
else: #Assume advanced BIOS button pressed
|
||||
var parameters = ["check_bios_files"]
|
||||
class_functions.execute_command(command, parameters, false)
|
||||
await run_thread_command(command, parameters, console)
|
||||
#OS.execute("/app/tools/retrodeck_function_wrapper.sh",["check_bios_files"])
|
||||
|
||||
if file.file_exists(bios_tempfile): #File to be removed after script is done
|
||||
var bios_list := file.open(bios_tempfile, FileAccess.READ)
|
||||
var bios_line := []
|
||||
while ! bios_list.eof_reached():
|
||||
bios_line = bios_list.get_csv_line("^")
|
||||
var table_line: TreeItem = table.create_item(root)
|
||||
for i in bios_line.size():
|
||||
table_line.set_text(i, bios_line[i])
|
||||
if table_line.get_index() % 2 == 1:
|
||||
table_line.set_custom_bg_color(i,Color(0.15, 0.15, 0.15, 1),false)
|
||||
table_line.set_custom_color(i,Color(1,1,1,1))
|
||||
class_functions.execute_command(class_functions.wrapper_command, parameters, false)
|
||||
await run_thread_command(class_functions.wrapper_command, parameters, console)
|
||||
var bios_list = bios_result["output"]
|
||||
var bios_lines = bios_list.split("\n")
|
||||
for line in bios_lines:
|
||||
var bios_line = line.split("^")
|
||||
var table_line: TreeItem = table.create_item(root)
|
||||
for i in bios_line.size():
|
||||
table_line.set_text(i, bios_line[i])
|
||||
if table_line.get_index() % 2 == 1:
|
||||
table_line.set_custom_bg_color(i,Color(0.15, 0.15, 0.15, 1),false)
|
||||
table_line.set_custom_color(i,Color(1,1,1,1))
|
||||
|
||||
func run_thread_command(command: String, parameters: Array, console: bool) -> void:
|
||||
var result = await class_functions.run_command_in_thread(command, parameters, console)
|
||||
bios_result = await class_functions.run_command_in_thread(command, parameters, console)
|
||||
|
|
|
@ -14,21 +14,6 @@ grow_horizontal = 2
|
|||
grow_vertical = 2
|
||||
script = ExtResource("1_qrkee")
|
||||
|
||||
[node name="RichTextLabel" type="RichTextLabel" parent="."]
|
||||
visible = false
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "This is a list of problematic BIOS?
|
||||
Very multiline text
|
||||
Why do we use it?
|
||||
|
||||
PS3 BIOS IS VERY BAD
|
||||
I'm not sure what else?"
|
||||
|
||||
[node name="Table" type="Tree" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
|
@ -38,4 +23,5 @@ grow_horizontal = 2
|
|||
grow_vertical = 2
|
||||
columns = 5
|
||||
column_titles_visible = true
|
||||
allow_rmb_select = true
|
||||
select_mode = 1
|
||||
|
|
|
@ -5,14 +5,16 @@ var content = null
|
|||
#@onready var button_off = get_node(current_scene.%l1_button)# .current_scene.l1_button
|
||||
@onready var lbhide: TextureButton = get_tree().current_scene.get_node("%l1_button")
|
||||
@onready var rbhide: TextureButton = get_tree().current_scene.get_node("%r1_button")
|
||||
@onready var bios_type:int = get_tree().current_scene.bios_type
|
||||
|
||||
func _ready():
|
||||
lbhide.visible=false
|
||||
rbhide.visible=false
|
||||
print (bios_type)
|
||||
$".".theme = custom_theme
|
||||
if (content != null):
|
||||
# TODO this alowes copy and paste from RTB in logs?
|
||||
if (content != null and bios_type > 0):
|
||||
$Panel/MarginContainer/VBoxContainer/ContentContainer/MarginContainer.add_child(content)
|
||||
|
||||
|
||||
func _process(delta):
|
||||
if Input.is_action_pressed("back_button"):
|
||||
|
@ -22,6 +24,7 @@ func _process(delta):
|
|||
|
||||
func set_content(new_content):
|
||||
content = load(new_content).instantiate()
|
||||
|
||||
func set_title(new_title):
|
||||
$Panel/MarginContainer/VBoxContainer/MarginContainer/HBoxContainer/Label.text = new_title
|
||||
func set_display_text(new_display_text):
|
||||
|
|
|
@ -73,6 +73,7 @@ layout_mode = 2
|
|||
focus_mode = 2
|
||||
scroll_following = true
|
||||
context_menu_enabled = true
|
||||
shortcut_keys_enabled = false
|
||||
selection_enabled = true
|
||||
|
||||
[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/MarginContainer/HBoxContainer/BackButton" to="." method="_on_back_pressed"]
|
||||
|
|
44
tools/configurator/components/popup_dialogue.gd
Normal file
|
@ -0,0 +1,44 @@
|
|||
extends Control
|
||||
|
||||
@onready var custom_theme: Theme = get_tree().current_scene.custom_theme
|
||||
#@onready var button_off = get_node(current_scene.%l1_button)# .current_scene.l1_button
|
||||
#@onready var lbhide: TextureButton = get_tree().current_scene.get_node("%l1_button")
|
||||
#@onready var rbhide: TextureButton = get_tree().current_scene.get_node("%r1_button")
|
||||
var command: String
|
||||
var parameters: Array
|
||||
|
||||
func _ready():
|
||||
$".".theme = custom_theme
|
||||
var args = OS.get_cmdline_args()
|
||||
for arg in range(args.size()):
|
||||
if args[arg] == "--title" and arg + 1 < args.size():
|
||||
%title_label.text = args[arg + 1]
|
||||
elif args[arg] == "--content" and arg + 1 < args.size():
|
||||
%content_rtl.text = args[arg + 1]
|
||||
elif args[arg] == "--command" and arg + 1 < args.size():
|
||||
command = args[arg + 1]
|
||||
elif args[arg] == "--parameters" and arg + 1 < args.size():
|
||||
parameters.append(args[arg + 1])
|
||||
elif args[arg] == "--fullscreen" and arg + 1 < args.size():
|
||||
DisplayServer.window_set_mode(DisplayServer.WindowMode.WINDOW_MODE_FULLSCREEN)
|
||||
|
||||
#func _process(delta):
|
||||
#if Input.is_action_pressed("back_button"):
|
||||
#get_tree().quit()
|
||||
|
||||
func _input(event):
|
||||
if Input.is_action_pressed("back_button"):
|
||||
get_tree().quit()
|
||||
|
||||
func _on_cancel_pressed():
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Exited dialogue"
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
get_tree().quit()
|
||||
|
||||
func _on_ok_button_pressed() -> void:
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Command to run:- " + command + " " + str(parameters)
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
var result = class_functions.execute_command(command,parameters , false)
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Exit code: " + str(result["exit_code"])
|
||||
%content_rtl.text = result["output"]
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
107
tools/configurator/components/popup_dialogue.tscn
Normal file
|
@ -0,0 +1,107 @@
|
|||
[gd_scene load_steps=3 format=3 uid="uid://bdbxu0r51jfk1"]
|
||||
|
||||
[ext_resource type="Script" path="res://components/popup_dialogue.gd" id="1_oiwsy"]
|
||||
[ext_resource type="Texture2D" uid="uid://brf74puvpnwsd" path="res://assets/graphics/retrodeck.png" id="2_3a55w"]
|
||||
|
||||
[node name="Popup_Dialogue" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = 23.0
|
||||
offset_top = -7.0
|
||||
offset_right = 23.0
|
||||
offset_bottom = -7.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_oiwsy")
|
||||
|
||||
[node name="Panel" type="Panel" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_right = -357.0
|
||||
offset_bottom = -70.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="Panel"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="Panel/MarginContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_left = 10
|
||||
theme_override_constants/margin_top = 0
|
||||
theme_override_constants/margin_right = 0
|
||||
theme_override_constants/margin_bottom = 0
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="Panel/MarginContainer/VBoxContainer/MarginContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="title_label" type="Label" parent="Panel/MarginContainer/VBoxContainer/MarginContainer/HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 23
|
||||
text = "Welcome to RetroDeck"
|
||||
|
||||
[node name="ContentContainer" type="Panel" parent="Panel/MarginContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer/ContentContainer"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_constants/margin_left = 10
|
||||
theme_override_constants/margin_top = 6
|
||||
theme_override_constants/margin_right = 10
|
||||
theme_override_constants/margin_bottom = 6
|
||||
|
||||
[node name="content_rtl" type="RichTextLabel" parent="Panel/MarginContainer/VBoxContainer/ContentContainer/MarginContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
focus_mode = 2
|
||||
text = "Some text here for the content?"
|
||||
scroll_following = true
|
||||
context_menu_enabled = true
|
||||
selection_enabled = true
|
||||
|
||||
[node name="MarginContainer_bootom" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="Panel/MarginContainer/VBoxContainer/MarginContainer_bootom"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="cancel_button" type="Button" parent="Panel/MarginContainer/VBoxContainer/MarginContainer_bootom/HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
custom_minimum_size = Vector2(200, 0)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 10
|
||||
text = "CANCEL"
|
||||
|
||||
[node name="ok_button" type="Button" parent="Panel/MarginContainer/VBoxContainer/MarginContainer_bootom/HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
custom_minimum_size = Vector2(200, 0)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 10
|
||||
text = "OK"
|
||||
|
||||
[node name="Retrodeck" type="Sprite2D" parent="."]
|
||||
position = Vector2(859, 108)
|
||||
scale = Vector2(0.209961, 0.204102)
|
||||
texture = ExtResource("2_3a55w")
|
||||
|
||||
[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/MarginContainer_bootom/HBoxContainer/cancel_button" to="." method="_on_cancel_pressed"]
|
||||
[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/MarginContainer_bootom/HBoxContainer/ok_button" to="." method="_on_ok_button_pressed"]
|
12
tools/configurator/controller_guide.gd
Normal file
|
@ -0,0 +1,12 @@
|
|||
extends PanelContainer
|
||||
|
||||
func _process(delta):
|
||||
# TODO hack. Use state machine?
|
||||
if %action_gridcontainer.visible == true:
|
||||
if Input.is_action_pressed("back_button"):
|
||||
%action_gridcontainer.visible = false
|
||||
for i in range(%system_gridcontainer.get_child_count()):
|
||||
var child = %system_gridcontainer.get_child(i)
|
||||
if child is Button:
|
||||
child.visible=true
|
||||
child.toggle_mode = false
|
|
@ -1,8 +1,9 @@
|
|||
[preset.0]
|
||||
|
||||
name="Linux/X11 64-bit"
|
||||
platform="Linux/X11"
|
||||
platform="Linux"
|
||||
runnable=true
|
||||
advanced_options=false
|
||||
dedicated_server=false
|
||||
custom_features=""
|
||||
export_filter="all_resources"
|
||||
|
@ -13,6 +14,7 @@ encryption_include_filters=""
|
|||
encryption_exclude_filters=""
|
||||
encrypt_pck=false
|
||||
encrypt_directory=false
|
||||
script_export_mode=2
|
||||
|
||||
[preset.0.options]
|
||||
|
||||
|
@ -20,10 +22,8 @@ custom_template/debug=""
|
|||
custom_template/release=""
|
||||
debug/export_console_wrapper=1
|
||||
binary_format/embed_pck=true
|
||||
texture_format/bptc=true
|
||||
texture_format/s3tc=true
|
||||
texture_format/etc=false
|
||||
texture_format/etc2=false
|
||||
texture_format/s3tc_bptc=true
|
||||
texture_format/etc2_astc=false
|
||||
binary_format/architecture="x86_64"
|
||||
ssh_remote_deploy/enabled=false
|
||||
ssh_remote_deploy/host="user@host_ip"
|
||||
|
@ -37,3 +37,322 @@ unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\"
|
|||
ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash
|
||||
kill $(pgrep -x -f \"{temp_dir}/{exe_name} {cmd_args}\")
|
||||
rm -rf \"{temp_dir}\""
|
||||
texture_format/bptc=true
|
||||
texture_format/s3tc=true
|
||||
texture_format/etc=false
|
||||
texture_format/etc2=false
|
||||
|
||||
[preset.1]
|
||||
|
||||
name="windows"
|
||||
platform="Windows Desktop"
|
||||
runnable=true
|
||||
advanced_options=false
|
||||
dedicated_server=false
|
||||
custom_features=""
|
||||
export_filter="all_resources"
|
||||
include_filter=""
|
||||
exclude_filter=""
|
||||
export_path=""
|
||||
encryption_include_filters=""
|
||||
encryption_exclude_filters=""
|
||||
encrypt_pck=false
|
||||
encrypt_directory=false
|
||||
script_export_mode=2
|
||||
|
||||
[preset.1.options]
|
||||
|
||||
custom_template/debug=""
|
||||
custom_template/release=""
|
||||
debug/export_console_wrapper=1
|
||||
binary_format/embed_pck=false
|
||||
texture_format/s3tc_bptc=true
|
||||
texture_format/etc2_astc=false
|
||||
binary_format/architecture="x86_64"
|
||||
codesign/enable=false
|
||||
codesign/timestamp=true
|
||||
codesign/timestamp_server_url=""
|
||||
codesign/digest_algorithm=1
|
||||
codesign/description=""
|
||||
codesign/custom_options=PackedStringArray()
|
||||
application/modify_resources=true
|
||||
application/icon=""
|
||||
application/console_wrapper_icon=""
|
||||
application/icon_interpolation=4
|
||||
application/file_version=""
|
||||
application/product_version=""
|
||||
application/company_name=""
|
||||
application/product_name=""
|
||||
application/file_description=""
|
||||
application/copyright=""
|
||||
application/trademarks=""
|
||||
application/export_angle=0
|
||||
application/export_d3d12=0
|
||||
application/d3d12_agility_sdk_multiarch=true
|
||||
ssh_remote_deploy/enabled=false
|
||||
ssh_remote_deploy/host="user@host_ip"
|
||||
ssh_remote_deploy/port="22"
|
||||
ssh_remote_deploy/extra_args_ssh=""
|
||||
ssh_remote_deploy/extra_args_scp=""
|
||||
ssh_remote_deploy/run_script="Expand-Archive -LiteralPath '{temp_dir}\\{archive_name}' -DestinationPath '{temp_dir}'
|
||||
$action = New-ScheduledTaskAction -Execute '{temp_dir}\\{exe_name}' -Argument '{cmd_args}'
|
||||
$trigger = New-ScheduledTaskTrigger -Once -At 00:00
|
||||
$settings = New-ScheduledTaskSettingsSet
|
||||
$task = New-ScheduledTask -Action $action -Trigger $trigger -Settings $settings
|
||||
Register-ScheduledTask godot_remote_debug -InputObject $task -Force:$true
|
||||
Start-ScheduledTask -TaskName godot_remote_debug
|
||||
while (Get-ScheduledTask -TaskName godot_remote_debug | ? State -eq running) { Start-Sleep -Milliseconds 100 }
|
||||
Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue"
|
||||
ssh_remote_deploy/cleanup_script="Stop-ScheduledTask -TaskName godot_remote_debug -ErrorAction:SilentlyContinue
|
||||
Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue
|
||||
Remove-Item -Recurse -Force '{temp_dir}'"
|
||||
|
||||
[preset.2]
|
||||
|
||||
name="macOS"
|
||||
platform="macOS"
|
||||
runnable=true
|
||||
advanced_options=false
|
||||
dedicated_server=false
|
||||
custom_features=""
|
||||
export_filter="all_resources"
|
||||
include_filter=""
|
||||
exclude_filter=""
|
||||
export_path="./godot_configurator.zip"
|
||||
encryption_include_filters=""
|
||||
encryption_exclude_filters=""
|
||||
encrypt_pck=false
|
||||
encrypt_directory=false
|
||||
script_export_mode=2
|
||||
|
||||
[preset.2.options]
|
||||
|
||||
export/distribution_type=1
|
||||
binary_format/architecture="universal"
|
||||
custom_template/debug=""
|
||||
custom_template/release=""
|
||||
debug/export_console_wrapper=1
|
||||
application/icon=""
|
||||
application/icon_interpolation=4
|
||||
application/bundle_identifier="net.retrodeck.retrodeck"
|
||||
application/signature=""
|
||||
application/app_category="Games"
|
||||
application/short_version=""
|
||||
application/version=""
|
||||
application/copyright=""
|
||||
application/copyright_localized={}
|
||||
application/min_macos_version="10.12"
|
||||
application/export_angle=0
|
||||
display/high_res=true
|
||||
application/additional_plist_content=""
|
||||
xcode/platform_build="14C18"
|
||||
xcode/sdk_version="13.1"
|
||||
xcode/sdk_build="22C55"
|
||||
xcode/sdk_name="macosx13.1"
|
||||
xcode/xcode_version="1420"
|
||||
xcode/xcode_build="14C18"
|
||||
codesign/codesign=1
|
||||
codesign/installer_identity=""
|
||||
codesign/apple_team_id=""
|
||||
codesign/identity=""
|
||||
codesign/entitlements/custom_file=""
|
||||
codesign/entitlements/allow_jit_code_execution=false
|
||||
codesign/entitlements/allow_unsigned_executable_memory=false
|
||||
codesign/entitlements/allow_dyld_environment_variables=false
|
||||
codesign/entitlements/disable_library_validation=false
|
||||
codesign/entitlements/audio_input=false
|
||||
codesign/entitlements/camera=false
|
||||
codesign/entitlements/location=false
|
||||
codesign/entitlements/address_book=false
|
||||
codesign/entitlements/calendars=false
|
||||
codesign/entitlements/photos_library=false
|
||||
codesign/entitlements/apple_events=false
|
||||
codesign/entitlements/debugging=false
|
||||
codesign/entitlements/app_sandbox/enabled=false
|
||||
codesign/entitlements/app_sandbox/network_server=false
|
||||
codesign/entitlements/app_sandbox/network_client=false
|
||||
codesign/entitlements/app_sandbox/device_usb=false
|
||||
codesign/entitlements/app_sandbox/device_bluetooth=false
|
||||
codesign/entitlements/app_sandbox/files_downloads=0
|
||||
codesign/entitlements/app_sandbox/files_pictures=0
|
||||
codesign/entitlements/app_sandbox/files_music=0
|
||||
codesign/entitlements/app_sandbox/files_movies=0
|
||||
codesign/entitlements/app_sandbox/files_user_selected=0
|
||||
codesign/entitlements/app_sandbox/helper_executables=[]
|
||||
codesign/custom_options=PackedStringArray()
|
||||
notarization/notarization=0
|
||||
privacy/microphone_usage_description=""
|
||||
privacy/microphone_usage_description_localized={}
|
||||
privacy/camera_usage_description=""
|
||||
privacy/camera_usage_description_localized={}
|
||||
privacy/location_usage_description=""
|
||||
privacy/location_usage_description_localized={}
|
||||
privacy/address_book_usage_description=""
|
||||
privacy/address_book_usage_description_localized={}
|
||||
privacy/calendar_usage_description=""
|
||||
privacy/calendar_usage_description_localized={}
|
||||
privacy/photos_library_usage_description=""
|
||||
privacy/photos_library_usage_description_localized={}
|
||||
privacy/desktop_folder_usage_description=""
|
||||
privacy/desktop_folder_usage_description_localized={}
|
||||
privacy/documents_folder_usage_description=""
|
||||
privacy/documents_folder_usage_description_localized={}
|
||||
privacy/downloads_folder_usage_description=""
|
||||
privacy/downloads_folder_usage_description_localized={}
|
||||
privacy/network_volumes_usage_description=""
|
||||
privacy/network_volumes_usage_description_localized={}
|
||||
privacy/removable_volumes_usage_description=""
|
||||
privacy/removable_volumes_usage_description_localized={}
|
||||
privacy/tracking_enabled=false
|
||||
privacy/tracking_domains=PackedStringArray()
|
||||
privacy/collected_data/name/collected=false
|
||||
privacy/collected_data/name/linked_to_user=false
|
||||
privacy/collected_data/name/used_for_tracking=false
|
||||
privacy/collected_data/name/collection_purposes=0
|
||||
privacy/collected_data/email_address/collected=false
|
||||
privacy/collected_data/email_address/linked_to_user=false
|
||||
privacy/collected_data/email_address/used_for_tracking=false
|
||||
privacy/collected_data/email_address/collection_purposes=0
|
||||
privacy/collected_data/phone_number/collected=false
|
||||
privacy/collected_data/phone_number/linked_to_user=false
|
||||
privacy/collected_data/phone_number/used_for_tracking=false
|
||||
privacy/collected_data/phone_number/collection_purposes=0
|
||||
privacy/collected_data/physical_address/collected=false
|
||||
privacy/collected_data/physical_address/linked_to_user=false
|
||||
privacy/collected_data/physical_address/used_for_tracking=false
|
||||
privacy/collected_data/physical_address/collection_purposes=0
|
||||
privacy/collected_data/other_contact_info/collected=false
|
||||
privacy/collected_data/other_contact_info/linked_to_user=false
|
||||
privacy/collected_data/other_contact_info/used_for_tracking=false
|
||||
privacy/collected_data/other_contact_info/collection_purposes=0
|
||||
privacy/collected_data/health/collected=false
|
||||
privacy/collected_data/health/linked_to_user=false
|
||||
privacy/collected_data/health/used_for_tracking=false
|
||||
privacy/collected_data/health/collection_purposes=0
|
||||
privacy/collected_data/fitness/collected=false
|
||||
privacy/collected_data/fitness/linked_to_user=false
|
||||
privacy/collected_data/fitness/used_for_tracking=false
|
||||
privacy/collected_data/fitness/collection_purposes=0
|
||||
privacy/collected_data/payment_info/collected=false
|
||||
privacy/collected_data/payment_info/linked_to_user=false
|
||||
privacy/collected_data/payment_info/used_for_tracking=false
|
||||
privacy/collected_data/payment_info/collection_purposes=0
|
||||
privacy/collected_data/credit_info/collected=false
|
||||
privacy/collected_data/credit_info/linked_to_user=false
|
||||
privacy/collected_data/credit_info/used_for_tracking=false
|
||||
privacy/collected_data/credit_info/collection_purposes=0
|
||||
privacy/collected_data/other_financial_info/collected=false
|
||||
privacy/collected_data/other_financial_info/linked_to_user=false
|
||||
privacy/collected_data/other_financial_info/used_for_tracking=false
|
||||
privacy/collected_data/other_financial_info/collection_purposes=0
|
||||
privacy/collected_data/precise_location/collected=false
|
||||
privacy/collected_data/precise_location/linked_to_user=false
|
||||
privacy/collected_data/precise_location/used_for_tracking=false
|
||||
privacy/collected_data/precise_location/collection_purposes=0
|
||||
privacy/collected_data/coarse_location/collected=false
|
||||
privacy/collected_data/coarse_location/linked_to_user=false
|
||||
privacy/collected_data/coarse_location/used_for_tracking=false
|
||||
privacy/collected_data/coarse_location/collection_purposes=0
|
||||
privacy/collected_data/sensitive_info/collected=false
|
||||
privacy/collected_data/sensitive_info/linked_to_user=false
|
||||
privacy/collected_data/sensitive_info/used_for_tracking=false
|
||||
privacy/collected_data/sensitive_info/collection_purposes=0
|
||||
privacy/collected_data/contacts/collected=false
|
||||
privacy/collected_data/contacts/linked_to_user=false
|
||||
privacy/collected_data/contacts/used_for_tracking=false
|
||||
privacy/collected_data/contacts/collection_purposes=0
|
||||
privacy/collected_data/emails_or_text_messages/collected=false
|
||||
privacy/collected_data/emails_or_text_messages/linked_to_user=false
|
||||
privacy/collected_data/emails_or_text_messages/used_for_tracking=false
|
||||
privacy/collected_data/emails_or_text_messages/collection_purposes=0
|
||||
privacy/collected_data/photos_or_videos/collected=false
|
||||
privacy/collected_data/photos_or_videos/linked_to_user=false
|
||||
privacy/collected_data/photos_or_videos/used_for_tracking=false
|
||||
privacy/collected_data/photos_or_videos/collection_purposes=0
|
||||
privacy/collected_data/audio_data/collected=false
|
||||
privacy/collected_data/audio_data/linked_to_user=false
|
||||
privacy/collected_data/audio_data/used_for_tracking=false
|
||||
privacy/collected_data/audio_data/collection_purposes=0
|
||||
privacy/collected_data/gameplay_content/collected=false
|
||||
privacy/collected_data/gameplay_content/linked_to_user=false
|
||||
privacy/collected_data/gameplay_content/used_for_tracking=false
|
||||
privacy/collected_data/gameplay_content/collection_purposes=0
|
||||
privacy/collected_data/customer_support/collected=false
|
||||
privacy/collected_data/customer_support/linked_to_user=false
|
||||
privacy/collected_data/customer_support/used_for_tracking=false
|
||||
privacy/collected_data/customer_support/collection_purposes=0
|
||||
privacy/collected_data/other_user_content/collected=false
|
||||
privacy/collected_data/other_user_content/linked_to_user=false
|
||||
privacy/collected_data/other_user_content/used_for_tracking=false
|
||||
privacy/collected_data/other_user_content/collection_purposes=0
|
||||
privacy/collected_data/browsing_history/collected=false
|
||||
privacy/collected_data/browsing_history/linked_to_user=false
|
||||
privacy/collected_data/browsing_history/used_for_tracking=false
|
||||
privacy/collected_data/browsing_history/collection_purposes=0
|
||||
privacy/collected_data/search_hhistory/collected=false
|
||||
privacy/collected_data/search_hhistory/linked_to_user=false
|
||||
privacy/collected_data/search_hhistory/used_for_tracking=false
|
||||
privacy/collected_data/search_hhistory/collection_purposes=0
|
||||
privacy/collected_data/user_id/collected=false
|
||||
privacy/collected_data/user_id/linked_to_user=false
|
||||
privacy/collected_data/user_id/used_for_tracking=false
|
||||
privacy/collected_data/user_id/collection_purposes=0
|
||||
privacy/collected_data/device_id/collected=false
|
||||
privacy/collected_data/device_id/linked_to_user=false
|
||||
privacy/collected_data/device_id/used_for_tracking=false
|
||||
privacy/collected_data/device_id/collection_purposes=0
|
||||
privacy/collected_data/purchase_history/collected=false
|
||||
privacy/collected_data/purchase_history/linked_to_user=false
|
||||
privacy/collected_data/purchase_history/used_for_tracking=false
|
||||
privacy/collected_data/purchase_history/collection_purposes=0
|
||||
privacy/collected_data/product_interaction/collected=false
|
||||
privacy/collected_data/product_interaction/linked_to_user=false
|
||||
privacy/collected_data/product_interaction/used_for_tracking=false
|
||||
privacy/collected_data/product_interaction/collection_purposes=0
|
||||
privacy/collected_data/advertising_data/collected=false
|
||||
privacy/collected_data/advertising_data/linked_to_user=false
|
||||
privacy/collected_data/advertising_data/used_for_tracking=false
|
||||
privacy/collected_data/advertising_data/collection_purposes=0
|
||||
privacy/collected_data/other_usage_data/collected=false
|
||||
privacy/collected_data/other_usage_data/linked_to_user=false
|
||||
privacy/collected_data/other_usage_data/used_for_tracking=false
|
||||
privacy/collected_data/other_usage_data/collection_purposes=0
|
||||
privacy/collected_data/crash_data/collected=false
|
||||
privacy/collected_data/crash_data/linked_to_user=false
|
||||
privacy/collected_data/crash_data/used_for_tracking=false
|
||||
privacy/collected_data/crash_data/collection_purposes=0
|
||||
privacy/collected_data/performance_data/collected=false
|
||||
privacy/collected_data/performance_data/linked_to_user=false
|
||||
privacy/collected_data/performance_data/used_for_tracking=false
|
||||
privacy/collected_data/performance_data/collection_purposes=0
|
||||
privacy/collected_data/other_diagnostic_data/collected=false
|
||||
privacy/collected_data/other_diagnostic_data/linked_to_user=false
|
||||
privacy/collected_data/other_diagnostic_data/used_for_tracking=false
|
||||
privacy/collected_data/other_diagnostic_data/collection_purposes=0
|
||||
privacy/collected_data/environment_scanning/collected=false
|
||||
privacy/collected_data/environment_scanning/linked_to_user=false
|
||||
privacy/collected_data/environment_scanning/used_for_tracking=false
|
||||
privacy/collected_data/environment_scanning/collection_purposes=0
|
||||
privacy/collected_data/hands/collected=false
|
||||
privacy/collected_data/hands/linked_to_user=false
|
||||
privacy/collected_data/hands/used_for_tracking=false
|
||||
privacy/collected_data/hands/collection_purposes=0
|
||||
privacy/collected_data/head/collected=false
|
||||
privacy/collected_data/head/linked_to_user=false
|
||||
privacy/collected_data/head/used_for_tracking=false
|
||||
privacy/collected_data/head/collection_purposes=0
|
||||
privacy/collected_data/other_data_types/collected=false
|
||||
privacy/collected_data/other_data_types/linked_to_user=false
|
||||
privacy/collected_data/other_data_types/used_for_tracking=false
|
||||
privacy/collected_data/other_data_types/collection_purposes=0
|
||||
ssh_remote_deploy/enabled=false
|
||||
ssh_remote_deploy/host="user@host_ip"
|
||||
ssh_remote_deploy/port="22"
|
||||
ssh_remote_deploy/extra_args_ssh=""
|
||||
ssh_remote_deploy/extra_args_scp=""
|
||||
ssh_remote_deploy/run_script="#!/usr/bin/env bash
|
||||
unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\"
|
||||
open \"{temp_dir}/{exe_name}.app\" --args {cmd_args}"
|
||||
ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash
|
||||
kill $(pgrep -x -f \"{temp_dir}/{exe_name}.app/Contents/MacOS/{exe_name} {cmd_args}\")
|
||||
rm -rf \"{temp_dir}\""
|
||||
|
|
|
@ -3,11 +3,7 @@
|
|||
|
||||
extends Control
|
||||
|
||||
var bios_type:int
|
||||
var status_code_label: Label
|
||||
var wrapper_command: String = "../../tools/retrodeck_function_wrapper.sh"
|
||||
var log_text = "gdc_"
|
||||
var log_parameters: Array = ["log", "i", log_text]
|
||||
@onready var bios_type:int
|
||||
var log_results: Dictionary
|
||||
var theme_option: OptionButton
|
||||
#signal signal_theme_changed
|
||||
|
@ -22,34 +18,59 @@ var l1_button_texture: Texture2D = load("res://assets/icons/kenney_input-prompts
|
|||
var r1_button_texture: Texture2D = load("res://assets/icons/kenney_input-prompts-pixel-16/Tiles/tile_0798.png")
|
||||
var a_button_texture: Texture2D = load("res://assets/icons/kenney_input-prompts-pixel-16/Tiles/tile_0042.png")
|
||||
var b_button_texture: Texture2D = load("res://assets/icons/kenney_input-prompts-pixel-16/Tiles/tile_0043.png")
|
||||
|
||||
var app_data := AppData.new()
|
||||
|
||||
func _ready():
|
||||
_get_nodes()
|
||||
_connect_signals()
|
||||
_play_main_animations()
|
||||
%locale_option.selected = class_functions.map_locale_id(OS.get_locale_language())
|
||||
app_data = data_handler.app_data
|
||||
#data_handler.add_emulator()
|
||||
#data_handler.modify_emulator_test()
|
||||
if app_data:
|
||||
var website_data: Link = app_data.about_links["rd_web"]
|
||||
print (website_data.name,"-",website_data.url,"-",website_data.description,"-",website_data.url)
|
||||
#print (app_data.about_links["rd_web"]["name"])
|
||||
|
||||
for key in app_data.emulators.keys():
|
||||
var emulator = app_data.emulators[key]
|
||||
# Display the properties of each emulator
|
||||
print("Emulator Name: ", emulator.name)
|
||||
print("Description: ", emulator.description)
|
||||
print("Properties:")
|
||||
# Iterate over properties and show each one
|
||||
for property: EmulatorProperty in emulator.properties:
|
||||
print("Cheevos: ", property.cheevos)
|
||||
print("ABXY_button:", property.abxy_button)
|
||||
print("multi_user_config_dir: ", property.multi_user_config_dir)
|
||||
else:
|
||||
print ("No emulators")
|
||||
#%locale_option.selected = class_functions.map_locale_id(OS.get_locale_language())
|
||||
#app_data = data_handler.app_data
|
||||
##data_handler.add_emulator()
|
||||
##data_handler.modify_emulator_test()
|
||||
#if app_data:
|
||||
#var website_data: Link = app_data.about_links["rd_web"]
|
||||
#print (website_data.name,"-",website_data.url,"-",website_data.description,"-",website_data.url)
|
||||
##print (app_data.about_links["rd_web"]["name"])
|
||||
#var core_data: Core = app_data.cores["gambatte_libetro"]
|
||||
#print (core_data.name)
|
||||
#for property: CoreProperty in core_data.properties:
|
||||
#print("Cheevos: ", property.cheevos)
|
||||
#print("Cheevos Hardcore: ", property.cheevos_hardcore)
|
||||
#print("Quick Resume: ", property.quick_resume)
|
||||
#print("Rewind: ", property.rewind)
|
||||
#print("Borders: ", property.borders)
|
||||
#print("Widescreen: ", property.widescreen)
|
||||
#print("ABXY_button:", property.abxy_button)
|
||||
#for key in app_data.emulators.keys():
|
||||
#var emulator = app_data.emulators[key]
|
||||
## Display the properties of each emulator
|
||||
#print("System Name: ", emulator.name)
|
||||
#print("Description: ", emulator.description)
|
||||
##print("System: ", emulator.systen)
|
||||
#print("Help URL: ", emulator.url)
|
||||
#print("Properties:")
|
||||
#for property: EmulatorProperty in emulator.properties:
|
||||
#print("Cheevos: ", property.cheevos)
|
||||
#print("Borders: ", property.borders)
|
||||
#print("ABXY_button:", property.abxy_button)
|
||||
#print("multi_user_config_dir: ", property.multi_user_config_dir)
|
||||
#
|
||||
#for key in app_data.cores.keys():
|
||||
#var core = app_data.cores[key]
|
||||
#print("Core Name: ", core.name)
|
||||
#print("Description: ", core.description)
|
||||
#print("Properties:")
|
||||
#for property: CoreProperty in core.properties:
|
||||
#print("Cheevos: ", property.cheevos)
|
||||
#print("Cheevos Hardcore: ", property.cheevos_hardcore)
|
||||
#print("Quick Resume: ", property.quick_resume)
|
||||
#print("Rewind: ", property.rewind)
|
||||
#print("Borders: ", property.borders)
|
||||
#print("Widescreen: ", property.widescreen)
|
||||
#print("ABXY_button:", property.abxy_button)
|
||||
#else:
|
||||
#print ("No emulators")
|
||||
|
||||
var config_file_path = "/var/config/retrodeck/retrodeck.cfg"
|
||||
var json_file_path = "/var/config/retrodeck/retrodeck.json"
|
||||
|
@ -95,8 +116,11 @@ func _input(event):
|
|||
if event.is_action_pressed("quit"):
|
||||
_exit()
|
||||
|
||||
func _exit():
|
||||
get_tree().root.propagate_notification(NOTIFICATION_WM_CLOSE_REQUEST)
|
||||
get_tree().quit()
|
||||
|
||||
func _get_nodes() -> void:
|
||||
status_code_label = get_node("%status_code_label")
|
||||
theme_option = get_node("%theme_optionbutton")
|
||||
tab_container = get_node("%TabContainer")
|
||||
anim_logo = get_node("%logo_animated")
|
||||
|
@ -107,76 +131,87 @@ func _connect_signals() -> void:
|
|||
theme_option.item_selected.connect(_conf_theme)
|
||||
#signal_theme_changed.emit(theme_option.item_selected)
|
||||
log_option.item_selected.connect(_load_log)
|
||||
%borders_button.pressed.connect(_hide_show.bind(%borders_button))
|
||||
%save_button.pressed.connect(_hide_show.bind(%save_button))
|
||||
%decorations_button.pressed.connect(_hide_show_containers.bind(%decorations_button))
|
||||
%systems_button.pressed.connect(_hide_show_containers.bind(%systems_button))
|
||||
%save_resume_button.pressed.connect(_hide_show_containers.bind(%decorations_button))
|
||||
|
||||
%borders_button.pressed.connect(_hide_show_buttons.bind(%borders_button,%borders_gridcontainer,%decorations_gridcontainer))
|
||||
%button_layout.pressed.connect(_hide_show_buttons.bind(%button_layout,%borders_gridcontainer,%decorations_gridcontainer))
|
||||
%decorations_save.pressed.connect(_hide_show_buttons.bind(%decorations_save,%decorations_save.get_parent(),null))
|
||||
%decorations_button.pressed.connect(_hide_show_containers.bind(%decorations_button, %decorations_gridcontainer))
|
||||
%systems_button.pressed.connect(_hide_show_containers.bind(%systems_button, %systems_gridcontainer))
|
||||
%save_resume_button.pressed.connect(_hide_show_containers.bind(%decorations_button,%systems_gridcontainer))
|
||||
|
||||
func _load_log(index: int) -> void:
|
||||
var log_content:String
|
||||
match index:
|
||||
1:
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Loading RetroDeck log"
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
log_content = class_functions.import_text_file(rd_logs +"/retrodeck.log")
|
||||
load_popup("RetroDeck Log", "res://components/logs_view/logs_popup_content.tscn", log_content)
|
||||
2:
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Loading ES-DE log"
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
log_content = class_functions.import_text_file(rd_logs +"/ES-DE/es_log.txt")
|
||||
load_popup("ES-DE Log", "res://components/logs_view/logs_popup_content.tscn",log_content)
|
||||
3:
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Loading RetroArch log"
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
log_content = class_functions.import_text_file(rd_logs +"/retroarch/logs/log.txt")
|
||||
load_popup("Retroarch Log", "res://components/logs_view/logs_popup_content.tscn",log_content)
|
||||
|
||||
func _play_main_animations() -> void:
|
||||
anim_logo.play()
|
||||
|
||||
func _hide_show_containers(button: Button) -> void:
|
||||
func _hide_show_containers(button: Button, grid_container: GridContainer) -> void:
|
||||
match button.name:
|
||||
"decorations_button":
|
||||
%graphics_gridcontainer.visible = true
|
||||
"decorations_button", "systems_button":
|
||||
grid_container.visible = true
|
||||
if button.toggle_mode:
|
||||
button.toggle_mode=false
|
||||
%graphics_gridcontainer.visible = false
|
||||
else:
|
||||
button.toggle_mode=true
|
||||
"systems_button":
|
||||
%systems_gridcontainer.visible = true
|
||||
if button.toggle_mode:
|
||||
button.toggle_mode=false
|
||||
%systems_gridcontainer.visible = false
|
||||
grid_container.visible = false
|
||||
else:
|
||||
button.toggle_mode=true
|
||||
|
||||
func _hide_show(button: Button) -> void:
|
||||
if %borders_button.button_pressed:
|
||||
%borders_gridcontainer.visible = true
|
||||
for i in range(%borders_gridcontainer.get_child_count()):
|
||||
var child = %borders_gridcontainer.get_child(i)
|
||||
if child is Button:
|
||||
child.button_pressed=true
|
||||
for i in range(%graphics_gridcontainer.get_child_count()):
|
||||
var child = %graphics_gridcontainer.get_child(i)
|
||||
if child is Button and child != %borders_button:
|
||||
child.visible=false
|
||||
%save_button.visible=true
|
||||
|
||||
if %save_button.button_pressed:
|
||||
%borders_gridcontainer.visible = false
|
||||
for i in range(%graphics_gridcontainer.get_child_count()):
|
||||
var child = %graphics_gridcontainer.get_child(i)
|
||||
if child is Button:
|
||||
child.visible=true
|
||||
%save_button.visible=false
|
||||
# TODO Pass GridContainer(might need 2?) as above
|
||||
# TODO load existing settings or default to enable all
|
||||
func _hide_show_buttons(button: Button, buttons_gridcontainer: GridContainer, hidden_gridcontainer: GridContainer) -> void:
|
||||
match button.name:
|
||||
"borders_button", "button_layout":
|
||||
buttons_gridcontainer.visible = true
|
||||
if button.toggle_mode == false:
|
||||
for i in range(buttons_gridcontainer.get_child_count()):
|
||||
var child = buttons_gridcontainer.get_child(i)
|
||||
child.button_pressed=true
|
||||
for i in range(hidden_gridcontainer.get_child_count()):
|
||||
var child = hidden_gridcontainer.get_child(i)
|
||||
if child is Button and child != button:
|
||||
child.visible=false
|
||||
elif button.toggle_mode == true and %borders_gridcontainer.visible == true:
|
||||
print (button.name, "SAVE NOW? TODO") # TODO SHOW ALL AGAIN?
|
||||
buttons_gridcontainer.visible = false
|
||||
#button.toggle_mode = false
|
||||
for i in range(hidden_gridcontainer.get_child_count()):
|
||||
var child = hidden_gridcontainer.get_child(i)
|
||||
if child is Button:
|
||||
child.visible=true
|
||||
child.toggle_mode = false
|
||||
button.toggle_mode = true
|
||||
|
||||
func _conf_theme(index: int) -> void:
|
||||
print (index)
|
||||
match index:
|
||||
1:
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Set theme to index " + str(index)
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
custom_theme = preload("res://res/pixel_ui_theme/RetroDECKTheme.tres")
|
||||
2:
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Set theme to index " + str(index)
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
custom_theme = preload("res://assets/themes/retro_theme.tres")
|
||||
3:
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Set theme to index " + str(index)
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
custom_theme = preload("res://assets/themes/modern_theme.tres")
|
||||
4:
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Set theme to index " + str(index)
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
custom_theme = preload("res://assets/themes/accesible_theme.tres")
|
||||
$".".theme = custom_theme
|
||||
_play_main_animations()
|
||||
|
@ -203,29 +238,26 @@ func _on_quickresume_advanced_pressed():
|
|||
|
||||
func _on_bios_button_pressed():
|
||||
_play_main_animations()
|
||||
bios_type = 0
|
||||
log_parameters[2] = log_text + "Bios_Check"
|
||||
log_results = class_functions.execute_command(wrapper_command, log_parameters, false)
|
||||
bios_type = 1
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Bios_Check"
|
||||
log_results = class_functions.execute_command(class_functions.wrapper_command, class_functions.log_parameters, false)
|
||||
load_popup("BIOS File Check", "res://components/bios_check/bios_popup_content.tscn","")
|
||||
status_code_label.text = str(log_results["exit_code"])
|
||||
|
||||
bios_type = 0
|
||||
|
||||
func _on_bios_button_expert_pressed():
|
||||
_play_main_animations()
|
||||
bios_type = 1
|
||||
log_parameters[2] = log_text + "Advanced_Bios_Check"
|
||||
log_results = class_functions.execute_command(wrapper_command, log_parameters, false)
|
||||
bios_type = 2
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Advanced_Bios_Check"
|
||||
log_results = class_functions.execute_command(class_functions.wrapper_command, class_functions.log_parameters, false)
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Exit code: " + str(log_results["exit_code"])
|
||||
load_popup("BIOS File Check", "res://components/bios_check/bios_popup_content.tscn","")
|
||||
status_code_label.text = str(log_results["exit_code"])
|
||||
|
||||
bios_type = 0
|
||||
|
||||
func _on_exit_button_pressed():
|
||||
_play_main_animations()
|
||||
log_parameters[2] = log_text + "Exited"
|
||||
log_results = class_functions.execute_command(wrapper_command, log_parameters, false)
|
||||
_exit()
|
||||
|
||||
func _exit():
|
||||
get_tree().root.propagate_notification(NOTIFICATION_WM_CLOSE_REQUEST)
|
||||
get_tree().quit()
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Exited"
|
||||
log_results = class_functions.execute_command(class_functions.wrapper_command, class_functions.log_parameters, false)
|
||||
class_functions._exit()
|
||||
|
||||
func _on_locale_selected(index):
|
||||
match index:
|
||||
|
|
|
@ -11,7 +11,7 @@ config_version=5
|
|||
[application]
|
||||
|
||||
config/name="RetroDECK Configurator"
|
||||
config/version="v0.051"
|
||||
config/version="0.052"
|
||||
run/main_scene="res://main.tscn"
|
||||
config/features=PackedStringArray("4.3", "GL Compatibility")
|
||||
boot_splash/bg_color=Color(0.141176, 0.141176, 0.141176, 0)
|
||||
|
@ -105,6 +105,7 @@ quit1={
|
|||
quit2={
|
||||
"deadzone": 0.5,
|
||||
"events": [Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":7,"pressure":0.0,"pressed":true,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":4,"pressure":0.0,"pressed":true,"script":null)
|
||||
]
|
||||
}
|
||||
|
||||
|
@ -121,4 +122,5 @@ locale/translations=PackedStringArray("res://locales/interface.en.translation",
|
|||
textures/canvas_textures/default_texture_filter=0
|
||||
renderer/rendering_method="gl_compatibility"
|
||||
renderer/rendering_method.mobile="gl_compatibility"
|
||||
textures/vram_compression/import_etc2_astc=true
|
||||
viewport/transparent_background=true
|
||||
|
|
|
@ -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_5erl7"]
|
||||
[sub_resource type="Image" id="Image_vwjgb"]
|
||||
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_5erl7")
|
||||
image = SubResource("Image_vwjgb")
|
||||
|
||||
[sub_resource type="Image" id="Image_u2s1p"]
|
||||
[sub_resource type="Image" id="Image_ywacb"]
|
||||
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_u2s1p")
|
||||
image = SubResource("Image_ywacb")
|
||||
|
||||
[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_7jtn8"]
|
||||
[sub_resource type="Image" id="Image_haatj"]
|
||||
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_7jtn8")
|
||||
image = SubResource("Image_haatj")
|
||||
|
||||
[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_vhvkw"]
|
||||
[sub_resource type="Image" id="Image_kwe71"]
|
||||
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_vhvkw")
|
||||
image = SubResource("Image_kwe71")
|
||||
|
||||
[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_djtfc"]
|
||||
[sub_resource type="Image" id="Image_op27n"]
|
||||
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_djtfc")
|
||||
image = SubResource("Image_op27n")
|
||||
|
||||
[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_dfxxt"]
|
||||
[sub_resource type="Image" id="Image_pjro5"]
|
||||
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_dfxxt")
|
||||
image = SubResource("Image_pjro5")
|
||||
|
||||
[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_cu3dl"]
|
||||
[sub_resource type="Image" id="Image_5uy45"]
|
||||
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_cu3dl")
|
||||
image = SubResource("Image_5uy45")
|
||||
|
||||
[sub_resource type="Image" id="Image_06k3s"]
|
||||
[sub_resource type="Image" id="Image_ec5ho"]
|
||||
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_06k3s")
|
||||
image = SubResource("Image_ec5ho")
|
||||
|
||||
[sub_resource type="Image" id="Image_g0jqc"]
|
||||
[sub_resource type="Image" id="Image_34hhs"]
|
||||
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_g0jqc")
|
||||
image = SubResource("Image_34hhs")
|
||||
|
||||
[sub_resource type="Image" id="Image_gk346"]
|
||||
[sub_resource type="Image" id="Image_p5y3q"]
|
||||
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_gk346")
|
||||
image = SubResource("Image_p5y3q")
|
||||
|
||||
[sub_resource type="Image" id="Image_srd7s"]
|
||||
[sub_resource type="Image" id="Image_soojw"]
|
||||
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_srd7s")
|
||||
image = SubResource("Image_soojw")
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_g6bu4"]
|
||||
texture = ExtResource("1_ak8qr")
|
||||
|
@ -1359,7 +1359,7 @@ region = Rect2(96, 96, 16, 16)
|
|||
atlas = ExtResource("1_ak8qr")
|
||||
region = Rect2(96, 80, 16, 16)
|
||||
|
||||
[sub_resource type="Image" id="Image_0m0km"]
|
||||
[sub_resource type="Image" id="Image_2m260"]
|
||||
data = {
|
||||
"data": PackedByteArray("AAAAAJiYmHlOTk4xAAAAAAAAAACNjY15Tk5OMQAAAAAAAAAAgoKCeU5OTjEAAAAAAAAAAE5OTjFOTk4cAAAAAAAAAAA4VV8AOFVfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjKy4ADhVXwAAAAAAAAAAAIGirQA4VV8AAAAAAAAAAACYmJh5Tk5OMQAAAAAAAAAAjY2NeU5OTjEAAAAAAAAAAIKCgnlOTk4xAAAAAA=="),
|
||||
"format": "RGBA8",
|
||||
|
@ -1369,7 +1369,7 @@ data = {
|
|||
}
|
||||
|
||||
[sub_resource type="ImageTexture" id="29"]
|
||||
image = SubResource("Image_0m0km")
|
||||
image = SubResource("Image_2m260")
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="4"]
|
||||
content_margin_left = 6.0
|
||||
|
@ -1440,7 +1440,7 @@ bg_color = Color(0.490196, 0.490196, 0.490196, 1)
|
|||
corner_detail = 1
|
||||
anti_aliasing = false
|
||||
|
||||
[sub_resource type="Image" id="Image_qu6fu"]
|
||||
[sub_resource type="Image" id="Image_vuhl3"]
|
||||
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",
|
||||
|
@ -1450,7 +1450,7 @@ data = {
|
|||
}
|
||||
|
||||
[sub_resource type="ImageTexture" id="49"]
|
||||
image = SubResource("Image_qu6fu")
|
||||
image = SubResource("Image_vuhl3")
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="127"]
|
||||
content_margin_left = 4.0
|
||||
|
@ -2271,7 +2271,7 @@ texture_margin_right = 2.0
|
|||
texture_margin_bottom = 2.0
|
||||
region_rect = Rect2(72, 64, 8, 8)
|
||||
|
||||
[sub_resource type="Image" id="Image_vsf8e"]
|
||||
[sub_resource type="Image" id="Image_ri2jg"]
|
||||
data = {
|
||||
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAc5uqs87c4bPO3OGzztzhs87c4bPO3OGzztzhs3ObqrMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="),
|
||||
"format": "RGBA8",
|
||||
|
@ -2281,7 +2281,7 @@ data = {
|
|||
}
|
||||
|
||||
[sub_resource type="ImageTexture" id="199"]
|
||||
image = SubResource("Image_vsf8e")
|
||||
image = SubResource("Image_ri2jg")
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="200"]
|
||||
texture = SubResource("199")
|
||||
|
@ -2305,7 +2305,7 @@ texture_margin_right = 2.0
|
|||
texture_margin_bottom = 2.0
|
||||
region_rect = Rect2(64, 64, 8, 8)
|
||||
|
||||
[sub_resource type="Image" id="Image_58oo7"]
|
||||
[sub_resource type="Image" id="Image_1syv2"]
|
||||
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",
|
||||
|
@ -2315,7 +2315,7 @@ data = {
|
|||
}
|
||||
|
||||
[sub_resource type="ImageTexture" id="204"]
|
||||
image = SubResource("Image_58oo7")
|
||||
image = SubResource("Image_1syv2")
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="205"]
|
||||
texture = SubResource("204")
|
||||
|
@ -2428,7 +2428,7 @@ axis_stretch_horizontal = 2
|
|||
axis_stretch_vertical = 2
|
||||
region_rect = Rect2(80, 0, 16, 8)
|
||||
|
||||
[sub_resource type="Image" id="Image_vwdns"]
|
||||
[sub_resource type="Image" id="Image_du17m"]
|
||||
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",
|
||||
|
@ -2438,9 +2438,9 @@ data = {
|
|||
}
|
||||
|
||||
[sub_resource type="ImageTexture" id="306"]
|
||||
image = SubResource("Image_vwdns")
|
||||
image = SubResource("Image_du17m")
|
||||
|
||||
[sub_resource type="Image" id="Image_8u1x6"]
|
||||
[sub_resource type="Image" id="Image_ydl7p"]
|
||||
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",
|
||||
|
@ -2450,9 +2450,9 @@ data = {
|
|||
}
|
||||
|
||||
[sub_resource type="ImageTexture" id="308"]
|
||||
image = SubResource("Image_8u1x6")
|
||||
image = SubResource("Image_ydl7p")
|
||||
|
||||
[sub_resource type="Image" id="Image_naxpi"]
|
||||
[sub_resource type="Image" id="Image_xttex"]
|
||||
data = {
|
||||
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAA/1n/FP8U/1kAAAAAAAAAAAAA/1n/FP8U/1kAAAAAAAAAAAAA/1n/FP8U/1kAAAAAAAAAAP9Z/xT/FP9ZAAAAAAAA/1n/FP8U/1kAAAAAAAD/Wf8U/xT/WQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="),
|
||||
"format": "LumAlpha8",
|
||||
|
@ -2462,9 +2462,9 @@ data = {
|
|||
}
|
||||
|
||||
[sub_resource type="ImageTexture" id="292"]
|
||||
image = SubResource("Image_naxpi")
|
||||
image = SubResource("Image_xttex")
|
||||
|
||||
[sub_resource type="Image" id="Image_ksn4y"]
|
||||
[sub_resource type="Image" id="Image_vx2db"]
|
||||
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",
|
||||
|
@ -2474,7 +2474,7 @@ data = {
|
|||
}
|
||||
|
||||
[sub_resource type="ImageTexture" id="39"]
|
||||
image = SubResource("Image_ksn4y")
|
||||
image = SubResource("Image_vx2db")
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="272"]
|
||||
content_margin_left = 0.0
|
||||
|
@ -2534,7 +2534,7 @@ axis_stretch_horizontal = 2
|
|||
axis_stretch_vertical = 2
|
||||
region_rect = Rect2(24, 40, 8, 8)
|
||||
|
||||
[sub_resource type="Image" id="Image_jvlbm"]
|
||||
[sub_resource type="Image" id="Image_4bgii"]
|
||||
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",
|
||||
|
@ -2544,9 +2544,9 @@ data = {
|
|||
}
|
||||
|
||||
[sub_resource type="ImageTexture" id="334"]
|
||||
image = SubResource("Image_jvlbm")
|
||||
image = SubResource("Image_4bgii")
|
||||
|
||||
[sub_resource type="Image" id="Image_pxng2"]
|
||||
[sub_resource type="Image" id="Image_1s0ky"]
|
||||
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",
|
||||
|
@ -2556,7 +2556,7 @@ data = {
|
|||
}
|
||||
|
||||
[sub_resource type="ImageTexture" id="336"]
|
||||
image = SubResource("Image_pxng2")
|
||||
image = SubResource("Image_1s0ky")
|
||||
|
||||
[sub_resource type="AtlasTexture" id="359"]
|
||||
atlas = ExtResource("1_ak8qr")
|
||||
|
@ -2632,7 +2632,7 @@ border_width_left = 1
|
|||
border_color = Color(0.2, 0.2, 0.2, 1)
|
||||
anti_aliasing = false
|
||||
|
||||
[sub_resource type="Image" id="Image_8h43v"]
|
||||
[sub_resource type="Image" id="Image_t5208"]
|
||||
data = {
|
||||
"data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIKCgnmNjY15mJiYeYGirQCMrLgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOFVfAE5OTjGCgoJ5jY2NeZiYmHlOTk4xTk5OMU5OTjE4VV8AOFVfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADhVXwBOTk4cTk5OMU5OTjFOTk4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="),
|
||||
"format": "RGBA8",
|
||||
|
@ -2642,7 +2642,7 @@ data = {
|
|||
}
|
||||
|
||||
[sub_resource type="ImageTexture" id="111"]
|
||||
image = SubResource("Image_8h43v")
|
||||
image = SubResource("Image_t5208")
|
||||
|
||||
[sub_resource type="AtlasTexture" id="20"]
|
||||
atlas = ExtResource("3_0m6kw")
|
||||
|
|
110
tools/configurator/scripts/SystemTab.gd
Normal file
|
@ -0,0 +1,110 @@
|
|||
extends Control
|
||||
|
||||
var app_data := AppData.new()
|
||||
var current_system := Emulator.new()
|
||||
var press_time: float = 0.0
|
||||
var is_launch_pressed: bool = false
|
||||
var is_reset_pressed: bool = false
|
||||
var reset_result: Dictionary
|
||||
@export var PRESS_DURATION: float = 3.0
|
||||
|
||||
func _ready():
|
||||
app_data = data_handler.app_data
|
||||
_connect_signals()
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
if is_launch_pressed:
|
||||
press_time += delta
|
||||
%launch_progress.value = press_time / PRESS_DURATION * 100.0
|
||||
if is_reset_pressed:
|
||||
press_time += delta
|
||||
%reset_progress.value = press_time / PRESS_DURATION * 100.0
|
||||
if press_time >= PRESS_DURATION:
|
||||
_do_complete()
|
||||
press_time = 0.0
|
||||
is_launch_pressed = false
|
||||
is_reset_pressed = false
|
||||
%launch_progress.value = 0.0
|
||||
%reset_progress.value = 0.0
|
||||
|
||||
func _connect_signals() -> void:
|
||||
%retroarch_button.pressed.connect(_hide_show_buttons.bind(%retroarch_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%mame_button.pressed.connect(_hide_show_buttons.bind(%mame_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%ruffle_button.pressed.connect(_hide_show_buttons.bind(%ruffle_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%melonds_button.pressed.connect(_hide_show_buttons.bind(%melonds_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%pcsx2_button.pressed.connect(_hide_show_buttons.bind(%pcsx2_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%duckstation_button.pressed.connect(_hide_show_buttons.bind(%duckstation_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%ppsspp_button.pressed.connect(_hide_show_buttons.bind(%ppsspp_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%vita3k_button.pressed.connect(_hide_show_buttons.bind(%vita3k_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%rpcs3_button.pressed.connect(_hide_show_buttons.bind(%rpcs3_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%ryujinx_button.pressed.connect(_hide_show_buttons.bind(%ryujinx_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%dolphin_button.pressed.connect(_hide_show_buttons.bind(%dolphin_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%primehack_button.pressed.connect(_hide_show_buttons.bind(%primehack_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%cemu_button.pressed.connect(_hide_show_buttons.bind(%cemu_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%xemu_button.pressed.connect(_hide_show_buttons.bind(%xemu_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%esde_button.pressed.connect(_hide_show_buttons.bind(%esde_button,%system_gridcontainer, %action_gridcontainer))
|
||||
%help_button.pressed.connect(_do_action.bind(%help_button))
|
||||
#%launch_button.pressed.connect(_do_action.bind(%launch_button))
|
||||
%launch_button.button_down.connect(_do_action.bind(%launch_button))
|
||||
%launch_button.button_up.connect(_on_Button_released.bind(%launch_progress))
|
||||
%reset_button.button_down.connect(_do_action.bind(%reset_button))
|
||||
%reset_button.button_up.connect(_on_Button_released.bind(%reset_progress))
|
||||
|
||||
func _hide_show_buttons(button: Button, buttons_gridcontainer: GridContainer, hidden_gridcontainer: GridContainer) -> void:
|
||||
current_system = app_data.emulators[button.text.to_lower()]
|
||||
match button.name:
|
||||
"retroarch_button", "mame_button", "ruffle_button", "melonds_button", "pcsx2_button", "duckstation_button", \
|
||||
"ppsspp_button", "vita3k_button", "rpcs3_button", "ryujinx_button", "dolphin_button", "primehack_button", \
|
||||
"cemu_button", "xemu_button", "esde_button":
|
||||
hidden_gridcontainer.visible = true
|
||||
if button.toggle_mode == false:
|
||||
for i in range(buttons_gridcontainer.get_child_count()):
|
||||
var child = buttons_gridcontainer.get_child(i)
|
||||
if child is Button and child != button:
|
||||
child.visible=false
|
||||
elif button.toggle_mode == true and hidden_gridcontainer.visible == true:
|
||||
hidden_gridcontainer.visible = false
|
||||
for i in range(buttons_gridcontainer.get_child_count()):
|
||||
var child = buttons_gridcontainer.get_child(i)
|
||||
if child is Button:
|
||||
child.visible=true
|
||||
child.toggle_mode = false
|
||||
if hidden_gridcontainer.visible == true:
|
||||
button.toggle_mode = true
|
||||
|
||||
func _on_Button_released(progress: ProgressBar) -> void:
|
||||
is_launch_pressed = false
|
||||
is_reset_pressed = false
|
||||
press_time = 0.0
|
||||
progress.value = 0.0
|
||||
|
||||
func _do_action(button: Button) -> void:
|
||||
match [button.name, current_system.name]:
|
||||
["help_button", current_system.name]:
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Launching " + current_system.name + " Help"
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
class_functions.launch_help(current_system.url)
|
||||
["launch_button", current_system.name]:
|
||||
is_launch_pressed = true
|
||||
["reset_button", current_system.name]:
|
||||
is_reset_pressed = true
|
||||
|
||||
func _do_complete() ->void:
|
||||
if is_launch_pressed:
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Launching " + current_system.name
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
var launch = class_functions.execute_command(current_system.launch,[], false)
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Exit Code: " + str(launch["exit_code"])
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
if is_reset_pressed:
|
||||
var parameters = ["prepare_component","reset",current_system.name]
|
||||
%reset_button.text = "RESETTING-NOW"
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Resetting " + current_system.name
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
await run_thread_command(class_functions.wrapper_command,parameters, false)
|
||||
class_functions.log_parameters[2] = class_functions.log_text + "Exit Code: " + str(reset_result["exit_code"])
|
||||
class_functions.execute_command(class_functions.wrapper_command,class_functions.log_parameters, false)
|
||||
%reset_button.text = "RESET COMPLETED"
|
||||
|
||||
func run_thread_command(command: String, parameters: Array, console: bool) -> void:
|
||||
reset_result = await class_functions.run_command_in_thread(command, parameters, console)
|
|
@ -6,3 +6,4 @@ class_name AppData
|
|||
|
||||
@export var about_links: Dictionary = {}
|
||||
@export var emulators: Dictionary = {}
|
||||
@export var cores: Dictionary = {}
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
class_name ClassFunctions extends Control
|
||||
class_name ClassFunctions
|
||||
|
||||
# This should be looked at again when GoDot 4.3 ships as has new OS.execute_with_pipe
|
||||
extends Control
|
||||
var log_text = "gdc_"
|
||||
var log_parameters: Array = ["log", "i", log_text]
|
||||
var wrapper_command: String = "../../tools/retrodeck_function_wrapper.sh"
|
||||
|
||||
func array_to_string(arr: Array) -> String:
|
||||
var text: String
|
||||
|
@ -9,6 +12,7 @@ func array_to_string(arr: Array) -> String:
|
|||
text = line.strip_edges() + "\n"
|
||||
return text
|
||||
|
||||
# TODO This should be looked at again when GoDot 4.3 ships as has new OS.execute_with_pipe
|
||||
func execute_command(command: String, parameters: Array, console: bool) -> Dictionary:
|
||||
var result = {}
|
||||
var output = []
|
||||
|
|