mirror of
https://github.com/GabeJWJ/holoDelta.git
synced 2026-08-08 19:35:13 +00:00
Minor Update 1.2.3.0
Lots of stuff, most notably asynchronously loading images and downloading them on the website.
This commit is contained in:
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/Blue.webp-4427018a285a45558842afe021c647a7.ct
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/BlueArts.webp-e70f70c762faea4835fadeb56de6366
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/Colorless.webp-76684a52d0998616ed52b796ea9a55
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/ColorlessArts.webp-0057646c2c08555de72e2f6388
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/Green.webp-cd1820e4348131b7e8f5f763ddcde0a9.c
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/GreenArts.webp-ae13faae8c3ecc8eb2df6398b93406
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/Purple.webp-9be654c9bc04aef006bd136ba4277f3c.
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/PurpleArts.webp-12e149fad0c42931ae87add302b2a
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/Red.webp-1b6f7e323d4bb2efcdcac67905fb470b.cte
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/RedArts.webp-2500955345c8c22bb6584b4a5194523f
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/White.webp-38607b98d80e037473e7df274df3f665.c
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/WhiteArts.webp-70023115f6eb3f1a752a02fa0ae3b7
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/Yellow.webp-2512597f482ad07dde978282ecaad948.
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -15,16 +15,22 @@ dest_files=["res://.godot/imported/YellowArts.webp-38d2c74ac896ccfc6e1e9bf1d0c66
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,23 +3,23 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://brfosqsw30a1j"
|
||||
path.s3tc="res://.godot/imported/61457.png-62eced1714df66e7db715f5c4fea081d.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/61457.png-62eced1714df66e7db715f5c4fea081d.etc2.ctex"
|
||||
path="res://.godot/imported/61457.png-62eced1714df66e7db715f5c4fea081d.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://CyberAssets/DeckBuilder/61457.png"
|
||||
dest_files=["res://.godot/imported/61457.png-62eced1714df66e7db715f5c4fea081d.s3tc.ctex", "res://.godot/imported/61457.png-62eced1714df66e7db715f5c4fea081d.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/61457.png-62eced1714df66e7db715f5c4fea081d.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
@@ -27,6 +27,10 @@ mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ngxbbonnmuab"
|
||||
path.s3tc="res://.godot/imported/Deck_Builder_BG.png-7af13507ce3e552ba1711794462a696b.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/Deck_Builder_BG.png-7af13507ce3e552ba1711794462a696b.etc2.ctex"
|
||||
path="res://.godot/imported/Deck_Builder_BG.png-7af13507ce3e552ba1711794462a696b.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://CyberAssets/DeckBuilder/Deck_Builder_BG.png"
|
||||
dest_files=["res://.godot/imported/Deck_Builder_BG.png-7af13507ce3e552ba1711794462a696b.s3tc.ctex", "res://.godot/imported/Deck_Builder_BG.png-7af13507ce3e552ba1711794462a696b.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/Deck_Builder_BG.png-7af13507ce3e552ba1711794462a696b.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dexhtkhame0ay"
|
||||
path.s3tc="res://.godot/imported/Notification.png-aae1e2e8e0d93b404ff45a06765ca6b9.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/Notification.png-aae1e2e8e0d93b404ff45a06765ca6b9.etc2.ctex"
|
||||
path="res://.godot/imported/Notification.png-aae1e2e8e0d93b404ff45a06765ca6b9.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://CyberAssets/Game Side Menu/Notification.png"
|
||||
dest_files=["res://.godot/imported/Notification.png-aae1e2e8e0d93b404ff45a06765ca6b9.s3tc.ctex", "res://.godot/imported/Notification.png-aae1e2e8e0d93b404ff45a06765ca6b9.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/Notification.png-aae1e2e8e0d93b404ff45a06765ca6b9.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cx76tmf8royup"
|
||||
path.s3tc="res://.godot/imported/Side Menu.png-fadf13262724f0349f3983bc5226b9e3.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/Side Menu.png-fadf13262724f0349f3983bc5226b9e3.etc2.ctex"
|
||||
path="res://.godot/imported/Side Menu.png-fadf13262724f0349f3983bc5226b9e3.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://CyberAssets/Game Side Menu/Side Menu.png"
|
||||
dest_files=["res://.godot/imported/Side Menu.png-fadf13262724f0349f3983bc5226b9e3.s3tc.ctex", "res://.godot/imported/Side Menu.png-fadf13262724f0349f3983bc5226b9e3.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/Side Menu.png-fadf13262724f0349f3983bc5226b9e3.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://syjyaota42p2"
|
||||
path.s3tc="res://.godot/imported/scroll_icon_2.png-909c8abd03467212f551dc6926cdb2ec.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/scroll_icon_2.png-909c8abd03467212f551dc6926cdb2ec.etc2.ctex"
|
||||
path="res://.godot/imported/scroll_icon_2.png-909c8abd03467212f551dc6926cdb2ec.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://CyberAssets/Game Side Menu/scroll_icon_2.png"
|
||||
dest_files=["res://.godot/imported/scroll_icon_2.png-909c8abd03467212f551dc6926cdb2ec.s3tc.ctex", "res://.godot/imported/scroll_icon_2.png-909c8abd03467212f551dc6926cdb2ec.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/scroll_icon_2.png-909c8abd03467212f551dc6926cdb2ec.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c6bxi4ho8us5e"
|
||||
path.s3tc="res://.godot/imported/Scroll_Icon.png-0201251c729dabb37946a06c02bd2335.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/Scroll_Icon.png-0201251c729dabb37946a06c02bd2335.etc2.ctex"
|
||||
path="res://.godot/imported/Scroll_Icon.png-0201251c729dabb37946a06c02bd2335.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://CyberAssets/Main Menu Assets/Scroll_Icon.png"
|
||||
dest_files=["res://.godot/imported/Scroll_Icon.png-0201251c729dabb37946a06c02bd2335.s3tc.ctex", "res://.godot/imported/Scroll_Icon.png-0201251c729dabb37946a06c02bd2335.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/Scroll_Icon.png-0201251c729dabb37946a06c02bd2335.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://btlmd875gxsio"
|
||||
path.s3tc="res://.godot/imported/text box.png-58e4495ced88f02fc63f48a0ed9d5559.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/text box.png-58e4495ced88f02fc63f48a0ed9d5559.etc2.ctex"
|
||||
path="res://.godot/imported/text box.png-58e4495ced88f02fc63f48a0ed9d5559.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://CyberAssets/Main Menu Assets/text box.png"
|
||||
dest_files=["res://.godot/imported/text box.png-58e4495ced88f02fc63f48a0ed9d5559.s3tc.ctex", "res://.godot/imported/text box.png-58e4495ced88f02fc63f48a0ed9d5559.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/text box.png-58e4495ced88f02fc63f48a0ed9d5559.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://3fo5e4j2doqj"
|
||||
path.s3tc="res://.godot/imported/text_box_disabled.png-8ec3e4c5b529960a8ae2f7a9e89aca1c.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/text_box_disabled.png-8ec3e4c5b529960a8ae2f7a9e89aca1c.etc2.ctex"
|
||||
path="res://.godot/imported/text_box_disabled.png-8ec3e4c5b529960a8ae2f7a9e89aca1c.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://CyberAssets/Main Menu Assets/text_box_disabled.png"
|
||||
dest_files=["res://.godot/imported/text_box_disabled.png-8ec3e4c5b529960a8ae2f7a9e89aca1c.s3tc.ctex", "res://.godot/imported/text_box_disabled.png-8ec3e4c5b529960a8ae2f7a9e89aca1c.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/text_box_disabled.png-8ec3e4c5b529960a8ae2f7a9e89aca1c.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,23 +3,23 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://vsu56xqqqf7r"
|
||||
path.s3tc="res://.godot/imported/playmat.png-5a20d5c23299409d3648121c00da2509.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/playmat.png-5a20d5c23299409d3648121c00da2509.etc2.ctex"
|
||||
path="res://.godot/imported/playmat.png-5a20d5c23299409d3648121c00da2509.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://CyberAssets/Playmat/playmat.png"
|
||||
dest_files=["res://.godot/imported/playmat.png-5a20d5c23299409d3648121c00da2509.s3tc.ctex", "res://.godot/imported/playmat.png-5a20d5c23299409d3648121c00da2509.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/playmat.png-5a20d5c23299409d3648121c00da2509.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
@@ -27,6 +27,10 @@ mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dhrtgt8n0e50o"
|
||||
path.s3tc="res://.godot/imported/ENbloomEF.png-6f0bbddf2292f381cff69ca0a99a41c2.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/ENbloomEF.png-6f0bbddf2292f381cff69ca0a99a41c2.etc2.ctex"
|
||||
path="res://.godot/imported/ENbloomEF.png-6f0bbddf2292f381cff69ca0a99a41c2.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Icons/ENbloomEF.png"
|
||||
dest_files=["res://.godot/imported/ENbloomEF.png-6f0bbddf2292f381cff69ca0a99a41c2.s3tc.ctex", "res://.godot/imported/ENbloomEF.png-6f0bbddf2292f381cff69ca0a99a41c2.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/ENbloomEF.png-6f0bbddf2292f381cff69ca0a99a41c2.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dwdjqnur5fav0"
|
||||
path.s3tc="res://.godot/imported/ENcollabEF.png-4b268aa48618d46ffbbf8e14d5968cf3.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/ENcollabEF.png-4b268aa48618d46ffbbf8e14d5968cf3.etc2.ctex"
|
||||
path="res://.godot/imported/ENcollabEF.png-4b268aa48618d46ffbbf8e14d5968cf3.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Icons/ENcollabEF.png"
|
||||
dest_files=["res://.godot/imported/ENcollabEF.png-4b268aa48618d46ffbbf8e14d5968cf3.s3tc.ctex", "res://.godot/imported/ENcollabEF.png-4b268aa48618d46ffbbf8e14d5968cf3.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/ENcollabEF.png-4b268aa48618d46ffbbf8e14d5968cf3.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://642o1bwe7oxc"
|
||||
path.s3tc="res://.godot/imported/ENgift.png-d7488bb72528e7d4ac44ce6c773167fa.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/ENgift.png-d7488bb72528e7d4ac44ce6c773167fa.etc2.ctex"
|
||||
path="res://.godot/imported/ENgift.png-d7488bb72528e7d4ac44ce6c773167fa.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Icons/ENgift.png"
|
||||
dest_files=["res://.godot/imported/ENgift.png-d7488bb72528e7d4ac44ce6c773167fa.s3tc.ctex", "res://.godot/imported/ENgift.png-d7488bb72528e7d4ac44ce6c773167fa.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/ENgift.png-d7488bb72528e7d4ac44ce6c773167fa.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://nj7pj3bqpxew"
|
||||
path.s3tc="res://.godot/imported/bloomEF.png-a57ef6c89f11775ddfb9322f35cbbb04.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/bloomEF.png-a57ef6c89f11775ddfb9322f35cbbb04.etc2.ctex"
|
||||
path="res://.godot/imported/bloomEF.png-a57ef6c89f11775ddfb9322f35cbbb04.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Icons/bloomEF.png"
|
||||
dest_files=["res://.godot/imported/bloomEF.png-a57ef6c89f11775ddfb9322f35cbbb04.s3tc.ctex", "res://.godot/imported/bloomEF.png-a57ef6c89f11775ddfb9322f35cbbb04.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/bloomEF.png-a57ef6c89f11775ddfb9322f35cbbb04.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://6qawumi4sj35"
|
||||
path.s3tc="res://.godot/imported/collabEF.png-3d5bcd893201111a9beb8ac7f67a0218.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/collabEF.png-3d5bcd893201111a9beb8ac7f67a0218.etc2.ctex"
|
||||
path="res://.godot/imported/collabEF.png-3d5bcd893201111a9beb8ac7f67a0218.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Icons/collabEF.png"
|
||||
dest_files=["res://.godot/imported/collabEF.png-3d5bcd893201111a9beb8ac7f67a0218.s3tc.ctex", "res://.godot/imported/collabEF.png-3d5bcd893201111a9beb8ac7f67a0218.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/collabEF.png-3d5bcd893201111a9beb8ac7f67a0218.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dckvo2drp1rp3"
|
||||
path.s3tc="res://.godot/imported/gift.png-db2891a04e3a67b72db7420c55abca26.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/gift.png-db2891a04e3a67b72db7420c55abca26.etc2.ctex"
|
||||
path="res://.godot/imported/gift.png-db2891a04e3a67b72db7420c55abca26.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Icons/gift.png"
|
||||
dest_files=["res://.godot/imported/gift.png-db2891a04e3a67b72db7420c55abca26.s3tc.ctex", "res://.godot/imported/gift.png-db2891a04e3a67b72db7420c55abca26.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/gift.png-db2891a04e3a67b72db7420c55abca26.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dmot806y76won"
|
||||
path.s3tc="res://.godot/imported/tokkou_50_blue.png-d22bcb24a0bd6da682fa48d89fe51fa0.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/tokkou_50_blue.png-d22bcb24a0bd6da682fa48d89fe51fa0.etc2.ctex"
|
||||
path="res://.godot/imported/tokkou_50_blue.png-d22bcb24a0bd6da682fa48d89fe51fa0.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Icons/tokkou_50_blue.png"
|
||||
dest_files=["res://.godot/imported/tokkou_50_blue.png-d22bcb24a0bd6da682fa48d89fe51fa0.s3tc.ctex", "res://.godot/imported/tokkou_50_blue.png-d22bcb24a0bd6da682fa48d89fe51fa0.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/tokkou_50_blue.png-d22bcb24a0bd6da682fa48d89fe51fa0.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c8kqfiug18aoi"
|
||||
path.s3tc="res://.godot/imported/tokkou_50_green.png-a034fc62fee92710b601223cc020a3d1.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/tokkou_50_green.png-a034fc62fee92710b601223cc020a3d1.etc2.ctex"
|
||||
path="res://.godot/imported/tokkou_50_green.png-a034fc62fee92710b601223cc020a3d1.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Icons/tokkou_50_green.png"
|
||||
dest_files=["res://.godot/imported/tokkou_50_green.png-a034fc62fee92710b601223cc020a3d1.s3tc.ctex", "res://.godot/imported/tokkou_50_green.png-a034fc62fee92710b601223cc020a3d1.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/tokkou_50_green.png-a034fc62fee92710b601223cc020a3d1.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://jmo0dt4oav6s"
|
||||
path.s3tc="res://.godot/imported/tokkou_50_purple.png-37bac2e2a0eb3fb4511489cd95e22fed.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/tokkou_50_purple.png-37bac2e2a0eb3fb4511489cd95e22fed.etc2.ctex"
|
||||
path="res://.godot/imported/tokkou_50_purple.png-37bac2e2a0eb3fb4511489cd95e22fed.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Icons/tokkou_50_purple.png"
|
||||
dest_files=["res://.godot/imported/tokkou_50_purple.png-37bac2e2a0eb3fb4511489cd95e22fed.s3tc.ctex", "res://.godot/imported/tokkou_50_purple.png-37bac2e2a0eb3fb4511489cd95e22fed.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/tokkou_50_purple.png-37bac2e2a0eb3fb4511489cd95e22fed.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://enh4wvoo81sc"
|
||||
path.s3tc="res://.godot/imported/tokkou_50_red.png-13cb55976081e0d685e96d0eca2c6a2a.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/tokkou_50_red.png-13cb55976081e0d685e96d0eca2c6a2a.etc2.ctex"
|
||||
path="res://.godot/imported/tokkou_50_red.png-13cb55976081e0d685e96d0eca2c6a2a.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Icons/tokkou_50_red.png"
|
||||
dest_files=["res://.godot/imported/tokkou_50_red.png-13cb55976081e0d685e96d0eca2c6a2a.s3tc.ctex", "res://.godot/imported/tokkou_50_red.png-13cb55976081e0d685e96d0eca2c6a2a.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/tokkou_50_red.png-13cb55976081e0d685e96d0eca2c6a2a.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dieh44hp11ukf"
|
||||
path.s3tc="res://.godot/imported/tokkou_50_white.png-820869330fb268f22b86fbaf34ab9587.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/tokkou_50_white.png-820869330fb268f22b86fbaf34ab9587.etc2.ctex"
|
||||
path="res://.godot/imported/tokkou_50_white.png-820869330fb268f22b86fbaf34ab9587.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Icons/tokkou_50_white.png"
|
||||
dest_files=["res://.godot/imported/tokkou_50_white.png-820869330fb268f22b86fbaf34ab9587.s3tc.ctex", "res://.godot/imported/tokkou_50_white.png-820869330fb268f22b86fbaf34ab9587.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/tokkou_50_white.png-820869330fb268f22b86fbaf34ab9587.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://d1tgp5jxi1pd6"
|
||||
path.s3tc="res://.godot/imported/tokkou_50_yellow.png-3951be36e46e39ed6a19dad3b2470500.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/tokkou_50_yellow.png-3951be36e46e39ed6a19dad3b2470500.etc2.ctex"
|
||||
path="res://.godot/imported/tokkou_50_yellow.png-3951be36e46e39ed6a19dad3b2470500.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Icons/tokkou_50_yellow.png"
|
||||
dest_files=["res://.godot/imported/tokkou_50_yellow.png-3951be36e46e39ed6a19dad3b2470500.s3tc.ctex", "res://.godot/imported/tokkou_50_yellow.png-3951be36e46e39ed6a19dad3b2470500.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/tokkou_50_yellow.png-3951be36e46e39ed6a19dad3b2470500.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
318
README.md
318
README.md
@@ -1,27 +1,307 @@
|
||||
# holoDelta
|
||||
An unofficial Hololive TCG simulator, worked on in my spare time.
|
||||
# holoDelta Quick Start Guide
|
||||
|
||||
## Quick start
|
||||
You can download the application at https://github.com/GabeJWJ/holoDelta/releases/latest for Windows, Mac, and Linux. The application is standalone and needs nothing else to run.
|
||||
|
||||
Try the game now at https://holodelta.azurewebsites.net/game/index.html!
|
||||
There is also a web version at holodelta.net or holodelta.azurewebsites.net (either should work but azure can be weird so try the other if one doesn’t work). The web version is not ideal for several reasons, so I recommend you use the application if you intend to use delta a lot.
|
||||
|
||||
To setup and run the web server locally:
|
||||
```bash
|
||||
git clone https://github.com/GabeJWJ/holoDelta.git
|
||||
cd holoDelta/ServerStuff
|
||||
python -m pip install -r requirements.txt
|
||||
uvicorn server:app --reload
|
||||
```
|
||||
If you use the Mac version, you will need to take some special steps
|
||||
After extracting zip file somewhere, open a terminal at the folder containing the app and run the command xattr -dr com.apple.quarantine "holoDelta.app"
|
||||
|
||||
Notes for setting up:
|
||||
- For running your own version of the server, all you need is in the "ServerStuff" folder, with the exception of a "holodelta_web" folder containing a web export of the project. DO NOT EXPORT WITH DEBUG.
|
||||
- Change the "websocketURL" in server.gd to wherever you're running your local server.
|
||||
- You may need to set "WebSocket" in "board" to not use WSS.
|
||||
The discord is at https://discord.com/invite/dDCpFMMENM.
|
||||
|
||||
## Contributing
|
||||
|
||||
See [CONTRIBUTING.md](CONTRIBUTING.md). **I am committed to accepting and encouraging community contributions!** The code is a mess. I am sure it is needlessly confusing and wildly inconsistent in style and format.
|
||||
# Setup
|
||||
|
||||
If you are interested in contributing but are confused by the code, please message me on Discord. I can be found on the [Hololive OCG Fan Server](https://discord.com/invite/dDCpFMMENM).
|
||||
If things go smoothly, there should be no setup on your part. The application will automatically download the latest cardData.zip file to the correct location and connect to the server.
|
||||
|
||||
If you saw something here about a bounty, Saum over on Discord immediately got it.
|
||||
If the application fails to download the cardData.zip file, it will throw up an error and try to send you to https://github.com/GabeJWJ/holoDelta/releases/tag/CardData to manually download the file. There are instructions there, but essentially you need to download cardData.zip (not cardData.db) and place it unextracted in your “user folder.”
|
||||
|
||||
If the application fails to connect to the server… sorry. Try again in a bit; the server may just be updating.
|
||||
|
||||
|
||||
# User Folder
|
||||
|
||||
I will refer at several points to a “user folder.” In fact, I already did so earlier. This is where the persistent files that delta needs to work correctly are stored. Where this folder is depends on your OS.
|
||||
|
||||
Windows: C://Users/[name]/AppData/Roaming/Godot/app_userdata/HoloDelta (May change if you remapped %APPDATA%)
|
||||
Linux: ~/.local/share/godot/app_userdata/HoloDelta
|
||||
MacOS: ~/Library/Application Support/Godot/app_userdata/HoloDelta
|
||||
|
||||
Note that you may need to enable the ability to view hidden files/folders in your file browser.
|
||||
|
||||
On the main menu, if you click “Info” and then “Deck Location” it will open your decks folder, which is in your user folder.
|
||||
|
||||
The user folder contains cardData.zip, settings.json, your decks folder, and a logs folder. Also some other weird folders Godot uses, but those are the only ones you need to worry about.
|
||||
|
||||
The website technically also has a user folder somewhere in your cookies, but I don’t know how to access it. There are workarounds for the things you would need.
|
||||
|
||||
|
||||
# Updates
|
||||
|
||||
On the bottom right of the main menu, you can see your current Client Version and Card Version.
|
||||
|
||||
Client Version refers to the application itself and is notated with the 1.[Major].[Minor].[Patch] system. This will not show on the website.
|
||||
|
||||
Card Version refers to the database of cards that the simulator is using and is notated with the date of the last update.
|
||||
|
||||
When launching the application, if it detects a client update it will point you to the github page to download the latest version. I can’t overwrite the executable you’re currently running, so you have to download it yourself. If it detects a card update, it can download that itself. You may choose not to though, in case you need to quickly do something or you know you’ll have to manually download it anyway.
|
||||
|
||||
|
||||
# Basic Settings
|
||||
|
||||
If you click the gear icon on the top right of the main menu, you’ll see the settings menu.
|
||||
|
||||
“Match Card Language” will attempt to change the card images to be in the language you have your client set to. If that’s on, “Allow Proxies” will allow for proxies to be used when an official version in your language is unavailable. That currently does very little, so don’t worry about it.
|
||||
|
||||
There are two separate volume sliders for the sound effects and background music.
|
||||
|
||||
There is a whole section to change keybindings.
|
||||
|
||||
|
||||
# Language
|
||||
|
||||
The middle button in the group of three on the bottom left changes the language of the client. Note that not all languages have translated everything; it will fall back to English when it can’t find a translation.
|
||||
|
||||
The languages that are in delta are precisely the ones that people donate their time to. If you would like to help translate delta into your language, please DM me. I can get that set up. I can also accept proxies in different languages. Just make sure you have permission from whoever made them.
|
||||
|
||||
|
||||
# Only EN
|
||||
|
||||
The English and Japanese versions of the game are (for now at least) separate with distinct cardpools and restriction lists. As such, delta can go between the two using the “Only EN” button on the main menu.
|
||||
|
||||
With “Only EN” enabled, you will still be able to use all of the different alt arts of each card even if they are only in Japanese. You will just only be able to use cards that are legal in EN play. This is for logistical reasons (ask about Friendly PC).
|
||||
|
||||
This setting changes not only what cards appear in the deckbuilder, but also what shows up in your list of decks and what lobbies/games are visible to you. This is why it’s on the main menu and not in the deckbuilder.
|
||||
|
||||
If you have this setting off you can still see and join “Only EN” lobbies, but they will be marked as such.
|
||||
|
||||
|
||||
# Decks
|
||||
|
||||
Decks are stored in json files in the decks subfolder of your “user folder.” On the application, you can go to the main menu and click “Info” then “Deck Location” to go to this folder to share the files.
|
||||
|
||||
On the website it is difficult to find the actual folder, so there is an “Import/Export (WIP)” tab in the deck builder with a button to download the JSON file. It will be disabled if the deck is not legal, so please check the tooltip on the save button for current issues.
|
||||
|
||||
When loading a deck, if you scroll to the bottom of the list you’ll see a “Load From File” button that can load a deck from a json file. This won’t add the deck to your decks folder though; you’ll need to load the file in your deckbuilder and then save it there.
|
||||
|
||||
When loading a deck, each deck button has a red trash can icon in the top left. Clicking that will delete the deck.
|
||||
|
||||
|
||||
# Deckbuilder
|
||||
|
||||
If you click the “Create/Edit Deck” button on the main menu, it will take you to the deck builder. There’s a lot here, so I’ll try to focus on the non-obvious parts.
|
||||
|
||||
Left clicking a card (either in the deck or on the rightside panel) will add a copy of that card to your deck. Right clicking it will remove a copy. The exception is oshis which can only be added, overwriting whatever oshi is currently there.
|
||||
|
||||
On the cheer panel, there are buttons for multipliers. This will determine how many copies will be added (resp. removed) when left (resp. right) clicking a cheer card on the side panel. Left and right clicking on the cheer in the deck will always add or remove exactly one copy.
|
||||
|
||||
The arrows underneath cards on the right panel will change what alternate art you’re using for the card. You can mix and match.
|
||||
|
||||
The searchbar will search the card’s entire raw text, including the behind-the-scenes commands that cause images to appear in the info panel. As such, there may be some strange results when searching.
|
||||
|
||||
If the save button is greyed out, there’s probably an issue with the legality of your deck. Hovering over the save button will display a popup with a list of reasons the deck is currently illegal.
|
||||
|
||||
The textbox below the deck is for the display name of the deck. This is what will appear in your list of decks when picking one to play.
|
||||
|
||||
When you go to save the deck, you will be given two options. You can overwrite an existing deck file by clicking on the corresponding button (you do not hit “Save”), or you can type a filename (not including the .json) in the textbox below and hit “Save.”
|
||||
|
||||
On the website there is an “Import/Export (WIP)” tab in the deck builder with a button to download the JSON file. It will be disabled if the deck is not legal, so please check the tooltip on the save button for current issues.
|
||||
|
||||
|
||||
# Connection
|
||||
|
||||
I’ll start off this section with a preemptive apology for how bad the server connection is. The internet is not my area of expertise.
|
||||
|
||||
I’m hosting the server with Microsoft Azure, and it pisses me off. It has in the past just suddenly made the connection unusable for like a month with no discernible explanation.
|
||||
|
||||
If your connection flickers even briefly, you will be kicked from the game and be unable to rejoin. If you have an unstable internet connection, I’m sorry but it will be difficult and frustrating to use delta.
|
||||
|
||||
For some reason Azure has multiple instances of the server (usually just two) you can connect to even though it really shouldn’t. As such, you may not be able to see a lobby/game you know exists. In the top left of the main menu, there is a “Quick Refresh” button that will retry connecting the server, potentially connecting to the other instance. The randomly-generated instance ID is written beneath that button, so you can tell when it changes or coordinate with a friend to be sure you’re on the same instance.
|
||||
|
||||
I recognize that’s annoying, but I can’t stress enough that I didn’t choose this and have no control over it.
|
||||
|
||||
It is theoretically possible though vanishingly unlikely that both instances generate the same ID, at which point idk yell at me and I’ll restart the server.
|
||||
|
||||
Also, the only thing you can do without being connected to the server is build a deck.
|
||||
|
||||
|
||||
# Loading Card Images
|
||||
|
||||
The most storage/memory-intensive part of delta by far is storing/loading all of the images for the cards. I would imagine this is not unusual for simulators.
|
||||
|
||||
Delta uses a system that will asynchronously load the card images as needed. This shouldn’t be very noticeable in-game (maybe you’ll be able to see some cards loading at the very start), but will be rather noticeable in the deckbuilder as it needs to load many cards at once. It should still be fully functional while cards are loading, but please have patience with it.
|
||||
|
||||
In fact the deckbuilder will only immediately load the ‘first’ art of each card when opened, saving the alt arts to only be loaded when you click over to them.
|
||||
|
||||
The storage issue comes into play with the website. Packaging the card images into the actual webapp will result in a deliverable that is way too large to be feasible. As such, the website does not have the card images stored and will instead attempt to download each card image from github as needed. This will be much more noticeable than the loading on the app version, so please be patient.
|
||||
|
||||
The website will attempt to store these downloaded images in your cookies for quick use later on, but this repository will have to be deleted every time the card database updates. This is because images get updated rather regularly and there is no mechanism to sort out which ones were updated.
|
||||
|
||||
|
||||
# How To Play The Hololive OCG
|
||||
|
||||
I mean, I should cover my bases.
|
||||
|
||||
You can find the official rule book at https://en.hololive-official-cardgame.com/wp-content/themes/tcg_en/assets/img/rule/official_rule_book_ver1_02.pdf (it is remarkably thorough – I approve).
|
||||
|
||||
For a quick overview, you can look at the quick manual at https://en.hololive-official-cardgame.com/wp-content/themes/tcg_en/assets/img/rule/quick_manual_260507.pdf.
|
||||
|
||||
If you prefer to watch a video to see the game more in action, you can check out the official caravan learning video narrated by Kiara at https://www.youtube.com/watch?v=_-9QjVI7vcg.
|
||||
|
||||
That video is kind of slow-paced because of the context it was presented in though, so you may prefer Liam of Weiss And Chill’s video at https://www.youtube.com/watch?v=ebk0F7vsalU.
|
||||
|
||||
On the other end of the spectrum would be my own video that spends the first ~40 minutes on a very thorough overview of how to play the game (including a full sample game) addressing as many common confusions as I could at https://www.youtube.com/watch?v=3T2tVYqvGvo. I’ll be the first to admit though that I may have overdone it and it’s kind of hard to follow without a baseline understanding.
|
||||
|
||||
Also, all three of the videos are outdated because there were some rule changes. Your oshi cards are revealed to your opponent from the very start of the preliminary phase, and the mulligan rules were changed (for the better). Refer to the official rule book for the new mulligan system.
|
||||
|
||||
|
||||
# Online Play
|
||||
|
||||
The stack of buttons in the center of the main menu are related to actually playing a game.
|
||||
|
||||
The text field at the top sets your in-game name. There is no account syncing or username reservation.
|
||||
|
||||
“Create Lobby” takes you to a menu to select options for hosting a new lobby. The “Private” toggle will make it so that the lobby doesn’t appear in the “Join Lobby” menu and must be joined directly. The “Allow Public Spectators” toggle will make it so that the game you eventually create will appear in the “Spectate Game” menu. The “Banlist” dropdown will select what banlist both you and your opponent will be beholden to.
|
||||
|
||||
“Join Lobby” takes you to a menu to join an existing lobby. You can click on any public lobby to join it, or you can enter the code of a private lobby in the text field at the bottom and click “Join Lobby” (or press Enter).
|
||||
|
||||
“Spectate Game” takes you to a menu to spectate an existing game. You can click on any publicly-viewable game to spectate it, or you can enter the code of a game in the text field at the bottom and click “Spectate Game” (or press Enter). You find the code of a game you’re part of by going to the settings tab on the sidebar.
|
||||
|
||||
Delta currently does not offer matchmaking. Please play with friends or find someone to play with using the #lfg channel in the discord.
|
||||
|
||||
|
||||
# Navigating A Lobby
|
||||
|
||||
The lobby menu is split into two parts. On the right, you have the lobby code to share for private lobbies and the list of potential opponents. The host can choose one to battle. On the left, you and your opponent can select decks and ready up. If your chosen deck isn’t legal, you will get a message back from the server explaining what the problem is. The host can choose a new opponent even after their current one readies up.
|
||||
|
||||
Once both players have chosen their decks and readied up, the host can press “Start Game” on the bottom right to begin. Any unchosen players will be given a prompt to spectate the game if “Allow Public Spectators” was selected when creating the lobby.
|
||||
|
||||
|
||||
# Banlists
|
||||
|
||||
The hololive OCG does not currently have a ‘banlist’ so to speak, but it does have a restriction list of cards that are restricted to one copy. This can change over time and be different between versions (EN and JP).
|
||||
|
||||
There are also regularly cards in holoDelta that have not actually been released yet (as there is a lengthy spoiler season before a new set comes out).
|
||||
|
||||
The “Current” banlist enforces the restriction list and forbids using any unreleased cards. The “Current + Unreleased” banlist only enforce the restriction list but permits unreleased cards. The “Current (EN)” and “Current + Unreleased (EN)” banlists do the same but for the EN format. Although the latter has yet to be different from the former.
|
||||
|
||||
|
||||
# Goldfishing
|
||||
|
||||
In the context of trading card games, the word “goldfish” as a verb means to play a game with just one deck (or with an impotent opponent). The purpose is usually to test that one deck, going through the motions to see what thresholds it is or isn’t hitting and labbing out combos/interactions.
|
||||
|
||||
You can press the “Goldfish” button on the main menu to do this in delta. You select a deck and then play against an empty field. Every time you end your turn, your “opponent” immediately passes.
|
||||
|
||||
You can click on any of the opponent’s zones to add damage to them to simulate the outcomes of your attacks/effects. Hovering over a zone will show you a turn-by-turn breakdown of marginal/total damage to see what thresholds you’re hitting.
|
||||
|
||||
You can also add notes to the opponent’s zones to denote things like critical hit damage or non-damage effects.
|
||||
|
||||
I’m not really sure what goes into a good goldfish mode, so feel free to suggest improvements.
|
||||
|
||||
|
||||
# Starting A Game
|
||||
|
||||
When you get into a game with an opponent, you will play rock-paper-scissors until a winner is determined. Then the winner will decide whether they would like to go first or second.
|
||||
|
||||
Then starting hands are dealt and the mulligan process begins. After all mulligans are done, your opponent will see all of the cards you were forced to mulligan. This is a notable departure from Real Play where you have to show your hand each time you do a forced mulligan.
|
||||
|
||||
You must place a debut holomem in the center position by clicking on one in your hand and selecting “Place facedown in center.” If you needed to do forced mulligans, you must click on cards in hand and select “Send to bottom of deck.” You may place up to 5 more debuts/spots to the back by clicking on them in your hand and selecting “Place facedown in back.”
|
||||
|
||||
After this, you may press the “Ready” button. After both players ready up, the game begins with the first player’s first turn.
|
||||
|
||||
|
||||
# holoDelta Is (Mostly) Manual
|
||||
|
||||
Delta is not an automated simulator. There are many alternative simulators in #fan-projects on the discord if that is non-negotiable.
|
||||
|
||||
Delta is also not a fully manual simulator where “cards is cards” and you just have a few generic options with the game not knowing any rules for itself. To cut this off at the pass, it is very non-trivial to turn delta into such a simulator (even as just an option).
|
||||
|
||||
The guiding principle of holoDelta is that it will do as much as it can without taking into account any of the text on the card. This is more than you may think at first blush.
|
||||
|
||||
To get to the point, holoDelta is a manual simulator. If you play Harusaki Nodoka (hSD01-016), then holoDelta will not draw 3 cards and archive the Nodoka. You will need to click on your main deck, select “Draw X” from the popup, and type in ‘3’ for X in the window that appears. Then you will have to click the Nodoka in the resolution zone and select “Archive” from the popup.
|
||||
|
||||
However, there are many aspects of the game that holoDelta will take care of by itself. If you click a back holomem and select “Collab” from the popup, then that holomem will go to the collab position and the top card of your main deck will be placed into holopower facedown automatically. If that holomem is rested, or you’ve already collabed once that turn, or your main deck is empty, then the option to “Collab” will not appear.
|
||||
|
||||
Similarly, the command to “Play” a limited support card will not appear if it is the first player’s first turn or you’ve already used a limited card that turn.
|
||||
|
||||
There are also commands that get around these limitations, like “Move to collab position” and “Play (anyway).”
|
||||
|
||||
The “Bloom” command will take all of the blooming restrictions (Name, level, HP, played this turn) into account when giving you your options. Unless, of course, you use one of the commands that bypasses some of these restrictions.
|
||||
|
||||
If one of the victory conditions is met, a window will ask the losing player if they truly did lose to that victory condition (since mistakes can happen). Selecting “Yes” will end the game.
|
||||
|
||||
|
||||
# Info Panel
|
||||
|
||||
The Info Panel is on the left of the screen in-game and in the deckbuilder. Hovering over a card will show that card’s information on the info panel. The majority of what’s shown is self-explanatory.
|
||||
|
||||
If the card has attachments (or was bloomed on top of other cards), they will be presented in a stack that you can switch between using the mouse wheel. This is with the notable exception of any cheer attached, which are instead represented with a row of icons below the card image. Note that you can click on a holomem (even an opponent’s holomem) and select the “Look at attached” or “Look at past blooms” command to get a better look at these cards and potentially take actions with them.
|
||||
|
||||
You can ‘lock’ the card shown on the info panel with a keybind (default CTRL) until you use the keybind again. The imagined use case for this is when a card has too much text to be displayed all at once, so you need to move your mouse over to the info panel and scroll. If another card is in the way, that could be annoying without a lock button. There is a lock icon on the info panel that will change opacity when frozen.
|
||||
|
||||
|
||||
# Communication
|
||||
|
||||
Being a manual simulator, you will need to communicate with your opponent to properly play the game (although I have attempted to minimize the necessity). The best method to do this will always be to be in a separate voice chat with your opponent, but there are a few tools in-game to assist with this.
|
||||
|
||||
Most notably, there is a chat feature in the sidebar. You can switch between the chat panel and the info panel by pressing the buttons on the side or using a keybind (default TAB). This chat panel also contains a game log of all actions taken by both players. A red circle will appear on the chat panel button if your opponent sends you a message while you’re on a different panel.
|
||||
|
||||
There is a phase tracker on the sidebar, and you can click between the different phases. These don’t do anything mechanically, but they can help make what you’re doing clearer to your opponent. There are keybinds (default [ and ]) to go between them. Keep in mind that going to the next phase while on the end phase will pass the turn.
|
||||
|
||||
Also, if you click on a card on the stage a brief animation will play of a flicker black border around that card. This is visible to your opponent, and can be used to single out a card without having to verbally describe it. I will admit the effect is a bit subtle though.
|
||||
|
||||
|
||||
# Non-obvious Commands
|
||||
|
||||
The majority of commands in holoDelta are – I believe – rather self-explanatory. The “Draw” command draws a card from the main deck, the “Play” command plays a card from hand, the “Shuffle hand into deck” command puts all cards in your hand into the main deck and then shuffles it, et cetera. Some however are not so easily understood.
|
||||
|
||||
There are many cards that subvert the usual rules to blooming/playing holomem, and so new commands needed to be made for them. A level 1 or 2 holomem will have a “Play directly” command that places that holomem directly onto the stage without needing to bloom them on top of another holomem. The “Instant bloom” command will bloom the chosen holomem onto a holomem that was played/bloomed that very turn. The “Skip bloom” command will bloom the chosen level 2 holomem directly onto a debut instead of a level 2 holomem.
|
||||
|
||||
If you click a holomem bloomed on top of another, you can select the “Unbloom” command to pick that holomem up back into your hand and leave the previous holomem still on the field.
|
||||
|
||||
We had issues in the past with people accidentally clicking the “Shuffle hand into the deck” command, so the “Unshuffle hand into deck” command was created to be able to undo that action. Note that taking any action that messes with the contents of the main deck will remove your ability to use this command, making the “Shuffle hand into deck” command permanent.
|
||||
|
||||
Clicking the main deck and selecting the “Play RPS” command will challenge your opponent to a game of Rock-Paper-Scissors.
|
||||
|
||||
|
||||
# Keybinds
|
||||
|
||||
There are a series of keybinds that can make certain game actions more convenient. The vast majority of these are rebindable in the options menu on the main menu.
|
||||
|
||||
The only non-rebindable shortcut is that right-clicking one of your holomem will rest/unrest it.
|
||||
|
||||
There is a keybind (default D) to draw a card from the main deck. Does not work if the main deck is empty.
|
||||
|
||||
There is a keybind (default C) to reveal the top card of your cheer deck and go straight into the menu to select a holomem to attach it to.
|
||||
|
||||
There is a keybind (default R) to do an entire standard reset phase. As in, it will unrest all of your holomem and then move your collab holomem to the back and rest it. This one is a serious timesaver.
|
||||
|
||||
There is a keybind (default TAB) to switch between the info panel and chat panel.
|
||||
|
||||
There is a keybind (default CTRL) to lock/unlock the info panel.
|
||||
|
||||
There is a keybind (default [) to return to the previous phase in the phase tracker. It will do nothing if used on the first phase of the turn.
|
||||
|
||||
There is a keybind (default ]) to go to the next phase in the phase tracker. It will pass the turn if used on the end phase.
|
||||
|
||||
|
||||
# Future Features
|
||||
|
||||
I am busy, both with ‘real’ work and just other personal projects I’d like to do. As such, updates have been slow and infrequent lately (though I place a strong emphasis on keeping things up-to-date). I have a lengthy list of features I’d like to implement without even getting into the massive undertakings like implementing custom cards or some form of automation.
|
||||
|
||||
If you have suggestions for how holoDelta could be improved to add to that list, please speak up in #delta-suggestion on the discord. If you encounter something you believe to be a bug, please speak up in #delta-bug-reports on the discord. If you do, please try to give as much relevant information as possible as to what was happening around the suspected glitch. Also, reports of things relating to the server connection will probably just be shrugged at, as that is known to be messed up and I am very uneducated about how to make the internet work well.
|
||||
|
||||
Also, holoDelta is open-source and I welcome contributions. The code probably needs to be cleaned up and commented for this to be very feasible, but if you reach out to me I will be happy to explain any mysterious portions. I should also implement some github issues for various features to make it easier for other to implement them, but again – busy.
|
||||
|
||||
|
||||
# Adding Cards To holoDelta
|
||||
|
||||
Lately, I’ve been trying to not be the one updating the card database that delta uses. I am rather busy and would prefer to spend whatever time I can find for delta on updates instead.
|
||||
|
||||
I still will update it myself if no one takes it up (after the entire set including alt arts has been posted to the official website), but I would greatly appreciate someone else taking it up.
|
||||
|
||||
I have a janky program that I use to (relatively) quickly add cards to the database, and I made an unlisted video explaining how to use it at https://youtu.be/RsnDqGhRm1E. The relevant links are also in that video’s description.
|
||||
|
||||
Keep in mind that it’s okay to make some mistakes, as fixing a scattering of errors is much easier and less time-consuming for me than adding every card myself. You do need to include the Japanese text though. That part is non-negotiable.
|
||||
|
||||
Yes, there should be a better method for this. I’ve been meaning to work on one, but again – busy.
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/SPmarker.webp-a3e7001ff7e61b45a570b56d60c29c4
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -1,18 +1,19 @@
|
||||
[gd_scene load_steps=4 format=3 uid="uid://ytwles2vik3j"]
|
||||
[gd_scene format=3 uid="uid://ytwles2vik3j"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://djuk0g87nhrhc" path="res://cardbutton.png" id="1_5o57l"]
|
||||
[ext_resource type="Script" path="res://Scripts/better_texture_button.gd" id="1_pfkje"]
|
||||
[ext_resource type="Script" uid="uid://dre8r4gtuwmmd" path="res://Scripts/better_texture_button.gd" id="1_pfkje"]
|
||||
[ext_resource type="PackedScene" uid="uid://dfjyb5e027l76" path="res://Scenes/card_front.tscn" id="2_dd5cp"]
|
||||
[ext_resource type="Texture2D" uid="uid://ckina22q7em5y" path="res://cardbuttonhover.png" id="2_wtcn7"]
|
||||
|
||||
[node name="betterTextureButton" type="Node2D"]
|
||||
[node name="betterTextureButton" type="Node2D" unique_id=2078928601]
|
||||
script = ExtResource("1_pfkje")
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="."]
|
||||
[node name="CardFront" parent="." unique_id=234445103 instance=ExtResource("2_dd5cp")]
|
||||
offset_right = 309.0
|
||||
offset_bottom = 429.0
|
||||
scale = Vector2(0.75, 0.75)
|
||||
|
||||
[node name="TextureButton" type="TextureButton" parent="."]
|
||||
[node name="TextureButton" type="TextureButton" parent="." unique_id=1672062423]
|
||||
offset_right = 309.0
|
||||
offset_bottom = 429.0
|
||||
scale = Vector2(0.75, 0.75)
|
||||
|
||||
@@ -968,6 +968,11 @@ layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
placeholder_text = "LOBBY_GAMECODE"
|
||||
|
||||
[node name="PasteGameCodeButton" type="Button" parent="CanvasLayer/SpectatePanel/SpectateListMargins/SpectateVBox/LobbyCodeHBox" unique_id=1939481952]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
text = "LOBBY_SPECTATECODE_PASTE"
|
||||
|
||||
[node name="SpectateByCode" type="Button" parent="CanvasLayer/SpectatePanel/SpectateListMargins/SpectateVBox/LobbyCodeHBox" unique_id=1601458461]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
@@ -1482,6 +1487,13 @@ context_menu_enabled = true
|
||||
selection_enabled = true
|
||||
deselect_on_focus_loss_enabled = false
|
||||
|
||||
[node name="CopyGameCodeButton" type="Button" parent="CanvasLayer/Sidebar/SidebarHBox/OptionMargins/OptionsVBox" unique_id=1092887559]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
theme = ExtResource("5_fdkx6")
|
||||
theme_override_font_sizes/font_size = 15
|
||||
text = "LOBBY_GAMECODE_COPY"
|
||||
|
||||
[node name="SFXLabel" type="Label" parent="CanvasLayer/Sidebar/SidebarHBox/OptionMargins/OptionsVBox" unique_id=885354296]
|
||||
auto_translate_mode = 2
|
||||
layout_mode = 2
|
||||
@@ -2236,6 +2248,7 @@ bus = &"BGM"
|
||||
unique_name_in_owner = true
|
||||
script = ExtResource("20_v32ia")
|
||||
route = "/ws"
|
||||
use_WSS = false
|
||||
autoconnect_mode = 2
|
||||
|
||||
[node name="Timer" type="Timer" parent="." unique_id=1611810139]
|
||||
@@ -2281,6 +2294,7 @@ one_shot = true
|
||||
[connection signal="pressed" from="CanvasLayer/GoldfishStartMenu/LobbyCreateMargins/LobbyCreateVBox/CreateBack" to="." method="_close_goldfish_menu"]
|
||||
[connection signal="text_changed" from="CanvasLayer/SpectatePanel/SpectateListMargins/SpectateVBox/LobbyCodeHBox/SpectateListCode" to="." method="update_spectate_from_code_button"]
|
||||
[connection signal="text_submitted" from="CanvasLayer/SpectatePanel/SpectateListMargins/SpectateVBox/LobbyCodeHBox/SpectateListCode" to="." method="spectate_game"]
|
||||
[connection signal="pressed" from="CanvasLayer/SpectatePanel/SpectateListMargins/SpectateVBox/LobbyCodeHBox/PasteGameCodeButton" to="." method="_on_paste_game_code_button_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/SpectatePanel/SpectateListMargins/SpectateVBox/LobbyCodeHBox/SpectateByCode" to="." method="spectate_game_from_code"]
|
||||
[connection signal="pressed" from="CanvasLayer/SpectatePanel/SpectateListMargins/SpectateVBox/HBoxContainer/Refresh" to="." method="find_games"]
|
||||
[connection signal="pressed" from="CanvasLayer/SpectatePanel/SpectateListMargins/SpectateVBox/HBoxContainer/SpectateBack" to="." method="close_game_list"]
|
||||
@@ -2302,6 +2316,7 @@ one_shot = true
|
||||
[connection signal="pressed" from="CanvasLayer/Sidebar/SidebarHBox/ButtonMargins/Buttons/OptionTabButton" to="." method="_on_sidebar_options_pressed"]
|
||||
[connection signal="text_submitted" from="CanvasLayer/Sidebar/SidebarHBox/ChatVBoxMargins/ChatVBox/ChatHBox/ToSend" to="." method="send_message"]
|
||||
[connection signal="pressed" from="CanvasLayer/Sidebar/SidebarHBox/ChatVBoxMargins/ChatVBox/ChatHBox/Send" to="." method="send_message_on_click"]
|
||||
[connection signal="pressed" from="CanvasLayer/Sidebar/SidebarHBox/OptionMargins/OptionsVBox/CopyGameCodeButton" to="." method="_on_copy_game_code_button_pressed"]
|
||||
[connection signal="drag_ended" from="CanvasLayer/Sidebar/SidebarHBox/OptionMargins/OptionsVBox/InGameSFXSlider" to="." method="_on_sfx_slider_drag_ended"]
|
||||
[connection signal="drag_started" from="CanvasLayer/Sidebar/SidebarHBox/OptionMargins/OptionsVBox/InGameSFXSlider" to="." method="_on_sfx_slider_drag_ended"]
|
||||
[connection signal="value_changed" from="CanvasLayer/Sidebar/SidebarHBox/OptionMargins/OptionsVBox/InGameSFXSlider" to="." method="_on_sfx_slider_value_changed"]
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://dfjyb5e027l76"]
|
||||
[gd_scene format=3 uid="uid://dfjyb5e027l76"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://gxcpgcuj06xt" path="res://Sou_Desu_Ne.png" id="1_801l5"]
|
||||
[ext_resource type="Script" uid="uid://cbqwkwthyf3os" path="res://Scripts/card_front.gd" id="1_krnet"]
|
||||
[ext_resource type="Texture2D" uid="uid://cthuygpaehwok" path="res://loadingImage.webp" id="2_cqdtj"]
|
||||
|
||||
[node name="CardFront" type="Control"]
|
||||
[node name="CardFront" type="Control" unique_id=234445103]
|
||||
layout_mode = 3
|
||||
anchor_right = 0.241
|
||||
anchor_bottom = 0.596
|
||||
@@ -13,7 +13,7 @@ grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_krnet")
|
||||
|
||||
[node name="Front" type="TextureRect" parent="."]
|
||||
[node name="Front" type="TextureRect" parent="." unique_id=1956821953]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 1
|
||||
anchors_preset = -1
|
||||
@@ -21,4 +21,4 @@ anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_right = -517.32
|
||||
offset_bottom = -657.56
|
||||
texture = ExtResource("1_801l5")
|
||||
texture = ExtResource("2_cqdtj")
|
||||
|
||||
39
Scenes/cheer_count.tscn
Normal file
39
Scenes/cheer_count.tscn
Normal file
@@ -0,0 +1,39 @@
|
||||
[gd_scene format=3 uid="uid://bqdqrhqhb0a3g"]
|
||||
|
||||
[ext_resource type="Theme" uid="uid://c2xsywtxro80x" path="res://Themes/button.tres" id="1_0kqii"]
|
||||
[ext_resource type="Script" uid="uid://1xx0yie53yhy" path="res://Scripts/cheer_count.gd" id="1_m0na4"]
|
||||
[ext_resource type="Texture2D" uid="uid://c8om4l4iai0xd" path="res://CheerIcons/Colorless.webp" id="2_0kqii"]
|
||||
[ext_resource type="FontFile" uid="uid://d1prs0o0rldol" path="res://CyberAssets/Main Menu Assets/TCG2SAB002.ttf" id="3_x0f58"]
|
||||
|
||||
[node name="CheerCount" type="Control" unique_id=952056579]
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
offset_right = 44.0
|
||||
offset_bottom = 44.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme = ExtResource("1_0kqii")
|
||||
script = ExtResource("1_m0na4")
|
||||
|
||||
[node name="CheerBase" type="TextureRect" parent="." unique_id=1457776428]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 1
|
||||
offset_right = 44.0
|
||||
offset_bottom = 44.0
|
||||
texture = ExtResource("2_0kqii")
|
||||
|
||||
[node name="Count" type="Label" parent="CheerBase" unique_id=426707352]
|
||||
unique_name_in_owner = true
|
||||
auto_translate_mode = 2
|
||||
layout_mode = 0
|
||||
offset_left = 1.0
|
||||
offset_top = -2.0
|
||||
offset_right = 44.0
|
||||
offset_bottom = 35.0
|
||||
theme_override_colors/font_color = Color(1, 1, 1, 1)
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 5
|
||||
theme_override_fonts/font = ExtResource("3_x0f58")
|
||||
theme_override_font_sizes/font_size = 25
|
||||
text = "20"
|
||||
horizontal_alignment = 2
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=15 format=3 uid="uid://w54g66g0fow1"]
|
||||
[gd_scene format=3 uid="uid://w54g66g0fow1"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://lmw0oejm2vaf" path="res://Scripts/deck_creation.gd" id="1_vhmc0"]
|
||||
[ext_resource type="Texture2D" uid="uid://cx76tmf8royup" path="res://CyberAssets/Game Side Menu/Side Menu.png" id="2_dcm3l"]
|
||||
@@ -15,39 +15,39 @@
|
||||
[ext_resource type="AudioStream" uid="uid://dx0hyqv3whb28" path="res://ChikuTaku The Game VGM Menu Select Watson Amelia WUNDER RiKU ✨ チクタク オリジナル曲.mp3" id="10_ncvki"]
|
||||
[ext_resource type="Script" uid="uid://dpmwhedq5ws5x" path="res://addons/HTTPManager/classes/HTTPManager.gd" id="11_h6gkd"]
|
||||
|
||||
[node name="DeckCreation" type="Node2D"]
|
||||
[node name="DeckCreation" type="Node2D" unique_id=767185352]
|
||||
script = ExtResource("1_vhmc0")
|
||||
|
||||
[node name="DeckBuilderBg" type="Sprite2D" parent="."]
|
||||
[node name="DeckBuilderBg" type="Sprite2D" parent="." unique_id=40775526]
|
||||
position = Vector2(587, 347)
|
||||
scale = Vector2(0.75, 0.75)
|
||||
texture = ExtResource("6_t38qv")
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="." unique_id=1958007491]
|
||||
|
||||
[node name="SideMenu" type="Sprite2D" parent="CanvasLayer"]
|
||||
[node name="SideMenu" type="Sprite2D" parent="CanvasLayer" unique_id=35074032]
|
||||
position = Vector2(-84, 0)
|
||||
scale = Vector2(1.01172, 0.997)
|
||||
texture = ExtResource("2_dcm3l")
|
||||
centered = false
|
||||
|
||||
[node name="InfoMargins" parent="CanvasLayer" instance=ExtResource("4_aw7bg")]
|
||||
[node name="InfoMargins" parent="CanvasLayer" unique_id=1468629795 instance=ExtResource("4_aw7bg")]
|
||||
unique_name_in_owner = true
|
||||
offset_right = 295.0
|
||||
offset_bottom = 685.0
|
||||
|
||||
[node name="PossibleCards" type="TabContainer" parent="CanvasLayer"]
|
||||
[node name="PossibleCards" type="TabContainer" parent="CanvasLayer" unique_id=1723327127]
|
||||
offset_left = 886.0
|
||||
offset_right = 1280.0
|
||||
offset_bottom = 720.0
|
||||
theme = ExtResource("3_da1xd")
|
||||
current_tab = 0
|
||||
|
||||
[node name="TAB_OSHI" type="Control" parent="CanvasLayer/PossibleCards"]
|
||||
[node name="TAB_OSHI" type="Control" parent="CanvasLayer/PossibleCards" unique_id=21234292]
|
||||
layout_mode = 2
|
||||
metadata/_tab_index = 0
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/PossibleCards/TAB_OSHI"]
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/PossibleCards/TAB_OSHI" unique_id=459194484]
|
||||
layout_mode = 0
|
||||
offset_left = 2.0
|
||||
offset_top = 2.0
|
||||
@@ -55,16 +55,16 @@ offset_right = 393.0
|
||||
offset_bottom = 691.0
|
||||
theme_override_constants/separation = 10
|
||||
|
||||
[node name="Search" type="LineEdit" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer"]
|
||||
[node name="Search" type="LineEdit" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer" unique_id=1505637064]
|
||||
layout_mode = 2
|
||||
placeholder_text = "SEARCH"
|
||||
|
||||
[node name="OshiFilters1" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer"]
|
||||
[node name="OshiFilters1" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer" unique_id=795121140]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 15
|
||||
alignment = 1
|
||||
|
||||
[node name="NameSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/OshiFilters1"]
|
||||
[node name="NameSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/OshiFilters1" unique_id=39211944]
|
||||
custom_minimum_size = Vector2(90, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -73,7 +73,7 @@ flat = false
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="ColorSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/OshiFilters1"]
|
||||
[node name="ColorSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/OshiFilters1" unique_id=1104181589]
|
||||
custom_minimum_size = Vector2(90, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -82,21 +82,21 @@ flat = false
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="5LifeSelect" type="CheckBox" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/OshiFilters1"]
|
||||
[node name="5LifeSelect" type="CheckBox" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/OshiFilters1" unique_id=837947986]
|
||||
layout_mode = 2
|
||||
button_group = ExtResource("6_102vr")
|
||||
text = "LIFE_5"
|
||||
|
||||
[node name="6LifeSelect" type="CheckBox" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/OshiFilters1"]
|
||||
[node name="6LifeSelect" type="CheckBox" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/OshiFilters1" unique_id=1186868400]
|
||||
layout_mode = 2
|
||||
button_group = ExtResource("6_102vr")
|
||||
text = "LIFE_6"
|
||||
|
||||
[node name="OshiFilters2" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer"]
|
||||
[node name="OshiFilters2" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer" unique_id=1700996787]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 15
|
||||
|
||||
[node name="SetcodeSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/OshiFilters2"]
|
||||
[node name="SetcodeSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/OshiFilters2" unique_id=1105109969]
|
||||
custom_minimum_size = Vector2(180, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -105,7 +105,7 @@ flat = false
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="ClearFilters" type="Button" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/OshiFilters2"]
|
||||
[node name="ClearFilters" type="Button" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/OshiFilters2" unique_id=1461393882]
|
||||
custom_minimum_size = Vector2(180, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -113,29 +113,29 @@ text = "FILTER_CLEAR"
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer"]
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer" unique_id=982286382]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
horizontal_scroll_mode = 0
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/ScrollContainer"]
|
||||
[node name="MarginContainer" type="MarginContainer" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/ScrollContainer" unique_id=1830043963]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
|
||||
[node name="OshiGrid" type="GridContainer" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/ScrollContainer/MarginContainer"]
|
||||
[node name="OshiGrid" type="GridContainer" parent="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/ScrollContainer/MarginContainer" unique_id=281180468]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
columns = 4
|
||||
|
||||
[node name="TAB_HOLOMEM" type="Control" parent="CanvasLayer/PossibleCards"]
|
||||
[node name="TAB_HOLOMEM" type="Control" parent="CanvasLayer/PossibleCards" unique_id=574325776]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
metadata/_tab_index = 1
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM"]
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM" unique_id=565095237]
|
||||
layout_mode = 0
|
||||
offset_left = 2.0
|
||||
offset_top = 2.0
|
||||
@@ -143,15 +143,15 @@ offset_right = 392.0
|
||||
offset_bottom = 691.0
|
||||
theme_override_constants/separation = 10
|
||||
|
||||
[node name="Search" type="LineEdit" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer"]
|
||||
[node name="Search" type="LineEdit" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer" unique_id=14258857]
|
||||
layout_mode = 2
|
||||
placeholder_text = "SEARCH"
|
||||
|
||||
[node name="HolomemFilters1" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer"]
|
||||
[node name="HolomemFilters1" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer" unique_id=986335058]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 15
|
||||
|
||||
[node name="NameSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters1"]
|
||||
[node name="NameSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters1" unique_id=1930316794]
|
||||
custom_minimum_size = Vector2(150, 0)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -160,7 +160,7 @@ flat = false
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="ColorSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters1"]
|
||||
[node name="ColorSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters1" unique_id=602379062]
|
||||
custom_minimum_size = Vector2(100, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -169,7 +169,7 @@ flat = false
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="LevelSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters1"]
|
||||
[node name="LevelSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters1" unique_id=1206392585]
|
||||
custom_minimum_size = Vector2(100, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -189,11 +189,11 @@ popup/item_3/id = 3
|
||||
popup/item_4/text = "LEVEL_SPOT"
|
||||
popup/item_4/id = 4
|
||||
|
||||
[node name="HolomemFilters2" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer"]
|
||||
[node name="HolomemFilters2" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer" unique_id=213843402]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 15
|
||||
|
||||
[node name="HPCompareSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters2"]
|
||||
[node name="HPCompareSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters2" unique_id=1001641459]
|
||||
auto_translate_mode = 2
|
||||
custom_minimum_size = Vector2(10, 25)
|
||||
layout_mode = 2
|
||||
@@ -208,14 +208,14 @@ popup/item_1/id = 1
|
||||
popup/item_2/text = "≤"
|
||||
popup/item_2/id = 2
|
||||
|
||||
[node name="HPSelect" type="SpinBox" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters2"]
|
||||
[node name="HPSelect" type="SpinBox" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters2" unique_id=1355308306]
|
||||
custom_minimum_size = Vector2(90, 25)
|
||||
layout_mode = 2
|
||||
max_value = 990.0
|
||||
step = 10.0
|
||||
prefix = "HP"
|
||||
|
||||
[node name="AdvantageSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters2"]
|
||||
[node name="AdvantageSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters2" unique_id=1729101285]
|
||||
custom_minimum_size = Vector2(70, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -224,7 +224,7 @@ flat = false
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="EffectSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters2"]
|
||||
[node name="EffectSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters2" unique_id=677294674]
|
||||
custom_minimum_size = Vector2(70, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -236,7 +236,7 @@ item_count = 1
|
||||
popup/item_0/text = "EFFECT_ANY"
|
||||
popup/item_0/id = 0
|
||||
|
||||
[node name="TagSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters2"]
|
||||
[node name="TagSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters2" unique_id=799530806]
|
||||
custom_minimum_size = Vector2(70, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -245,21 +245,21 @@ flat = false
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="HolomemFilters3" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer"]
|
||||
[node name="HolomemFilters3" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer" unique_id=1090173784]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 15
|
||||
|
||||
[node name="BuzzSelect" type="CheckBox" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters3"]
|
||||
[node name="BuzzSelect" type="CheckBox" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters3" unique_id=564903396]
|
||||
layout_mode = 2
|
||||
button_group = ExtResource("7_ynd4k")
|
||||
text = "BUZZ"
|
||||
|
||||
[node name="NotBuzzSelect" type="CheckBox" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters3"]
|
||||
[node name="NotBuzzSelect" type="CheckBox" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters3" unique_id=332968555]
|
||||
layout_mode = 2
|
||||
button_group = ExtResource("7_ynd4k")
|
||||
text = "NOTBUZZ"
|
||||
|
||||
[node name="SetcodeSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters3"]
|
||||
[node name="SetcodeSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters3" unique_id=825550879]
|
||||
custom_minimum_size = Vector2(85, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -268,7 +268,7 @@ flat = false
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="ClearFilters" type="Button" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters3"]
|
||||
[node name="ClearFilters" type="Button" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/HolomemFilters3" unique_id=1028590717]
|
||||
custom_minimum_size = Vector2(85, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -277,29 +277,29 @@ text = "FILTER_CLEAR"
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer"]
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer" unique_id=1112044748]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
horizontal_scroll_mode = 0
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/ScrollContainer"]
|
||||
[node name="MarginContainer" type="MarginContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/ScrollContainer" unique_id=708005816]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
|
||||
[node name="HolomemGrid" type="GridContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/ScrollContainer/MarginContainer"]
|
||||
[node name="HolomemGrid" type="GridContainer" parent="CanvasLayer/PossibleCards/TAB_HOLOMEM/VBoxContainer/ScrollContainer/MarginContainer" unique_id=1182775242]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
columns = 4
|
||||
|
||||
[node name="TAB_SUPPORT" type="Control" parent="CanvasLayer/PossibleCards"]
|
||||
[node name="TAB_SUPPORT" type="Control" parent="CanvasLayer/PossibleCards" unique_id=658265745]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
metadata/_tab_index = 2
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/PossibleCards/TAB_SUPPORT"]
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/PossibleCards/TAB_SUPPORT" unique_id=1232250628]
|
||||
layout_mode = 0
|
||||
offset_left = 3.0
|
||||
offset_top = 4.0
|
||||
@@ -307,15 +307,15 @@ offset_right = 391.0
|
||||
offset_bottom = 692.0
|
||||
theme_override_constants/separation = 10
|
||||
|
||||
[node name="Search" type="LineEdit" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer"]
|
||||
[node name="Search" type="LineEdit" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer" unique_id=793094603]
|
||||
layout_mode = 2
|
||||
placeholder_text = "SEARCH"
|
||||
|
||||
[node name="SupportFilters1" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer"]
|
||||
[node name="SupportFilters1" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer" unique_id=155239718]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 15
|
||||
|
||||
[node name="TypeSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/SupportFilters1"]
|
||||
[node name="TypeSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/SupportFilters1" unique_id=138235193]
|
||||
custom_minimum_size = Vector2(110, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -324,7 +324,7 @@ flat = false
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="LimitedSelect" type="CheckBox" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/SupportFilters1"]
|
||||
[node name="LimitedSelect" type="CheckBox" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/SupportFilters1" unique_id=570109376]
|
||||
custom_minimum_size = Vector2(110, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -333,7 +333,7 @@ text = "SUPPORT_LIMITED"
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="UnlimitedSelect" type="CheckBox" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/SupportFilters1"]
|
||||
[node name="UnlimitedSelect" type="CheckBox" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/SupportFilters1" unique_id=1777603740]
|
||||
custom_minimum_size = Vector2(115, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -342,11 +342,11 @@ text = "SUPPORT_UNLIMITED"
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="SupportFilters2" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer"]
|
||||
[node name="SupportFilters2" type="HBoxContainer" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer" unique_id=562030973]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 15
|
||||
|
||||
[node name="SetcodeSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/SupportFilters2"]
|
||||
[node name="SetcodeSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/SupportFilters2" unique_id=342492744]
|
||||
custom_minimum_size = Vector2(110, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -355,7 +355,7 @@ flat = false
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="TagSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/SupportFilters2"]
|
||||
[node name="TagSelect" type="MenuButton" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/SupportFilters2" unique_id=1866147723]
|
||||
custom_minimum_size = Vector2(110, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -364,7 +364,7 @@ flat = false
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="ClearFilters" type="Button" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/SupportFilters2"]
|
||||
[node name="ClearFilters" type="Button" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/SupportFilters2" unique_id=2097267729]
|
||||
custom_minimum_size = Vector2(115, 25)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
@@ -373,48 +373,48 @@ text = "FILTER_CLEAR"
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer"]
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer" unique_id=2098664849]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
horizontal_scroll_mode = 0
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/ScrollContainer"]
|
||||
[node name="MarginContainer" type="MarginContainer" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/ScrollContainer" unique_id=1026159406]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
|
||||
[node name="SupportGrid" type="GridContainer" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/ScrollContainer/MarginContainer"]
|
||||
[node name="SupportGrid" type="GridContainer" parent="CanvasLayer/PossibleCards/TAB_SUPPORT/VBoxContainer/ScrollContainer/MarginContainer" unique_id=761761801]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
columns = 4
|
||||
|
||||
[node name="TAB_CHEER" type="Control" parent="CanvasLayer/PossibleCards"]
|
||||
[node name="TAB_CHEER" type="Control" parent="CanvasLayer/PossibleCards" unique_id=1509924109]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
metadata/_tab_index = 3
|
||||
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="CanvasLayer/PossibleCards/TAB_CHEER"]
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="CanvasLayer/PossibleCards/TAB_CHEER" unique_id=938460110]
|
||||
layout_mode = 0
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_top = 47.0
|
||||
horizontal_scroll_mode = 0
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="CanvasLayer/PossibleCards/TAB_CHEER/ScrollContainer"]
|
||||
[node name="MarginContainer" type="MarginContainer" parent="CanvasLayer/PossibleCards/TAB_CHEER/ScrollContainer" unique_id=1314683838]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
|
||||
[node name="CheerGrid" type="GridContainer" parent="CanvasLayer/PossibleCards/TAB_CHEER/ScrollContainer/MarginContainer"]
|
||||
[node name="CheerGrid" type="GridContainer" parent="CanvasLayer/PossibleCards/TAB_CHEER/ScrollContainer/MarginContainer" unique_id=426569287]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
columns = 4
|
||||
|
||||
[node name="Multiple" type="Label" parent="CanvasLayer/PossibleCards/TAB_CHEER"]
|
||||
[node name="Multiple" type="Label" parent="CanvasLayer/PossibleCards/TAB_CHEER" unique_id=1050457991]
|
||||
auto_translate_mode = 2
|
||||
layout_mode = 0
|
||||
offset_left = 10.0
|
||||
@@ -425,7 +425,7 @@ theme_override_colors/font_color = Color(1, 1, 1, 1)
|
||||
theme_override_font_sizes/font_size = 25
|
||||
text = "1x"
|
||||
|
||||
[node name="OneMultiple" type="Button" parent="CanvasLayer/PossibleCards/TAB_CHEER"]
|
||||
[node name="OneMultiple" type="Button" parent="CanvasLayer/PossibleCards/TAB_CHEER" unique_id=1359056328]
|
||||
auto_translate_mode = 2
|
||||
layout_mode = 0
|
||||
offset_left = 98.0
|
||||
@@ -434,7 +434,7 @@ offset_right = 138.0
|
||||
offset_bottom = 27.0
|
||||
text = "1"
|
||||
|
||||
[node name="FiveMultiple" type="Button" parent="CanvasLayer/PossibleCards/TAB_CHEER"]
|
||||
[node name="FiveMultiple" type="Button" parent="CanvasLayer/PossibleCards/TAB_CHEER" unique_id=538052775]
|
||||
auto_translate_mode = 2
|
||||
layout_mode = 0
|
||||
offset_left = 170.0
|
||||
@@ -444,7 +444,7 @@ offset_bottom = 27.0
|
||||
text = "5
|
||||
"
|
||||
|
||||
[node name="TenMultiple" type="Button" parent="CanvasLayer/PossibleCards/TAB_CHEER"]
|
||||
[node name="TenMultiple" type="Button" parent="CanvasLayer/PossibleCards/TAB_CHEER" unique_id=732061718]
|
||||
auto_translate_mode = 2
|
||||
layout_mode = 0
|
||||
offset_left = 245.0
|
||||
@@ -453,7 +453,7 @@ offset_right = 285.0
|
||||
offset_bottom = 27.0
|
||||
text = "10"
|
||||
|
||||
[node name="TwentyMultiple" type="Button" parent="CanvasLayer/PossibleCards/TAB_CHEER"]
|
||||
[node name="TwentyMultiple" type="Button" parent="CanvasLayer/PossibleCards/TAB_CHEER" unique_id=92962866]
|
||||
auto_translate_mode = 2
|
||||
layout_mode = 0
|
||||
offset_left = 319.0
|
||||
@@ -462,7 +462,7 @@ offset_right = 359.0
|
||||
offset_bottom = 27.0
|
||||
text = "20"
|
||||
|
||||
[node name="YourStuff" type="TabContainer" parent="CanvasLayer"]
|
||||
[node name="YourStuff" type="TabContainer" parent="CanvasLayer" unique_id=1334643678]
|
||||
offset_left = 303.0
|
||||
offset_top = 2.0
|
||||
offset_right = 884.0
|
||||
@@ -470,20 +470,20 @@ offset_bottom = 626.0
|
||||
theme = ExtResource("3_da1xd")
|
||||
current_tab = 0
|
||||
|
||||
[node name="TAB_DECK" type="ColorRect" parent="CanvasLayer/YourStuff"]
|
||||
[node name="TAB_DECK" type="ColorRect" parent="CanvasLayer/YourStuff" unique_id=601386527]
|
||||
layout_mode = 2
|
||||
theme = ExtResource("3_da1xd")
|
||||
color = Color(0.113725, 0.164706, 0.223529, 0)
|
||||
metadata/_tab_index = 0
|
||||
|
||||
[node name="OshiPlace" type="CenterContainer" parent="CanvasLayer/YourStuff/TAB_DECK"]
|
||||
[node name="OshiPlace" type="CenterContainer" parent="CanvasLayer/YourStuff/TAB_DECK" unique_id=740532230]
|
||||
layout_mode = 0
|
||||
offset_left = 7.0
|
||||
offset_top = 422.0
|
||||
offset_right = 123.0
|
||||
offset_bottom = 585.0
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="CanvasLayer/YourStuff/TAB_DECK"]
|
||||
[node name="ColorRect" type="ColorRect" parent="CanvasLayer/YourStuff/TAB_DECK" unique_id=24738255]
|
||||
layout_mode = 0
|
||||
offset_left = 7.0
|
||||
offset_top = 6.0
|
||||
@@ -493,7 +493,7 @@ size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
color = Color(0.180392, 0.32549, 0.45098, 1)
|
||||
|
||||
[node name="MainDeck" type="ScrollContainer" parent="CanvasLayer/YourStuff/TAB_DECK"]
|
||||
[node name="MainDeck" type="ScrollContainer" parent="CanvasLayer/YourStuff/TAB_DECK" unique_id=315262226]
|
||||
layout_mode = 0
|
||||
offset_left = 7.0
|
||||
offset_top = 6.0
|
||||
@@ -501,7 +501,7 @@ offset_right = 573.0
|
||||
offset_bottom = 412.0
|
||||
horizontal_scroll_mode = 0
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="CanvasLayer/YourStuff/TAB_DECK/MainDeck"]
|
||||
[node name="MarginContainer" type="MarginContainer" parent="CanvasLayer/YourStuff/TAB_DECK/MainDeck" unique_id=1736032582]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
@@ -510,13 +510,13 @@ theme_override_constants/margin_top = 15
|
||||
theme_override_constants/margin_right = 8
|
||||
theme_override_constants/margin_bottom = 8
|
||||
|
||||
[node name="GridContainer" type="GridContainer" parent="CanvasLayer/YourStuff/TAB_DECK/MainDeck/MarginContainer"]
|
||||
[node name="GridContainer" type="GridContainer" parent="CanvasLayer/YourStuff/TAB_DECK/MainDeck/MarginContainer" unique_id=1645072446]
|
||||
layout_mode = 2
|
||||
theme_override_constants/h_separation = 11
|
||||
theme_override_constants/v_separation = 12
|
||||
columns = 6
|
||||
|
||||
[node name="ColorRect2" type="ColorRect" parent="CanvasLayer/YourStuff/TAB_DECK"]
|
||||
[node name="ColorRect2" type="ColorRect" parent="CanvasLayer/YourStuff/TAB_DECK" unique_id=1885129033]
|
||||
layout_mode = 0
|
||||
offset_left = 131.0
|
||||
offset_top = 422.0
|
||||
@@ -526,14 +526,14 @@ size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
color = Color(0.180392, 0.32549, 0.45098, 1)
|
||||
|
||||
[node name="CheerDeck" type="ScrollContainer" parent="CanvasLayer/YourStuff/TAB_DECK"]
|
||||
[node name="CheerDeck" type="ScrollContainer" parent="CanvasLayer/YourStuff/TAB_DECK" unique_id=1132906127]
|
||||
layout_mode = 0
|
||||
offset_left = 131.0
|
||||
offset_top = 422.0
|
||||
offset_right = 573.0
|
||||
offset_bottom = 583.0
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="CanvasLayer/YourStuff/TAB_DECK/CheerDeck"]
|
||||
[node name="MarginContainer" type="MarginContainer" parent="CanvasLayer/YourStuff/TAB_DECK/CheerDeck" unique_id=1013401102]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
@@ -542,11 +542,11 @@ theme_override_constants/margin_top = 15
|
||||
theme_override_constants/margin_right = 5
|
||||
theme_override_constants/margin_bottom = 5
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="CanvasLayer/YourStuff/TAB_DECK/CheerDeck/MarginContainer"]
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="CanvasLayer/YourStuff/TAB_DECK/CheerDeck/MarginContainer" unique_id=442596115]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 20
|
||||
|
||||
[node name="MainCount" type="Label" parent="CanvasLayer/YourStuff/TAB_DECK"]
|
||||
[node name="MainCount" type="Label" parent="CanvasLayer/YourStuff/TAB_DECK" unique_id=1864420932]
|
||||
auto_translate_mode = 2
|
||||
z_index = 1
|
||||
layout_mode = 0
|
||||
@@ -560,7 +560,7 @@ theme_override_constants/outline_size = 3
|
||||
theme_override_font_sizes/font_size = 15
|
||||
text = "0/50"
|
||||
|
||||
[node name="CheerCount" type="Label" parent="CanvasLayer/YourStuff/TAB_DECK"]
|
||||
[node name="CheerCount" type="Label" parent="CanvasLayer/YourStuff/TAB_DECK" unique_id=1706418699]
|
||||
auto_translate_mode = 2
|
||||
z_index = 1
|
||||
layout_mode = 0
|
||||
@@ -574,38 +574,37 @@ theme_override_constants/outline_size = 3
|
||||
theme_override_font_sizes/font_size = 15
|
||||
text = "0/20"
|
||||
|
||||
[node name="TAB_ANALYTICS" type="ColorRect" parent="CanvasLayer/YourStuff"]
|
||||
[node name="TAB_IMPORT" type="Control" parent="CanvasLayer/YourStuff" unique_id=2027762892]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
theme = ExtResource("3_da1xd")
|
||||
color = Color(0, 0, 0, 0)
|
||||
metadata/_tab_index = 1
|
||||
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="CanvasLayer/YourStuff/TAB_ANALYTICS"]
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/YourStuff/TAB_IMPORT" unique_id=1116699733]
|
||||
layout_mode = 0
|
||||
offset_left = 5.0
|
||||
offset_top = 5.0
|
||||
offset_right = 575.0
|
||||
offset_bottom = 582.0
|
||||
offset_right = 581.0
|
||||
offset_bottom = 593.0
|
||||
|
||||
[node name="Stats" type="Label" parent="CanvasLayer/YourStuff/TAB_ANALYTICS/ScrollContainer"]
|
||||
auto_translate_mode = 2
|
||||
[node name="Control" type="Control" parent="CanvasLayer/YourStuff/TAB_IMPORT/VBoxContainer" unique_id=1860617546]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
|
||||
[node name="TAB_SLEEVES" type="Control" parent="CanvasLayer/YourStuff"]
|
||||
[node name="DownloadJSON" type="Button" parent="CanvasLayer/YourStuff/TAB_IMPORT/VBoxContainer" unique_id=847824757]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 4
|
||||
text = "DECK_DOWNLOAD"
|
||||
|
||||
[node name="TAB_SLEEVES" type="Control" parent="CanvasLayer/YourStuff" unique_id=1588702480]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
theme = ExtResource("3_da1xd")
|
||||
metadata/_tab_index = 2
|
||||
|
||||
[node name="Main" parent="CanvasLayer/YourStuff/TAB_SLEEVES" instance=ExtResource("5_0bh18")]
|
||||
[node name="Main" parent="CanvasLayer/YourStuff/TAB_SLEEVES" unique_id=960555896 instance=ExtResource("5_0bh18")]
|
||||
position = Vector2(50, 50)
|
||||
scale = Vector2(0.5, 0.5)
|
||||
default_sleeve = ExtResource("6_to43o")
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer/YourStuff/TAB_SLEEVES/Main"]
|
||||
[node name="Label" type="Label" parent="CanvasLayer/YourStuff/TAB_SLEEVES/Main" unique_id=2086704077]
|
||||
offset_top = -60.0
|
||||
offset_right = 313.0
|
||||
offset_bottom = 9.0
|
||||
@@ -615,12 +614,12 @@ theme_override_font_sizes/font_size = 50
|
||||
text = "MAIN_DECK"
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="Cheer" parent="CanvasLayer/YourStuff/TAB_SLEEVES" instance=ExtResource("5_0bh18")]
|
||||
[node name="Cheer" parent="CanvasLayer/YourStuff/TAB_SLEEVES" unique_id=430897148 instance=ExtResource("5_0bh18")]
|
||||
position = Vector2(300, 50)
|
||||
scale = Vector2(0.5, 0.5)
|
||||
default_sleeve = ExtResource("7_kh04n")
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer/YourStuff/TAB_SLEEVES/Cheer"]
|
||||
[node name="Label" type="Label" parent="CanvasLayer/YourStuff/TAB_SLEEVES/Cheer" unique_id=85053053]
|
||||
offset_top = -60.0
|
||||
offset_right = 313.0
|
||||
offset_bottom = 9.0
|
||||
@@ -630,7 +629,27 @@ theme_override_font_sizes/font_size = 50
|
||||
text = "CHEER"
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="LoadDeck" type="Button" parent="CanvasLayer"]
|
||||
[node name="TAB_ANALYTICS" type="ColorRect" parent="CanvasLayer/YourStuff" unique_id=980762687]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
theme = ExtResource("3_da1xd")
|
||||
color = Color(0, 0, 0, 0)
|
||||
metadata/_tab_index = 3
|
||||
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="CanvasLayer/YourStuff/TAB_ANALYTICS" unique_id=84625569]
|
||||
layout_mode = 0
|
||||
offset_left = 5.0
|
||||
offset_top = 5.0
|
||||
offset_right = 575.0
|
||||
offset_bottom = 582.0
|
||||
|
||||
[node name="Stats" type="Label" parent="CanvasLayer/YourStuff/TAB_ANALYTICS/ScrollContainer" unique_id=156298306]
|
||||
auto_translate_mode = 2
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
|
||||
[node name="LoadDeck" type="Button" parent="CanvasLayer" unique_id=1347654200]
|
||||
offset_left = 313.0
|
||||
offset_top = 639.0
|
||||
offset_right = 469.0
|
||||
@@ -641,7 +660,7 @@ text = "LOAD"
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="SaveDeck" type="Button" parent="CanvasLayer"]
|
||||
[node name="SaveDeck" type="Button" parent="CanvasLayer" unique_id=57277451]
|
||||
offset_left = 798.0
|
||||
offset_top = 640.0
|
||||
offset_right = 874.0
|
||||
@@ -652,7 +671,7 @@ text = "DECK_SAVE"
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="DeckName" type="LineEdit" parent="CanvasLayer"]
|
||||
[node name="DeckName" type="LineEdit" parent="CanvasLayer" unique_id=1638027780]
|
||||
offset_left = 507.0
|
||||
offset_top = 631.0
|
||||
offset_right = 775.0
|
||||
@@ -661,11 +680,11 @@ theme = ExtResource("3_da1xd")
|
||||
theme_override_font_sizes/font_size = 15
|
||||
placeholder_text = "DEFAULT_DECK_NAME"
|
||||
|
||||
[node name="DeckList" parent="CanvasLayer" instance=ExtResource("4_lmglq")]
|
||||
[node name="DeckList" parent="CanvasLayer" unique_id=687946059 instance=ExtResource("4_lmglq")]
|
||||
visible = false
|
||||
z_index = 4
|
||||
|
||||
[node name="MainMenu" type="Button" parent="CanvasLayer"]
|
||||
[node name="MainMenu" type="Button" parent="CanvasLayer" unique_id=403504818]
|
||||
offset_left = 400.0
|
||||
offset_top = 689.0
|
||||
offset_right = 470.0
|
||||
@@ -676,7 +695,7 @@ text = "MENU"
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="Clear" type="Button" parent="CanvasLayer"]
|
||||
[node name="Clear" type="Button" parent="CanvasLayer" unique_id=2126328215]
|
||||
offset_left = 313.0
|
||||
offset_top = 689.0
|
||||
offset_right = 387.0
|
||||
@@ -687,7 +706,7 @@ text = "DECK_CLEAR"
|
||||
text_overrun_behavior = 3
|
||||
clip_text = true
|
||||
|
||||
[node name="BanlistChoice" type="OptionButton" parent="CanvasLayer"]
|
||||
[node name="BanlistChoice" type="OptionButton" parent="CanvasLayer" unique_id=188161628]
|
||||
offset_left = 518.0
|
||||
offset_top = 684.0
|
||||
offset_right = 764.0
|
||||
@@ -706,7 +725,7 @@ popup/item_3/id = 3
|
||||
popup/item_4/text = "LOBBY_BANLIST_UNRELEASED_EN"
|
||||
popup/item_4/id = 4
|
||||
|
||||
[node name="SavePrompt" type="ColorRect" parent="CanvasLayer"]
|
||||
[node name="SavePrompt" type="ColorRect" parent="CanvasLayer" unique_id=1177481543]
|
||||
visible = false
|
||||
z_index = 3
|
||||
offset_left = 470.0
|
||||
@@ -715,18 +734,18 @@ offset_right = 907.0
|
||||
offset_bottom = 681.0
|
||||
color = Color(0.113725, 0.164706, 0.223529, 0.905882)
|
||||
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="CanvasLayer/SavePrompt"]
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="CanvasLayer/SavePrompt" unique_id=746223416]
|
||||
layout_mode = 0
|
||||
offset_right = 437.0
|
||||
offset_bottom = 520.0
|
||||
theme = ExtResource("3_da1xd")
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/SavePrompt/ScrollContainer"]
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/SavePrompt/ScrollContainer" unique_id=947075608]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 6
|
||||
size_flags_vertical = 6
|
||||
|
||||
[node name="FileName" type="LineEdit" parent="CanvasLayer/SavePrompt"]
|
||||
[node name="FileName" type="LineEdit" parent="CanvasLayer/SavePrompt" unique_id=239547978]
|
||||
layout_mode = 0
|
||||
offset_left = 10.0
|
||||
offset_top = 571.0
|
||||
@@ -736,7 +755,7 @@ theme = ExtResource("3_da1xd")
|
||||
theme_override_font_sizes/font_size = 20
|
||||
placeholder_text = "DEFAULT_DECK_FILE"
|
||||
|
||||
[node name="Save" type="Button" parent="CanvasLayer/SavePrompt/FileName"]
|
||||
[node name="Save" type="Button" parent="CanvasLayer/SavePrompt/FileName" unique_id=994597248]
|
||||
layout_mode = 0
|
||||
offset_left = 326.0
|
||||
offset_top = 5.0
|
||||
@@ -745,17 +764,7 @@ offset_bottom = 26.0
|
||||
theme_override_font_sizes/font_size = 20
|
||||
text = "DECK_SAVE"
|
||||
|
||||
[node name="Download" type="Button" parent="CanvasLayer/SavePrompt/FileName"]
|
||||
visible = false
|
||||
layout_mode = 0
|
||||
offset_left = 326.0
|
||||
offset_top = 50.0
|
||||
offset_right = 472.0
|
||||
offset_bottom = 71.0
|
||||
theme_override_font_sizes/font_size = 20
|
||||
text = "DECK_DOWNLOAD"
|
||||
|
||||
[node name="Cancel" type="Button" parent="CanvasLayer/SavePrompt"]
|
||||
[node name="Cancel" type="Button" parent="CanvasLayer/SavePrompt" unique_id=1508121545]
|
||||
layout_mode = 0
|
||||
offset_left = 454.0
|
||||
offset_top = 576.0
|
||||
@@ -765,7 +774,7 @@ theme = ExtResource("3_da1xd")
|
||||
theme_override_font_sizes/font_size = 20
|
||||
text = "DECK_SAVE_CANCEL"
|
||||
|
||||
[node name="OverwriteConfirm" type="ColorRect" parent="CanvasLayer/SavePrompt"]
|
||||
[node name="OverwriteConfirm" type="ColorRect" parent="CanvasLayer/SavePrompt" unique_id=1646270536]
|
||||
visible = false
|
||||
layout_mode = 0
|
||||
offset_left = -361.0
|
||||
@@ -775,7 +784,7 @@ offset_bottom = 514.0
|
||||
theme = ExtResource("3_da1xd")
|
||||
color = Color(0.113725, 0.164706, 0.223529, 1)
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer/SavePrompt/OverwriteConfirm"]
|
||||
[node name="Label" type="Label" parent="CanvasLayer/SavePrompt/OverwriteConfirm" unique_id=1233670592]
|
||||
auto_translate_mode = 2
|
||||
layout_mode = 0
|
||||
offset_left = 12.0
|
||||
@@ -788,7 +797,7 @@ text = "Overwrite ?"
|
||||
horizontal_alignment = 1
|
||||
autowrap_mode = 1
|
||||
|
||||
[node name="Yes" type="Button" parent="CanvasLayer/SavePrompt/OverwriteConfirm"]
|
||||
[node name="Yes" type="Button" parent="CanvasLayer/SavePrompt/OverwriteConfirm" unique_id=1205454495]
|
||||
layout_mode = 0
|
||||
offset_left = 228.0
|
||||
offset_top = 353.0
|
||||
@@ -797,7 +806,7 @@ offset_bottom = 394.0
|
||||
theme_override_font_sizes/font_size = 40
|
||||
text = "YES"
|
||||
|
||||
[node name="No" type="Button" parent="CanvasLayer/SavePrompt/OverwriteConfirm"]
|
||||
[node name="No" type="Button" parent="CanvasLayer/SavePrompt/OverwriteConfirm" unique_id=365583957]
|
||||
layout_mode = 0
|
||||
offset_left = 667.0
|
||||
offset_top = 355.0
|
||||
@@ -806,7 +815,7 @@ offset_bottom = 396.0
|
||||
theme_override_font_sizes/font_size = 40
|
||||
text = "NO"
|
||||
|
||||
[node name="Loading" type="ColorRect" parent="CanvasLayer"]
|
||||
[node name="Loading" type="ColorRect" parent="CanvasLayer" unique_id=1150633941]
|
||||
unique_name_in_owner = true
|
||||
visible = false
|
||||
z_index = 3
|
||||
@@ -814,7 +823,7 @@ offset_right = 1280.0
|
||||
offset_bottom = 720.0
|
||||
color = Color(0.180392, 0.32549, 0.45098, 0.623529)
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer/Loading"]
|
||||
[node name="Label" type="Label" parent="CanvasLayer/Loading" unique_id=1373390368]
|
||||
layout_mode = 0
|
||||
offset_right = 1280.0
|
||||
offset_bottom = 720.0
|
||||
@@ -825,14 +834,16 @@ text = "LOADING"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="BGM" type="AudioStreamPlayer" parent="."]
|
||||
[node name="BGM" type="AudioStreamPlayer" parent="." unique_id=620249497]
|
||||
stream = ExtResource("10_ncvki")
|
||||
volume_db = -18.0
|
||||
autoplay = true
|
||||
bus = &"BGM"
|
||||
|
||||
[node name="HTTPManager" type="Node" parent="."]
|
||||
[node name="HTTPManager" type="Node" parent="." unique_id=1669366651]
|
||||
unique_name_in_owner = true
|
||||
script = ExtResource("11_h6gkd")
|
||||
parallel_connections_count = 15
|
||||
print_debug = true
|
||||
|
||||
[connection signal="text_changed" from="CanvasLayer/PossibleCards/TAB_OSHI/VBoxContainer/Search" to="." method="_on_oshi_search"]
|
||||
@@ -852,6 +863,7 @@ print_debug = true
|
||||
[connection signal="pressed" from="CanvasLayer/PossibleCards/TAB_CHEER/FiveMultiple" to="." method="_five_multiple"]
|
||||
[connection signal="pressed" from="CanvasLayer/PossibleCards/TAB_CHEER/TenMultiple" to="." method="_ten_multiple"]
|
||||
[connection signal="pressed" from="CanvasLayer/PossibleCards/TAB_CHEER/TwentyMultiple" to="." method="_twenty_multiple"]
|
||||
[connection signal="pressed" from="CanvasLayer/YourStuff/TAB_IMPORT/VBoxContainer/DownloadJSON" to="." method="_on_download_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/LoadDeck" to="." method="_on_load_deck_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/SaveDeck" to="." method="_on_save_deck_pressed"]
|
||||
[connection signal="cancel" from="CanvasLayer/DeckList" to="." method="_hide_deck_list"]
|
||||
@@ -861,6 +873,5 @@ print_debug = true
|
||||
[connection signal="item_selected" from="CanvasLayer/BanlistChoice" to="." method="_on_banlist_choice_item_selected"]
|
||||
[connection signal="text_submitted" from="CanvasLayer/SavePrompt/FileName" to="." method="_on_save_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/SavePrompt/FileName/Save" to="." method="_on_save_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/SavePrompt/FileName/Download" to="." method="_on_download_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/SavePrompt/Cancel" to="." method="_hide_save_prompt"]
|
||||
[connection signal="pressed" from="CanvasLayer/SavePrompt/OverwriteConfirm/No" to="." method="_hide_save_prompt"]
|
||||
|
||||
61
Scenes/look_at.tscn
Normal file
61
Scenes/look_at.tscn
Normal file
@@ -0,0 +1,61 @@
|
||||
[gd_scene format=3 uid="uid://bdmwjxyb7a1pn"]
|
||||
|
||||
[ext_resource type="Theme" uid="uid://c2xsywtxro80x" path="res://Themes/button.tres" id="1_desdp"]
|
||||
[ext_resource type="Script" uid="uid://55w7a0chbkwm" path="res://Scripts/look_at.gd" id="2_ktb40"]
|
||||
|
||||
[node name="LookAt" type="Control" unique_id=968619706]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = 408.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme = ExtResource("1_desdp")
|
||||
script = ExtResource("2_ktb40")
|
||||
|
||||
[node name="FullBack" type="ColorRect" parent="." unique_id=1132069275]
|
||||
layout_mode = 0
|
||||
offset_right = 872.0
|
||||
offset_bottom = 720.0
|
||||
color = Color(0, 0, 0, 0.09411765)
|
||||
|
||||
[node name="LookBack" type="ColorRect" parent="." unique_id=725295370]
|
||||
layout_mode = 0
|
||||
offset_left = 25.0
|
||||
offset_top = 314.0
|
||||
offset_right = 858.0
|
||||
offset_bottom = 596.0
|
||||
color = Color(0.113725, 0.164706, 0.223529, 0.905882)
|
||||
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="." unique_id=1955241184]
|
||||
layout_mode = 0
|
||||
offset_left = 25.0
|
||||
offset_top = 314.0
|
||||
offset_right = 858.0
|
||||
offset_bottom = 596.0
|
||||
vertical_scroll_mode = 0
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="ScrollContainer" unique_id=1573145034]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
|
||||
[node name="Cancel" type="Button" parent="." unique_id=1089762157]
|
||||
layout_mode = 0
|
||||
offset_left = 716.0
|
||||
offset_top = 654.0
|
||||
offset_right = 852.0
|
||||
offset_bottom = 682.0
|
||||
text = "PROMPT_CANCEL"
|
||||
|
||||
[node name="Tree" type="Tree" parent="." unique_id=1128160591]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 0
|
||||
offset_left = 23.0
|
||||
offset_top = 28.0
|
||||
offset_right = 857.0
|
||||
offset_bottom = 289.0
|
||||
hide_root = true
|
||||
scroll_horizontal_enabled = false
|
||||
@@ -552,10 +552,10 @@ layout_mode = 1
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = -283.5
|
||||
offset_top = 75.0
|
||||
offset_right = 291.5
|
||||
offset_bottom = 123.0
|
||||
offset_left = -286.5
|
||||
offset_top = 103.0
|
||||
offset_right = 288.5
|
||||
offset_bottom = 151.0
|
||||
grow_horizontal = 2
|
||||
theme = ExtResource("8_u8usn")
|
||||
color = Color(0.180392, 0.32549, 0.45098, 1)
|
||||
@@ -577,6 +577,38 @@ theme_override_colors/font_color = Color(1, 1, 1, 1)
|
||||
theme_override_font_sizes/font_size = 30
|
||||
text = "MULLIGAN_TEXT"
|
||||
|
||||
[node name="ReadyGuide" type="ColorRect" parent="CanvasLayer/OpponentLabel" unique_id=333703001]
|
||||
visible = false
|
||||
layout_mode = 1
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = -423.5
|
||||
offset_top = 52.0
|
||||
offset_right = 423.5
|
||||
offset_bottom = 100.0
|
||||
grow_horizontal = 2
|
||||
theme = ExtResource("8_u8usn")
|
||||
color = Color(0.180392, 0.32549, 0.45098, 1)
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer/OpponentLabel/ReadyGuide" unique_id=976877218]
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -73.5
|
||||
offset_top = -21.0
|
||||
offset_right = 73.5
|
||||
offset_bottom = 21.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_colors/font_color = Color(1, 1, 1, 1)
|
||||
theme_override_font_sizes/font_size = 20
|
||||
text = "READY_GUIDE_1"
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="SPmarker" type="Sprite2D" parent="." unique_id=1790657238]
|
||||
visible = false
|
||||
z_index = 4
|
||||
|
||||
@@ -86,6 +86,7 @@ func findByClass(node: Node, className : String, result : Array) -> void:
|
||||
func _ready():
|
||||
proper_hypertext = "https://" if %WebSocket.use_WSS else "http://"
|
||||
%WebSocket.host = Server.websocketURL
|
||||
Database.downloader = %HTTPManager
|
||||
|
||||
randomize()
|
||||
|
||||
@@ -94,7 +95,10 @@ func _ready():
|
||||
#Intialize Decks folder and starter decks
|
||||
if !DirAccess.dir_exists_absolute("user://Decks"):
|
||||
DirAccess.make_dir_absolute("user://Decks")
|
||||
|
||||
|
||||
#Little song-and-dance to load default decks that haven't been loaded before
|
||||
#We wish for the user to be able to delete default decks without them coming right back the next time they go to the main menu
|
||||
#So we need to store a list of decks that have previously been loaded
|
||||
var dir = DirAccess.open("res://Decks")
|
||||
var temp_loaded_decks = Settings.settings.LoadedDecks.duplicate()
|
||||
for file_name in dir.get_files():
|
||||
@@ -351,6 +355,12 @@ func _go_to_github():
|
||||
|
||||
func _start_data():
|
||||
Settings.card_version = FileAccess.get_file_as_string("res://cardLocalization/card_version.txt")
|
||||
if Database.needs_to_download_images and (!FileAccess.file_exists("user://tempCardFronts/card_version.txt") or \
|
||||
Settings.card_version != FileAccess.get_file_as_string("user://tempCardFronts/card_version.txt")):
|
||||
#Reset the temporary folder
|
||||
Database.delete_folder_recursive("user://tempCardFronts")
|
||||
DirAccess.make_dir_absolute("user://tempCardFronts")
|
||||
DirAccess.copy_absolute("res://cardLocalization/card_version.txt", "user://tempCardFronts/card_version.txt")
|
||||
%CardVersionText.text = "Card Version " + Settings.card_version
|
||||
INTJSON.parse(FileAccess.get_file_as_string("res://cardData.json"))
|
||||
Database.setup_data(INTJSON.data, Settings._connect_local.bind(%Timer2.start))
|
||||
@@ -874,10 +884,12 @@ func _on_websocket_received(raw_data):
|
||||
for number in data["current"]:
|
||||
Database.current_banlist[number] = int(data["current"][number])
|
||||
Database.unreleased[number] = int(data["current"][number])
|
||||
Database.unreleased_server[number] = int(data["current"][number])
|
||||
for number in data["en_current"]:
|
||||
Database.en_current_banlist[number] = int(data["en_current"][number])
|
||||
Database.en_unreleased[number] = int(data["en_current"][number])
|
||||
for number in data["unreleased"]:
|
||||
Database.unreleased_server[number] = int(data["unreleased"][number])
|
||||
for found in _serf_placeholder_numbers(number):
|
||||
Database.unreleased[found] = int(data["unreleased"][number])
|
||||
for number in data["en_unreleased"]:
|
||||
@@ -1003,13 +1015,13 @@ func create_lobby() -> void:
|
||||
if Settings.settings.OnlyEN:
|
||||
settings["onlyEN"] = true
|
||||
if lobby_banlist.selected == 1:
|
||||
settings["banlist"] = Database.current_banlist
|
||||
settings["banlist"] = Database.unreleased_server
|
||||
elif lobby_banlist.selected == 2:
|
||||
settings["banlist"] = Database.en_current_banlist
|
||||
elif lobby_banlist.selected == 3:
|
||||
settings["banlist"] = Database.unreleased
|
||||
elif lobby_banlist.selected == 4:
|
||||
settings["banlist"] = Database.en_unreleased
|
||||
elif lobby_banlist.selected == 3:
|
||||
settings["banlist"] = Database.current_banlist
|
||||
elif lobby_banlist.selected == 4:
|
||||
settings["banlist"] = Database.en_current_banlist
|
||||
else:
|
||||
settings["banlist"] = {}
|
||||
send_command("Server","Create Lobby",{"settings":settings})
|
||||
@@ -1036,11 +1048,11 @@ func found_lobbies(found:Array) -> void:
|
||||
0:
|
||||
lobbyButton.text += tr("LOBBY_BANLIST_NONE")
|
||||
1:
|
||||
lobbyButton.text += tr("LOBBY_BANLIST_CURRENT")
|
||||
lobbyButton.text += tr("LOBBY_BANLIST_UNRELEASED")
|
||||
2:
|
||||
lobbyButton.text += tr("LOBBY_BANLIST_CURRENT_EN")
|
||||
3:
|
||||
lobbyButton.text += tr("LOBBY_BANLIST_UNRELEASED")
|
||||
lobbyButton.text += tr("LOBBY_BANLIST_CURRENT")
|
||||
4:
|
||||
lobbyButton.text += tr("LOBBY_BANLIST_UNRELEASED_EN")
|
||||
_:
|
||||
@@ -1112,6 +1124,14 @@ func spectate_game_from_code() -> void:
|
||||
if game_list_code.text != "":
|
||||
spectate_game(game_list_code.text)
|
||||
|
||||
func _on_paste_game_code_button_pressed() -> void:
|
||||
var clipboard_contents: String = DisplayServer.clipboard_get()
|
||||
var filtered_text: String = lobby_code_regex.sub(clipboard_contents, "", true)
|
||||
|
||||
# Game code is 10 characters long.
|
||||
game_list_code.text = filtered_text.substr(0, 10)
|
||||
update_spectate_from_code_button(game_list_code.text)
|
||||
|
||||
func update_spectate_from_code_button(current_string:String) -> void:
|
||||
game_list_code_button.disabled = (current_string == "")
|
||||
|
||||
@@ -1171,6 +1191,9 @@ func update_lobby(lobby_id:String, waiting:Dictionary, chosen, you_are_chosen:bo
|
||||
func _on_copy_lobby_code_button_pressed() -> void:
|
||||
DisplayServer.clipboard_set(current_lobby)
|
||||
|
||||
func _on_copy_game_code_button_pressed() -> void:
|
||||
DisplayServer.clipboard_set(yourSide.game_id)
|
||||
|
||||
func choose_opponent(player_id):
|
||||
send_command("Lobby","Choose Opponent",{"chosen":player_id})
|
||||
|
||||
|
||||
@@ -22,5 +22,5 @@ func _on_texture_button_mouse_entered():
|
||||
func _on_texture_button_mouse_exited():
|
||||
emit_signal("mouse_exited")
|
||||
|
||||
func set_texture(text):
|
||||
$TextureRect.texture = text
|
||||
func set_art(cardNumber: String, artNum: int) -> void:
|
||||
$CardFront._initialize(cardNumber, artNum)
|
||||
|
||||
@@ -206,9 +206,11 @@ var attached = []
|
||||
%CardInfo.extraNames = value
|
||||
|
||||
|
||||
func setup_info(number,art_code,back=null):
|
||||
%CardInfo.setup_info(number, art_code, back)
|
||||
func setup_info(number,art_code,back=null,load_front=true):
|
||||
%CardInfo.setup_info(number, art_code, back, load_front)
|
||||
|
||||
func start_loading_art() -> void:
|
||||
%CardInfo.start_loading_art()
|
||||
|
||||
func set_ban(num: int):
|
||||
%CardInfo.set_ban(num)
|
||||
|
||||
@@ -1,9 +1,13 @@
|
||||
extends Control
|
||||
|
||||
var cardFront
|
||||
var cardFrontPath
|
||||
var cardFrontLoading = false
|
||||
var notFound = false
|
||||
|
||||
func _initialize(cardNumber:String, artNum:int) -> void:
|
||||
var cardArtInfo
|
||||
|
||||
func _initialize(cardNumber:String, artNum:int, load_art:bool=true) -> void:
|
||||
var card_data = Database.cardData[cardNumber]
|
||||
|
||||
if card_data.is_empty():
|
||||
@@ -29,11 +33,44 @@ func _initialize(cardNumber:String, artNum:int) -> void:
|
||||
lang_code = lang
|
||||
|
||||
if cardNumber in Database.cardArts and int(artNum) in Database.cardArts[cardNumber] and lang_code in Database.cardArts[cardNumber][int(artNum)]:
|
||||
cardFront = load(Database.cardArts[cardNumber][int(artNum)][lang_code])
|
||||
%Front.texture = cardFront
|
||||
cardFrontPath = Database.cardArts[cardNumber][int(artNum)][lang_code]
|
||||
cardArtInfo = [cardNumber, int(artNum), lang_code]
|
||||
if Database.needs_to_download_images:
|
||||
cardFrontPath = Database.pathFront + cardFrontPath
|
||||
if load_art:
|
||||
_start_loading_art()
|
||||
else:
|
||||
print(cardNumber, " ", artNum, " ", lang_code)
|
||||
|
||||
func _start_loading_art() -> void:
|
||||
if cardFrontPath:
|
||||
if Database.needs_to_download_images:
|
||||
Database.get_card_front(cardArtInfo[0], cardArtInfo[1], cardArtInfo[2], _load_art_web)
|
||||
else:
|
||||
ResourceLoader.load_threaded_request(cardFrontPath)
|
||||
cardFrontLoading = true
|
||||
|
||||
func _load_art_web(_response=null) -> void:
|
||||
if Database.needs_to_download_images and cardFrontPath and FileAccess.file_exists(cardFrontPath):
|
||||
var image = Image.load_from_file(cardFrontPath)
|
||||
if image:
|
||||
cardFront = ImageTexture.create_from_image(image)
|
||||
%Front.texture = cardFront
|
||||
else:
|
||||
match Settings.settings.Language:
|
||||
"ja":
|
||||
cardFront = load("res://Sou_Desu_Ne_JP.png")
|
||||
%Front.texture = cardFront
|
||||
_:
|
||||
cardFront = load("res://Sou_Desu_Ne.png")
|
||||
%Front.texture = cardFront
|
||||
|
||||
func _process(_delta: float) -> void:
|
||||
if cardFrontLoading and ResourceLoader.load_threaded_get_status(cardFrontPath) == 3:
|
||||
cardFront = ResourceLoader.load_threaded_get(cardFrontPath)
|
||||
%Front.texture = cardFront
|
||||
cardFrontLoading = false
|
||||
|
||||
|
||||
func _flip(back_image = null) -> void:
|
||||
if back_image:
|
||||
|
||||
@@ -13,7 +13,11 @@ signal card_right_clicked(card_id)
|
||||
signal card_mouse_over(card_id)
|
||||
signal card_mouse_left
|
||||
|
||||
var cardFront
|
||||
var cardFront:
|
||||
get:
|
||||
return %Front.cardFront
|
||||
set(value):
|
||||
%CardInfo.cardFront = value
|
||||
var cardBack
|
||||
var fullText = ""
|
||||
@export var artNum:int
|
||||
@@ -60,7 +64,7 @@ var attached = []
|
||||
# Android input handling
|
||||
var android_click_handled := false
|
||||
|
||||
func setup_info(number,art_code,back=null):
|
||||
func setup_info(number,art_code,back=null,load_art=true) -> void:
|
||||
cardNumber = number
|
||||
artNum = art_code
|
||||
|
||||
@@ -69,8 +73,7 @@ func setup_info(number,art_code,back=null):
|
||||
|
||||
var card_data = Database.cardData[cardNumber]
|
||||
|
||||
%Front._initialize(cardNumber, artNum)
|
||||
cardFront = %Front.cardFront
|
||||
%Front._initialize(cardNumber, artNum, load_art)
|
||||
notFound = %Front.notFound
|
||||
|
||||
cardType = card_data.cardType
|
||||
@@ -153,6 +156,10 @@ func setup_info(number,art_code,back=null):
|
||||
|
||||
fullText = full_desc()
|
||||
|
||||
func start_loading_art() -> void:
|
||||
if cardFront == null and !%Front.cardFrontLoading:
|
||||
%Front._start_loading_art()
|
||||
|
||||
func set_ban(num: int):
|
||||
if num < 0:
|
||||
%Ban.visible = false
|
||||
|
||||
11
Scripts/cheer_count.gd
Normal file
11
Scripts/cheer_count.gd
Normal file
@@ -0,0 +1,11 @@
|
||||
extends Control
|
||||
|
||||
var cheer_texture:
|
||||
get:
|
||||
return %CheerBase.texture
|
||||
set(value):
|
||||
%CheerBase.texture = value
|
||||
|
||||
var count = 20:
|
||||
set(value):
|
||||
%Count.text = str(value)
|
||||
1
Scripts/cheer_count.gd.uid
Normal file
1
Scripts/cheer_count.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://1xx0yie53yhy
|
||||
@@ -13,7 +13,7 @@ signal card_mouse_left
|
||||
func addCard(number, artCode):
|
||||
var newCard = card.instantiate()
|
||||
newCard.inEditor = true
|
||||
newCard.setup_info(number, artCode)
|
||||
newCard.setup_info(number, artCode, null, cards.size() == 0)
|
||||
if cards.size() > 0:
|
||||
newCard.visible = false
|
||||
$Cards.add_child(newCard)
|
||||
@@ -37,6 +37,7 @@ func setAltArt(art_index):
|
||||
$LastAltArt.visible = false
|
||||
cards[current_card].visible = false
|
||||
cards[art_index].visible = true
|
||||
cards[art_index].start_loading_art()
|
||||
current_card = art_index
|
||||
if cards.size() - art_index > 1:
|
||||
$NextAltArt.visible = true
|
||||
|
||||
@@ -16,6 +16,13 @@ var en_current_banlist = {}
|
||||
var unreleased = {}
|
||||
var en_unreleased = {}
|
||||
|
||||
var unreleased_server = {}
|
||||
|
||||
var downloader
|
||||
var needs_to_download_images = OS.has_feature("web")
|
||||
var pathFront = "user://tempCardFronts/" if needs_to_download_images else "res://cardFronts/"
|
||||
var webFront = "https://raw.githubusercontent.com/GabeJWJ/holoDelta/refs/heads/master/cardFronts/"
|
||||
|
||||
func setup_data(result, callback = null, progress = null):
|
||||
cardData = result
|
||||
totalCards = cardData.keys().size()
|
||||
@@ -25,9 +32,11 @@ func setup_data(result, callback = null, progress = null):
|
||||
var splitNumber = cardNumber.split("-",false,2)
|
||||
for art_code in cardData[cardNumber]["cardArt"]:
|
||||
for lang in cardData[cardNumber]["cardArt"][art_code]:
|
||||
var path = "res://cardFronts/{setcode}/{lang}/{number}/{artCode}.webp".format(
|
||||
{"setcode":splitNumber[0],"number":splitNumber[1],"lang":lang,"artCode":art_code})
|
||||
if ResourceLoader.exists(path):
|
||||
var path = "{setcode}/{lang}/{number}/{artCode}.webp".format(
|
||||
{"setcode":splitNumber[0],"number":splitNumber[1],"lang":lang,"artCode":art_code})
|
||||
if !needs_to_download_images:
|
||||
path = pathFront + path
|
||||
if needs_to_download_images or ResourceLoader.exists(path):
|
||||
if cardNumber not in cardArts:
|
||||
cardArts[cardNumber] = {}
|
||||
if int(art_code) not in cardArts[cardNumber]:
|
||||
@@ -36,10 +45,34 @@ func setup_data(result, callback = null, progress = null):
|
||||
#Was loading the texture, grabbing the image, and creating an ImageTexture from it
|
||||
#Not sure why; this has less juggling
|
||||
cardArts[cardNumber][int(art_code)][lang] = path
|
||||
else:
|
||||
print(path)
|
||||
else:
|
||||
print(path)
|
||||
current += 1
|
||||
if progress:
|
||||
progress.call(current, totalCards)
|
||||
if callback:
|
||||
callback.call()
|
||||
|
||||
func get_card_front(cardNumber:String, art_code:int, lang_code:String, callback:Callable) -> void:
|
||||
if needs_to_download_images:
|
||||
if cardNumber in cardArts and art_code in cardArts[cardNumber] and lang_code in cardArts[cardNumber][art_code]:
|
||||
var path = cardArts[cardNumber][art_code][lang_code]
|
||||
if FileAccess.file_exists(pathFront + path):
|
||||
#We already have this art downloaded - don't do it again
|
||||
callback.call()
|
||||
else:
|
||||
#We have to download it
|
||||
downloader.job(webFront + path).download(pathFront + path, callback)
|
||||
else:
|
||||
print(cardNumber, " ", art_code, " ", lang_code)
|
||||
else:
|
||||
#We have the images just stored in the executable. This should be checked before calling this function, but just in case.
|
||||
callback.call()
|
||||
|
||||
func delete_folder_recursive(path: String) -> void:
|
||||
if DirAccess.dir_exists_absolute(path):
|
||||
for dir in DirAccess.get_directories_at(path):
|
||||
delete_folder_recursive(path.path_join(dir))
|
||||
for file in DirAccess.get_files_at(path):
|
||||
DirAccess.remove_absolute(path.path_join(file))
|
||||
DirAccess.remove_absolute(path)
|
||||
|
||||
@@ -57,10 +57,10 @@ var tag_order = ["JP", "ID", "EN", "DEV_IS",
|
||||
"IDGen1", "IDGen2", "IDGen3",
|
||||
"Myth", "Council", "Promise", "Advent", "Justice",
|
||||
"ReGloss", "FLOWGLOW",
|
||||
"AnimalEars", "Art", "Bird", "Cooking", "Food", "HalfElf", "HoloWitch", "Kaela'sArms",
|
||||
"AnimalEars", "Art", "Bird", "Cooking", "Food", "HalfElf", "HoloWitch", "Kaela'sArms", "Lamy'sAlcohol",
|
||||
"Languages", "Magic", "Sea", "ShirakamiCharacter", "Shooter", "Song", "Baby", "Alcohol", "Summer", "BuzzMerch"]
|
||||
|
||||
#Constants filled up at runtime. So the name select isn't giving you options that aren't in the game
|
||||
#Constants filled up at runtime. So the name select isn't giving you options that aren't in the game for example
|
||||
var oshi_colors = []
|
||||
var oshi_names = []
|
||||
var oshi_setcodes = []
|
||||
@@ -126,7 +126,7 @@ var cheer_multiple = 1
|
||||
@onready var mainSleeveSelect = $CanvasLayer/YourStuff/TAB_SLEEVES/Main
|
||||
@onready var cheerSleeveSelect = $CanvasLayer/YourStuff/TAB_SLEEVES/Cheer
|
||||
|
||||
var banlist = Database.en_current_banlist if Settings.settings.OnlyEN else Database.current_banlist
|
||||
var banlist = Database.en_unreleased if Settings.settings.OnlyEN else Database.unreleased
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -152,6 +152,8 @@ func findByClass(node: Node, className : String, result : Array) -> void:
|
||||
func _ready() -> void:
|
||||
tr("LEVEL_ANY") #for POT generation - Godot's automatic system won't find it in a popupmenu list
|
||||
|
||||
Database.downloader = %HTTPManager
|
||||
|
||||
if Settings.settings.OnlyEN:
|
||||
$CanvasLayer/BanlistChoice.selected = 2
|
||||
|
||||
@@ -162,11 +164,17 @@ func _ready() -> void:
|
||||
for cardNumber in Database.cardData:
|
||||
if cardNumber in Database.cardArts:
|
||||
var newCardButton
|
||||
|
||||
if Settings.settings.OnlyEN:
|
||||
var found_en_art = false
|
||||
for art_code in Database.cardData[cardNumber]["cardArt"]:
|
||||
if "en" in Database.cardData[cardNumber]["cardArt"][art_code] and !Database.cardData[cardNumber]["cardArt"][art_code]["en"]["proxy"]:
|
||||
found_en_art = true
|
||||
break
|
||||
if !found_en_art:
|
||||
continue
|
||||
|
||||
for art_code in Database.cardData[cardNumber]["cardArt"]:
|
||||
if Settings.settings.OnlyEN and ("en" not in Database.cardData[cardNumber]["cardArt"][art_code] or Database.cardData[cardNumber]["cardArt"][art_code]["en"]["proxy"]):
|
||||
continue
|
||||
if !Settings.settings.OnlyEN and "ja" not in Database.cardData[cardNumber]["cardArt"][art_code]:
|
||||
continue
|
||||
newCardButton = add_to_collection(cardNumber,int(art_code))
|
||||
|
||||
if !newCardButton:
|
||||
@@ -315,6 +323,11 @@ func _ready() -> void:
|
||||
GameState.deck_to_import = null
|
||||
pass
|
||||
|
||||
if OS.has_feature("web"):
|
||||
$CanvasLayer/YourStuff/TAB_IMPORT/VBoxContainer/DownloadJSON.visible = true
|
||||
else:
|
||||
$CanvasLayer/YourStuff/TAB_IMPORT.queue_free()
|
||||
|
||||
%Loading.visible = false
|
||||
|
||||
#region Filter And Sort
|
||||
@@ -376,7 +389,7 @@ func _holomem_filter(holomem_to_check) -> bool:
|
||||
if holomem_filter.Advantage != null:
|
||||
var found_art_with_correct_advantage = false
|
||||
for possible_art in holomem_to_check.holomem_arts:
|
||||
if possible_art[-1] == holomem_filter.Advantage:
|
||||
if possible_art[5] == holomem_filter.Advantage:
|
||||
found_art_with_correct_advantage = true
|
||||
break
|
||||
if !found_art_with_correct_advantage:
|
||||
@@ -887,7 +900,9 @@ func add_holomem_or_support(card_added, amount=1) -> void:
|
||||
|
||||
func add_to_collection(number : String, art_code : int):
|
||||
var newCollection
|
||||
|
||||
if number.begins_with("hBD"):
|
||||
#Collect the BD Oshis together by color
|
||||
var color = Database.cardData[number]["color"][0]
|
||||
if color in bd_collections:
|
||||
newCollection = bd_collections[color]
|
||||
@@ -899,8 +914,11 @@ func add_to_collection(number : String, art_code : int):
|
||||
bd_collections[color] = newCollection
|
||||
oshi_cards.append(newCollection)
|
||||
elif number in collections:
|
||||
#We've already done at least one version of this card
|
||||
#Add this one to the collection
|
||||
newCollection = collections[number]
|
||||
else:
|
||||
#New card, new collection
|
||||
newCollection = collection.instantiate()
|
||||
newCollection.card_clicked.connect(_on_menu_card_clicked)
|
||||
newCollection.card_right_clicked.connect(_on_menu_card_right_clicked)
|
||||
@@ -1175,7 +1193,11 @@ func is_deck_legal():
|
||||
if cardNumber in banlist and banlist[cardNumber] < in_deck_dictionary[cardNumber]:
|
||||
$CanvasLayer/SaveDeck.tooltip_text += tr("DECKERROR_RESTRICTED").format({cardNum = cardNumber}) + "\n"
|
||||
|
||||
return $CanvasLayer/SaveDeck.tooltip_text == ""
|
||||
var deck_is_legal = $CanvasLayer/SaveDeck.tooltip_text == ""
|
||||
if OS.has_feature("web"):
|
||||
$CanvasLayer/YourStuff/TAB_IMPORT/VBoxContainer/DownloadJSON.disabled = !deck_is_legal
|
||||
|
||||
return deck_is_legal
|
||||
|
||||
func update_analytics():
|
||||
var result = ""
|
||||
@@ -1214,13 +1236,13 @@ func _on_banlist_choice_item_selected(index: int) -> void:
|
||||
0:
|
||||
banlist = []
|
||||
1:
|
||||
banlist = Database.current_banlist
|
||||
2:
|
||||
banlist = Database.en_current_banlist
|
||||
3:
|
||||
banlist = Database.unreleased
|
||||
4:
|
||||
2:
|
||||
banlist = Database.en_unreleased
|
||||
3:
|
||||
banlist = Database.current_banlist
|
||||
4:
|
||||
banlist = Database.en_current_banlist
|
||||
|
||||
for potential_card in all_cards:
|
||||
if is_instance_valid(potential_card):
|
||||
@@ -1246,8 +1268,6 @@ func _on_save_deck_pressed():
|
||||
else:
|
||||
print("An error occurred when trying to access the path.")
|
||||
$CanvasLayer/SavePrompt.visible = true
|
||||
if OS.has_feature("web"):
|
||||
$CanvasLayer/SavePrompt/FileName/Download.visible = true
|
||||
|
||||
func _save_deck_to_file(path, download=false):
|
||||
if !path.ends_with(".json"):
|
||||
@@ -1291,7 +1311,8 @@ func _save_deck_to_file(path, download=false):
|
||||
file_access.store_line(json_string)
|
||||
file_access.close()
|
||||
|
||||
_hide_save_prompt()
|
||||
if !download:
|
||||
_hide_save_prompt()
|
||||
|
||||
func _on_save_pressed(confirmed=false):
|
||||
var file_name = $CanvasLayer/SavePrompt/FileName.text
|
||||
|
||||
@@ -35,14 +35,14 @@ func _all_decks() -> void:
|
||||
if INTJSON.parse(FileAccess.get_file_as_string(path + "/" + file_name)) == 0:
|
||||
if Settings.settings.OnlyEN:
|
||||
var found_not_en = false
|
||||
if !check_if_card_is_en(INTJSON.data.oshi[0],INTJSON.data.oshi[1]):
|
||||
if !check_if_card_is_en(INTJSON.data.oshi[0]):
|
||||
found_not_en = true
|
||||
for card_info in INTJSON.data.deck:
|
||||
if !check_if_card_is_en(card_info[0],card_info[2]):
|
||||
if !check_if_card_is_en(card_info[0]):
|
||||
found_not_en = true
|
||||
break
|
||||
for card_info in INTJSON.data.cheerDeck:
|
||||
if !check_if_card_is_en(card_info[0],card_info[2]):
|
||||
if !check_if_card_is_en(card_info[0]):
|
||||
found_not_en = true
|
||||
break
|
||||
if found_not_en:
|
||||
@@ -57,9 +57,9 @@ func _all_decks() -> void:
|
||||
else:
|
||||
print("An error occurred when trying to access the path.")
|
||||
|
||||
func check_if_card_is_en(cardNumber, artNum):
|
||||
return cardNumber in Database.cardData and str(artNum) in Database.cardData[cardNumber]["cardArt"] and \
|
||||
"en" in Database.cardData[cardNumber]["cardArt"][str(artNum)] and !Database.cardData[cardNumber]["cardArt"][str(artNum)]["en"]["proxy"]
|
||||
func check_if_card_is_en(cardNumber):
|
||||
return cardNumber in Database.cardData and \
|
||||
Database.cardData[cardNumber]["cardArt"].keys().any(func(artNum): return "en" in Database.cardData[cardNumber]["cardArt"][artNum] and !Database.cardData[cardNumber]["cardArt"][artNum]["en"]["proxy"])
|
||||
|
||||
|
||||
func _set_selected(deckInfo : Dictionary) -> void:
|
||||
|
||||
@@ -23,10 +23,22 @@ var cheer_attached = {"White":[],"Green":[],"Red":[],"Blue":[],"Purple":[],"Yell
|
||||
@export var allowed_to_scroll = true
|
||||
var locked = false
|
||||
|
||||
var cheer = {"Blue":load("res://CheerIcons/Blue.webp"),"Red":load("res://CheerIcons/Red.webp"),
|
||||
"Green":load("res://CheerIcons/Green.webp"),"White":load("res://CheerIcons/White.webp"),
|
||||
"Purple":load("res://CheerIcons/Purple.webp"),"Yellow":load("res://CheerIcons/Yellow.webp"),
|
||||
"Colorless":load("res://CheerIcons/Colorless.webp")}
|
||||
var all_art_loaded = false
|
||||
|
||||
var cheer = {"Blue":preload("res://CheerIcons/Blue.webp"),"Red":preload("res://CheerIcons/Red.webp"),
|
||||
"Green":preload("res://CheerIcons/Green.webp"),"White":preload("res://CheerIcons/White.webp"),
|
||||
"Purple":preload("res://CheerIcons/Purple.webp"),"Yellow":preload("res://CheerIcons/Yellow.webp"),
|
||||
"Colorless":preload("res://CheerIcons/Colorless.webp")}
|
||||
var cheer_count_scene = preload("res://Scenes/cheer_count.tscn")
|
||||
|
||||
func _process(_delta: float) -> void:
|
||||
if !all_art_loaded:
|
||||
var found_unloaded_art = false
|
||||
for entry in showing:
|
||||
if entry[0].texture == null:
|
||||
entry[0].texture = entry[2].cardFront
|
||||
found_unloaded_art = true
|
||||
all_art_loaded = !found_unloaded_art
|
||||
|
||||
func _new_info(top_card, card_to_show) -> void:
|
||||
#Reads all of the proper info and passes it along to _set_showing to display
|
||||
@@ -45,10 +57,10 @@ func _new_info(top_card, card_to_show) -> void:
|
||||
|
||||
#We add the cards in the order top_card, top_card.onTopOf, top_card.attached (skipping cheers)
|
||||
showing_card_ids.append(top_card.cardID)
|
||||
result.append([top_card.cardFront,top_card.full_desc()])
|
||||
result.append([top_card.cardFront,top_card.full_desc(),top_card])
|
||||
for stacked_card in top_card.onTopOf:
|
||||
showing_card_ids.append(stacked_card.cardID)
|
||||
result.append([stacked_card.cardFront,stacked_card.full_desc()])
|
||||
result.append([stacked_card.cardFront,stacked_card.full_desc(),stacked_card])
|
||||
for attached_card in top_card.attached:
|
||||
if attached_card.cardType == "Cheer":
|
||||
var preview = TextureRect.new()
|
||||
@@ -60,6 +72,16 @@ func _new_info(top_card, card_to_show) -> void:
|
||||
showing_card_ids.append(attached_card.cardID)
|
||||
result.append([attached_card.cardFront,attached_card.full_desc()])
|
||||
|
||||
#If at least 5 cheer of the same color, condense into one cheer icon with number
|
||||
for cheer_color in cheer_result:
|
||||
if cheer_result[cheer_color].size() >= 5:
|
||||
var cheer_count = cheer_count_scene.instantiate()
|
||||
cheer_count.z_index = 1
|
||||
cheer_count.scale = CHEER_SCALE
|
||||
cheer_count.cheer_texture = cheer[cheer_color]
|
||||
cheer_count.count = cheer_result[cheer_color].size()
|
||||
cheer_result[cheer_color] = [cheer_count]
|
||||
|
||||
#If you hover over an attached cheer the index is -1, which just shows the last card
|
||||
#That doesn't feel right, so we'll clamp to 0
|
||||
var index_to_show = max(0, showing_card_ids.find(card_to_show.cardID))
|
||||
@@ -103,7 +125,7 @@ func _set_showing(to_show : Array, cheer_show : Dictionary, start_index : int) -
|
||||
preview.size = CARD_SIZE
|
||||
preview.position = Vector2(starting_pos - (each_offset * i), NORMAL_Y)
|
||||
preview.texture = entry[0]
|
||||
showing.insert(0,[preview,entry[1]])
|
||||
showing.insert(0,[preview,entry[1],entry[2]])
|
||||
var gray = TextureRect.new()
|
||||
%Preview.add_child(gray)
|
||||
gray.expand_mode = TextureRect.EXPAND_IGNORE_SIZE
|
||||
@@ -167,6 +189,7 @@ func _clear_showing() -> void:
|
||||
%CardText.text = ""
|
||||
showing_card_ids = []
|
||||
%ScrollIcon.visible = false
|
||||
all_art_loaded = false
|
||||
|
||||
func update_word_wrap() -> void:
|
||||
#For some reason, Japanese won't word wrap under word smart mode when exported
|
||||
|
||||
61
Scripts/look_at.gd
Normal file
61
Scripts/look_at.gd
Normal file
@@ -0,0 +1,61 @@
|
||||
#Yes I need to come back to this
|
||||
#New LookAt object that comes with multi-select and a Tree to filter the cards shown
|
||||
#Should also coincedentally fix the issue with cheer getting 'stuck' on the cheer deck.
|
||||
#When/if I finish it of course
|
||||
|
||||
extends Control
|
||||
|
||||
var tree_root : TreeItem
|
||||
var holomem_node : TreeItem
|
||||
var holomem_level_node : TreeItem
|
||||
var holomem_color_node : TreeItem
|
||||
var holomem_name_node : TreeItem
|
||||
var holomem_tag_node : TreeItem
|
||||
var holomem_extra_node : TreeItem
|
||||
var support_node : TreeItem
|
||||
var support_type_node : TreeItem
|
||||
var support_tag_node : TreeItem
|
||||
var cheer_node : TreeItem
|
||||
var cheer_color_node : TreeItem
|
||||
|
||||
var cards_to_show : Array
|
||||
var all_cards : Array
|
||||
|
||||
var show_tree := true:
|
||||
set(value):
|
||||
show_tree = value
|
||||
%Tree.visible = value
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
tree_root = %Tree.create_item()
|
||||
|
||||
func _create_new_node(base:TreeItem, text:String) -> TreeItem:
|
||||
var new_node = %Tree.create_item(base)
|
||||
new_node.set_cell_mode(0, 1)
|
||||
new_node.set_editable(0, true)
|
||||
new_node.set_text(0, text)
|
||||
return new_node
|
||||
|
||||
func _clear() -> void:
|
||||
cards_to_show = []
|
||||
all_cards = []
|
||||
for child in %HBoxContainer.get_children():
|
||||
child.queue_free()
|
||||
%Tree.clear()
|
||||
holomem_node = null
|
||||
holomem_level_node = null
|
||||
holomem_color_node = null
|
||||
holomem_name_node = null
|
||||
holomem_tag_node = null
|
||||
holomem_extra_node = null
|
||||
support_node = null
|
||||
support_type_node = null
|
||||
support_tag_node = null
|
||||
cheer_node = null
|
||||
cheer_color_node = null
|
||||
tree_root = %Tree.create_item()
|
||||
|
||||
func _show_cards(list_of_cards : Array) -> void:
|
||||
all_cards = list_of_cards
|
||||
|
||||
1
Scripts/look_at.gd.uid
Normal file
1
Scripts/look_at.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://55w7a0chbkwm
|
||||
@@ -1,7 +1,6 @@
|
||||
extends Node
|
||||
|
||||
const websocketURL = "holodelta.azurewebsites.net" # "127.0.0.1:8000" #
|
||||
|
||||
const websocketURL = "127.0.0.1:8000" # "holodelta.azurewebsites.net" #
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
|
||||
@@ -420,6 +420,7 @@ func specialStart3(fmc):
|
||||
|
||||
$CanvasLayer/Question.visible = false
|
||||
$CanvasLayer/Ready.visible = true
|
||||
$CanvasLayer/OpponentLabel/ReadyGuide.visible = true
|
||||
can_do_things = true
|
||||
|
||||
func _call_ready():
|
||||
@@ -1033,7 +1034,7 @@ func showLookAt(list_of_cards):
|
||||
if actualCard == null:
|
||||
continue
|
||||
var newButton = betterButton.instantiate()
|
||||
newButton.set_texture(actualCard.cardFront)
|
||||
newButton.set_art(actualCard.cardNumber, actualCard.artNum)
|
||||
newButton.id = actualCard.cardID
|
||||
newButton.pressed.connect(_on_list_card_clicked.bind(actualCard.cardID))
|
||||
if actualCard.temporary:
|
||||
@@ -1353,8 +1354,11 @@ func _on_card_clicked(card_id : int) -> void:
|
||||
popup.add_item(tr("CARD_SUPPORT_ATTACH"), 121)
|
||||
else:
|
||||
var cantUseLimited = used_limited or (first_turn and player1)
|
||||
if playing == null and !(actualCard.limited and cantUseLimited):
|
||||
popup.add_item(tr("CARD_SUPPORT_PLAY"),120)
|
||||
if playing == null:
|
||||
if actualCard.limited and cantUseLimited:
|
||||
popup.add_item(tr("CARD_SUPPORT_PLAY_ANYWAY"),120)
|
||||
else:
|
||||
popup.add_item(tr("CARD_SUPPORT_PLAY"),120)
|
||||
elif playing == currentCard:
|
||||
popup.add_item(tr("CARD_SUPPORT_ARCHIVE"),20)
|
||||
"Oshi":
|
||||
@@ -1788,7 +1792,10 @@ func _popup_from_id(id, metadata = null):
|
||||
102: #Play Hidden to Center
|
||||
preliminary_holomem_in_center = true
|
||||
if mulligan_to_bottom == 0:
|
||||
$CanvasLayer/OpponentLabel/ReadyGuide/Label.text = tr("READY_GUIDE_3")
|
||||
$CanvasLayer/Ready.disabled = false
|
||||
else:
|
||||
$CanvasLayer/OpponentLabel/ReadyGuide/Label.text = tr("READY_GUIDE_2").format({"num":mulligan_to_bottom})
|
||||
103: #Play Hidden to Back
|
||||
var possibleZones = all_unoccupied_back_zones()
|
||||
showZoneSelection(possibleZones)
|
||||
@@ -1798,7 +1805,10 @@ func _popup_from_id(id, metadata = null):
|
||||
if mulligan_to_bottom > 0:
|
||||
mulligan_to_bottom -= 1
|
||||
if mulligan_to_bottom == 0:
|
||||
$CanvasLayer/OpponentLabel/ReadyGuide/Label.text = tr("READY_GUIDE_3")
|
||||
$CanvasLayer/Ready.disabled = false
|
||||
else:
|
||||
$CanvasLayer/OpponentLabel/ReadyGuide/Label.text = tr("READY_GUIDE_2").format({"num":mulligan_to_bottom})
|
||||
121: #Attach Support
|
||||
var possibleZones = all_occupied_zones()
|
||||
showZoneSelection(possibleZones)
|
||||
|
||||
@@ -80,4 +80,7 @@ func show_damage() -> void:
|
||||
%ZoneButton.visible = true
|
||||
|
||||
func add_note(new_note: String) -> void:
|
||||
if notes_this_turn.size() == 0:
|
||||
%ZoneButton.tooltip_text += "\n" + tr("GOLDFISH_NOTES_THIS_TURN")
|
||||
notes_this_turn.append(new_note)
|
||||
%ZoneButton.tooltip_text += "\n" + new_note
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"hEB01-***":0}
|
||||
{"hEB01-0**":0,"hBP09-***":0}
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
25/6/2026
|
||||
27/7/2026
|
||||
@@ -1 +1 @@
|
||||
1.2.2.8
|
||||
1.2.3.0
|
||||
@@ -18,7 +18,7 @@ def check_legal(deck, banlist = None, only_en = False):
|
||||
if oshi_card["cardType"] == "Oshi":
|
||||
if str(oshi_art) in oshi_card["cardArt"]:
|
||||
if find_in_list(banlist, oshi_number) is None:
|
||||
if only_en and not check_if_card_is_en(oshi_number, oshi_art):
|
||||
if only_en and not check_if_card_is_en(oshi_number):
|
||||
result["legal"] = False
|
||||
result["reasons"].append(["DECKERROR_ONLYEN",oshi_number])
|
||||
else:
|
||||
@@ -46,6 +46,8 @@ def check_legal(deck, banlist = None, only_en = False):
|
||||
found_debut = False
|
||||
total_main = 0
|
||||
|
||||
found_of_each_number = {}
|
||||
|
||||
for main_row in deck_info:
|
||||
main_number = main_row[0]
|
||||
main_card = card_info(card_id=main_number)
|
||||
@@ -58,19 +60,25 @@ def check_legal(deck, banlist = None, only_en = False):
|
||||
if main_card["cardType"] in ["Holomem","Support"]:
|
||||
if main_card["cardType"] == "Holomem" and main_card["level"] == 0:
|
||||
found_debut = True
|
||||
if main_card["cardLimit"] == -1 or main_count <= main_card["cardLimit"]:
|
||||
|
||||
if main_number in found_of_each_number:
|
||||
found_of_each_number[main_number] += main_count
|
||||
else:
|
||||
found_of_each_number[main_number] = main_count
|
||||
|
||||
if main_card["cardLimit"] == -1 or found_of_each_number[main_number] <= main_card["cardLimit"]:
|
||||
if main_count > 0:
|
||||
if str(main_art) in main_card["cardArt"]:
|
||||
banned_code = find_in_list(banlist, main_number)
|
||||
if banned_code is None:
|
||||
if only_en and not check_if_card_is_en(main_number, main_art):
|
||||
if only_en and not check_if_card_is_en(main_number):
|
||||
result["legal"] = False
|
||||
result["reasons"].append(["DECKERROR_ONLYEN",main_number])
|
||||
else:
|
||||
if banlist[banned_code] == 0:
|
||||
result["legal"] = False
|
||||
result["reasons"].append(["DECKERROR_BANNED",main_number])
|
||||
elif banlist[banned_code] < main_count:
|
||||
elif banlist[banned_code] < found_of_each_number[main_number]:
|
||||
result["legal"] = False
|
||||
result["reasons"].append(["DECKERROR_RESTRICTED",main_number])
|
||||
else:
|
||||
@@ -128,7 +136,7 @@ def check_legal(deck, banlist = None, only_en = False):
|
||||
if str(cheer_art) in cheer_card["cardArt"]:
|
||||
banned_code = find_in_list(banlist, cheer_number)
|
||||
if banned_code is None:
|
||||
if only_en and not check_if_card_is_en(cheer_number, cheer_art):
|
||||
if only_en and not check_if_card_is_en(cheer_number):
|
||||
result["legal"] = False
|
||||
result["reasons"].append(["DECKERROR_ONLYEN",cheer_number])
|
||||
else:
|
||||
@@ -172,7 +180,7 @@ def check_legal(deck, banlist = None, only_en = False):
|
||||
|
||||
return real_deck, result
|
||||
|
||||
def check_if_card_is_en(cardNumber, artNum):
|
||||
def check_if_card_is_en(cardNumber):
|
||||
card_data = get_data("card_data")
|
||||
return cardNumber in card_data and str(artNum) in card_data[cardNumber]["cardArt"] and \
|
||||
"en" in card_data[cardNumber]["cardArt"][str(artNum)] and not card_data[cardNumber]["cardArt"][str(artNum)]["en"]["proxy"]
|
||||
return cardNumber in card_data and \
|
||||
any("en" in card_data[cardNumber]["cardArt"][artNum] and not card_data[cardNumber]["cardArt"][artNum]["en"]["proxy"] for artNum in card_data[cardNumber]["cardArt"])
|
||||
@@ -25,8 +25,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -25,8 +25,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -115,6 +115,9 @@ corner_radius_bottom_right = 3
|
||||
corner_radius_bottom_left = 3
|
||||
corner_detail = 5
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_fiq7h"]
|
||||
bg_color = Color(0.063355684, 0.09938582, 0.14095011, 0.90588236)
|
||||
|
||||
[resource]
|
||||
BoxContainer/constants/separation = 30
|
||||
Button/colors/font_color = Color(0.384314, 0.356863, 0.576471, 1)
|
||||
@@ -159,3 +162,6 @@ TabContainer/styles/tab_unselected = SubResource("StyleBoxFlat_ledp1")
|
||||
TooltipLabel/colors/font_color = Color(0.875, 0.875, 0.875, 1)
|
||||
TooltipLabel/fonts/font = ExtResource("1_qct6y")
|
||||
TooltipPanel/styles/panel = SubResource("StyleBoxFlat_gv6e5")
|
||||
Tree/colors/font_color = Color(0.9355364, 0.9355364, 0.93553627, 1)
|
||||
Tree/fonts/font = ExtResource("1_qct6y")
|
||||
Tree/styles/panel = SubResource("StyleBoxFlat_fiq7h")
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://vxfe3fkfuq14"
|
||||
path.s3tc="res://.godot/imported/chat.png-2a304dcf89a61eb8e82872b1ddac79ef.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/chat.png-2a304dcf89a61eb8e82872b1ddac79ef.etc2.ctex"
|
||||
path="res://.godot/imported/chat.png-2a304dcf89a61eb8e82872b1ddac79ef.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/chat.png"
|
||||
dest_files=["res://.godot/imported/chat.png-2a304dcf89a61eb8e82872b1ddac79ef.s3tc.ctex", "res://.godot/imported/chat.png-2a304dcf89a61eb8e82872b1ddac79ef.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/chat.png-2a304dcf89a61eb8e82872b1ddac79ef.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cy6rk1ewblrkk"
|
||||
path.s3tc="res://.godot/imported/information.png-8e5bf193ebcd46769ad20f5b7481810b.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/information.png-8e5bf193ebcd46769ad20f5b7481810b.etc2.ctex"
|
||||
path="res://.godot/imported/information.png-8e5bf193ebcd46769ad20f5b7481810b.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/information.png"
|
||||
dest_files=["res://.godot/imported/information.png-8e5bf193ebcd46769ad20f5b7481810b.s3tc.ctex", "res://.godot/imported/information.png-8e5bf193ebcd46769ad20f5b7481810b.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/information.png-8e5bf193ebcd46769ad20f5b7481810b.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
@@ -3,30 +3,34 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cr17emtr7b78o"
|
||||
path.s3tc="res://.godot/imported/settings.png-26a54802621e1d5c05eb02e59cdb05f0.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/settings.png-26a54802621e1d5c05eb02e59cdb05f0.etc2.ctex"
|
||||
path="res://.godot/imported/settings.png-26a54802621e1d5c05eb02e59cdb05f0.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/settings.png"
|
||||
dest_files=["res://.godot/imported/settings.png-26a54802621e1d5c05eb02e59cdb05f0.s3tc.ctex", "res://.godot/imported/settings.png-26a54802621e1d5c05eb02e59cdb05f0.etc2.ctex"]
|
||||
dest_files=["res://.godot/imported/settings.png-26a54802621e1d5c05eb02e59cdb05f0.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/mode=4
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-36f390c9d7a55d4a92001fd651362cb1.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-843891f98d1b0c8b59237978a5d1e823.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-264587d6f139dc160433c3ea8c6383fb.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-216574a236124f52a1c17984cc3e0b7e.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-7ddfc92612b4be193d4d1a6c7d47be8b.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-e59cdcca004bd365a16459614027ea04.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-658600d0ab0aa730502507316b059652.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-55cd8e83ce450ed5ce70e2c6a0a7c710.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-bb4fcdac7cf1b292ea2a779229985d54.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-2811f10b694c4514fe6c1b5c108b9328.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-d97ee7a6a0abeec8319d45498ceed7ce.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-7846dd9f93c1333dda588c67ac24d0fd.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-a9bad70af3bd52cef4fd2bd5110ce2ab.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-855c624835713713d79b52c808f094a7.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-a4ed080f47cb14d5f23505fdd53c49af.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-919d27b78f619c4b97641285a4051395.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-1260799e00b3ca48f3f824d1e81dffad.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-77cb5f9a3c8d3bec13c473437684a955.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-96e9aed639d0a412c542c441984e76ef.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-f081eeb4a8f71d68aa05f887d8412aee.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-2a4cfc96c87c8e6bf0479df61de8f097.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-8aab0c947009dd4f15ecd19f4cc8c0c4.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-be44cdf89a8d7239d46f25fa00eee517.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
@@ -15,7 +15,7 @@ dest_files=["res://.godot/imported/0.webp-f6725cc39d606d3a7e3e98864414ecbe.ctex"
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=1
|
||||
compress/mode=4
|
||||
compress/high_quality=true
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
@@ -23,8 +23,8 @@ compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=2
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user