From: Eduardo Date: Fri, 21 Jun 2024 15:53:48 +0000 (+0200) Subject: initial commit X-Git-Url: http://git.edufdez.es/?a=commitdiff_plain;h=5d1142d700c312caeffd8919ec5a7cc511b7fdef;p=local-picrew.git initial commit need to sync all this --- 5d1142d700c312caeffd8919ec5a7cc511b7fdef diff --git a/BACKPAIN_LOGO.png b/BACKPAIN_LOGO.png new file mode 100644 index 0000000..698139b Binary files /dev/null and b/BACKPAIN_LOGO.png differ diff --git a/BACKPAIN_LOGO.png.import b/BACKPAIN_LOGO.png.import new file mode 100644 index 0000000..1656d37 --- /dev/null +++ b/BACKPAIN_LOGO.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://44dxc0bmuxmd" +path="res://.godot/imported/BACKPAIN_LOGO.png-f158940e3746b1fb3787c1ec5e3a3f06.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://BACKPAIN_LOGO.png" +dest_files=["res://.godot/imported/BACKPAIN_LOGO.png-f158940e3746b1fb3787c1ec5e3a3f06.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/bodys/.thumb/C1 (copy).png b/assets/bodys/.thumb/C1 (copy).png new file mode 100644 index 0000000..daaba10 Binary files /dev/null and b/assets/bodys/.thumb/C1 (copy).png differ diff --git a/assets/bodys/.thumb/C1.png b/assets/bodys/.thumb/C1.png new file mode 100644 index 0000000..b8bd784 Binary files /dev/null and b/assets/bodys/.thumb/C1.png differ diff --git a/assets/bodys/C1 (copy).png b/assets/bodys/C1 (copy).png new file mode 100644 index 0000000..4014c65 Binary files /dev/null and b/assets/bodys/C1 (copy).png differ diff --git a/assets/bodys/C1 (copy).png.import b/assets/bodys/C1 (copy).png.import new file mode 100644 index 0000000..d716bfd --- /dev/null +++ b/assets/bodys/C1 (copy).png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dj6i86rux170v" +path="res://.godot/imported/C1 (copy).png-a0172639a9c1056279ffc699f6d01330.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/bodys/C1 (copy).png" +dest_files=["res://.godot/imported/C1 (copy).png-a0172639a9c1056279ffc699f6d01330.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/bodys/C1.png b/assets/bodys/C1.png new file mode 100644 index 0000000..eb251c8 Binary files /dev/null and b/assets/bodys/C1.png differ diff --git a/assets/bodys/C1.png.import b/assets/bodys/C1.png.import new file mode 100644 index 0000000..2ee2efa --- /dev/null +++ b/assets/bodys/C1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://gexkw3esfup7" +path="res://.godot/imported/C1.png-bb02816bbd0338a715d37b9e5097e92e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/bodys/C1.png" +dest_files=["res://.godot/imported/C1.png-bb02816bbd0338a715d37b9e5097e92e.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/bodys/config.txt b/assets/bodys/config.txt new file mode 100644 index 0000000..ead5cb2 --- /dev/null +++ b/assets/bodys/config.txt @@ -0,0 +1,24 @@ +; Color to be replaced by the color picker +; default: #FF00FF (full Red and Blue, no Green) +color_placeholder="#FF00FF" + +; The colors you add next will be the suggested ones to colorize the asset, you can add as much as you want +; example: ["#FF0000", "#00FF00", "#0000FF"] +; default: [] (no colors, you can use the color picker either way) +colors=["#FFE7D9", "#FF0000", "#00FF00", "#0000FF"] + +; Default position where the asset will be placed. Modify the 0s if you want to move it. +; First value means horizontal, positive right, negative left. The other one means vertical movement, positive up, negative down. +; default: Vector2(0, 0) +position=Vector2(0, 0) + +; Layer to draw +; By default when you add an asset its always added on top, so you cant add a body part after the eyes as that will be the wrong order, you can modify that here +; valid values are: "top", "bottom" +; default: "top" +new_layer_on="bottom" + +; Alternatively you may want to set up a layer for each asset, you can do it here +; higher means on top of lowers +; default: 0 +layer=0 diff --git a/assets/ears/.thumb/E1.png b/assets/ears/.thumb/E1.png new file mode 100644 index 0000000..f53b73e Binary files /dev/null and b/assets/ears/.thumb/E1.png differ diff --git a/assets/ears/.thumb/E2.png b/assets/ears/.thumb/E2.png new file mode 100644 index 0000000..17b9d4b Binary files /dev/null and b/assets/ears/.thumb/E2.png differ diff --git a/assets/ears/.thumb/E3.png b/assets/ears/.thumb/E3.png new file mode 100644 index 0000000..169a751 Binary files /dev/null and b/assets/ears/.thumb/E3.png differ diff --git a/assets/ears/E1.png b/assets/ears/E1.png new file mode 100644 index 0000000..f42842c Binary files /dev/null and b/assets/ears/E1.png differ diff --git a/assets/ears/E1.png.import b/assets/ears/E1.png.import new file mode 100644 index 0000000..8c86bf0 --- /dev/null +++ b/assets/ears/E1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d0xssxk60ortk" +path="res://.godot/imported/E1.png-2e3ed90e02874e080dc956e3a423973e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/ears/E1.png" +dest_files=["res://.godot/imported/E1.png-2e3ed90e02874e080dc956e3a423973e.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/ears/E2.png b/assets/ears/E2.png new file mode 100644 index 0000000..6d347b6 Binary files /dev/null and b/assets/ears/E2.png differ diff --git a/assets/ears/E2.png.import b/assets/ears/E2.png.import new file mode 100644 index 0000000..faab6da --- /dev/null +++ b/assets/ears/E2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://vhmbwm8ohy0p" +path="res://.godot/imported/E2.png-284db307e57b483d6cc3af8f86c275d3.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/ears/E2.png" +dest_files=["res://.godot/imported/E2.png-284db307e57b483d6cc3af8f86c275d3.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/ears/E3.png b/assets/ears/E3.png new file mode 100644 index 0000000..4b0546c Binary files /dev/null and b/assets/ears/E3.png differ diff --git a/assets/ears/E3.png.import b/assets/ears/E3.png.import new file mode 100644 index 0000000..d1d40c4 --- /dev/null +++ b/assets/ears/E3.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bc4i0iduin3xi" +path="res://.godot/imported/E3.png-3ffbffbc33609feee35a3ac98fb38b00.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/ears/E3.png" +dest_files=["res://.godot/imported/E3.png-3ffbffbc33609feee35a3ac98fb38b00.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/ears/config.txt b/assets/ears/config.txt new file mode 100644 index 0000000..33aed24 --- /dev/null +++ b/assets/ears/config.txt @@ -0,0 +1,24 @@ +; Color to be replaced by the color picker +; default: #FF00FF (full Red and Blue, no Green) +color_placeholder="#FF00FF" + +; The colors you add next will be the suggested ones to colorize the asset, you can add as much as you want +; example: ["#FF0000", "#00FF00", "#0000FF"] +; default: [] (no colors, you can use the color picker either way) +colors=[] + +; Default position where the asset will be placed. Modify the 0s if you want to move it. +; First value means horizontal, positive right, negative left. The other one means vertical movement, positive up, negative down. +; default: Vector2(0, 0) +position=Vector2(0, 0) + +; Layer to draw +; By default when you add an asset its always added on top, so you cant add a body part after the eyes as that will be the wrong order, you can modify that here +; valid values are: "top", "bottom" +; default: "top" +new_layer_on="top" + +; Alternatively you may want to set up a layer for each asset, you can do it here +; higher means on top of lowers +; default: 0 +layer=2 diff --git a/assets/eyes/.thumb/O1.png b/assets/eyes/.thumb/O1.png new file mode 100644 index 0000000..57b236f Binary files /dev/null and b/assets/eyes/.thumb/O1.png differ diff --git a/assets/eyes/.thumb/O2.png b/assets/eyes/.thumb/O2.png new file mode 100644 index 0000000..ef7406e Binary files /dev/null and b/assets/eyes/.thumb/O2.png differ diff --git a/assets/eyes/O1.png b/assets/eyes/O1.png new file mode 100644 index 0000000..ab33e44 Binary files /dev/null and b/assets/eyes/O1.png differ diff --git a/assets/eyes/O1.png.import b/assets/eyes/O1.png.import new file mode 100644 index 0000000..42e2224 --- /dev/null +++ b/assets/eyes/O1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b7g614u0r8mdy" +path="res://.godot/imported/O1.png-de9b0401adeea29d8e00381549b89c34.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/eyes/O1.png" +dest_files=["res://.godot/imported/O1.png-de9b0401adeea29d8e00381549b89c34.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/eyes/O2.png b/assets/eyes/O2.png new file mode 100644 index 0000000..34cef63 Binary files /dev/null and b/assets/eyes/O2.png differ diff --git a/assets/eyes/O2.png.import b/assets/eyes/O2.png.import new file mode 100644 index 0000000..bf2dd44 --- /dev/null +++ b/assets/eyes/O2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cm583mfkrx7vo" +path="res://.godot/imported/O2.png-ed94aaba5ce6888384e94e5a1f7c77d1.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/eyes/O2.png" +dest_files=["res://.godot/imported/O2.png-ed94aaba5ce6888384e94e5a1f7c77d1.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/eyes/config.txt b/assets/eyes/config.txt new file mode 100644 index 0000000..b72c4ef --- /dev/null +++ b/assets/eyes/config.txt @@ -0,0 +1,24 @@ +; Color to be replaced by the color picker +; default: #FF00FF (full Red and Blue, no Green) +color_placeholder="#FF00FF" + +; The colors you add next will be the suggested ones to colorize the asset, you can add as much as you want +; example: ["#FF0000", "#00FF00", "#0000FF"] +; default: [] (no colors, you can use the color picker either way) +colors=[] + +; Default position where the asset will be placed. Modify the 0s if you want to move it. +; First value means horizontal, positive right, negative left. The other one means vertical movement, positive up, negative down. +; default: Vector2(0, 0) +position=Vector2(0, 0) + +; Layer to draw +; By default when you add an asset its always added on top, so you cant add a body part after the eyes as that will be the wrong order, you can modify that here +; valid values are: "top", "bottom" +; default: "top" +new_layer_on="top" + +; Alternatively you may want to set up a layer for each asset, you can do it here +; higher means on top of lowers +; default: 0 +layer=0 diff --git a/assets/hair/.thumb/P2.png b/assets/hair/.thumb/P2.png new file mode 100644 index 0000000..3561144 Binary files /dev/null and b/assets/hair/.thumb/P2.png differ diff --git a/assets/hair/.thumb/P3.png b/assets/hair/.thumb/P3.png new file mode 100644 index 0000000..7177e78 Binary files /dev/null and b/assets/hair/.thumb/P3.png differ diff --git a/assets/hair/.thumb/p1.png b/assets/hair/.thumb/p1.png new file mode 100644 index 0000000..dbb3dde Binary files /dev/null and b/assets/hair/.thumb/p1.png differ diff --git a/assets/hair/P2.png b/assets/hair/P2.png new file mode 100644 index 0000000..c449ac8 Binary files /dev/null and b/assets/hair/P2.png differ diff --git a/assets/hair/P2.png.import b/assets/hair/P2.png.import new file mode 100644 index 0000000..17cc59a --- /dev/null +++ b/assets/hair/P2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://0ve8pptnqi2o" +path="res://.godot/imported/P2.png-f2d1be62463e4c8b53312002e7d2feb6.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/hair/P2.png" +dest_files=["res://.godot/imported/P2.png-f2d1be62463e4c8b53312002e7d2feb6.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/hair/P3.png b/assets/hair/P3.png new file mode 100644 index 0000000..64ca182 Binary files /dev/null and b/assets/hair/P3.png differ diff --git a/assets/hair/P3.png.import b/assets/hair/P3.png.import new file mode 100644 index 0000000..7d1ea34 --- /dev/null +++ b/assets/hair/P3.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://diu8e1oc81nxt" +path="res://.godot/imported/P3.png-cc1f73160a71844510d491aec2ab0f40.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/hair/P3.png" +dest_files=["res://.godot/imported/P3.png-cc1f73160a71844510d491aec2ab0f40.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/hair/config.txt b/assets/hair/config.txt new file mode 100644 index 0000000..b72c4ef --- /dev/null +++ b/assets/hair/config.txt @@ -0,0 +1,24 @@ +; Color to be replaced by the color picker +; default: #FF00FF (full Red and Blue, no Green) +color_placeholder="#FF00FF" + +; The colors you add next will be the suggested ones to colorize the asset, you can add as much as you want +; example: ["#FF0000", "#00FF00", "#0000FF"] +; default: [] (no colors, you can use the color picker either way) +colors=[] + +; Default position where the asset will be placed. Modify the 0s if you want to move it. +; First value means horizontal, positive right, negative left. The other one means vertical movement, positive up, negative down. +; default: Vector2(0, 0) +position=Vector2(0, 0) + +; Layer to draw +; By default when you add an asset its always added on top, so you cant add a body part after the eyes as that will be the wrong order, you can modify that here +; valid values are: "top", "bottom" +; default: "top" +new_layer_on="top" + +; Alternatively you may want to set up a layer for each asset, you can do it here +; higher means on top of lowers +; default: 0 +layer=0 diff --git a/assets/hair/p1.png b/assets/hair/p1.png new file mode 100644 index 0000000..8cd6f08 Binary files /dev/null and b/assets/hair/p1.png differ diff --git a/assets/hair/p1.png.import b/assets/hair/p1.png.import new file mode 100644 index 0000000..0645554 --- /dev/null +++ b/assets/hair/p1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cm3cntddjagyh" +path="res://.godot/imported/p1.png-f6b41afd87c42bca7b18da245cfc1076.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/hair/p1.png" +dest_files=["res://.godot/imported/p1.png-f6b41afd87c42bca7b18da245cfc1076.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/read_me.txt b/assets/read_me.txt new file mode 100644 index 0000000..f876d1b --- /dev/null +++ b/assets/read_me.txt @@ -0,0 +1,15 @@ +------------------ + Picreowo +------------------ + +Use this folder to store your assets, by default the app creates some folders as example, but you may add as much as you need or want. Those folders will later be loaded as tabs by the app. + +Note that if you edit the folders or some of its contents you have to reopen the app as it currently lacks a way to reload the folders. + +There is also a config file in each folder, you can use it to configure colors and some other things. If you ignore or delete them the app will work with the default values. + +----------------- + +Have fun! +If something broke, find me at yo@edufdez.es + diff --git a/back_pain_logo.png b/back_pain_logo.png new file mode 100644 index 0000000..c2e16f6 Binary files /dev/null and b/back_pain_logo.png differ diff --git a/back_pain_logo.png.import b/back_pain_logo.png.import new file mode 100644 index 0000000..af4d10e --- /dev/null +++ b/back_pain_logo.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://04pg0b6jurvq" +path="res://.godot/imported/back_pain_logo.png-f22c77de3ad49b054e66aa768559bcb2.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://back_pain_logo.png" +dest_files=["res://.godot/imported/back_pain_logo.png-f22c77de3ad49b054e66aa768559bcb2.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/core b/core new file mode 100644 index 0000000..b33eaaa Binary files /dev/null and b/core differ diff --git a/export_presets.cfg b/export_presets.cfg new file mode 100644 index 0000000..009b830 --- /dev/null +++ b/export_presets.cfg @@ -0,0 +1,104 @@ +[preset.0] + +name="Windows Desktop" +platform="Windows Desktop" +runnable=true +advanced_options=false +dedicated_server=false +custom_features="" +export_filter="all_resources" +include_filter="" +exclude_filter="*.png, *.txt" +export_path="./Local Picrew.exe" +encryption_include_filters="" +encryption_exclude_filters="" +encrypt_pck=false +encrypt_directory=false +script_export_mode=2 + +[preset.0.options] + +custom_template/debug="" +custom_template/release="" +debug/export_console_wrapper=0 +binary_format/embed_pck=true +texture_format/s3tc_bptc=true +texture_format/etc2_astc=false +binary_format/architecture="x86_64" +codesign/enable=false +codesign/timestamp=true +codesign/timestamp_server_url="" +codesign/digest_algorithm=1 +codesign/description="" +codesign/custom_options=PackedStringArray() +application/modify_resources=true +application/icon="" +application/console_wrapper_icon="" +application/icon_interpolation=4 +application/file_version="" +application/product_version="" +application/company_name="Back Pain Games" +application/product_name="" +application/file_description="" +application/copyright="" +application/trademarks="" +application/export_angle=0 +application/export_d3d12=0 +application/d3d12_agility_sdk_multiarch=true +ssh_remote_deploy/enabled=false +ssh_remote_deploy/host="user@host_ip" +ssh_remote_deploy/port="22" +ssh_remote_deploy/extra_args_ssh="" +ssh_remote_deploy/extra_args_scp="" +ssh_remote_deploy/run_script="Expand-Archive -LiteralPath '{temp_dir}\\{archive_name}' -DestinationPath '{temp_dir}' +$action = New-ScheduledTaskAction -Execute '{temp_dir}\\{exe_name}' -Argument '{cmd_args}' +$trigger = New-ScheduledTaskTrigger -Once -At 00:00 +$settings = New-ScheduledTaskSettingsSet +$task = New-ScheduledTask -Action $action -Trigger $trigger -Settings $settings +Register-ScheduledTask godot_remote_debug -InputObject $task -Force:$true +Start-ScheduledTask -TaskName godot_remote_debug +while (Get-ScheduledTask -TaskName godot_remote_debug | ? State -eq running) { Start-Sleep -Milliseconds 100 } +Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue" +ssh_remote_deploy/cleanup_script="Stop-ScheduledTask -TaskName godot_remote_debug -ErrorAction:SilentlyContinue +Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue +Remove-Item -Recurse -Force '{temp_dir}'" + +[preset.1] + +name="Linux" +platform="Linux" +runnable=true +advanced_options=false +dedicated_server=false +custom_features="" +export_filter="all_resources" +include_filter="" +exclude_filter="" +export_path="./Local Picrew.x86_64" +encryption_include_filters="" +encryption_exclude_filters="" +encrypt_pck=false +encrypt_directory=false +script_export_mode=2 + +[preset.1.options] + +custom_template/debug="" +custom_template/release="" +debug/export_console_wrapper=1 +binary_format/embed_pck=true +texture_format/s3tc_bptc=true +texture_format/etc2_astc=false +binary_format/architecture="x86_64" +ssh_remote_deploy/enabled=false +ssh_remote_deploy/host="user@host_ip" +ssh_remote_deploy/port="22" +ssh_remote_deploy/extra_args_ssh="" +ssh_remote_deploy/extra_args_scp="" +ssh_remote_deploy/run_script="#!/usr/bin/env bash +export DISPLAY=:0 +unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\" +\"{temp_dir}/{exe_name}\" {cmd_args}" +ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash +kill $(pgrep -x -f \"{temp_dir}/{exe_name} {cmd_args}\") +rm -rf \"{temp_dir}\"" diff --git a/fonts/Kenney Future Narrow.ttf b/fonts/Kenney Future Narrow.ttf new file mode 100644 index 0000000..c4cc8a0 Binary files /dev/null and b/fonts/Kenney Future Narrow.ttf differ diff --git a/fonts/Kenney Future Narrow.ttf.import b/fonts/Kenney Future Narrow.ttf.import new file mode 100644 index 0000000..56e7d52 --- /dev/null +++ b/fonts/Kenney Future Narrow.ttf.import @@ -0,0 +1,34 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://df2tropap6syh" +path="res://.godot/imported/Kenney Future Narrow.ttf-8b30cf33c09b6854a79b688282ef6c0b.fontdata" + +[deps] + +source_file="res://fonts/Kenney Future Narrow.ttf" +dest_files=["res://.godot/imported/Kenney Future Narrow.ttf-8b30cf33c09b6854a79b688282ef6c0b.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +hinting=1 +subpixel_positioning=1 +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/fonts/Kenney Future.ttf b/fonts/Kenney Future.ttf new file mode 100644 index 0000000..17e2b6c Binary files /dev/null and b/fonts/Kenney Future.ttf differ diff --git a/fonts/Kenney Future.ttf.import b/fonts/Kenney Future.ttf.import new file mode 100644 index 0000000..7afd9ef --- /dev/null +++ b/fonts/Kenney Future.ttf.import @@ -0,0 +1,34 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://8qv0u6p73nmb" +path="res://.godot/imported/Kenney Future.ttf-ff85032a337e841ccb239ef3b6928d6c.fontdata" + +[deps] + +source_file="res://fonts/Kenney Future.ttf" +dest_files=["res://.godot/imported/Kenney Future.ttf-ff85032a337e841ccb239ef3b6928d6c.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +hinting=1 +subpixel_positioning=1 +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/icon.svg b/icon.svg new file mode 100644 index 0000000..3fe4f4a --- /dev/null +++ b/icon.svg @@ -0,0 +1 @@ + diff --git a/icon.svg.import b/icon.svg.import new file mode 100644 index 0000000..18cd51d --- /dev/null +++ b/icon.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bx1pf45gueqqm" +path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://icon.svg" +dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/picrowo.png b/picrowo.png new file mode 100644 index 0000000..0383e9f Binary files /dev/null and b/picrowo.png differ diff --git a/picrowo.png.import b/picrowo.png.import new file mode 100644 index 0000000..619fd07 --- /dev/null +++ b/picrowo.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ctdpcum2yhvbn" +path="res://.godot/imported/picrowo.png-c0ff0c3d1b1cf3e97df013ad0414b01b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://picrowo.png" +dest_files=["res://.godot/imported/picrowo.png-c0ff0c3d1b1cf3e97df013ad0414b01b.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..1d8a26b --- /dev/null +++ b/project.godot @@ -0,0 +1,43 @@ +; Engine configuration file. +; It's best edited using the editor UI and not directly, +; since the parameters that go here are not all obvious. +; +; Format: +; [section] ; section goes between [] +; param=value ; assign values to parameters + +config_version=5 + +[application] + +config/name="Local Picrew" +run/main_scene="res://scenes/splash_screen.tscn" +config/features=PackedStringArray("4.3", "GL Compatibility") +run/low_processor_mode=true +boot_splash/bg_color=Color(1, 0.894118, 0.796078, 1) +boot_splash/image="res://back_pain_logo.png" +boot_splash/fullsize=false +config/icon="res://icon.svg" + +[autoload] + +Globals="*res://scripts/globals.gd" + +[display] + +window/size/viewport_width=700 +window/size/viewport_height=1000 +window/size/borderless=true +window/size/transparent=true +window/energy_saving/keep_screen_on=false +window/stretch/mode="viewport" +window/per_pixel_transparency/allowed=true + +[physics] + +common/physics_ticks_per_second=10 + +[rendering] + +renderer/rendering_method="gl_compatibility" +renderer/rendering_method.mobile="gl_compatibility" diff --git a/scenes/ImageModel.tscn b/scenes/ImageModel.tscn new file mode 100644 index 0000000..53d4c90 --- /dev/null +++ b/scenes/ImageModel.tscn @@ -0,0 +1,20 @@ +[gd_scene load_steps=2 format=3 uid="uid://dlbvag0hb0wny"] + +[ext_resource type="Script" path="res://scripts/image_model.gd" id="1_4mtp2"] + +[node name="ImageModel" type="Control"] +layout_mode = 3 +anchor_right = 1.25 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +script = ExtResource("1_4mtp2") + +[node name="ColorRect" type="ColorRect" parent="."] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +color = Color(0.899311, 0.80335, 0.76849, 1) diff --git a/scenes/interface.gd b/scenes/interface.gd new file mode 100644 index 0000000..1d493e2 --- /dev/null +++ b/scenes/interface.gd @@ -0,0 +1,226 @@ +extends Control + + +enum LAYER_MOVEMENT {MOVE_UP, MOVE_DOWN} +enum MOVEMENT {MOVE_UP, MOVE_DOWN, MOVE_RIGHT, MOVE_LEFT} + + +@onready var animation_players: Array[AnimationPlayer] = [ + $AnimationPlayers/AnimationPlayer1, $AnimationPlayers/AnimationPlayer2, $AnimationPlayers/AnimationPlayer3, + $AnimationPlayers/AnimationPlayer4, $AnimationPlayers/AnimationPlayer5, $AnimationPlayers/AnimationPlayer6, + $AnimationPlayers/AnimationPlayer7, $AnimationPlayers/AnimationPlayer8, $AnimationPlayers/AnimationPlayer9, + $AnimationPlayers/AnimationPlayer10] +var finger_mouse = load("res://ui/hand_point.svg") + +@onready var sections_tabs := $SectionsTabContainer +var sections_columns: int = 5 + +var movement_multiplier: int = 1 +@onready var movement_multiplier_label: Label = $MovementControlsNinePatch/MultiplierLabel + +# move window helpers +var _mouse_start_position: Vector2 +var _dragging: bool = false + +# menu animations helpers +var layer_controls_open: bool = false +var movement_controls_open: bool = false +var colors_menu_open: bool = false + +signal move_layer(LAYER_MOVEMENT) +signal move_drawing(MOVEMENT, multiplier: int) + + +#region build in funcs + + +func _init(): + Input.set_custom_mouse_cursor(finger_mouse) + + +func _ready(): + _on_section_list(Globals.sections) + + +#endregion + +#region window controls + + +func _on_close_button_pressed(): + get_tree().quit(0) + + +func _on_maximize_button_pressed(): + if DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_MAXIMIZED: + DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_WINDOWED) + else: + DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_MAXIMIZED) + + +func _on_default_cursor_rect_mouse_entered(): + Input.set_custom_mouse_cursor(null) + + +func _on_default_cursor_rect_mouse_exited(): + Input.set_custom_mouse_cursor(finger_mouse) + + +#endregion + +#region move window + + +func _input(event: InputEvent): + if event is InputEventMouseButton: + if event.button_index == MOUSE_BUTTON_LEFT && not event.pressed: + _dragging = false + + if event is InputEventMouseMotion and _dragging: + accept_event() + get_window().position = get_global_mouse_position() - _mouse_start_position + (get_window().position as Vector2) + + +func _on_Titlebar_gui_input(event: InputEvent): + if event is InputEventMouseButton: + if event.button_index == MOUSE_BUTTON_LEFT && event.pressed: + accept_event() + _mouse_start_position = get_global_mouse_position() + _dragging = true + + +#endregion + +#region animations + + +func _on_layer_controls_rect_mouse_entered(): + if layer_controls_open: + return + + var animation_player = get_animation_player() + if animation_player != null: + animation_player.play("OpenLayer") + layer_controls_open = true + + +func _on_layer_controls_rect_mouse_exited(): + var animation_player = get_animation_player() + if animation_player != null: + add_timer_with_timeout(animation_player.play_backwards.bind("OpenLayer")) + layer_controls_open = false + + +func _on_movement_controls_rect_mouse_entered(): + if movement_controls_open: + return + + var animation_player = get_animation_player() + if animation_player != null: + animation_player.play("openPosition") + movement_controls_open = true + + +func _on_movement_controls_mouse_exited(): + var animation_player = get_animation_player() + if animation_player != null: + add_timer_with_timeout(animation_player.play_backwards.bind("openPosition")) + movement_controls_open = false + + +func _on_colors_mouse_entered(): + if colors_menu_open: + return + + var animation_player = get_animation_player() + if animation_player != null: + animation_player.play("openColor") + colors_menu_open = true + + +func _on_colors_mouse_exited(): + var animation_player = get_animation_player() + if animation_player != null: + add_timer_with_timeout(animation_player.play_backwards.bind("openColor")) + colors_menu_open = false + + +#endregion + +#region buttons + + +func _on_layer_up_button_pressed(): + move_layer.emit(LAYER_MOVEMENT.MOVE_UP) + + +func _on_layer_down_button_pressed(): + move_layer.emit(LAYER_MOVEMENT.MOVE_DOWN) + + +func _on_movement_up_button_pressed(): + move_drawing.emit(MOVEMENT.MOVE_UP, movement_multiplier) + + +func _on_movement_down_button_pressed(): + move_drawing.emit(MOVEMENT.MOVE_DOWN, movement_multiplier) + + +func _on_movement_left_button_pressed(): + move_drawing.emit(MOVEMENT.MOVE_LEFT, movement_multiplier) + + +func _on_movement_right_button_pressed(): + move_drawing.emit(MOVEMENT.MOVE_RIGHT, movement_multiplier) + + +func _on_multiplier_button_pressed(): + if movement_multiplier == 1: + movement_multiplier = 10 + else: + movement_multiplier = 1 + + movement_multiplier_label.text = " " + str(movement_multiplier) + + +#endregion + +#region utils + + +func get_animation_player() -> AnimationPlayer: + for ap in animation_players: + if not ap.is_playing(): + return ap + + return null + + +func add_timer_with_timeout(function: Callable, seconds: float = 2): + var timer = Timer.new() + timer.autostart = true + timer.one_shot = true + timer.wait_time = seconds + timer.timeout.connect(function) + timer.timeout.connect(timer.queue_free) + add_child(timer) + +#endregion + +#region signal callbacks + + +func _on_section_list(sections: Array[Globals.Section]): + # TODO: remove: debug only + for child in sections_tabs.get_children(): + sections_tabs.remove_child(child) + child.queue_free() + + for section in sections: + var container = GridContainer.new() + container.name = section.name + container.columns = sections_columns + sections_tabs.add_child(container) + + +#endregion diff --git a/scenes/interface.tscn b/scenes/interface.tscn new file mode 100644 index 0000000..2bb4311 --- /dev/null +++ b/scenes/interface.tscn @@ -0,0 +1,593 @@ +[gd_scene load_steps=34 format=3 uid="uid://bfqis7iljniu4"] + +[ext_resource type="Texture2D" uid="uid://bh8r1544r4w0a" path="res://ui/button_square_depth_line.svg" id="1_4tdiw"] +[ext_resource type="Script" path="res://scenes/interface.gd" id="1_u68dg"] +[ext_resource type="Texture2D" uid="uid://2ksj38qp50ka" path="res://ui/icon_cross.svg" id="2_wpbrs"] +[ext_resource type="PackedScene" uid="uid://bl5au3ffuw4pn" path="res://scenes/main_window.tscn" id="3_rbdes"] +[ext_resource type="Texture2D" uid="uid://d2ynbocejw2m7" path="res://ui/resize_a_cross_diagonal.svg" id="3_xkt53"] +[ext_resource type="Texture2D" uid="uid://jyvf5d266eyn" path="res://ui/arrow_n.svg" id="4_a6v15"] +[ext_resource type="Texture2D" uid="uid://dkrtom37um7ci" path="res://ui/arrow_s.svg" id="5_ejge0"] +[ext_resource type="Texture2D" uid="uid://crv5nkyeki0cf" path="res://ui/navigation_n.svg" id="6_02kmf"] +[ext_resource type="Texture2D" uid="uid://doeu7gls8gu80" path="res://ui/rotate_ccw.svg" id="6_3hxsm"] +[ext_resource type="Texture2D" uid="uid://c6wruvu80rcl8" path="res://ui/input_square.svg" id="7_0owde"] +[ext_resource type="Texture2D" uid="uid://m50filgtqcge" path="res://ui/divider.svg" id="7_gh07i"] +[ext_resource type="Texture2D" uid="uid://gw8bdod50l7c" path="res://ui/navigation_s.svg" id="7_muiog"] +[ext_resource type="Texture2D" uid="uid://de5hlr8gsi2qb" path="res://ui/divider_edges.svg" id="8_3567f"] +[ext_resource type="FontFile" uid="uid://8qv0u6p73nmb" path="res://fonts/Kenney Future.ttf" id="8_prseq"] +[ext_resource type="Texture2D" uid="uid://bfxqaotf0owrh" path="res://ui/navigation_w.svg" id="8_r4dsd"] +[ext_resource type="Texture2D" uid="uid://ct60e6ip1847v" path="res://ui/navigation_e.svg" id="9_cw217"] +[ext_resource type="Texture2D" uid="uid://b40puvvid5axi" path="res://ui/button_round_line.svg" id="10_1tmay"] +[ext_resource type="Texture2D" uid="uid://bs230jvbr3gbm" path="res://ui/drawing_picker.svg" id="11_ct4lx"] +[ext_resource type="Texture2D" uid="uid://dhbbx653ihne6" path="res://ui/button_square_line.svg" id="19_rjy61"] + +[sub_resource type="LabelSettings" id="LabelSettings_o5aan"] +line_spacing = 0.0 +font_size = 12 + +[sub_resource type="Animation" id="Animation_315ma"] +resource_name = "OpenLayer" +length = 0.2 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("LayerControlsNinePatchRect:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.1998), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Vector2(555, 80), Vector2(594, 80)] +} + +[sub_resource type="Animation" id="Animation_mvsb0"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("LayerControlsNinePatchRect:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector2(555, 80)] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("MovementControlsNinePatch:position") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector2(529, 178)] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("ColorsNinePatch:position") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector2(519, 300)] +} + +[sub_resource type="Animation" id="Animation_iul8l"] +resource_name = "openColor" +length = 0.2 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("ColorsNinePatch:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.2), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Vector2(519, 300), Vector2(594, 300)] +} + +[sub_resource type="Animation" id="Animation_l6o8m"] +resource_name = "openPosition" +length = 0.2 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("MovementControlsNinePatch:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.2), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Vector2(529, 178), Vector2(594, 178)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_5jdm1"] +_data = { +"OpenLayer": SubResource("Animation_315ma"), +"RESET": SubResource("Animation_mvsb0"), +"openColor": SubResource("Animation_iul8l"), +"openPosition": SubResource("Animation_l6o8m") +} + +[sub_resource type="SystemFont" id="SystemFont_brntw"] +font_names = PackedStringArray("Monospace") +font_weight = 500 + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_4qoqa"] + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_c50r3"] + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_57r7d"] +texture = ExtResource("1_4tdiw") +texture_margin_left = 15.0 +texture_margin_top = 10.0 +texture_margin_right = 15.0 +texture_margin_bottom = 10.0 + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_swuan"] +texture = ExtResource("19_rjy61") +texture_margin_left = 15.0 +texture_margin_top = 10.0 +texture_margin_right = 15.0 +texture_margin_bottom = 10.0 + +[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_8tjt5"] +load_path = "res://.godot/imported/button_square_depth_line.svg-1cc590086494f495d62bde393b0a61c8.ctex" + +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_rd6hx"] +texture = SubResource("CompressedTexture2D_8tjt5") +texture_margin_left = 15.0 +texture_margin_top = 10.0 +texture_margin_right = 15.0 +texture_margin_bottom = 10.0 + +[sub_resource type="Theme" id="Theme_jeoki"] +TabContainer/colors/font_hovered_color = Color(0, 0, 0, 1) +TabContainer/colors/font_outline_color = Color(0, 0, 0, 0) +TabContainer/colors/font_selected_color = Color(0, 0, 0, 1) +TabContainer/colors/font_unselected_color = Color(0.314316, 0.314316, 0.314316, 1) +TabContainer/fonts/font = SubResource("SystemFont_brntw") +TabContainer/styles/panel = SubResource("StyleBoxEmpty_4qoqa") +TabContainer/styles/tab_focus = SubResource("StyleBoxEmpty_c50r3") +TabContainer/styles/tab_hovered = SubResource("StyleBoxTexture_57r7d") +TabContainer/styles/tab_selected = SubResource("StyleBoxTexture_swuan") +TabContainer/styles/tab_unselected = SubResource("StyleBoxTexture_rd6hx") + +[node name="Interface" type="Control"] +layout_mode = 3 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_filter = 1 +script = ExtResource("1_u68dg") +metadata/_edit_vertical_guides_ = [592.0, 559.0, 584.0, 25.0, 575.0, 16.0, 620.0, 623.0, 633.0] +metadata/_edit_horizontal_guides_ = [500.0, 162.0, 178.0, 230.0, 508.0] +metadata/_edit_lock_ = true + +[node name="DefaultCursorColorRect" type="ColorRect" parent="."] +layout_mode = 0 +offset_left = 623.0 +offset_right = 699.0 +offset_bottom = 422.0 +color = Color(1, 0, 1, 0) + +[node name="DefaultCursorColorRect2" type="ColorRect" parent="."] +layout_mode = 0 +offset_left = 600.0 +offset_top = 415.0 +offset_right = 700.0 +offset_bottom = 1000.0 +color = Color(1, 0, 1, 0) + +[node name="LayerControlsNinePatchRect" type="NinePatchRect" parent="."] +self_modulate = Color(0.5815, 0.888169, 0.625567, 1) +layout_mode = 1 +offset_left = 555.0 +offset_top = 80.0 +offset_right = 623.0 +offset_bottom = 162.0 +mouse_filter = 0 +texture = ExtResource("7_0owde") +region_rect = Rect2(0, 0, 64, 64) +patch_margin_left = 8 +patch_margin_top = 8 +patch_margin_right = 8 +patch_margin_bottom = 8 + +[node name="LayerLabel" type="Label" parent="LayerControlsNinePatchRect"] +modulate = Color(0.168371, 0.340173, 0.210412, 1) +layout_mode = 0 +offset_left = 64.0 +offset_top = 3.0 +offset_right = 139.0 +offset_bottom = 21.0 +rotation = 1.5708 +theme_override_fonts/font = ExtResource("8_prseq") +text = " Layer" +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="LayerUpTextureButton" type="TextureButton" parent="LayerControlsNinePatchRect"] +self_modulate = Color(0.427451, 0.85098, 0.596078, 1) +layout_mode = 0 +offset_left = 10.0 +offset_top = 7.0 +offset_right = 42.0 +offset_bottom = 39.0 +mouse_filter = 1 +texture_normal = ExtResource("4_a6v15") + +[node name="LayerDownTextureButton" type="TextureButton" parent="LayerControlsNinePatchRect"] +self_modulate = Color(0.427451, 0.85098, 0.596078, 1) +layout_mode = 0 +offset_left = 10.0 +offset_top = 42.0 +offset_right = 42.0 +offset_bottom = 74.0 +mouse_filter = 1 +texture_normal = ExtResource("5_ejge0") + +[node name="MovementControlsNinePatch" type="NinePatchRect" parent="."] +self_modulate = Color(0.708798, 0.676581, 0.981097, 1) +layout_mode = 1 +offset_left = 529.0 +offset_top = 178.0 +offset_right = 623.0 +offset_bottom = 281.0 +mouse_filter = 0 +texture = ExtResource("7_0owde") +region_rect = Rect2(0, 0, 64, 64) +patch_margin_left = 8 +patch_margin_top = 8 +patch_margin_right = 8 +patch_margin_bottom = 8 + +[node name="MovementLabel" type="Label" parent="MovementControlsNinePatch"] +modulate = Color(0.293272, 0.160651, 0.633104, 1) +layout_mode = 0 +offset_left = 88.0 +offset_top = 8.0 +offset_right = 179.0 +offset_bottom = 26.0 +rotation = 1.5708 +theme_override_fonts/font = ExtResource("8_prseq") +text = "Position" +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="UpButton" type="TextureButton" parent="MovementControlsNinePatch"] +self_modulate = Color(0.521569, 0.419608, 0.941176, 1) +layout_mode = 0 +offset_left = 27.0 +offset_top = 14.0 +offset_right = 51.0 +offset_bottom = 46.0 +mouse_filter = 1 +texture_normal = ExtResource("6_02kmf") +ignore_texture_size = true +stretch_mode = 3 + +[node name="DownButton" type="TextureButton" parent="MovementControlsNinePatch"] +self_modulate = Color(0.521282, 0.42067, 0.942318, 1) +layout_mode = 0 +offset_left = 27.0 +offset_top = 56.0 +offset_right = 51.0 +offset_bottom = 88.0 +mouse_filter = 1 +texture_normal = ExtResource("7_muiog") +ignore_texture_size = true +stretch_mode = 3 + +[node name="LeftButton" type="TextureButton" parent="MovementControlsNinePatch"] +self_modulate = Color(0.521569, 0.419608, 0.941176, 1) +layout_mode = 0 +offset_left = 2.0 +offset_top = 39.0 +offset_right = 34.0 +offset_bottom = 63.0 +mouse_filter = 1 +texture_normal = ExtResource("8_r4dsd") +ignore_texture_size = true +stretch_mode = 3 + +[node name="RightButton" type="TextureButton" parent="MovementControlsNinePatch"] +self_modulate = Color(0.521569, 0.419608, 0.941176, 1) +layout_mode = 0 +offset_left = 44.0 +offset_top = 39.0 +offset_right = 76.0 +offset_bottom = 63.0 +mouse_filter = 1 +texture_normal = ExtResource("9_cw217") +ignore_texture_size = true +stretch_mode = 3 + +[node name="MultiplierButton" type="TextureButton" parent="MovementControlsNinePatch"] +self_modulate = Color(0.521569, 0.419608, 0.941176, 1) +layout_mode = 0 +offset_left = 3.0 +offset_top = 78.0 +offset_right = 31.0 +offset_bottom = 98.0 +mouse_filter = 1 +texture_normal = ExtResource("10_1tmay") +ignore_texture_size = true +stretch_mode = 5 + +[node name="MultiplierLabel" type="Label" parent="MovementControlsNinePatch"] +modulate = Color(0.293272, 0.160651, 0.633104, 1) +layout_mode = 0 +offset_left = 7.0 +offset_top = 79.0 +offset_right = 30.0 +offset_bottom = 97.0 +theme_override_fonts/font = ExtResource("8_prseq") +text = "1" +label_settings = SubResource("LabelSettings_o5aan") +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="ColorsNinePatch" type="NinePatchRect" parent="."] +self_modulate = Color(0.832958, 0.681458, 0.641437, 1) +layout_mode = 1 +offset_left = 519.0 +offset_top = 300.0 +offset_right = 625.0 +offset_bottom = 403.0 +mouse_filter = 0 +texture = ExtResource("7_0owde") +region_rect = Rect2(0, 0, 64, 64) +patch_margin_left = 8 +patch_margin_top = 8 +patch_margin_right = 8 +patch_margin_bottom = 8 + +[node name="ColorLabel" type="Label" parent="ColorsNinePatch"] +self_modulate = Color(0.370436, 0.24592, 0.213604, 1) +layout_mode = 0 +offset_left = 100.0 +offset_top = 8.0 +offset_right = 191.0 +offset_bottom = 26.0 +rotation = 1.5708 +theme_override_fonts/font = ExtResource("8_prseq") +text = "Color" +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="ScrollContainer" type="ScrollContainer" parent="ColorsNinePatch"] +layout_mode = 0 +offset_left = 7.0 +offset_top = 9.0 +offset_right = 85.0 +offset_bottom = 99.0 +horizontal_scroll_mode = 0 + +[node name="GridContainer" type="GridContainer" parent="ColorsNinePatch/ScrollContainer"] +layout_mode = 2 +columns = 3 + +[node name="ColorPickerButton" type="ColorPickerButton" parent="ColorsNinePatch/ScrollContainer/GridContainer"] +custom_minimum_size = Vector2(70, 20) +layout_mode = 2 +mouse_filter = 1 + +[node name="TextureRect" type="TextureRect" parent="ColorsNinePatch/ScrollContainer/GridContainer/ColorPickerButton"] +layout_mode = 1 +anchors_preset = -1 +anchor_right = 1.0 +anchor_bottom = 1.0 +texture = ExtResource("11_ct4lx") +expand_mode = 1 +stretch_mode = 5 + +[node name="MainNinePatchRect" type="NinePatchRect" parent="."] +self_modulate = Color(0.895691, 0.882184, 0.888758, 1) +layout_mode = 1 +anchors_preset = 9 +anchor_bottom = 1.0 +offset_top = 10.0 +offset_right = 600.0 +grow_vertical = 2 +mouse_filter = 0 +texture = ExtResource("1_4tdiw") +region_rect = Rect2(0, 0, 64, 64) +patch_margin_left = 8 +patch_margin_top = 8 +patch_margin_right = 8 +patch_margin_bottom = 12 +metadata/_edit_lock_ = true + +[node name="MainWindow" parent="." instance=ExtResource("3_rbdes")] +visible = false +layout_mode = 1 +offset_left = 6.0 +offset_top = 15.0 +offset_right = -4.0 +offset_bottom = -4.0 + +[node name="Buttons" type="Node" parent="."] + +[node name="DragableRect" type="ColorRect" parent="Buttons"] +anchors_preset = 10 +anchor_right = 1.0 +offset_left = 7.0 +offset_top = 2.0 +offset_right = 7.0 +offset_bottom = 25.0 +grow_horizontal = 2 +color = Color(1, 1, 1, 0) +metadata/_edit_lock_ = true + +[node name="CloseButton" type="TextureButton" parent="Buttons"] +offset_left = 567.0 +offset_right = 592.0 +offset_bottom = 23.0 +texture_normal = ExtResource("2_wpbrs") +stretch_mode = 5 +metadata/_edit_lock_ = true + +[node name="MaximizeButton" type="TextureButton" parent="Buttons"] +offset_left = 529.0 +offset_top = -5.0 +offset_right = 564.0 +offset_bottom = 28.0 +texture_normal = ExtResource("3_xkt53") +stretch_mode = 5 +metadata/_edit_lock_ = true + +[node name="ResetButton" type="TextureButton" parent="."] +layout_mode = 1 +offset_left = 556.0 +offset_top = 47.0 +offset_right = 588.0 +offset_bottom = 79.0 +texture_normal = ExtResource("6_3hxsm") + +[node name="Divider" type="Node" parent="."] + +[node name="Divider" type="TextureRect" parent="Divider"] +self_modulate = Color(0.894118, 0.882353, 0.890196, 1) +offset_left = 409.0 +offset_top = 502.0 +offset_right = 473.0 +offset_bottom = 506.0 +rotation = 3.14135 +scale = Vector2(4.56, 1) +texture = ExtResource("7_gh07i") +metadata/_edit_lock_ = true + +[node name="DividerEdge" type="TextureRect" parent="Divider"] +self_modulate = Color(0.894118, 0.882353, 0.890196, 1) +offset_left = 249.0 +offset_top = 502.0 +offset_right = 473.0 +offset_bottom = 506.0 +rotation = 3.14135 +texture = ExtResource("8_3567f") +metadata/_edit_lock_ = true + +[node name="DividerEdge2" type="TextureRect" parent="Divider"] +self_modulate = Color(0.894118, 0.882353, 0.890196, 1) +offset_left = 575.0 +offset_top = 502.0 +offset_right = 835.0 +offset_bottom = 506.0 +rotation = 3.14135 +texture = ExtResource("8_3567f") +metadata/_edit_lock_ = true + +[node name="AnimationPlayers" type="Node" parent="."] + +[node name="AnimationPlayer1" type="AnimationPlayer" parent="AnimationPlayers"] +root_node = NodePath("../..") +libraries = { +"": SubResource("AnimationLibrary_5jdm1") +} + +[node name="AnimationPlayer2" type="AnimationPlayer" parent="AnimationPlayers"] +root_node = NodePath("../..") +libraries = { +"": SubResource("AnimationLibrary_5jdm1") +} + +[node name="AnimationPlayer3" type="AnimationPlayer" parent="AnimationPlayers"] +root_node = NodePath("../..") +libraries = { +"": SubResource("AnimationLibrary_5jdm1") +} + +[node name="AnimationPlayer4" type="AnimationPlayer" parent="AnimationPlayers"] +root_node = NodePath("../..") +libraries = { +"": SubResource("AnimationLibrary_5jdm1") +} + +[node name="AnimationPlayer5" type="AnimationPlayer" parent="AnimationPlayers"] +root_node = NodePath("../..") +libraries = { +"": SubResource("AnimationLibrary_5jdm1") +} + +[node name="AnimationPlayer6" type="AnimationPlayer" parent="AnimationPlayers"] +root_node = NodePath("../..") +libraries = { +"": SubResource("AnimationLibrary_5jdm1") +} + +[node name="AnimationPlayer7" type="AnimationPlayer" parent="AnimationPlayers"] +root_node = NodePath("../..") +libraries = { +"": SubResource("AnimationLibrary_5jdm1") +} + +[node name="AnimationPlayer8" type="AnimationPlayer" parent="AnimationPlayers"] +root_node = NodePath("../..") +libraries = { +"": SubResource("AnimationLibrary_5jdm1") +} + +[node name="AnimationPlayer9" type="AnimationPlayer" parent="AnimationPlayers"] +root_node = NodePath("../..") +libraries = { +"": SubResource("AnimationLibrary_5jdm1") +} + +[node name="AnimationPlayer10" type="AnimationPlayer" parent="AnimationPlayers"] +root_node = NodePath("../..") +libraries = { +"": SubResource("AnimationLibrary_5jdm1") +} + +[node name="SectionsTabContainer" type="TabContainer" parent="."] +layout_mode = 0 +offset_left = 7.0 +offset_top = 510.0 +offset_right = 592.0 +offset_bottom = 990.0 +theme = SubResource("Theme_jeoki") +current_tab = 1 + +[node name="Example1" type="GridContainer" parent="SectionsTabContainer"] +visible = false +layout_mode = 2 +columns = 5 +metadata/_tab_index = 0 + +[node name="Example2" type="GridContainer" parent="SectionsTabContainer"] +layout_mode = 2 +metadata/_tab_index = 1 + +[connection signal="mouse_entered" from="DefaultCursorColorRect" to="." method="_on_default_cursor_rect_mouse_entered"] +[connection signal="mouse_exited" from="DefaultCursorColorRect" to="." method="_on_default_cursor_rect_mouse_exited"] +[connection signal="mouse_entered" from="DefaultCursorColorRect2" to="." method="_on_default_cursor_rect_mouse_entered"] +[connection signal="mouse_exited" from="DefaultCursorColorRect2" to="." method="_on_default_cursor_rect_mouse_exited"] +[connection signal="mouse_entered" from="LayerControlsNinePatchRect" to="." method="_on_layer_controls_rect_mouse_entered"] +[connection signal="mouse_exited" from="LayerControlsNinePatchRect" to="." method="_on_layer_controls_rect_mouse_exited"] +[connection signal="pressed" from="LayerControlsNinePatchRect/LayerUpTextureButton" to="." method="_on_layer_up_button_pressed"] +[connection signal="pressed" from="LayerControlsNinePatchRect/LayerDownTextureButton" to="." method="_on_layer_down_button_pressed"] +[connection signal="mouse_entered" from="MovementControlsNinePatch" to="." method="_on_movement_controls_rect_mouse_entered"] +[connection signal="mouse_exited" from="MovementControlsNinePatch" to="." method="_on_movement_controls_mouse_exited"] +[connection signal="pressed" from="MovementControlsNinePatch/UpButton" to="." method="_on_movement_up_button_pressed"] +[connection signal="pressed" from="MovementControlsNinePatch/DownButton" to="." method="_on_movement_down_button_pressed"] +[connection signal="pressed" from="MovementControlsNinePatch/LeftButton" to="." method="_on_movement_left_button_pressed"] +[connection signal="pressed" from="MovementControlsNinePatch/RightButton" to="." method="_on_movement_right_button_pressed"] +[connection signal="pressed" from="MovementControlsNinePatch/MultiplierButton" to="." method="_on_multiplier_button_pressed"] +[connection signal="mouse_entered" from="ColorsNinePatch" to="." method="_on_colors_mouse_entered"] +[connection signal="mouse_exited" from="ColorsNinePatch" to="." method="_on_colors_mouse_exited"] +[connection signal="gui_input" from="Buttons/DragableRect" to="." method="_on_Titlebar_gui_input"] +[connection signal="pressed" from="Buttons/CloseButton" to="." method="_on_close_button_pressed"] +[connection signal="pressed" from="Buttons/MaximizeButton" to="." method="_on_maximize_button_pressed"] diff --git a/scenes/main_window.tscn b/scenes/main_window.tscn new file mode 100644 index 0000000..60070cf --- /dev/null +++ b/scenes/main_window.tscn @@ -0,0 +1,263 @@ +[gd_scene load_steps=3 format=3 uid="uid://bl5au3ffuw4pn"] + +[ext_resource type="Script" path="res://scripts/main_window.gd" id="1_u5tua"] +[ext_resource type="PackedScene" uid="uid://dlbvag0hb0wny" path="res://scenes/ImageModel.tscn" id="2_j40b2"] + +[node name="MainWindow" type="Control"] +layout_mode = 3 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +script = ExtResource("1_u5tua") +metadata/_edit_vertical_guides_ = [592.0, 8.0, 533.0] +metadata/_edit_horizontal_guides_ = [8.0, 47.0, 497.0, 479.0, 432.0, 339.0, 448.0, 262.0, 231.0, 223.0, 186.0] + +[node name="Background" type="ColorRect" parent="."] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 + +[node name="ViewportImage" type="SubViewportContainer" parent="."] +layout_mode = 1 +anchors_preset = 10 +anchor_right = 1.0 +offset_bottom = 512.0 +grow_horizontal = 2 + +[node name="SubViewport" type="SubViewport" parent="ViewportImage"] +handle_input_locally = false +size = Vector2i(600, 500) +render_target_update_mode = 4 + +[node name="ImageModel" parent="ViewportImage/SubViewport" instance=ExtResource("2_j40b2")] + +[node name="Sections_BG" type="ColorRect" parent="."] +layout_mode = 1 +anchors_preset = 10 +anchor_right = 1.0 +offset_top = 497.0 +offset_bottom = 538.0 +grow_horizontal = 2 +color = Color(0.912289, 0.912289, 0.912289, 1) + +[node name="SectionsScrollContainer" type="ScrollContainer" parent="."] +layout_mode = 1 +anchors_preset = 10 +anchor_right = 1.0 +offset_top = 497.0 +offset_bottom = 538.0 +grow_horizontal = 2 +horizontal_scroll_mode = 2 +vertical_scroll_mode = 0 + +[node name="SectionsHBoxContainer" type="HBoxContainer" parent="SectionsScrollContainer"] +layout_mode = 2 + +[node name="OptionsScrollContainer" type="ScrollContainer" parent="."] +layout_mode = 1 +anchors_preset = 12 +anchor_top = 1.0 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_left = 8.0 +offset_top = -454.0 +offset_right = -8.0 +grow_horizontal = 2 +grow_vertical = 0 +horizontal_scroll_mode = 0 + +[node name="OptionsGridContainer" type="GridContainer" parent="OptionsScrollContainer"] +layout_mode = 2 +columns = 5 + +[node name="ButtonExport" type="Button" parent="."] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -67.0 +offset_top = 8.0 +offset_right = -8.0 +offset_bottom = 39.0 +grow_horizontal = 0 +text = "Export" + +[node name="ButtonReset" type="Button" parent="."] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -67.0 +offset_top = 47.0 +offset_right = -8.0 +offset_bottom = 78.0 +grow_horizontal = 0 +text = "Reset" + +[node name="LabelMoveLayer" type="Label" parent="."] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -67.0 +offset_top = 186.0 +offset_right = -8.0 +offset_bottom = 223.0 +grow_horizontal = 0 +theme_override_constants/line_spacing = -9 +text = "Move layer" +horizontal_alignment = 1 +autowrap_mode = 3 + +[node name="ButtonLayerUp" type="Button" parent="."] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -67.0 +offset_top = 231.0 +offset_right = -42.0 +offset_bottom = 262.0 +grow_horizontal = 0 +text = " ^ " + +[node name="ButtonLayerDown" type="Button" parent="."] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -33.0 +offset_top = 231.0 +offset_right = -8.0 +offset_bottom = 262.0 +grow_horizontal = 0 +text = " v " + +[node name="ButtonMovementAmount" type="Button" parent="."] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -65.0 +offset_top = 370.0 +offset_right = -34.0 +offset_bottom = 401.0 +grow_horizontal = 0 +text = " 1x" + +[node name="ButtonUp" type="Button" parent="."] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -62.0 +offset_top = 339.0 +offset_right = -37.0 +offset_bottom = 370.0 +grow_horizontal = 0 +text = " ^ " + +[node name="ButtonRight" type="Button" parent="."] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -34.0 +offset_top = 370.0 +offset_right = -8.0 +offset_bottom = 401.0 +grow_horizontal = 0 +text = " > " + +[node name="ButtonLeft" type="Button" parent="."] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -91.0 +offset_top = 370.0 +offset_right = -65.0 +offset_bottom = 401.0 +grow_horizontal = 0 +text = " < " + +[node name="ButtonDown" type="Button" parent="."] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -62.0 +offset_top = 401.0 +offset_right = -37.0 +offset_bottom = 432.0 +grow_horizontal = 0 +text = " v " + +[node name="ColorPickerButton" type="Button" parent="."] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -67.0 +offset_top = 448.0 +offset_right = -8.0 +offset_bottom = 479.0 +grow_horizontal = 0 +text = "Color Picker" + +[node name="ColorPickerNode" type="Control" parent="."] +visible = false +layout_mode = 2 +anchors_preset = 0 +offset_top = 540.0 +offset_right = 600.0 +offset_bottom = 1000.0 + +[node name="ColorPickerBG" type="ColorRect" parent="ColorPickerNode"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_top = -2.0 +grow_horizontal = 2 +grow_vertical = 2 +color = Color(0.267742, 0.253788, 0.338362, 1) + +[node name="ColorPickerScrollContainer" type="ScrollContainer" parent="ColorPickerNode"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +horizontal_scroll_mode = 0 +vertical_scroll_mode = 2 + +[node name="CenterContainer" type="CenterContainer" parent="ColorPickerNode/ColorPickerScrollContainer"] +custom_minimum_size = Vector2(100, 100) +layout_mode = 2 +size_flags_horizontal = 3 + +[node name="ColorPicker" type="ColorPicker" parent="ColorPickerNode/ColorPickerScrollContainer/CenterContainer"] +layout_mode = 2 +alignment = 1 +picker_shape = 2 +color_modes_visible = false +sliders_visible = false + +[connection signal="pressed" from="ButtonExport" to="." method="_on_button_export_pressed"] +[connection signal="pressed" from="ButtonReset" to="." method="_on_button_reset_pressed"] +[connection signal="pressed" from="ButtonLayerUp" to="." method="_on_button_layer_up_pressed"] +[connection signal="pressed" from="ButtonLayerDown" to="." method="_on_button_layer_down_pressed"] +[connection signal="pressed" from="ButtonMovementAmount" to="." method="_on_button_movement_amount_pressed"] +[connection signal="pressed" from="ButtonUp" to="." method="_on_button_up_pressed"] +[connection signal="pressed" from="ButtonRight" to="." method="_on_button_right_pressed"] +[connection signal="pressed" from="ButtonLeft" to="." method="_on_button_left_pressed"] +[connection signal="pressed" from="ButtonDown" to="." method="_on_button_down_pressed"] +[connection signal="pressed" from="ColorPickerButton" to="." method="_color_picker_button_pressed"] +[connection signal="color_changed" from="ColorPickerNode/ColorPickerScrollContainer/CenterContainer/ColorPicker" to="." method="_on_color_picker_color_changed"] diff --git a/scenes/splash_screen.tscn b/scenes/splash_screen.tscn new file mode 100644 index 0000000..a8c8ec1 --- /dev/null +++ b/scenes/splash_screen.tscn @@ -0,0 +1,41 @@ +[gd_scene load_steps=4 format=3 uid="uid://do25qu52xjvk5"] + +[ext_resource type="Script" path="res://scripts/splash_screen.gd" id="1_vvrqc"] +[ext_resource type="Texture2D" uid="uid://bh8r1544r4w0a" path="res://ui/button_square_depth_line.svg" id="2_ecs8j"] +[ext_resource type="Texture2D" uid="uid://44dxc0bmuxmd" path="res://BACKPAIN_LOGO.png" id="3_c26vr"] + +[node name="SplashScreen" type="Control"] +layout_mode = 3 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +script = ExtResource("1_vvrqc") +metadata/_edit_vertical_guides_ = [300.0] + +[node name="MainNinePatchRect" type="NinePatchRect" parent="."] +self_modulate = Color(1, 0.894118, 0.796078, 1) +layout_mode = 1 +anchors_preset = 9 +anchor_bottom = 1.0 +offset_top = 10.0 +offset_right = 600.0 +grow_vertical = 2 +mouse_filter = 0 +texture = ExtResource("2_ecs8j") +region_rect = Rect2(0, 0, 64, 64) +patch_margin_left = 8 +patch_margin_top = 8 +patch_margin_right = 8 +patch_margin_bottom = 12 +metadata/_edit_lock_ = true + +[node name="TextureRect" type="TextureRect" parent="."] +layout_mode = 0 +offset_top = 281.0 +offset_right = 600.0 +offset_bottom = 636.0 +texture = ExtResource("3_c26vr") +expand_mode = 1 +stretch_mode = 5 diff --git a/scripts/globals.gd b/scripts/globals.gd new file mode 100644 index 0000000..071758d --- /dev/null +++ b/scripts/globals.gd @@ -0,0 +1,84 @@ +extends Node + + +class Section: + var name: String + var colors: Array[Color] + var image_paths: Array[String] + + +var _thread := Thread.new() + +var sections: Array[Section] +var files_to_process: Array[String] + + +signal image_loaded + + +func _process(_delta): + if not _thread.is_started() and not files_to_process.is_empty(): + _thread.start(_load_texture.bind(files_to_process[0])) + elif _thread.is_started() and !_thread.is_alive(): + _thread.wait_to_finish() + + +func _exit_tree(): + if _thread.is_started(): + _thread.wait_to_finish() + + +func _load_texture(image_file_path: String): + var start_time := Time.get_ticks_usec() + + var file_name := image_file_path.split("/")[-1] + var miniature_dir := image_file_path.trim_suffix(file_name) + ".thumb" + var miniature_file_path := image_file_path.trim_suffix(file_name) + ".thumb/" + file_name + + # create it if not exists and save it + var dir := DirAccess.open("./") + dir.make_dir_recursive(miniature_dir) + # hide folder in those systems supported + if OS.get_name() in ["Windows", "macOS", "iOS", "FreeBSD", "NetBSD", "OpenBSD", "BSD"]: + dir.set_hidden_attribute(miniature_dir, true) + + var image := Image.load_from_file(image_file_path) + + # remove transparent pixels + var first_h := image.get_height() + var first_w := image.get_width() + var last_h := 0 + var last_w := 0 + + for h in image.get_height(): + for w in image.get_width(): + if image.get_pixel(w, h).a != 0: + if h < first_h: first_h = h + if h > last_h: last_h = h + if w < first_w: first_w = w + if w > last_w: last_w = w + + var new_img = Image.create(last_w - first_w, last_h - first_h, true, image.get_format()) + new_img.blit_rect(image, Rect2(first_w, first_h, last_w - first_w, last_h - first_h), Vector2i(0, 0)) + new_img.resize(100, 100, Image.INTERPOLATE_LANCZOS) + new_img.save_png(miniature_file_path) + + # remove work from queue + files_to_process.remove_at(files_to_process.find(image_file_path)) + + # notify + image_loaded.emit() + var elapsed_time := Time.get_ticks_usec() - start_time + print("Texture ready, took %d microseconds" % elapsed_time) + + +#region utils + + +func get_section_index(section_name: String): + for section in sections: + if section.name == section_name: + return sections.find(section) + + +#endregion diff --git a/scripts/image_model.gd b/scripts/image_model.gd new file mode 100644 index 0000000..40ad455 --- /dev/null +++ b/scripts/image_model.gd @@ -0,0 +1,183 @@ +extends Control + + +var section: String +var section_z_index := 1 +var movement_multiplier := 1 +var default_position := Vector2(0, 0) +var color_placeholder: Color +var color_suggestions: Array[Color] + +@onready var main_window := $"../../.." +@onready var image_model := $"." + + +signal colorsLoaded(placeholder: Color, colors: Array[Color]) + + +func _ready(): + get_viewport().transparent_bg = true + main_window.sectionChanged.connect(_on_section_changed) + main_window.optionPressed.connect(_on_option_pressed) + main_window.resetOptions.connect(_on_reset_pressed) + main_window.moveLayer.connect(_movement_pressed) + main_window.movementMultiplier.connect(_movement_multiplier) + main_window.colorPicked.connect(_on_color_picked) + main_window.moveLayerUp.connect(_on_layer_moved_up) + main_window.moveLayerDown.connect(_on_layer_moved_down) + + +func _on_section_changed(new_section: String): + section = new_section + load_section_z_index(new_section) + load_default_position(new_section) + load_colors(new_section) + # print_rich("[color=", color_placeholder.to_html(), "]", color_placeholder, "[/color]") + + +func _on_option_pressed(file_path: String): + var image := Image.load_from_file(file_path) + var image_texture := ImageTexture.create_from_image(image) + + var texture_rect: TextureRect + + for child in image_model.get_children(): + if child.name == section: + texture_rect = child + break + + if texture_rect == null: + texture_rect = TextureRect.new() + texture_rect.name = section + texture_rect.z_index = section_z_index + texture_rect.position = default_position + texture_rect.material = ShaderMaterial.new() + texture_rect.material.shader = load("res://shaders/color_changer.gdshader") + + if color_placeholder != null: + texture_rect.material.set("shader_parameter/placeholder_color", color_placeholder) + + if not color_suggestions.is_empty(): + texture_rect.material.set("shader_parameter/target_color", color_suggestions[0]) + + texture_rect.texture = image_texture + texture_rect.stretch_mode = TextureRect.StretchMode.STRETCH_KEEP_ASPECT + texture_rect.ignore_texture_size = true + texture_rect.custom_minimum_size = Vector2(500, 500) + + image_model.add_child(texture_rect) + # print(file_path) + + +func _on_reset_pressed(): + for child in image_model.get_children(): + if child is not ColorRect: + child.queue_free() + + +func _movement_pressed(direction: Vector2): + var child := image_model.get_node(section) as TextureRect + if child != null: + child.position += direction * movement_multiplier + + +func _movement_multiplier(): + if movement_multiplier == 1: + movement_multiplier = 10 + else: + movement_multiplier = 1 + + +func load_section_z_index(section: String): + # reset value + section_z_index = 1 + + var config = ConfigFile.new() + var err = config.load("./assets/" + section + "/config.txt") + + if err != OK: + return + + if config.get_value("", "new_layer_on") is String: + if config.get_value("", "new_layer_on") == "bottom": + section_z_index = 0 + + if config.get_value("", "layer") is not int: + return + + if config.get_value("", "layer") != 0: + section_z_index = config.get_value("", "layer") as int + 1 + + +func load_default_position(section: String): + # reset value + default_position = Vector2(0, 0) + + var config = ConfigFile.new() + var err = config.load("./assets/" + section + "/config.txt") + + if err != OK: + return + + if config.get_value("", "position") is Vector2: + default_position = config.get_value("", "position") + + +func load_colors(section: String): + # reset defaults + color_placeholder = Color("#000000") + color_suggestions.clear() + + var config = ConfigFile.new() + var err = config.load("./assets/" + section + "/config.txt") + + if err != OK: + return + + if config.get_value("", "color_placeholder") is not String: + return + + color_placeholder = Color(config.get_value("", "color_placeholder")) + + if config.get_value("", "colors") is not Array: + return + + for color in config.get_value("", "colors"): + color_suggestions.append(Color(color)) + + colorsLoaded.emit(color_placeholder, color_suggestions) + + +func _on_color_picked(color: Color): + print_rich("[color=", color.to_html(), "]", color, "[/color]") + + # search texture + var texture_rect: TextureRect + + for child in image_model.get_children(): + if child.name == section: + texture_rect = child + break + + # set color to shaders + texture_rect.material.set("shader_parameter/target_color", color) + + +func _on_layer_moved_up(): + on_layer_moved("UP") + + +func _on_layer_moved_down(): + on_layer_moved("DOWN") + + +func on_layer_moved(direction: String): + var child := image_model.get_node(section) as TextureRect + if child == null: + return + + match direction: + "UP": + child.z_index += 1 + "DOWN": + child.z_index -= 1 diff --git a/scripts/main_window.gd b/scripts/main_window.gd new file mode 100644 index 0000000..660d5e2 --- /dev/null +++ b/scripts/main_window.gd @@ -0,0 +1,159 @@ +extends Control + + +var textures: Array[ImageTexture] +var texture_names: Array[String] + +var selected_color: Color +var color_placeholder: Color +var suggested_colors: Array[Color] + +@onready var viewport_image := $ViewportImage/SubViewport +@onready var image_model = $ViewportImage/SubViewport/ImageModel +@onready var sections_container := $SectionsScrollContainer/SectionsHBoxContainer +@onready var options_container := $OptionsScrollContainer/OptionsGridContainer + + +signal sectionChanged(section: String) +signal optionPressed(file_path: String) +signal moveLayer(direction: Vector2) +signal moveLayerUp +signal moveLayerDown +signal movementMultiplier +signal resetOptions +signal colorPicked(color: Color) + + +#region build-in + + +func _ready(): + image_model.colorsLoaded.connect(add_suggested_colors) + +#endregion + + +func form_option_color_rect()-> ColorRect: + var colorRect := ColorRect.new() + colorRect.color = Color.WHITE_SMOKE + colorRect.custom_minimum_size = Vector2(100, 100) + return colorRect + + +func form_option_texture_button()-> TextureButton: + var textBtn := TextureButton.new() + textBtn.stretch_mode = TextureButton.StretchMode.STRETCH_KEEP_ASPECT + textBtn.ignore_texture_size = true + textBtn.custom_minimum_size = Vector2(100, 100) + return textBtn + + +func add_texture_to_button(btn: TextureButton, textureName: String): + var i := texture_names.find(textureName) + if i == -1: + var timer := Timer.new() + timer.name = textureName + add_child(timer) + timer.autostart = true + timer.one_shot = true + timer.timeout.connect(call_deferred.bind("add_texture_to_button", btn, textureName)) + timer.start(.25) + else: + btn.texture_normal = textures[i] + + + + +#region buttons + + +func _on_button_export_pressed(): + $ViewportImage/SubViewport/ImageModel/ColorRect.visible = false + await get_tree().create_timer(.03).timeout + var img = viewport_image.get_texture().get_image() + img.save_png("./picrowo.png") + $ViewportImage/SubViewport/ImageModel/ColorRect.visible = true + +func _on_button_reset_pressed(): + resetOptions.emit() + + +func _section_button_pressed(section: String): + sectionChanged.emit(section) + + +func _option_button_pressed(file_path: String): + optionPressed.emit(file_path) + + +func _option_button_focused(colorRect: ColorRect, focus: bool): + if focus: + colorRect.color = Color.ALICE_BLUE + else: + colorRect.color = Color.WHITE_SMOKE + + +func _on_button_up_pressed(): + moveLayer.emit(Vector2(0, -1)) + + +func _on_button_right_pressed(): + moveLayer.emit(Vector2(1, 0)) + + +func _on_button_left_pressed(): + moveLayer.emit(Vector2(-1, 0)) + + +func _on_button_down_pressed(): + moveLayer.emit(Vector2(0, 1)) + + +func _on_button_movement_amount_pressed(): + movementMultiplier.emit() + if $ButtonMovementAmount.text == " 1x": + $ButtonMovementAmount.text = "10x" + else: + $ButtonMovementAmount.text = " 1x" + + +func _on_button_layer_up_pressed(): + moveLayerUp.emit() + + +func _on_button_layer_down_pressed(): + moveLayerDown.emit() + + +#endregion +#region color picker + + +func _color_picker_button_pressed(): + $ColorPickerNode.visible = !$ColorPickerNode.visible + + +func add_suggested_colors(placeholder: Color, colors: Array[Color]): + var colorPicker: ColorPicker = $ColorPickerNode/ColorPickerScrollContainer/CenterContainer/ColorPicker + + if not colors.is_empty(): + suggested_colors = colors + color_placeholder = placeholder + selected_color = colors[0] + + for color in colors: + colorPicker.add_preset(color) + + # open Swatches (FIX: totally a hack) + var btn: Button = colorPicker.get_child(0, true).get_child(0, true).get_child(5, true) + colorPicker.get_child(0, true).get_child(0, true).get_child(6, true).visible = true + btn.set_pressed_no_signal(true) + btn.text = "Suggestions" + + +func _on_color_picker_color_changed(color): + selected_color = color + colorPicked.emit(color) + + +#endregion diff --git a/scripts/splash_screen.gd b/scripts/splash_screen.gd new file mode 100644 index 0000000..ff75821 --- /dev/null +++ b/scripts/splash_screen.gd @@ -0,0 +1,128 @@ +extends Control + + +const example_folders := [ + "assets/eyes", + "assets/ears", + "assets/hair", + "assets/bodys", + "assets/backgrouds" +] + +const read_me_content := """\ +------------------ + Picreowo +------------------ + +Use this folder to store your assets, by default the app creates some folders as example, but you may add as much as you need or want. Those folders will later be loaded as tabs by the app. + +Note that if you edit the folders or some of its contents you have to reopen the app as it currently lacks a way to reload the folders. + +There is also a config file in each folder, you can use it to configure colors and some other things. If you ignore or delete them the app will work with the default values. + + +Have fun! +If something broke, find me at yo@edufdez.es + +""" + +const config_file_content := """\ +; Color to be replaced by the color picker +; default: #FF00FF (full Red and Blue, no Green) +color_placeholder="#FF00FF" + +; The colors you add next will be the suggested ones to colorize the asset, you can add as much as you want +; example: ["#FF0000", "#00FF00", "#0000FF"] +; default: [] (no colors, you can use the color picker either way) +colors=[] + +; Default position where the asset will be placed. Modify the 0s if you want to move it. +; First value means horizontal, positive right, negative left. The other one means vertical movement, positive up, negative down. +; default: Vector2(0, 0) +position=Vector2(0, 0) + +; Layer to draw +; By default when you add an asset its always added on top, so you cant add a body part after the eyes as that will be the wrong order, you can modify that here +; valid values are: "top", "bottom" +; default: "top" +new_layer_on="top" + +; Alternatively you may want to set up a layer for each asset, you can do it here +; higher means on top of lowers +; default: 0 +layer=0 +""" + + +func _ready(): + create_folder_structure() + load_sections() + + for section in Globals.sections: + load_options(section.name) + + var new_scene = load("res://scenes/interface.tscn") + var timer = Timer.new() + timer.autostart = true + timer.one_shot = true + timer.wait_time = .1 + timer.timeout.connect(get_tree().change_scene_to_packed.bind(new_scene)) + add_child(timer) + + +func create_folder_structure(): + var dir := DirAccess.open("./") + + if not dir.dir_exists("assets"): + for folder in example_folders: + dir.make_dir_recursive(folder) + + # add config files + # one in the root + if not dir.file_exists("./assets/read_me.txt"): + + var read_me := FileAccess.open("./assets/read_me.txt", FileAccess.WRITE) + read_me.store_string(read_me_content) + read_me.close() + + # one in each folder + for folder in DirAccess.get_directories_at("./assets"): + if not dir.file_exists("assets/" + folder + "/config.txt"): + + var config_file := FileAccess.open("assets/" + folder + "/config.txt", FileAccess.WRITE) + config_file.store_string(config_file_content) + config_file.close() + + +func load_sections(): + var dir := DirAccess.open("./assets") + var sections = dir.get_directories() + + for section in sections: + var section_instance = Globals.Section.new() + section_instance.name = section + Globals.sections.append(section_instance) + + +func load_options(section: String): + var dir := DirAccess.open("./assets" + "/" + section) + var file_list := dir.get_files() + + for file in file_list: + if !file.ends_with(".png"): + continue + + var file_path := "./assets" + "/" + section + "/" + file + + Globals.sections[Globals.get_section_index(section)].image_paths.append(file_path) + + if dir.dir_exists("/.thumb"): + dir.make_dir("/.thumb") + + var thumbs := DirAccess.get_files_at("./assets/" + section + "/.thumb") + if not thumbs.has(file): + Globals.files_to_process.append(file_path) + + +func load_colors(): + pass diff --git a/shaders/color_changer.gdshader b/shaders/color_changer.gdshader new file mode 100644 index 0000000..23b6305 --- /dev/null +++ b/shaders/color_changer.gdshader @@ -0,0 +1,12 @@ +shader_type canvas_item; +render_mode blend_mix; + +uniform vec4 placeholder_color : source_color = vec4(1.0, 0.0, 1.0, 1.0); +uniform vec4 target_color : source_color = vec4(1.0, 1.0, 1.0, 1.0); + +void fragment() { + if(COLOR == placeholder_color) { + COLOR = target_color; + } +} + diff --git a/sounds/click-b.ogg b/sounds/click-b.ogg new file mode 100644 index 0000000..570102c Binary files /dev/null and b/sounds/click-b.ogg differ diff --git a/sounds/click-b.ogg.import b/sounds/click-b.ogg.import new file mode 100644 index 0000000..7ee9989 --- /dev/null +++ b/sounds/click-b.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://b71sqgirpg4ov" +path="res://.godot/imported/click-b.ogg-bcaf03ecf77599cba4f385bb4628a2a6.oggvorbisstr" + +[deps] + +source_file="res://sounds/click-b.ogg" +dest_files=["res://.godot/imported/click-b.ogg-bcaf03ecf77599cba4f385bb4628a2a6.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/switch-b.ogg b/sounds/switch-b.ogg new file mode 100644 index 0000000..88b49a8 Binary files /dev/null and b/sounds/switch-b.ogg differ diff --git a/sounds/switch-b.ogg.import b/sounds/switch-b.ogg.import new file mode 100644 index 0000000..523559e --- /dev/null +++ b/sounds/switch-b.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://5bx66g63guwr" +path="res://.godot/imported/switch-b.ogg-9e6c85a620e5d6276c6d4e18f6f94849.oggvorbisstr" + +[deps] + +source_file="res://sounds/switch-b.ogg" +dest_files=["res://.godot/imported/switch-b.ogg-9e6c85a620e5d6276c6d4e18f6f94849.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/tap-a.ogg b/sounds/tap-a.ogg new file mode 100644 index 0000000..931d627 Binary files /dev/null and b/sounds/tap-a.ogg differ diff --git a/sounds/tap-a.ogg.import b/sounds/tap-a.ogg.import new file mode 100644 index 0000000..c951f45 --- /dev/null +++ b/sounds/tap-a.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://b15ugdlwpcyio" +path="res://.godot/imported/tap-a.ogg-09a3cb3fd02a3cfff016896bf8735458.oggvorbisstr" + +[deps] + +source_file="res://sounds/tap-a.ogg" +dest_files=["res://.godot/imported/tap-a.ogg-09a3cb3fd02a3cfff016896bf8735458.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/tap-b.ogg b/sounds/tap-b.ogg new file mode 100644 index 0000000..95fcebf Binary files /dev/null and b/sounds/tap-b.ogg differ diff --git a/sounds/tap-b.ogg.import b/sounds/tap-b.ogg.import new file mode 100644 index 0000000..4f0af95 --- /dev/null +++ b/sounds/tap-b.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://cd401dg04pnup" +path="res://.godot/imported/tap-b.ogg-56e1a8f27d472dfb8bb872559c10cba1.oggvorbisstr" + +[deps] + +source_file="res://sounds/tap-b.ogg" +dest_files=["res://.godot/imported/tap-b.ogg-56e1a8f27d472dfb8bb872559c10cba1.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/ui/arrow_n.svg b/ui/arrow_n.svg new file mode 100644 index 0000000..0e87b6b --- /dev/null +++ b/ui/arrow_n.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/arrow_n.svg.import b/ui/arrow_n.svg.import new file mode 100644 index 0000000..0bfb1c5 --- /dev/null +++ b/ui/arrow_n.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://jyvf5d266eyn" +path="res://.godot/imported/arrow_n.svg-94e8167184d59bdbe9064d650be6decf.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/arrow_n.svg" +dest_files=["res://.godot/imported/arrow_n.svg-94e8167184d59bdbe9064d650be6decf.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/arrow_s.svg b/ui/arrow_s.svg new file mode 100644 index 0000000..a24bbeb --- /dev/null +++ b/ui/arrow_s.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/arrow_s.svg.import b/ui/arrow_s.svg.import new file mode 100644 index 0000000..82a9199 --- /dev/null +++ b/ui/arrow_s.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dkrtom37um7ci" +path="res://.godot/imported/arrow_s.svg-b2841ee15f18488c2658eef147f09072.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/arrow_s.svg" +dest_files=["res://.godot/imported/arrow_s.svg-b2841ee15f18488c2658eef147f09072.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/busy_circle.svg b/ui/busy_circle.svg new file mode 100644 index 0000000..107dedc --- /dev/null +++ b/ui/busy_circle.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/busy_circle.svg.import b/ui/busy_circle.svg.import new file mode 100644 index 0000000..a9172e1 --- /dev/null +++ b/ui/busy_circle.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c0jkp7avf8stg" +path="res://.godot/imported/busy_circle.svg-d31c99ad951c01de44ed4cd12cae5e01.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/busy_circle.svg" +dest_files=["res://.godot/imported/busy_circle.svg-d31c99ad951c01de44ed4cd12cae5e01.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/busy_circle_fade.svg b/ui/busy_circle_fade.svg new file mode 100644 index 0000000..63e7e8b --- /dev/null +++ b/ui/busy_circle_fade.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/ui/busy_circle_fade.svg.import b/ui/busy_circle_fade.svg.import new file mode 100644 index 0000000..74d9467 --- /dev/null +++ b/ui/busy_circle_fade.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://deqpv0d5vygrh" +path="res://.godot/imported/busy_circle_fade.svg-97e71eedf98bb2d495dc6994a3e6800a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/busy_circle_fade.svg" +dest_files=["res://.godot/imported/busy_circle_fade.svg-97e71eedf98bb2d495dc6994a3e6800a.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/button_rectangle_depth_line.svg b/ui/button_rectangle_depth_line.svg new file mode 100644 index 0000000..54e05fc --- /dev/null +++ b/ui/button_rectangle_depth_line.svg @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/ui/button_rectangle_depth_line.svg.import b/ui/button_rectangle_depth_line.svg.import new file mode 100644 index 0000000..3c468fb --- /dev/null +++ b/ui/button_rectangle_depth_line.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://5qonnbx3tie8" +path="res://.godot/imported/button_rectangle_depth_line.svg-ad097e92a86e707ed92f71411caebd34.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/button_rectangle_depth_line.svg" +dest_files=["res://.godot/imported/button_rectangle_depth_line.svg-ad097e92a86e707ed92f71411caebd34.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/button_rectangle_line.svg b/ui/button_rectangle_line.svg new file mode 100644 index 0000000..ebacfbe --- /dev/null +++ b/ui/button_rectangle_line.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/ui/button_rectangle_line.svg.import b/ui/button_rectangle_line.svg.import new file mode 100644 index 0000000..dde4f2c --- /dev/null +++ b/ui/button_rectangle_line.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://tmikywrrcq54" +path="res://.godot/imported/button_rectangle_line.svg-29bb65383c8143d9039f9f63d0f70180.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/button_rectangle_line.svg" +dest_files=["res://.godot/imported/button_rectangle_line.svg-29bb65383c8143d9039f9f63d0f70180.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/button_round_depth_line.svg b/ui/button_round_depth_line.svg new file mode 100644 index 0000000..e027216 --- /dev/null +++ b/ui/button_round_depth_line.svg @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/ui/button_round_depth_line.svg.import b/ui/button_round_depth_line.svg.import new file mode 100644 index 0000000..0194516 --- /dev/null +++ b/ui/button_round_depth_line.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://j80o5g1y0yeq" +path="res://.godot/imported/button_round_depth_line.svg-3aaad8e7edb1355951c62e64d7acca6a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/button_round_depth_line.svg" +dest_files=["res://.godot/imported/button_round_depth_line.svg-3aaad8e7edb1355951c62e64d7acca6a.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/button_round_line.svg b/ui/button_round_line.svg new file mode 100644 index 0000000..306f22f --- /dev/null +++ b/ui/button_round_line.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/ui/button_round_line.svg.import b/ui/button_round_line.svg.import new file mode 100644 index 0000000..45779ef --- /dev/null +++ b/ui/button_round_line.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b40puvvid5axi" +path="res://.godot/imported/button_round_line.svg-9d296915c41610ef5c9c46d9e5437bad.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/button_round_line.svg" +dest_files=["res://.godot/imported/button_round_line.svg-9d296915c41610ef5c9c46d9e5437bad.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/button_square_depth_line.svg b/ui/button_square_depth_line.svg new file mode 100644 index 0000000..0b46e7f --- /dev/null +++ b/ui/button_square_depth_line.svg @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/ui/button_square_depth_line.svg.import b/ui/button_square_depth_line.svg.import new file mode 100644 index 0000000..9acba75 --- /dev/null +++ b/ui/button_square_depth_line.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bh8r1544r4w0a" +path="res://.godot/imported/button_square_depth_line.svg-1cc590086494f495d62bde393b0a61c8.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/button_square_depth_line.svg" +dest_files=["res://.godot/imported/button_square_depth_line.svg-1cc590086494f495d62bde393b0a61c8.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/button_square_line.svg b/ui/button_square_line.svg new file mode 100644 index 0000000..3df0c37 --- /dev/null +++ b/ui/button_square_line.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/ui/button_square_line.svg.import b/ui/button_square_line.svg.import new file mode 100644 index 0000000..ecc3f3f --- /dev/null +++ b/ui/button_square_line.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dhbbx653ihne6" +path="res://.godot/imported/button_square_line.svg-7994aaf66030e063d75d9625554db8cf.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/button_square_line.svg" +dest_files=["res://.godot/imported/button_square_line.svg-7994aaf66030e063d75d9625554db8cf.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/divider.svg b/ui/divider.svg new file mode 100644 index 0000000..a80151f --- /dev/null +++ b/ui/divider.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/divider.svg.import b/ui/divider.svg.import new file mode 100644 index 0000000..44c6baf --- /dev/null +++ b/ui/divider.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://m50filgtqcge" +path="res://.godot/imported/divider.svg-490866f1e5609c2deee7814b94434af0.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/divider.svg" +dest_files=["res://.godot/imported/divider.svg-490866f1e5609c2deee7814b94434af0.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/divider_edges.svg b/ui/divider_edges.svg new file mode 100644 index 0000000..def4844 --- /dev/null +++ b/ui/divider_edges.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/divider_edges.svg.import b/ui/divider_edges.svg.import new file mode 100644 index 0000000..4bd17b8 --- /dev/null +++ b/ui/divider_edges.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://de5hlr8gsi2qb" +path="res://.godot/imported/divider_edges.svg-87a6226ea6944bc47ff605b1fa3024ba.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/divider_edges.svg" +dest_files=["res://.godot/imported/divider_edges.svg-87a6226ea6944bc47ff605b1fa3024ba.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/dot_large.svg b/ui/dot_large.svg new file mode 100644 index 0000000..eb3b7cd --- /dev/null +++ b/ui/dot_large.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/dot_large.svg.import b/ui/dot_large.svg.import new file mode 100644 index 0000000..57bc3ef --- /dev/null +++ b/ui/dot_large.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c50gjpjhhtp42" +path="res://.godot/imported/dot_large.svg-0d3a94effc9df3f3d14faebfcc8a1019.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/dot_large.svg" +dest_files=["res://.godot/imported/dot_large.svg-0d3a94effc9df3f3d14faebfcc8a1019.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/drawing_bucket.svg b/ui/drawing_bucket.svg new file mode 100644 index 0000000..084b2a1 --- /dev/null +++ b/ui/drawing_bucket.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/drawing_bucket.svg.import b/ui/drawing_bucket.svg.import new file mode 100644 index 0000000..8187cae --- /dev/null +++ b/ui/drawing_bucket.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bh8nmx3dxc3f1" +path="res://.godot/imported/drawing_bucket.svg-50eeb2aa2677cb264c0806063fdc296d.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/drawing_bucket.svg" +dest_files=["res://.godot/imported/drawing_bucket.svg-50eeb2aa2677cb264c0806063fdc296d.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/drawing_eraser.svg b/ui/drawing_eraser.svg new file mode 100644 index 0000000..4738c58 --- /dev/null +++ b/ui/drawing_eraser.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/drawing_eraser.svg.import b/ui/drawing_eraser.svg.import new file mode 100644 index 0000000..2d66e18 --- /dev/null +++ b/ui/drawing_eraser.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://djiwr64bnmknj" +path="res://.godot/imported/drawing_eraser.svg-1c06a7d7b1c88f95b2200fe90d88840e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/drawing_eraser.svg" +dest_files=["res://.godot/imported/drawing_eraser.svg-1c06a7d7b1c88f95b2200fe90d88840e.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/drawing_picker.svg b/ui/drawing_picker.svg new file mode 100644 index 0000000..3f05a2a --- /dev/null +++ b/ui/drawing_picker.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/ui/drawing_picker.svg.import b/ui/drawing_picker.svg.import new file mode 100644 index 0000000..10215d4 --- /dev/null +++ b/ui/drawing_picker.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bs230jvbr3gbm" +path="res://.godot/imported/drawing_picker.svg-5ab33d6fff55e7a5812dcdc6a7747f7f.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/drawing_picker.svg" +dest_files=["res://.godot/imported/drawing_picker.svg-5ab33d6fff55e7a5812dcdc6a7747f7f.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/hand_point.svg b/ui/hand_point.svg new file mode 100644 index 0000000..62db65c --- /dev/null +++ b/ui/hand_point.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/hand_point.svg.import b/ui/hand_point.svg.import new file mode 100644 index 0000000..0e9e00d --- /dev/null +++ b/ui/hand_point.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cbnqrxqs54l8n" +path="res://.godot/imported/hand_point.svg-cd30330c006caefea6a0b45be94c9558.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/hand_point.svg" +dest_files=["res://.godot/imported/hand_point.svg-cd30330c006caefea6a0b45be94c9558.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/icon_cross.svg b/ui/icon_cross.svg new file mode 100644 index 0000000..95f4baa --- /dev/null +++ b/ui/icon_cross.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/icon_cross.svg.import b/ui/icon_cross.svg.import new file mode 100644 index 0000000..ba4d079 --- /dev/null +++ b/ui/icon_cross.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://2ksj38qp50ka" +path="res://.godot/imported/icon_cross.svg-12d3cc68c37350adc64025b184970bf0.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/icon_cross.svg" +dest_files=["res://.godot/imported/icon_cross.svg-12d3cc68c37350adc64025b184970bf0.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/icon_repeat_dark.svg b/ui/icon_repeat_dark.svg new file mode 100644 index 0000000..cc8ba26 --- /dev/null +++ b/ui/icon_repeat_dark.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ui/icon_repeat_dark.svg.import b/ui/icon_repeat_dark.svg.import new file mode 100644 index 0000000..1be5d62 --- /dev/null +++ b/ui/icon_repeat_dark.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://eg0ov7ljkpb2" +path="res://.godot/imported/icon_repeat_dark.svg-03d877a72cc365598a275bef55071ffa.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/icon_repeat_dark.svg" +dest_files=["res://.godot/imported/icon_repeat_dark.svg-03d877a72cc365598a275bef55071ffa.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/icon_repeat_light.svg b/ui/icon_repeat_light.svg new file mode 100644 index 0000000..ad28f56 --- /dev/null +++ b/ui/icon_repeat_light.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ui/icon_repeat_light.svg.import b/ui/icon_repeat_light.svg.import new file mode 100644 index 0000000..40b58e1 --- /dev/null +++ b/ui/icon_repeat_light.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bgpvehbpycrju" +path="res://.godot/imported/icon_repeat_light.svg-54e336463059780f966501c6b19b7332.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/icon_repeat_light.svg" +dest_files=["res://.godot/imported/icon_repeat_light.svg-54e336463059780f966501c6b19b7332.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/icon_repeat_outline.svg b/ui/icon_repeat_outline.svg new file mode 100644 index 0000000..38c9747 --- /dev/null +++ b/ui/icon_repeat_outline.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/icon_repeat_outline.svg.import b/ui/icon_repeat_outline.svg.import new file mode 100644 index 0000000..47903fd --- /dev/null +++ b/ui/icon_repeat_outline.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dkteu8flsnum5" +path="res://.godot/imported/icon_repeat_outline.svg-d474e839b55aab8acf2c18ddeed93198.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/icon_repeat_outline.svg" +dest_files=["res://.godot/imported/icon_repeat_outline.svg-d474e839b55aab8acf2c18ddeed93198.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/input_outline_rectangle.svg b/ui/input_outline_rectangle.svg new file mode 100644 index 0000000..124da7b --- /dev/null +++ b/ui/input_outline_rectangle.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/ui/input_outline_rectangle.svg.import b/ui/input_outline_rectangle.svg.import new file mode 100644 index 0000000..26d840b --- /dev/null +++ b/ui/input_outline_rectangle.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://s85l7kt4t6xh" +path="res://.godot/imported/input_outline_rectangle.svg-01e9c87e4b7a1b8bc5ff0744795e5e6c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/input_outline_rectangle.svg" +dest_files=["res://.godot/imported/input_outline_rectangle.svg-01e9c87e4b7a1b8bc5ff0744795e5e6c.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/input_outline_square.svg b/ui/input_outline_square.svg new file mode 100644 index 0000000..8f78e5d --- /dev/null +++ b/ui/input_outline_square.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/ui/input_outline_square.svg.import b/ui/input_outline_square.svg.import new file mode 100644 index 0000000..d3057b9 --- /dev/null +++ b/ui/input_outline_square.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d4lh2gvabny1e" +path="res://.godot/imported/input_outline_square.svg-2e6421bd83e8c525cf7dc40c3416b1b5.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/input_outline_square.svg" +dest_files=["res://.godot/imported/input_outline_square.svg-2e6421bd83e8c525cf7dc40c3416b1b5.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/input_rectangle.svg b/ui/input_rectangle.svg new file mode 100644 index 0000000..a629f08 --- /dev/null +++ b/ui/input_rectangle.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/ui/input_rectangle.svg.import b/ui/input_rectangle.svg.import new file mode 100644 index 0000000..6457557 --- /dev/null +++ b/ui/input_rectangle.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bw7mx7vcry0rh" +path="res://.godot/imported/input_rectangle.svg-c018f0af91c67e7fefd1832598c36c77.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/input_rectangle.svg" +dest_files=["res://.godot/imported/input_rectangle.svg-c018f0af91c67e7fefd1832598c36c77.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/input_square.svg b/ui/input_square.svg new file mode 100644 index 0000000..f3a88ee --- /dev/null +++ b/ui/input_square.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/ui/input_square.svg.import b/ui/input_square.svg.import new file mode 100644 index 0000000..189af09 --- /dev/null +++ b/ui/input_square.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c6wruvu80rcl8" +path="res://.godot/imported/input_square.svg-35d1714538759cb125aadcc5c017bfb2.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/input_square.svg" +dest_files=["res://.godot/imported/input_square.svg-35d1714538759cb125aadcc5c017bfb2.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/mark_exclamation.svg b/ui/mark_exclamation.svg new file mode 100644 index 0000000..8266ada --- /dev/null +++ b/ui/mark_exclamation.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/mark_exclamation.svg.import b/ui/mark_exclamation.svg.import new file mode 100644 index 0000000..18ab6f0 --- /dev/null +++ b/ui/mark_exclamation.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d0rb436k558ph" +path="res://.godot/imported/mark_exclamation.svg-4bee3a308fc845c68cf57b3793d4ac0e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/mark_exclamation.svg" +dest_files=["res://.godot/imported/mark_exclamation.svg-4bee3a308fc845c68cf57b3793d4ac0e.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/mark_question.svg b/ui/mark_question.svg new file mode 100644 index 0000000..8d51405 --- /dev/null +++ b/ui/mark_question.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/mark_question.svg.import b/ui/mark_question.svg.import new file mode 100644 index 0000000..06542d2 --- /dev/null +++ b/ui/mark_question.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://gveobst7cbbh" +path="res://.godot/imported/mark_question.svg-8aca6fca74a8bda2399cec6379fb239c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/mark_question.svg" +dest_files=["res://.godot/imported/mark_question.svg-8aca6fca74a8bda2399cec6379fb239c.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/message_dots_round.svg b/ui/message_dots_round.svg new file mode 100644 index 0000000..c165ffc --- /dev/null +++ b/ui/message_dots_round.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/message_dots_round.svg.import b/ui/message_dots_round.svg.import new file mode 100644 index 0000000..d876000 --- /dev/null +++ b/ui/message_dots_round.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://eo0lp3j665py" +path="res://.godot/imported/message_dots_round.svg-81aea32bb43e973b7bf5669de4959c02.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/message_dots_round.svg" +dest_files=["res://.godot/imported/message_dots_round.svg-81aea32bb43e973b7bf5669de4959c02.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/navigation_e.svg b/ui/navigation_e.svg new file mode 100644 index 0000000..357fdab --- /dev/null +++ b/ui/navigation_e.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/navigation_e.svg.import b/ui/navigation_e.svg.import new file mode 100644 index 0000000..98f6b1a --- /dev/null +++ b/ui/navigation_e.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ct60e6ip1847v" +path="res://.godot/imported/navigation_e.svg-f9bb745d11100a71ecff4b329a3fcbef.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/navigation_e.svg" +dest_files=["res://.godot/imported/navigation_e.svg-f9bb745d11100a71ecff4b329a3fcbef.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/navigation_n.svg b/ui/navigation_n.svg new file mode 100644 index 0000000..6dc4adc --- /dev/null +++ b/ui/navigation_n.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/navigation_n.svg.import b/ui/navigation_n.svg.import new file mode 100644 index 0000000..ce5acd8 --- /dev/null +++ b/ui/navigation_n.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://crv5nkyeki0cf" +path="res://.godot/imported/navigation_n.svg-9924fadf02157a8cdcbe0d522a6f44f6.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/navigation_n.svg" +dest_files=["res://.godot/imported/navigation_n.svg-9924fadf02157a8cdcbe0d522a6f44f6.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/navigation_s.svg b/ui/navigation_s.svg new file mode 100644 index 0000000..f77df1e --- /dev/null +++ b/ui/navigation_s.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/navigation_s.svg.import b/ui/navigation_s.svg.import new file mode 100644 index 0000000..fd777d5 --- /dev/null +++ b/ui/navigation_s.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://gw8bdod50l7c" +path="res://.godot/imported/navigation_s.svg-cc341beecdc7f66f6ccc8c745b847ea0.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/navigation_s.svg" +dest_files=["res://.godot/imported/navigation_s.svg-cc341beecdc7f66f6ccc8c745b847ea0.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/navigation_w.svg b/ui/navigation_w.svg new file mode 100644 index 0000000..ef977ab --- /dev/null +++ b/ui/navigation_w.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/navigation_w.svg.import b/ui/navigation_w.svg.import new file mode 100644 index 0000000..d4471ab --- /dev/null +++ b/ui/navigation_w.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bfxqaotf0owrh" +path="res://.godot/imported/navigation_w.svg-21c587409867804be72464634914ce85.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/navigation_w.svg" +dest_files=["res://.godot/imported/navigation_w.svg-21c587409867804be72464634914ce85.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/resize_a_cross_diagonal.svg b/ui/resize_a_cross_diagonal.svg new file mode 100644 index 0000000..2a547a7 --- /dev/null +++ b/ui/resize_a_cross_diagonal.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/resize_a_cross_diagonal.svg.import b/ui/resize_a_cross_diagonal.svg.import new file mode 100644 index 0000000..ea67526 --- /dev/null +++ b/ui/resize_a_cross_diagonal.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d2ynbocejw2m7" +path="res://.godot/imported/resize_a_cross_diagonal.svg-6e1ab15fe5eeddb02c2febcb2c93a1b9.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/resize_a_cross_diagonal.svg" +dest_files=["res://.godot/imported/resize_a_cross_diagonal.svg-6e1ab15fe5eeddb02c2febcb2c93a1b9.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/rotate_ccw.svg b/ui/rotate_ccw.svg new file mode 100644 index 0000000..4840c1d --- /dev/null +++ b/ui/rotate_ccw.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/rotate_ccw.svg.import b/ui/rotate_ccw.svg.import new file mode 100644 index 0000000..a88d986 --- /dev/null +++ b/ui/rotate_ccw.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://doeu7gls8gu80" +path="res://.godot/imported/rotate_ccw.svg-ede0620ee97da7519f1f1b30e94ed67e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/rotate_ccw.svg" +dest_files=["res://.godot/imported/rotate_ccw.svg-ede0620ee97da7519f1f1b30e94ed67e.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/ui/saveTransparentDark32.png b/ui/saveTransparentDark32.png new file mode 100644 index 0000000..8f4c00e Binary files /dev/null and b/ui/saveTransparentDark32.png differ diff --git a/ui/tool_wand.svg b/ui/tool_wand.svg new file mode 100644 index 0000000..341634f --- /dev/null +++ b/ui/tool_wand.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/tool_wand.svg.import b/ui/tool_wand.svg.import new file mode 100644 index 0000000..0e90fdc --- /dev/null +++ b/ui/tool_wand.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bnerx2ae8utxi" +path="res://.godot/imported/tool_wand.svg-6b2511af22ebb5217316219138c89373.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://ui/tool_wand.svg" +dest_files=["res://.godot/imported/tool_wand.svg-6b2511af22ebb5217316219138c89373.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false