From 7318db30ab79e5cba505688ea6e6422e5b01262e Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Tue, 19 Nov 2019 23:23:43 +0200 Subject: [PATCH] Major UI changes - including new icons! - New UI icons for the tools, layer and frame buttons. - Removed clone, remove and move frame buttons. You can now right click on a frame button to do these actions instead. - Added first, previous, next and last frame buttons to the timeline. - Added rulers for the main canvas viewport. - Window size bumped to 1152x648. - Default FPS is now 6 instead of 1. - Fill tool renamed to Bucket. - Mouse default cursor shape for the canvas is the arrow instead of cross. - Mouse default cursor shape for the mirror and onion skinning buttons is the pointing hand. --- .gitignore | 1 - Assets/Fonts/Roboto-Small.tres | 3 +- Assets/Graphics/Layers/clone_layer.png | Bin 0 -> 770 bytes Assets/Graphics/Layers/clone_layer.png.import | 34 + Assets/Graphics/Layers/delete_layer.png | Bin 0 -> 739 bytes .../Graphics/Layers/delete_layer.png.import | 34 + .../Graphics/Layers/delete_layer_disabled.png | Bin 0 -> 750 bytes .../Layers/delete_layer_disabled.png.import | 34 + Assets/Graphics/Layers/layer_invisible.png | Bin 0 -> 705 bytes .../Layers/layer_invisible.png.import | 34 + Assets/Graphics/Layers/layer_visible.png | Bin 0 -> 761 bytes .../Graphics/Layers/layer_visible.png.import | 34 + Assets/Graphics/Layers/merge_down.png | Bin 0 -> 761 bytes Assets/Graphics/Layers/merge_down.png.import | 34 + .../Graphics/Layers/merge_down_disabled.png | Bin 0 -> 775 bytes .../Layers/merge_down_disabled.png.import | 34 + Assets/Graphics/Layers/move_down.png | Bin 0 -> 723 bytes Assets/Graphics/Layers/move_down.png.import | 34 + Assets/Graphics/Layers/move_down_disabled.png | Bin 0 -> 734 bytes .../Layers/move_down_disabled.png.import | 34 + Assets/Graphics/Layers/move_left.png | Bin 0 -> 756 bytes Assets/Graphics/Layers/move_left.png.import | 34 + Assets/Graphics/Layers/move_left_disabled.png | Bin 0 -> 765 bytes .../Layers/move_left_disabled.png.import | 34 + Assets/Graphics/Layers/move_right.png | Bin 0 -> 753 bytes Assets/Graphics/Layers/move_right.png.import | 34 + .../Graphics/Layers/move_right_disabled.png | Bin 0 -> 760 bytes .../Layers/move_right_disabled.png.import | 34 + Assets/Graphics/Layers/move_up.png | Bin 0 -> 720 bytes Assets/Graphics/Layers/move_up.png.import | 34 + Assets/Graphics/Layers/move_up_disabled.png | Bin 0 -> 731 bytes .../Layers/move_up_disabled.png.import | 34 + Assets/Graphics/Layers/new_layer.png | Bin 0 -> 730 bytes Assets/Graphics/Layers/new_layer.png.import | 34 + Assets/Graphics/Layers/pause.png | Bin 0 -> 160 bytes Assets/Graphics/Layers/pause.png.import | 34 + Assets/Graphics/Layers/play backwards.png | Bin 0 -> 240 bytes .../Graphics/Layers/play backwards.png.import | 34 + Assets/Graphics/Layers/play forward.png | Bin 0 -> 245 bytes .../Graphics/Layers/play forward.png.import | 34 + .../Graphics/Timeline/Go_To_First_Frame.png | Bin 0 -> 2929 bytes .../Timeline/Go_To_First_Frame.png.import | 34 + Assets/Graphics/Timeline/Go_To_Last_Frame.png | Bin 0 -> 2928 bytes .../Timeline/Go_To_Last_Frame.png.import | 34 + Assets/Graphics/Timeline/Loop.png | Bin 0 -> 689 bytes Assets/Graphics/Timeline/Loop.png.import | 34 + Assets/Graphics/Timeline/Loop_None.png | Bin 0 -> 693 bytes Assets/Graphics/Timeline/Loop_None.png.import | 34 + Assets/Graphics/Timeline/Loop_PingPong.png | Bin 0 -> 3002 bytes .../Timeline/Loop_PingPong.png.import | 34 + Assets/Graphics/Timeline/New_Frame.png | Bin 0 -> 186 bytes Assets/Graphics/Timeline/New_Frame.png.import | 34 + Assets/Graphics/Timeline/Next_Frame.png | Bin 0 -> 2886 bytes .../Graphics/Timeline/Next_Frame.png.import | 34 + Assets/Graphics/Timeline/Pause.png | Bin 0 -> 615 bytes Assets/Graphics/Timeline/Pause.png.import | 34 + Assets/Graphics/Timeline/Play Backwards.png | Bin 0 -> 2684 bytes .../Timeline/Play Backwards.png.import | 34 + Assets/Graphics/Timeline/Play.png | Bin 0 -> 2698 bytes Assets/Graphics/Timeline/Play.png.import | 34 + Assets/Graphics/Timeline/Previous_Frame.png | Bin 0 -> 2903 bytes .../Timeline/Previous_Frame.png.import | 34 + Assets/Graphics/Timeline/onion_skinning.png | Bin 0 -> 660 bytes .../Timeline/onion_skinning.png.import | 34 + Assets/Graphics/Tools/Brush.png | Bin 0 -> 803 bytes Assets/Graphics/Tools/Brush.png.import | 34 + Assets/Graphics/Tools/Brush_l.png | Bin 0 -> 852 bytes Assets/Graphics/Tools/Brush_l.png.import | 34 + Assets/Graphics/Tools/Brush_l_r.png | Bin 0 -> 867 bytes Assets/Graphics/Tools/Brush_l_r.png.import | 34 + Assets/Graphics/Tools/Brush_r.png | Bin 0 -> 859 bytes Assets/Graphics/Tools/Brush_r.png.import | 34 + Assets/Graphics/Tools/Bucket.png | Bin 0 -> 891 bytes Assets/Graphics/Tools/Bucket.png.import | 34 + Assets/Graphics/Tools/Bucket_l.png | Bin 0 -> 910 bytes Assets/Graphics/Tools/Bucket_l.png.import | 34 + Assets/Graphics/Tools/Bucket_l_r.png | Bin 0 -> 926 bytes Assets/Graphics/Tools/Bucket_l_r.png.import | 34 + Assets/Graphics/Tools/Bucket_r.png | Bin 0 -> 913 bytes Assets/Graphics/Tools/Bucket_r.png.import | 34 + Assets/Graphics/Tools/Eraser.png | Bin 0 -> 824 bytes Assets/Graphics/Tools/Eraser.png.import | 34 + Assets/Graphics/Tools/Eraser_l.png | Bin 0 -> 877 bytes Assets/Graphics/Tools/Eraser_l.png.import | 34 + Assets/Graphics/Tools/Eraser_l_r.png | Bin 0 -> 900 bytes Assets/Graphics/Tools/Eraser_l_r.png.import | 34 + Assets/Graphics/Tools/Eraser_r.png | Bin 0 -> 880 bytes Assets/Graphics/Tools/Eraser_r.png.import | 34 + Assets/Graphics/Tools/LightenDarken.png | Bin 0 -> 831 bytes .../Graphics/Tools/LightenDarken.png.import | 34 + Assets/Graphics/Tools/LightenDarken_l.png | Bin 0 -> 869 bytes .../Graphics/Tools/LightenDarken_l.png.import | 34 + Assets/Graphics/Tools/LightenDarken_l_r.png | Bin 0 -> 881 bytes .../Tools/LightenDarken_l_r.png.import | 34 + Assets/Graphics/Tools/LightenDarken_r.png | Bin 0 -> 876 bytes .../Graphics/Tools/LightenDarken_r.png.import | 34 + Assets/Graphics/Tools/Pencil.png | Bin 0 -> 817 bytes Assets/Graphics/Tools/Pencil.png.import | 34 + Assets/Graphics/Tools/Pencil_l.png | Bin 0 -> 871 bytes Assets/Graphics/Tools/Pencil_l.png.import | 34 + Assets/Graphics/Tools/Pencil_l_r.png | Bin 0 -> 885 bytes Assets/Graphics/Tools/Pencil_l_r.png.import | 34 + Assets/Graphics/Tools/Pencil_r.png | Bin 0 -> 867 bytes Assets/Graphics/Tools/Pencil_r.png.import | 34 + Assets/Graphics/Tools/RectSelect.png | Bin 0 -> 687 bytes Assets/Graphics/Tools/RectSelect.png.import | 34 + Assets/Graphics/Tools/RectSelect_l.png | Bin 0 -> 732 bytes Assets/Graphics/Tools/RectSelect_l.png.import | 34 + Assets/Graphics/Tools/RectSelect_l_r.png | Bin 0 -> 748 bytes .../Graphics/Tools/RectSelect_l_r.png.import | 34 + Assets/Graphics/Tools/RectSelect_r.png | Bin 0 -> 736 bytes Assets/Graphics/Tools/RectSelect_r.png.import | 34 + Main.tscn | 1115 ++++++++++------- Prefabs/FrameButton.tscn | 8 + Prefabs/LayerContainer.tscn | 37 +- Scripts/Canvas.gd | 17 +- Scripts/FrameButton.gd | 118 +- Scripts/Global.gd | 59 +- Scripts/HorizontalRuler.gd | 1 + Scripts/LayerContainer.gd | 4 +- Scripts/Main.gd | 143 +-- Scripts/NotificationLabel.gd | 3 - Scripts/SecondViewport.gd | 2 +- Scripts/SelectionRectangle.gd | 2 +- Scripts/VerticalRuler.gd | 1 + icon.png | Bin 3427 -> 1096 bytes project.godot | 28 + 127 files changed, 2761 insertions(+), 651 deletions(-) create mode 100644 Assets/Graphics/Layers/clone_layer.png create mode 100644 Assets/Graphics/Layers/clone_layer.png.import create mode 100644 Assets/Graphics/Layers/delete_layer.png create mode 100644 Assets/Graphics/Layers/delete_layer.png.import create mode 100644 Assets/Graphics/Layers/delete_layer_disabled.png create mode 100644 Assets/Graphics/Layers/delete_layer_disabled.png.import create mode 100644 Assets/Graphics/Layers/layer_invisible.png create mode 100644 Assets/Graphics/Layers/layer_invisible.png.import create mode 100644 Assets/Graphics/Layers/layer_visible.png create mode 100644 Assets/Graphics/Layers/layer_visible.png.import create mode 100644 Assets/Graphics/Layers/merge_down.png create mode 100644 Assets/Graphics/Layers/merge_down.png.import create mode 100644 Assets/Graphics/Layers/merge_down_disabled.png create mode 100644 Assets/Graphics/Layers/merge_down_disabled.png.import create mode 100644 Assets/Graphics/Layers/move_down.png create mode 100644 Assets/Graphics/Layers/move_down.png.import create mode 100644 Assets/Graphics/Layers/move_down_disabled.png create mode 100644 Assets/Graphics/Layers/move_down_disabled.png.import create mode 100644 Assets/Graphics/Layers/move_left.png create mode 100644 Assets/Graphics/Layers/move_left.png.import create mode 100644 Assets/Graphics/Layers/move_left_disabled.png create mode 100644 Assets/Graphics/Layers/move_left_disabled.png.import create mode 100644 Assets/Graphics/Layers/move_right.png create mode 100644 Assets/Graphics/Layers/move_right.png.import create mode 100644 Assets/Graphics/Layers/move_right_disabled.png create mode 100644 Assets/Graphics/Layers/move_right_disabled.png.import create mode 100644 Assets/Graphics/Layers/move_up.png create mode 100644 Assets/Graphics/Layers/move_up.png.import create mode 100644 Assets/Graphics/Layers/move_up_disabled.png create mode 100644 Assets/Graphics/Layers/move_up_disabled.png.import create mode 100644 Assets/Graphics/Layers/new_layer.png create mode 100644 Assets/Graphics/Layers/new_layer.png.import create mode 100644 Assets/Graphics/Layers/pause.png create mode 100644 Assets/Graphics/Layers/pause.png.import create mode 100644 Assets/Graphics/Layers/play backwards.png create mode 100644 Assets/Graphics/Layers/play backwards.png.import create mode 100644 Assets/Graphics/Layers/play forward.png create mode 100644 Assets/Graphics/Layers/play forward.png.import create mode 100644 Assets/Graphics/Timeline/Go_To_First_Frame.png create mode 100644 Assets/Graphics/Timeline/Go_To_First_Frame.png.import create mode 100644 Assets/Graphics/Timeline/Go_To_Last_Frame.png create mode 100644 Assets/Graphics/Timeline/Go_To_Last_Frame.png.import create mode 100644 Assets/Graphics/Timeline/Loop.png create mode 100644 Assets/Graphics/Timeline/Loop.png.import create mode 100644 Assets/Graphics/Timeline/Loop_None.png create mode 100644 Assets/Graphics/Timeline/Loop_None.png.import create mode 100644 Assets/Graphics/Timeline/Loop_PingPong.png create mode 100644 Assets/Graphics/Timeline/Loop_PingPong.png.import create mode 100644 Assets/Graphics/Timeline/New_Frame.png create mode 100644 Assets/Graphics/Timeline/New_Frame.png.import create mode 100644 Assets/Graphics/Timeline/Next_Frame.png create mode 100644 Assets/Graphics/Timeline/Next_Frame.png.import create mode 100644 Assets/Graphics/Timeline/Pause.png create mode 100644 Assets/Graphics/Timeline/Pause.png.import create mode 100644 Assets/Graphics/Timeline/Play Backwards.png create mode 100644 Assets/Graphics/Timeline/Play Backwards.png.import create mode 100644 Assets/Graphics/Timeline/Play.png create mode 100644 Assets/Graphics/Timeline/Play.png.import create mode 100644 Assets/Graphics/Timeline/Previous_Frame.png create mode 100644 Assets/Graphics/Timeline/Previous_Frame.png.import create mode 100644 Assets/Graphics/Timeline/onion_skinning.png create mode 100644 Assets/Graphics/Timeline/onion_skinning.png.import create mode 100644 Assets/Graphics/Tools/Brush.png create mode 100644 Assets/Graphics/Tools/Brush.png.import create mode 100644 Assets/Graphics/Tools/Brush_l.png create mode 100644 Assets/Graphics/Tools/Brush_l.png.import create mode 100644 Assets/Graphics/Tools/Brush_l_r.png create mode 100644 Assets/Graphics/Tools/Brush_l_r.png.import create mode 100644 Assets/Graphics/Tools/Brush_r.png create mode 100644 Assets/Graphics/Tools/Brush_r.png.import create mode 100644 Assets/Graphics/Tools/Bucket.png create mode 100644 Assets/Graphics/Tools/Bucket.png.import create mode 100644 Assets/Graphics/Tools/Bucket_l.png create mode 100644 Assets/Graphics/Tools/Bucket_l.png.import create mode 100644 Assets/Graphics/Tools/Bucket_l_r.png create mode 100644 Assets/Graphics/Tools/Bucket_l_r.png.import create mode 100644 Assets/Graphics/Tools/Bucket_r.png create mode 100644 Assets/Graphics/Tools/Bucket_r.png.import create mode 100644 Assets/Graphics/Tools/Eraser.png create mode 100644 Assets/Graphics/Tools/Eraser.png.import create mode 100644 Assets/Graphics/Tools/Eraser_l.png create mode 100644 Assets/Graphics/Tools/Eraser_l.png.import create mode 100644 Assets/Graphics/Tools/Eraser_l_r.png create mode 100644 Assets/Graphics/Tools/Eraser_l_r.png.import create mode 100644 Assets/Graphics/Tools/Eraser_r.png create mode 100644 Assets/Graphics/Tools/Eraser_r.png.import create mode 100644 Assets/Graphics/Tools/LightenDarken.png create mode 100644 Assets/Graphics/Tools/LightenDarken.png.import create mode 100644 Assets/Graphics/Tools/LightenDarken_l.png create mode 100644 Assets/Graphics/Tools/LightenDarken_l.png.import create mode 100644 Assets/Graphics/Tools/LightenDarken_l_r.png create mode 100644 Assets/Graphics/Tools/LightenDarken_l_r.png.import create mode 100644 Assets/Graphics/Tools/LightenDarken_r.png create mode 100644 Assets/Graphics/Tools/LightenDarken_r.png.import create mode 100644 Assets/Graphics/Tools/Pencil.png create mode 100644 Assets/Graphics/Tools/Pencil.png.import create mode 100644 Assets/Graphics/Tools/Pencil_l.png create mode 100644 Assets/Graphics/Tools/Pencil_l.png.import create mode 100644 Assets/Graphics/Tools/Pencil_l_r.png create mode 100644 Assets/Graphics/Tools/Pencil_l_r.png.import create mode 100644 Assets/Graphics/Tools/Pencil_r.png create mode 100644 Assets/Graphics/Tools/Pencil_r.png.import create mode 100644 Assets/Graphics/Tools/RectSelect.png create mode 100644 Assets/Graphics/Tools/RectSelect.png.import create mode 100644 Assets/Graphics/Tools/RectSelect_l.png create mode 100644 Assets/Graphics/Tools/RectSelect_l.png.import create mode 100644 Assets/Graphics/Tools/RectSelect_l_r.png create mode 100644 Assets/Graphics/Tools/RectSelect_l_r.png.import create mode 100644 Assets/Graphics/Tools/RectSelect_r.png create mode 100644 Assets/Graphics/Tools/RectSelect_r.png.import diff --git a/.gitignore b/.gitignore index 0f14fc402..8c051aa3e 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,3 @@ export_presets.cfg Scripts/Old/ -Assets/Graphics/Tools/ diff --git a/Assets/Fonts/Roboto-Small.tres b/Assets/Fonts/Roboto-Small.tres index 57bb57983..b2ad89a7f 100644 --- a/Assets/Fonts/Roboto-Small.tres +++ b/Assets/Fonts/Roboto-Small.tres @@ -3,7 +3,6 @@ [ext_resource path="res://Assets/Fonts/Roboto-Regular.ttf" type="DynamicFontData" id=1] [resource] -size = 8 +size = 10 use_mipmaps = true -use_filter = true font_data = ExtResource( 1 ) diff --git a/Assets/Graphics/Layers/clone_layer.png b/Assets/Graphics/Layers/clone_layer.png new file mode 100644 index 0000000000000000000000000000000000000000..eef163f33fb006e2b96be5457757abbd92e39fa0 GIT binary patch literal 770 zcmV+d1O5DoP)EX>4Tx04R}tkv&MmKp2MKrbs5OiS}bq^ok?_xa5yYA01s1!^F_(bA4rW+RV2Jy_M zrE}gV4zseP5T6r|8+1Y9N3P2*zi}=(Ebz>*kxkDNhl#~f7t3AD%7#ijO&n2Fjq-(@ z%L?Z$&T6&J+V|uy3>LJN4A*ImB7r3&k%9;rbyQG=g&6G`DJIf%9{2E%IQ|s5WO7x& z$gzMLR7j2={11Nj)+|mDYDGy0}HFmwy_uep6|pX2la$WpJCZ-9eC zV5~&h>mKj!>+ajXHSPZW05l$Qj=J7lV*mgE24YJ`L;x@VFaR)G(ALEO000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG51U3-h70U(y000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0002lNklx;~P)m?$`N0e5pMVQ5RHd zwyKG5K~`ow8JK_}1W@&WxrO<|u@G3}AOL_{4E{#M!RB(Crax8KuE5dKypc#DmC&(wVPS`~tS3rX^Gl&Q<^SMSuFFhjC?}5_PIcNeZDU?W> zJy0qQzGNHLWNn#nIDuS&UT_nEQNU&o%m|~Kz_kf{%z{!NmDZ-kv3@ZT4GpE+0~kX1 z`lqxtkXlYm6M?@w2XLnaer6Z!PyzKpggdV1Pp;ifUy4#QxBvhE07*qoM6N<$f~_M% At^fc4 literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Layers/clone_layer.png.import b/Assets/Graphics/Layers/clone_layer.png.import new file mode 100644 index 000000000..7acc16a4c --- /dev/null +++ b/Assets/Graphics/Layers/clone_layer.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/clone_layer.png-279472503c17fbe5679d112c3642c8e1.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Layers/clone_layer.png" +dest_files=[ "res://.import/clone_layer.png-279472503c17fbe5679d112c3642c8e1.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Layers/delete_layer.png b/Assets/Graphics/Layers/delete_layer.png new file mode 100644 index 0000000000000000000000000000000000000000..ff38e3c4c62dd5e8811a3f0254ed6ed85d8fc91c GIT binary patch literal 739 zcmV<90v!E`P)EX>4Tx04R}tkv&MmKpe$iQ$?|r4h9r)$WWauh>AE$6^me@v=v%)FuC*#nlvOW zE{=k0!NHHks)LKOt`4q(Aou~|;_9U6A|?JWDYS_3;J6>}?mh0_0Yan9G^=X@(DbUA zj76nPc2(+mMF1g)7(_s3mJv@arr|lh?&0I>U4&7I>y;rjzr;BC%BHV5Ngu(bR~iiNmU?RNSu59A>z@3D!JNL5;yTR{#IS@o5|E&vh7!uCB0{T9iiITYM?L(*jz2*zg zj1?$*-Q(T8oxS~grq$mMPw8@*aMUgR00006VoOIv00000008+zyMF)x010qNS#tmY zE+YT{E+YYWr9XB6000McNliru;|mWI8ZiEBBM<-p02y>eSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{006s5L_t(o!|hkg4#Xe`9L#FoFOD;?p!Ei0A^@-!Vme&v$0R VdX$d13*7(!002ovPDHLkV1j+)KgR$7 literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Layers/delete_layer.png.import b/Assets/Graphics/Layers/delete_layer.png.import new file mode 100644 index 000000000..123888532 --- /dev/null +++ b/Assets/Graphics/Layers/delete_layer.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/delete_layer.png-fe431fecde99d8e928adbcd8ce5355c9.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Layers/delete_layer.png" +dest_files=[ "res://.import/delete_layer.png-fe431fecde99d8e928adbcd8ce5355c9.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Layers/delete_layer_disabled.png b/Assets/Graphics/Layers/delete_layer_disabled.png new file mode 100644 index 0000000000000000000000000000000000000000..7b2bcc3cbe2f62a4ccf771ffd0aa517c54af0f16 GIT binary patch literal 750 zcmVEX>4Tx04R}tkv&MmKpe$iQ$?|r4h9r)$WWauh>AE$6^me@v=v%)FuC*#nlvOW zE{=k0!NHHks)LKOt`4q(Aou~|;_9U6A|?JWDYS_3;J6>}?mh0_0Yan9G^=X@(DbUA zj76nPc2(+mMF1g)7(_s3mJv@arr|lh?&0I>U4&7I>y;rjzr;BC%BHV5Ngu(bR~iiNmU?RNSu59A>z@3D!JNL5;yTR{#IS@o5|E&vh7!uCB0{T9iiITYM?L(*jz2*zg zj1?$*-Q(T8oxS~grq$mMPw8@*aMUgR00006VoOIv00000008+zyMF)x010qNS#tmY zE+YT{E+YYWr9XB6000McNliru;|mWI8yic@>k$9|02y>eSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{0072GL_t(o!|j*b4S*mFMGIkvZo~jg$1L5bQ|K3oX#lOf z)Y!k8ruRS}5fegyqj~Q)7-&Rfj=q~EEOioyohhCJv9Q=ojB#5Du>1yofcF3(A|PV7 zI28aQ0y6_MSCe0jYbrr0c@iH|0x2qeDXxLBcTb-D7IAe6au6-z@9BX@Euzv%HKTVM zAlGoU>FB-*a}9SkqFpy($!~#J-UCiMdbLrz8m9)(Bpkko{y(Dc0m!%7Od}%mj1sK4 gg{0}^huP2b9TMr7Vmnctng9R*07*qoM6N<$f~+S&%K!iX literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Layers/delete_layer_disabled.png.import b/Assets/Graphics/Layers/delete_layer_disabled.png.import new file mode 100644 index 000000000..2a7e3743f --- /dev/null +++ b/Assets/Graphics/Layers/delete_layer_disabled.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/delete_layer_disabled.png-9787176ae926b9fa36516deece94659d.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Layers/delete_layer_disabled.png" +dest_files=[ "res://.import/delete_layer_disabled.png-9787176ae926b9fa36516deece94659d.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Layers/layer_invisible.png b/Assets/Graphics/Layers/layer_invisible.png new file mode 100644 index 0000000000000000000000000000000000000000..6159669dc3ded4e66fd472155cde46d6f31c668b GIT binary patch literal 705 zcmV;y0zUnTP)EX>4Tx04R}tkv&MmKp2MKrbs5OiS}bq^ok?_xa5yYA01s1!^F_(bA4rW+RV2Jy_M zrE}gV4zseP5T6r|8+1Y9N3P2*zi}=(Ebz>*kxkDNhl#~f7t3AD%7#ijO&n2Fjq-(@ z%L?Z$&T6&J+V|uy3>LJN4A*ImB7r3&k%9;rbyQG=g&6G`DJIf%9{2E%IQ|s5WO7x& z$gzMLR7j2={11Nj)+|mDYDGy0}HFmwy_uep6|pX2la$WpJCZ-9eC zV5~&h>mKj!>+ajXHSPZW05l$Qj=J7lV*mgE24YJ`L;x@VFaR)G(ALEO000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG51rZX}9CCO7000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0001(Nkl2xe1wg{xefvV&}Q)$2!U~sQTMkCM>yaB4&VR|a25bF12az-s@0`d z!c1|s12M*Bc9&|K?*NKO`m$}*6-|vQKxuYbke<9Iz~6<`0EeDJT9BTRh1nhXDRzJn n0JJ=W$Be+j1EX>4Tx04R}tkv&MmKp2MKrbs5OiS}bq^ok?_xa5yYA01s1!^F_(bA4rW+RV2Jy_M zrE}gV4zseP5T6r|8+1Y9N3P2*zi}=(Ebz>*kxkDNhl#~f7t3AD%7#ijO&n2Fjq-(@ z%L?Z$&T6&J+V|uy3>LJN4A*ImB7r3&k%9;rbyQG=g&6G`DJIf%9{2E%IQ|s5WO7x& z$gzMLR7j2={11Nj)+|mDYDGy0}HFmwy_uep6|pX2la$WpJCZ-9eC zV5~&h>mKj!>+ajXHSPZW05l$Qj=J7lV*mgE24YJ`L;x@VFaR)G(ALEO000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG51rit@_CX>@2HM@dakSAh-}0002cNkl~!=4RMXLkX9|$0qF&fND@XwY|XAyP)P1pS)R2V zY6{S-egwsZ^@E60`V_D9fV9t2e{|=7)V128@2c85`Pa=u}%%hl#*6AOkk;3~z rvIX=AKtq09W(zD_z&Z!e;`jUmi=J>zbZpHD00000NkvXXu0mjfGt5B% literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Layers/layer_visible.png.import b/Assets/Graphics/Layers/layer_visible.png.import new file mode 100644 index 000000000..b6d5cb198 --- /dev/null +++ b/Assets/Graphics/Layers/layer_visible.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/layer_visible.png-66b5f937e71944a9789ca41e5221eb9d.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Layers/layer_visible.png" +dest_files=[ "res://.import/layer_visible.png-66b5f937e71944a9789ca41e5221eb9d.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Layers/merge_down.png b/Assets/Graphics/Layers/merge_down.png new file mode 100644 index 0000000000000000000000000000000000000000..06527e155d83458daa4ec1e4dfd961f85a0bc1e6 GIT binary patch literal 761 zcmVEX>4Tx04R}tkv&MmKp2MKrbs5OiS}bq^ok?_xa5yYA01s1!^F_(bA4rW+RV2Jy_M zrE}gV4zseP5T6r|8+1Y9N3P2*zi}=(Ebz>*kxkDNhl#~f7t3AD%7#ijO&n2Fjq-(@ z%L?Z$&T6&J+V|uy3>LJN4A*ImB7r3&k%9;rbyQG=g&6G`DJIf%9{2E%IQ|s5WO7x& z$gzMLR7j2={11Nj)+|mDYDGy0}HFmwy_uep6|pX2la$WpJCZ-9eC zV5~&h>mKj!>+ajXHSPZW05l$Qj=J7lV*mgE24YJ`L;x@VFaR)G(ALEO000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG51qCED2r#q&000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0002cNkl0t{wNbYO??$ zx;?mFBO*}McrUoJEX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+&F#_v000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG55C;pl0uJ;5000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0002qNkl*R$U+qvOUpEBcQbs0Xvx^EWreWF$~S4z2(I002ovPDHLk FV1n_8M}zEX>4Tx04R}tkv&MmKp2MKrbs5OiS}bq^ok?_xa5yYA01s1!^F_(bA4rW+RV2Jy_M zrE}gV4zseP5T6r|8+1Y9N3P2*zi}=(Ebz>*kxkDNhl#~f7t3AD%7#ijO&n2Fjq-(@ z%L?Z$&T6&J+V|uy3>LJN4A*ImB7r3&k%9;rbyQG=g&6G`DJIf%9{2E%IQ|s5WO7x& z$gzMLR7j2={11Nj)+|mDYDGy0}HFmwy_uep6|pX2la$WpJCZ-9eC zV5~&h>mKj!>+ajXHSPZW05l$Qj=J7lV*mgE24YJ`L;x@VFaR)G(ALEO000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG51q%R{i23UP000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}00020NklEX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+&F#_v000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG55C<021Y#`!000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0002BNkl%VIBKqrd)DosT2T0HqZ-E47T)vdDSpt|lumH>fqU0k0 zXs*{2_(;eAfW0H;2_e^ok?!Z)hIcNEb}w?E z2O$xk_fJS&kaj=saZFv1cK-EX>4Tx04UFukv&MmKpe$iQ>CJn4t5Z6$j~}j5EXHhC>Fs&X)CnqU~=gfG-*gu zTpR`0f`cE6RRc;UDo@A4jZ?*O4uVVc!50cg5y zrs9&A&8>=oR}3HoKYdY|Sww3Vu9k0rgF|4f zNZIRM?%mhf+n@iq{XzNxG#+w}LsEHj00009a7bBm001r{001r{0eGc9b^rhX24YJ` zL;x@VFaR)G(ALEO000McNliru;|mW33jmgg`Rf1x02y>eSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{007KML_t(oN9~tO4uBvG1;Hb-=X4xY^9W5U0TC#l1(O&O zT)d&J8nrP-MciQ>g$}Fd3M)YH=y34LA%PjeF+P)5Uxv*1DlK>Cy2?x~zQo#g1M!#M}2nM-ey3hF|SrjM*=b%cJ_-ui6xl@QdhCO@= z;N+-6s=rd~KZG$f7csg064f&x-Ik^ygoKnxbqi9EL`w@q1bW!}JurhK0D;%P+GO-L mEm%0000EX>4Tx04UFukv&MmKpe$iQ>CJn4ptCx$WWauh>AE$6pLV?v=v%)FuC*#nlvOS zE{=k0!NHHks)LKOt`4q(Aou~|;_9U6A|?JWDYOU`yl~u)cX^MycYshYGtKIn05sh; zlQBumWLL$&EBX+kZx(|xvy6CZF^!Jn>mEM7-bHy9{x|y7oW%g2NIb_3(1u~=whrHxt9)QG2vBdVrTzL4=) z<-EmND_2?bocxBtoW7FcI?WNpu!J}g5TT%o63VaQ3qvkl@$BxrD0sPOvmEQ7K>cH$L>9v*? zIRZl4z{Pb-Q}%$%9bo9mkWJZ@{4|Ap9(X^aXUYNtw?OZj*IRQRrw>4yx>~*g4i15_ z0%fmvxOY!`Z-4&d_6O+)uBCFnO^t#!00009a7bBm001r{001r{0eGc9b^rhX24YJ` zL;z9%QUFp>&F#_v000McNliru;|mWE2Nu)>Vl4mw02y>eSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{007lVL_t(oN9~v43Bw=|Mzu@0kpnoLv$&B{v?zW-gnH*` zw3IwBNIderQ~yLe=Twcg_Fbm85JJ#pnz;n-4sLEX>4Tx04UFukv&MmKpe$iQ>CJn4t5Z6$j~}j5EXHhC>Fs&X)CnqU~=gfG-*gu zTpR`0f`cE6RRc;UDo@A4jZ?*O4uVVc!50cg5y zrs9&A&8>=oR}3HoKYdY|Sww3Vu9k0rgF|4f zNZIRM?%mhf+n@iq{XzNxG#+w}LsEHj00009a7bBm001r{001r{0eGc9b^rhX24YJ` zL;x@VFaR)G(ALEO000McNliru;|mW33jmgg`Rf1x02y>eSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{007BJL_t(oN9~v43WXpHM)f|T|9v_iwD?3}jiTMTY4_5B z5GwqRTN%ZaQebRt^dh#g@@XSLuy;5(9LKRgr{*Q`*00000NkvXXu0mjf{KG;b literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Layers/move_right.png.import b/Assets/Graphics/Layers/move_right.png.import new file mode 100644 index 000000000..030a93f3c --- /dev/null +++ b/Assets/Graphics/Layers/move_right.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/move_right.png-b7cf2eac97df90530e52eb0d3043c58b.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Layers/move_right.png" +dest_files=[ "res://.import/move_right.png-b7cf2eac97df90530e52eb0d3043c58b.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Layers/move_right_disabled.png b/Assets/Graphics/Layers/move_right_disabled.png new file mode 100644 index 0000000000000000000000000000000000000000..77914a6288831aac1a4bdc319c21938210ef5193 GIT binary patch literal 760 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 M07*qoM6N<$g6cRm6aWAK literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Layers/new_layer.png.import b/Assets/Graphics/Layers/new_layer.png.import new file mode 100644 index 000000000..63de2dac9 --- /dev/null +++ b/Assets/Graphics/Layers/new_layer.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/new_layer.png-6f042042bc418daa72142f41f436a47c.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Layers/new_layer.png" +dest_files=[ "res://.import/new_layer.png-6f042042bc418daa72142f41f436a47c.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Layers/pause.png b/Assets/Graphics/Layers/pause.png new file mode 100644 index 0000000000000000000000000000000000000000..5a4fd40caf7da47bdc67ec19ceae2a7f1d9e84c0 GIT binary patch literal 160 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJbWaz@kcif|*A4j^3^-a74Q&;z zmnT2(D!r62`PkB~!~e~sg!V1-o|xOQ>f6VhR3)dPTG4#|d5%kxD%{?PHWx2>^)3BY zaP!Q&S>^G!;{UM#jf8FVdQ&MBb@0G66N A+yDRo literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Layers/pause.png.import b/Assets/Graphics/Layers/pause.png.import new file mode 100644 index 000000000..925901ae1 --- /dev/null +++ b/Assets/Graphics/Layers/pause.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/pause.png-48c57b4119e52ddae9386734c5fbb017.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Layers/pause.png" +dest_files=[ "res://.import/pause.png-48c57b4119e52ddae9386734c5fbb017.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Layers/play backwards.png b/Assets/Graphics/Layers/play backwards.png new file mode 100644 index 0000000000000000000000000000000000000000..060df298b3806c9ac72a34facc2513dc6a766eae GIT binary patch literal 240 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJ?Vc`Xjv zcj=oyi~LMmJSx6Sv#KzUIk(a47TYSJH=oZ`wjpvA~i;mN=`jpskJSiz!3u879nOxF@lzE;1% zn$NXlN)4+^QoF}@u?TOTSm)DOK3|!*J71=?tUFd@?$Wv9_Qo(KBmRt4jIt-gR2~>V oT+{M9;$Obo{RqF)Z{p79t4?&kT$J0^0rUccr>mdKI;Vst08`*#aR2}S literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Layers/play backwards.png.import b/Assets/Graphics/Layers/play backwards.png.import new file mode 100644 index 000000000..0279887fb --- /dev/null +++ b/Assets/Graphics/Layers/play backwards.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/play backwards.png-3771bca2f38de343da7b136421a808f9.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Layers/play backwards.png" +dest_files=[ "res://.import/play backwards.png-3771bca2f38de343da7b136421a808f9.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Layers/play forward.png b/Assets/Graphics/Layers/play forward.png new file mode 100644 index 0000000000000000000000000000000000000000..e4ba416707748a569b5f937b78efb962ddac19b9 GIT binary patch literal 245 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 b>M!5|DKj5yLe~n;00000NkvXXu0mjf>l1OA literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Timeline/Go_To_First_Frame.png.import b/Assets/Graphics/Timeline/Go_To_First_Frame.png.import new file mode 100644 index 000000000..e9cfe1ebe --- /dev/null +++ b/Assets/Graphics/Timeline/Go_To_First_Frame.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Go_To_First_Frame.png-f2cc5dda21fd600ff41ec5fd5105bf36.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Timeline/Go_To_First_Frame.png" +dest_files=[ "res://.import/Go_To_First_Frame.png-f2cc5dda21fd600ff41ec5fd5105bf36.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Timeline/Go_To_Last_Frame.png b/Assets/Graphics/Timeline/Go_To_Last_Frame.png new file mode 100644 index 0000000000000000000000000000000000000000..a05812a5485a9fc8120532f680186232834eb4f0 GIT binary patch literal 2928 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 X#Fk8;>YNOA00000NkvXXu0mjfgV!1n literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Timeline/Loop.png.import b/Assets/Graphics/Timeline/Loop.png.import new file mode 100644 index 000000000..9061c5134 --- /dev/null +++ b/Assets/Graphics/Timeline/Loop.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Loop.png-3640aee4edc274cbc6faec13d4b8b787.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Timeline/Loop.png" +dest_files=[ "res://.import/Loop.png-3640aee4edc274cbc6faec13d4b8b787.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Timeline/Loop_None.png b/Assets/Graphics/Timeline/Loop_None.png new file mode 100644 index 0000000000000000000000000000000000000000..9f1035defca043eca38ff00ad32320fce86c600b GIT binary patch literal 693 zcmV;m0!safP)EX>4Tx04R}tkv&MmKpe$iQ$^8=phZL+GPF(>L`58>ibb$c+6t{Ym|Xe=O&XFE z7e~Rh;NZt%)xpJCR|i)?5c~jfadlF3krMxx6k5c1aNLh~_a1le0HI!Hs@X9CsG4OY zV^J}aT@|}t(Tf29VGK#k)Z?keG(5-GJ$!tV@h8Y7ldA+q zjs;YpLUR1zfAG6oGe0%yCIzBE=ZkHBgn_PIpi#5!?_=9;oB;l3;7V)xD|KM@lk{3k z3mpOd+rY(jOOyA2%N=0&NtX=Ck^D4;d>(i|qi@OrgSSA>n%i4*AEysMnz~xP0S*p< zu>xhUd%U~5y|;hQH2eDjW3O_d7Y=~l00006VoOIv00000008+zyMF)x010qNS#tmY zE+YT{E+YYWr9XB6000McNliru;|mf32n}Q?Pf`E?02y>eSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{0050iL_t(I%e9r;5daYkMH8c zImiPhA}XbH3Q(<;ISM996s&An1mGRF*1iJ;G(t3+2?#)S65DD%d0;bm48?CrNvqv0 z(oUII+4REI6VA?Fn0jS_SYTT6u3{M4dagR$B?-W`PV)&S&Zm|WZJ#eo$GEN>QZ~2Z b=r7;_RS`}rCjK}T00000NkvXXu0mjfBcT;Y literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Timeline/Loop_None.png.import b/Assets/Graphics/Timeline/Loop_None.png.import new file mode 100644 index 000000000..242b85103 --- /dev/null +++ b/Assets/Graphics/Timeline/Loop_None.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Loop_None.png-14fc2cb4603d993574befff18ad98338.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Timeline/Loop_None.png" +dest_files=[ "res://.import/Loop_None.png-14fc2cb4603d993574befff18ad98338.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Timeline/Loop_PingPong.png b/Assets/Graphics/Timeline/Loop_PingPong.png new file mode 100644 index 0000000000000000000000000000000000000000..c05333c74a92768b4b58781e13148dfbf3e976a9 GIT binary patch literal 3002 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 literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Timeline/Loop_PingPong.png.import b/Assets/Graphics/Timeline/Loop_PingPong.png.import new file mode 100644 index 000000000..37e59e054 --- /dev/null +++ b/Assets/Graphics/Timeline/Loop_PingPong.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Loop_PingPong.png-b4923f70c51381502d0517f45940438a.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Timeline/Loop_PingPong.png" +dest_files=[ "res://.import/Loop_PingPong.png-b4923f70c51381502d0517f45940438a.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Timeline/New_Frame.png b/Assets/Graphics/Timeline/New_Frame.png new file mode 100644 index 0000000000000000000000000000000000000000..3610e58b89314b45063d6f9c4ecebb344da7f133 GIT binary patch literal 186 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k1|%Oc%$NbB8a-VcLn2z=-mv64V8G)NsQIMj zRjt+cT}hW*TzL`?ba))ybFTO2jt|Q|8Ep3E+PS-{BcpxBgLkW9lMV&SZb%Y1r10d- zjFg^_Qs*tVKhN6k#N#B^~2541=eupUXO@geCy?&q%ib literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Timeline/New_Frame.png.import b/Assets/Graphics/Timeline/New_Frame.png.import new file mode 100644 index 000000000..b72c2577a --- /dev/null +++ b/Assets/Graphics/Timeline/New_Frame.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/New_Frame.png-f645aed4cd6aef51aff87398a19a5b5c.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Timeline/New_Frame.png" +dest_files=[ "res://.import/New_Frame.png-f645aed4cd6aef51aff87398a19a5b5c.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Timeline/Next_Frame.png b/Assets/Graphics/Timeline/Next_Frame.png new file mode 100644 index 0000000000000000000000000000000000000000..cb44873efd811eca2539f23763571fd8d6f67406 GIT binary patch literal 2886 zcmV-M3%T@(P) zaB^>EX>4U6ba`-PAZ2)IW&i+q+T~bVk|Qe){bv=k1SAlT*Gd@v)g2mSO^{INJ=;V_uu9IgHMRUE=n$`rsVO7HCAr8DgOGj{Y^gZ@9U3vp3&>P zdp=-H1&rbPv!pXWG0#}fXMP+x4fApnROflnUmvt1h|AgF%s(~?bZy}E2x>=A;Is45 zu%De%E%|#6>|=)ARQ3DcT0HgBQ&_=sxaR%@j3Y=iTB?4yosSE9G>)viq@#?%1mNG#Yyyy2X_p=MvjtL@P zp0jr z9sw{BwiYOZu!-ao1)&6uGIJ(^AqxO%P@O~M4g^Sq6-qLqDghkCF!si8GVP@-d`*K4 zLv#qc6f&?uXacMl1^$y`fe$qa5=A6QmLgSJ3dtfYrJRgaTMjv9$tmYtT&}s5P-2mi zN-m|;(kj;g)|HBQtfki48a8c^-0zy#Bxah4qyjgqUF??Ij%%_R;&Hcm$JpJu~JWV*JtfE zmg;Q7G5`E*j{lO8{;h)M1Qg`E28?hiHJ3`;jBqNt3@x*6QwKOXmaQ(^137hs4&e8p z4)aZ3fNs^Pc`wM?wyT2LM@u~rrTv0K(Bw!09zHaqpF~1M9OVcloQ{6)+|#fO=4(e$Jkpd= zsiGvtWJ9cFOIf@cR2fKNIH3S)GCvEoF|z0|;!fIfYCfYb&ZWc2=+>7bW@^9@9A(!PZyWgzto@Rd;Y1CEfir^1L-NI$2 zE?^M2eq@SOX9KZznltNwY1VRxFEjPnk#>w7&DfB#;}9YFGbG@?V297i;TDZX3{JMe z?%d%0jUDdfa3j`NUNw4f7x%p|#4A7W=i@#9xDOLh1<-zZR9~rvgcfZ1ScA1})?)yD zqB1BbijvqSfT+X4ta&R%C6jM)#evnxD-6DY+V+KN#N~>%Zi{+22qr zj`5M{-94v$nKewvC#G<)g;`$1mHERl{NT&*atx1F5B0U0;n6|lz#X+I{J&Zl!0_Z0 zkzihf>iG|{+DS)$p4G0h<}YM5X!Mb5AeAjbQ34+MMvLJ_ixhE$w9}GrV=LiGM0>Q0 z-wLY5*&;fIi^hM6BHg=O^((2$y~|aO=`sgR8l!qz&n zjBKRI?QA4;Wuu8LBX45yEsVoeJoUy^LCjfzJIDeAu(T&&TOGU<*{@Etn2feHPUVY@ zLGaeWd`RgZjPC6Mn!P`uc$XjQPOlBTmTSpj{**S0V(DjZ}KN~>w_3>pq$VL70xIo@Tn2454FP928E7t zuZlZ;&@ll}xf#LwAWLtD-ahG0tO*LyU0qPo-36J)4fN|*7lc*l>jhnqz33aGjm`yC zy7`qgK{;_&OJue0rsk&->6hdGoggsZ_N;h0;znb?72=Jo;j!Nff$o{! zsBTBLMeQz+$zBWfDR4}L-rLtt#gc(m_YYmo;vi=4srvu`0flKpLr_UWLm+T+Z)Rz1 zWdHzpoPCi!NW(xJ#a~lPMJs|96miHJH`Q3vy4PEBBnE| zqW=}$=)(Yfn3b5R$C8UFv>jjf@bL96%(L2``*ZXtS(5=Ck$8^jhDE$VJiTe@ocD=? ztRN}G=fq$1ylobwI~JTqvd67$4CVlm&satpJ9p%PCKhZI$#d?D?!!g-6c zTB@+dJ^2d*S#2fBb(+J7VhJ(CAwot4MU-G6OshtUi3IIO+W3bYf1F%0xr$)qSU?#n zB*zc_2fw>DbCVNpQXm5OUTphg1n}G?f`>Nx@1U>s`N`^k_@(BIb97co=9ARZJ!%E-` k+Xhz{0Q_)$nfePj0o=SFYjQ~k%K!iX07*qoM6N<$f;f6&UH||9 literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Timeline/Next_Frame.png.import b/Assets/Graphics/Timeline/Next_Frame.png.import new file mode 100644 index 000000000..8727bc2cf --- /dev/null +++ b/Assets/Graphics/Timeline/Next_Frame.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Next_Frame.png-b45181b94daa05d9b8236fa51d2e14ac.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Timeline/Next_Frame.png" +dest_files=[ "res://.import/Next_Frame.png-b45181b94daa05d9b8236fa51d2e14ac.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Timeline/Pause.png b/Assets/Graphics/Timeline/Pause.png new file mode 100644 index 0000000000000000000000000000000000000000..6fcf8f44faed2af959f8751a52de76be9125db87 GIT binary patch literal 615 zcmV-t0+{`YP)EX>4Tx04R}tkv&MmKpe$iQ$^8=phZL+GPF(>L`58>ibb$c+6t{Ym|Xe=O&XFE z7e~Rh;NZt%)xpJCR|i)?5c~jfadlF3krMxx6k5c1aNLh~_a1le0HI!Hs@X9CsG4OY zV^J}aT@|}t(Tf29VGK#k)Z?keG(5-GJ$!tV@h8Y7ldA+q zjs;YpLUR1zfAG6oGe0%yCIzBE=ZkHBgn_PIpi#5!?_=9;oB;l3;7V)xD|KM@lk{3k z3mpOd+rY(jOOyA2%N=0&NtX=Ck^D4;d>(i|qi@OrgSSA>n%i4*AEysMnz~xP0S*p< zu>xhUd%U~5y|;hQH2eDjW3O_d7Y=~l00006VoOIv00000008+zyMF)x010qNS#tmY zE+YT{E+YYWr9XB6000McNliru;|mf1Ee!ZrdrbfU02y>eSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{002KpL_t(I%VT6z@002-j5Nn=IT5SLT002ovPDHLkV1iRC B@Y?_Y literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Timeline/Pause.png.import b/Assets/Graphics/Timeline/Pause.png.import new file mode 100644 index 000000000..ec7a8f597 --- /dev/null +++ b/Assets/Graphics/Timeline/Pause.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Pause.png-510b20b85c3bb7d1982ccd26142494c2.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Timeline/Pause.png" +dest_files=[ "res://.import/Pause.png-510b20b85c3bb7d1982ccd26142494c2.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Timeline/Play Backwards.png b/Assets/Graphics/Timeline/Play Backwards.png new file mode 100644 index 0000000000000000000000000000000000000000..fd930dca2866e36ddc7607f5b52149afbfd0d9bb GIT binary patch literal 2684 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 Ef}L*()Bpeg literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Timeline/Play.png.import b/Assets/Graphics/Timeline/Play.png.import new file mode 100644 index 000000000..0b0d13ab9 --- /dev/null +++ b/Assets/Graphics/Timeline/Play.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Play.png-2341cdcbc2e55f1747caf37da45fc80d.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Timeline/Play.png" +dest_files=[ "res://.import/Play.png-2341cdcbc2e55f1747caf37da45fc80d.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Timeline/Previous_Frame.png b/Assets/Graphics/Timeline/Previous_Frame.png new file mode 100644 index 0000000000000000000000000000000000000000..45b06f1c7ede2b05dd758848ef0850ac69ff20a4 GIT binary patch literal 2903 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 BYM}rC literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Timeline/Previous_Frame.png.import b/Assets/Graphics/Timeline/Previous_Frame.png.import new file mode 100644 index 000000000..4e98546c9 --- /dev/null +++ b/Assets/Graphics/Timeline/Previous_Frame.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Previous_Frame.png-226e7937514479118b1fc746ba67dd3b.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Timeline/Previous_Frame.png" +dest_files=[ "res://.import/Previous_Frame.png-226e7937514479118b1fc746ba67dd3b.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Timeline/onion_skinning.png b/Assets/Graphics/Timeline/onion_skinning.png new file mode 100644 index 0000000000000000000000000000000000000000..93acce0c25ea7253514a50f5d3fe353ae04dd115 GIT binary patch literal 660 zcmV;F0&D$=P)EX>4Tx04R}tkv&MmKpe$iQ$^8=phZL+GPF(>L`58>ibb$c+6t{Ym|Xe=O&XFE z7e~Rh;NZt%)xpJCR|i)?5c~jfadlF3krMxx6k5c1aNLh~_a1le0HI!Hs@X9CsG4OY zV^J}aT@|}t(Tf29VGK#k)Z?keG(5-GJ$!tV@h8Y7ldA+q zjs;YpLUR1zfAG6oGe0%yCIzBE=ZkHBgn_PIpi#5!?_=9;oB;l3;7V)xD|KM@lk{3k z3mpOd+rY(jOOyA2%N=0&NtX=Ck^D4;d>(i|qi@OrgSSA>n%i4*AEysMnz~xP0S*p< zu>xhUd%U~5y|;hQH2eDjW3O_d7Y=~l00006VoOIv00000008+zyMF)x010qNS#tmY zE+YT{E+YYWr9XB6000McNliru;|mf3BrA^;p#cB@02y>eSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{003-BL_t(I%VT60+9>?Rix-n-AT~|7ETf;7iHS|3 u4Ma~e=wUVjk`1od#05rR@x@5(DgXe3!5ucJ5`=C50000EX>4Tx04R}tkv&MmKp2MKrbs5OiS}bq^ok?_xa5yYA01s1!^F_(bA4rW+RV2Jy_M zrE}gV4zseP5T6r|8+1Y9N3P2*zi}=(Ebz>*kxkDNhl#~f7t3AD%7#ijO&n2Fjq-(@ z%L?Z$&T6&J+V|uy3>LJN4A*ImB7r3&k%9;rbyQG=g&6G`DJIf%9{2E%IQ|s5WO7x& z$gzMLR7j2={11Nj)+|mDYDGy0}HFmwy_uep6|pX2la$WpJCZ-9eC zV5~&h>mKj!>+ajXHSPZW05l$Qj=J7lV*mgE24YJ`L;x@VFaR)G(ALEO000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG51P~U=sO=X3000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0002`Nkl4$i77(z@1)q6=$2u;(3EH?BFN;g&!oO1{Oj57QpVzp@A`(qtKIJIEY0s}yd@l*w? z1<$}o7;X5nEd2#)GVdl(g6G+b3p|C33UJ_J0$jL=KnuKCpcUREAOU9!NWobGlJLg@ z((vl*_|J{ThF4XfC%n1>DbzW4>|5ciLl|R(b4~|5Xfu&(Q!6w!A$ePc8O05ZQO hRxNmb2I!6P`~#<_j~&hQGC=?U002ovPDHLkV1lMuRjvR4 literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/Brush.png.import b/Assets/Graphics/Tools/Brush.png.import new file mode 100644 index 000000000..1d4fc0f67 --- /dev/null +++ b/Assets/Graphics/Tools/Brush.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Brush.png-be161d4821aadbd04edeb9bfd3d48744.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/Brush.png" +dest_files=[ "res://.import/Brush.png-be161d4821aadbd04edeb9bfd3d48744.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Tools/Brush_l.png b/Assets/Graphics/Tools/Brush_l.png new file mode 100644 index 0000000000000000000000000000000000000000..56025b2f9f10c6cc22f99be63b6d5ba1ffa4027c GIT binary patch literal 852 zcmV-a1FQUrP)EX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+=(^1~?J`000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0003iNkl(qt4cH3Kk1(s&96 zpiW?h3_#~L1Efx$G{LcP0DsQTNl0J`y?5si9HEqg9M|XN1r|ZG8Z3jz52-8IBVMvd z5*e7hTB$KgZ@mku4iD;d4lH*=Fo94Y z?_IzcgCj6){QlT~H_!9+K8;c;I-|Ah8Dr>~f24>~fz`czC^4H;eGSm8CV%J+iLwS} ei3p9VlI$BU(Ww}M1wys}0000EX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+_CX>@2HM@dakSAh-}0003xNkl_B0=O9S^pCRxay$%KdAR>(f`btFlm`petFc@Z=IALt~qW6H9GN54{E74<0S-xljEppSc1)Pq!Wq~3TIWJf-z z)jH6h4c-KNft+W7loHk;2mPD%|99_??c_ayh^jK0ie5^|9{K&Tg&Z64m4V5*y-eAP t)6s7L7r6*s8+OI1%0MUKyHx9!=Wm3yx3jvl3XT8(002ovPDHLkV1n_Rdwu`_ literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/Brush_l_r.png.import b/Assets/Graphics/Tools/Brush_l_r.png.import new file mode 100644 index 000000000..daffc1dbd --- /dev/null +++ b/Assets/Graphics/Tools/Brush_l_r.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Brush_l_r.png-5b0b2b1d5aaa3b4883404b24ddd63152.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/Brush_l_r.png" +dest_files=[ "res://.import/Brush_l_r.png-5b0b2b1d5aaa3b4883404b24ddd63152.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Tools/Brush_r.png b/Assets/Graphics/Tools/Brush_r.png new file mode 100644 index 0000000000000000000000000000000000000000..046d7f7f47a1f08e591cd38aebe5c9c76601c19b GIT binary patch literal 859 zcmV-h1ElEX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+&F#_v000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG55CJy1Fy&(a000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0003pNklNF&^Vr| z!4@fU!ly*aT)?l-_49bMJ-@VI$OQ%fBErV1LYWIrM3ZZZ-0=P3mR`Um^JD@`@NxF+ z0={rofe<*GKq#C=AO;>SptX*IM+tDig9W(YK?0m`Zvk$&^XJ$GbHbe}kP_}(0UIi% ze4h7x51@(?@ZN+(1S#boJU+^Ir8mZ)ZQI2*uvftDyVm+&wp`hJJq5;?B!5mt$U7jZ zKq^pF3jm<&y21BCpEP)EX>4Tx04R}tkv&MmKp2MKrbs5OiS}bq^ok?_xa5yYA01s1!^F_(bA4rW+RV2Jy_M zrE}gV4zseP5T6r|8+1Y9N3P2*zi}=(Ebz>*kxkDNhl#~f7t3AD%7#ijO&n2Fjq-(@ z%L?Z$&T6&J+V|uy3>LJN4A*ImB7r3&k%9;rbyQG=g&6G`DJIf%9{2E%IQ|s5WO7x& z$gzMLR7j2={11Nj)+|mDYDGy0}HFmwy_uep6|pX2la$WpJCZ-9eC zV5~&h>mKj!>+ajXHSPZW05l$Qj=J7lV*mgE24YJ`L;x@VFaR)G(ALEO000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG51S2zb$6R0l000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0003}Nkl`y2)U{KN2_2+z@zloC=( zQd^#L^aP2SU zQYuPvQP)()LUuDg{UIWrWMS*7`}@U#KC8uez?kLr~`& z0H7#}Q@C>u<2b??vx6@&O%uwp1OT*c3u8?D4D@|}I`ZvW3BmnTky5agu+~21*3Wqg zJn0;`l8A+Ct?4J>kpvY^x(h-QR5y62 R*6IKN002ovPDHLkV1l%Eh#dd` literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/Bucket.png.import b/Assets/Graphics/Tools/Bucket.png.import new file mode 100644 index 000000000..d04fba06e --- /dev/null +++ b/Assets/Graphics/Tools/Bucket.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Bucket.png-0fdc4e57032ebc5812bbc7cadae424ea.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/Bucket.png" +dest_files=[ "res://.import/Bucket.png-0fdc4e57032ebc5812bbc7cadae424ea.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Tools/Bucket_l.png b/Assets/Graphics/Tools/Bucket_l.png new file mode 100644 index 0000000000000000000000000000000000000000..39fc40b93a66b9ffdfeb60d2e8faf0df2cd79a98 GIT binary patch literal 910 zcmV;919AL`P)EX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+=HP*f=Nv000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0004HNklyEeCkDJyu~t$j@fMhi(PK!1rZ$lMp6^06$*8UnZys(MYHa=HHyC z;0-bPBK*Sel?dPCOG+tFN|D~>dybwUF>yFJ{d7={_X*R>B}l>D z2;IFg2F7um;bEi3BpBRHQ!WF2-xuL++X4Wr;HhjGWAGVx{CLR19T*EImB5#<)-Gxr z*1QH@wGNaduy8;9)hl62f(l19;n&sY>eJS!@$WUaGO*LhJ{CG0X7TaGE9w=Xe9H`2C-?E6#%(~&;G`5xo9Li kfXx=CV<&NegX&_iKdZ;o0;?e_qyPW_07*qoM6N<$g3^nKjsO4v literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/Bucket_l.png.import b/Assets/Graphics/Tools/Bucket_l.png.import new file mode 100644 index 000000000..5054cf839 --- /dev/null +++ b/Assets/Graphics/Tools/Bucket_l.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Bucket_l.png-545d0f3d32061c5b9017e039914210fe.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/Bucket_l.png" +dest_files=[ "res://.import/Bucket_l.png-545d0f3d32061c5b9017e039914210fe.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Tools/Bucket_l_r.png b/Assets/Graphics/Tools/Bucket_l_r.png new file mode 100644 index 0000000000000000000000000000000000000000..0f1566883b8d1c1700ea7b200712734284accf2b GIT binary patch literal 926 zcmV;P17ZA$P)EX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+m000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0004XNkl7xV5P;7XBXh+&WP!CqH#&opm#Fdx ztrS^mA16OEY#qA7;&(uuyStMuO%ZxaxJ!gi@v)&_!_co$@6stppDWRJ3rXS5@xKN7m*IW_Q^3&zF?h~o z%o13BuQXf;0YZq2C1?)3X&McmYFW~2z&Yo@IZu+HF)(K2rbtYJhTs4Ygcn7juU*g8 zyCI3B68PY1gzA2?-NS16rQ!BObx9C-mNJxqs;Z*!!|@RSUxri2jUthRQ|bKqI~KujVPZl*tbC-g~R;YpM5_;46Kdw=>k17YFl!^qAA7Jkuj zY_ARs+$*5cpCf^RkLExs*qj$~S37sO6gavB>X7omQsK^3keUU18^*?r%}ZkT2Ciin zjv5Uw*@^s(zvXORl3RmSbE>;zC2{RW)o#y!0h=V?5_+#)HUIzs07*qoM6N<$f^*%M AtpET3 literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/Bucket_l_r.png.import b/Assets/Graphics/Tools/Bucket_l_r.png.import new file mode 100644 index 000000000..b5fbc4a06 --- /dev/null +++ b/Assets/Graphics/Tools/Bucket_l_r.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Bucket_l_r.png-a82f6b5b78c375626b890b402e3f68b3.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/Bucket_l_r.png" +dest_files=[ "res://.import/Bucket_l_r.png-a82f6b5b78c375626b890b402e3f68b3.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Tools/Bucket_r.png b/Assets/Graphics/Tools/Bucket_r.png new file mode 100644 index 0000000000000000000000000000000000000000..b69842c61757daabf089131823871fafe41c5f82 GIT binary patch literal 913 zcmV;C18)3@P)EX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+&F#_v000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG55CaaQ1V4WO000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0004KNklm2TlxQe%jzP8F$Px5kP!Wlr(6za_9W(hh6Q7zAM)80 zp?ktzB6N#~T`woNUQVcc>6Y22O7ufMQ+RRwZ-KULUnj5y94!!nr@V|w0@E~UxRes4 zl&d9Z3cTw&4d3dsq`v{@oCD`PN`i*Kn9NO)kOW{{`$ct0(6#X6;RbaxI^nKo*b-StKnMXS)3GUmg?j~57fg}Bz<=}s7ua>I zCEX>4Tx04R}tkv&MmKp2MKrbs5OiS}bq^ok?_xa5yYA01s1!^F_(bA4rW+RV2Jy_M zrE}gV4zseP5T6r|8+1Y9N3P2*zi}=(Ebz>*kxkDNhl#~f7t3AD%7#ijO&n2Fjq-(@ z%L?Z$&T6&J+V|uy3>LJN4A*ImB7r3&k%9;rbyQG=g&6G`DJIf%9{2E%IQ|s5WO7x& z$gzMLR7j2={11Nj)+|mDYDGy0}HFmwy_uep6|pX2la$WpJCZ-9eC zV5~&h>mKj!>+ajXHSPZW05l$Qj=J7lV*mgE24YJ`L;x@VFaR)G(ALEO000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG51P&#kIkVmX000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0003GNkl(!_5^E|O_ zTQv(j5*}Mkf=9z837!G3N$@QAodnN>mn3*L+++)^;9UY1@Z&i81gzmIff4X#fl=@# z0q_0wpjg92fw=Ni!V+E;NYftsQZOz2Rv?G>NVJaQR=7q&ld0~T@D8HgroY~T9Hxbv zyoM3l11}0_k6X{_5Hp~W=)E7rEoce+FB|~KIrsHj9zwvnuHv!G;c;FFL4>C9Ijz-7 zK}xHv!PDRp901X$IDMit0|4Su#X1X~*M{^&dHx0owWexR{zgau0000t<*G literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/Eraser.png.import b/Assets/Graphics/Tools/Eraser.png.import new file mode 100644 index 000000000..79f26822d --- /dev/null +++ b/Assets/Graphics/Tools/Eraser.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Eraser.png-168fd713a0b1f154f1e5bd973b1cd554.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/Eraser.png" +dest_files=[ "res://.import/Eraser.png-168fd713a0b1f154f1e5bd973b1cd554.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Tools/Eraser_l.png b/Assets/Graphics/Tools/Eraser_l.png new file mode 100644 index 0000000000000000000000000000000000000000..e9369244e78fefc5cd9da264a5a54befef434e73 GIT binary patch literal 877 zcmV-z1CsoSP)EX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+~G_`LbC6000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0003*Nkl&%w zha_ljc$6iG1@{t&0dJbdParlNC6EH{ERYKBByifCVYOc-fm;P+=Bh+YxKThYyBzN> z+o|}I2YT2Jp6Ci- zzWETiaS2=`d^acK63p&%xJ|Ft<&bdMnh7C*F$O{iE0i(ztpJ~_i4LFL=f*7cdn#O= z+y(~#LOAC^t(ix2+7qDfNys01L(=OFr9_5CwU_J@ALqQwE+-|H00000NkvXXu0mjf DBYttc literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/Eraser_l.png.import b/Assets/Graphics/Tools/Eraser_l.png.import new file mode 100644 index 000000000..f39ff2418 --- /dev/null +++ b/Assets/Graphics/Tools/Eraser_l.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Eraser_l.png-f21650fe1cd2d2a70e4c022c01b15a96.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/Eraser_l.png" +dest_files=[ "res://.import/Eraser_l.png-f21650fe1cd2d2a70e4c022c01b15a96.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Tools/Eraser_l_r.png b/Assets/Graphics/Tools/Eraser_l_r.png new file mode 100644 index 0000000000000000000000000000000000000000..2b9703dae52c348ee00f376da168eedb90ad44e1 GIT binary patch literal 900 zcmV-~1AF|5P)EX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+_CX>@2HM@dakSAh-}00047Nkln@V9vV?9<6vz6tM^?iC+(h8*%XqYt+w*4o>8va8JSFwsTmuw7jw1kIfB3e3FH7}Y!vWy! z^|8Ew4epbWOTb+caw)h?B1xd#bu9Rtgj^b)WeRe^qXcrm>AoQU6V4JS0S^`^1rHKv zcOACxn<8+pfbKb!$O(4}&|%l*!`D75+$vzgV|jm2Eiy0000EX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+&F#_v000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG55CS;@qN_0g000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0003;Nkl4zc$`k;3eU@d=k7gJS4$uz01#EbVL=1dZzy+sB#KISygf0mReDPgiOHkoiZbJ=Cfdc>&LQK?sU{~nJ zlRN{IZ+;2fy96;3sfUv*836#4QfQjy4R9@o4R5zs-0mIP?KKF!-MfD?z-+iu$~#IQ z-0VCAKZqw|uW*_iPN?D34yt+&u-e&Bhf{M8uo^+tj^}?KW3{&yXVt6#0000EX>4Tx04R}tkv&MmKp2MKrbs5OiS}bq^ok?_xa5yYA01s1!^F_(bA4rW+RV2Jy_M zrE}gV4zseP5T6r|8+1Y9N3P2*zi}=(Ebz>*kxkDNhl#~f7t3AD%7#ijO&n2Fjq-(@ z%L?Z$&T6&J+V|uy3>LJN4A*ImB7r3&k%9;rbyQG=g&6G`DJIf%9{2E%IQ|s5WO7x& z$gzMLR7j2={11Nj)+|mDYDGy0}HFmwy_uep6|pX2la$WpJCZ-9eC zV5~&h>mKj!>+ajXHSPZW05l$Qj=J7lV*mgE24YJ`L;x@VFaR)G(ALEO000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG51Rn*-j<5y*000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0003NNklqO2k+#P$?NJ@jeBd z`!_)(VoUH6J?sIV(?|HSU@z}ec354oZQFSs$5DmQBY|~Y0RUhah9+b%2Yi6f^ZXbY zN{EvN%z4cf4v8cIDY%qGQ5S>|R9lZuMbz|O5{3U6L|SRMUP`DPer_6ADX5LY-IdI) z0V#>p!^C*+qcjb<33-g?k{6L!Xf!C95CZJ`u5%f+PR&OROw*)7hGXaV22pJkxcaDJ zq(;xaSEQISR??akQG4EusBub0t6(iz6k|hAlUuUAS)04A=P#fzak8UjHS+)f002ov JPDHLkV1k!)U$p=L literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/LightenDarken.png.import b/Assets/Graphics/Tools/LightenDarken.png.import new file mode 100644 index 000000000..0219f1ba6 --- /dev/null +++ b/Assets/Graphics/Tools/LightenDarken.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/LightenDarken.png-465dc0b9dd73c983c91d729b7d3e96c8.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/LightenDarken.png" +dest_files=[ "res://.import/LightenDarken.png-465dc0b9dd73c983c91d729b7d3e96c8.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Tools/LightenDarken_l.png b/Assets/Graphics/Tools/LightenDarken_l.png new file mode 100644 index 0000000000000000000000000000000000000000..0e8cae8cd1212732127e43f67db7e74660f3f053 GIT binary patch literal 869 zcmV-r1DgDaP)EX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+}Y_n6L5x000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0003zNklU5JkT&O6s&oK0y|VHf0WAu9Q7a z_9B)@u0R`!E|9Hk8WvxXRKlk$pLfEneF;w_caD_8s3_%Jh z@w%=b&t2E0f~X=#^mOrt3LAhc{tQCn&7rqiearZAf+JJh5wFZ@*dzq#O?!=PDo9|vkvLI;@XWU>q-{75yCj< zFbsptVf5UulErZ9AvT(lCn^60$b5g;moCy-00000NkvXXu0mjfDGYEe literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/LightenDarken_l.png.import b/Assets/Graphics/Tools/LightenDarken_l.png.import new file mode 100644 index 000000000..9f8c3e3f5 --- /dev/null +++ b/Assets/Graphics/Tools/LightenDarken_l.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/LightenDarken_l.png-64e10f5f13a9aa0e4701376336f27a73.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/LightenDarken_l.png" +dest_files=[ "res://.import/LightenDarken_l.png-64e10f5f13a9aa0e4701376336f27a73.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Tools/LightenDarken_l_r.png b/Assets/Graphics/Tools/LightenDarken_l_r.png new file mode 100644 index 0000000000000000000000000000000000000000..c5729cf3867c90e6542820a143ebc4e315681414 GIT binary patch literal 881 zcmV-%1CIQOP)EX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+_CX>@2HM@dakSAh-}0003o-`OA?)MDSyG-C7`o-7hJxLy2eQ-)CH5 zZftiW>w{!c;?-vSxL&PKQ6MFrRhA;UnO9KF$4M{>7S?ivsSyIveTX-+!Uo`qw?Sz5 za_GKRAIbvB1$A9NuJb$>0qO*pT&8#N;v+CY8#-YCfTAd(K1Km?w$xqX+!C=jAy=FW z5#<77jHvbeuBatf&&k67G$N@oG!G>$oqlQ=NF_+k!n-4xya%`tq5pxWPDm|7TZeRA zk@QEDvJZS1V+td596Lwhtsz<#6hWI=0ho$ybPxfqK_%LIiBADEA^Cq^772C00000NkvXX Hu0mjfhxB$L literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/LightenDarken_l_r.png.import b/Assets/Graphics/Tools/LightenDarken_l_r.png.import new file mode 100644 index 000000000..5b2b6c1c6 --- /dev/null +++ b/Assets/Graphics/Tools/LightenDarken_l_r.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/LightenDarken_l_r.png-1c91a1473ff3907f1724acafa18c64d0.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/LightenDarken_l_r.png" +dest_files=[ "res://.import/LightenDarken_l_r.png-1c91a1473ff3907f1724acafa18c64d0.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Tools/LightenDarken_r.png b/Assets/Graphics/Tools/LightenDarken_r.png new file mode 100644 index 0000000000000000000000000000000000000000..eaf053fa9f1545b6a549ca0a6a85d594a67634f3 GIT binary patch literal 876 zcmV-y1C#uTP)EX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+&F#_v000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG55CSA&q{rw0000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0003)NklYz()+jWw0fpBV-WvqFM-U*B}59ifzhQ4D~Hy2&t~!%_9Z{+&>TsZlrC zV1p!F;@8Xm`+PdTqCk$S7vhrw5=RD6@fPw&R+X4VUnx>1uNT09~uc|8Oj17cIgY>N$8yE;D09Bj{5mg0R zYu3`UyQ1V=J;jCXG$O7vj1MKrZ9g^*s1(d~Vd_Xm?*S@=>pt*vA;G4>*C9=N4qeZZ zIhNXP*f3gaxZQU=htblh`Pl6w-eZSTR~d?!@rEX>4Tx04R}tkv&MmKp2MKrbs5OiS}bq^ok?_xa5yYA01s1!^F_(bA4rW+RV2Jy_M zrE}gV4zseP5T6r|8+1Y9N3P2*zi}=(Ebz>*kxkDNhl#~f7t3AD%7#ijO&n2Fjq-(@ z%L?Z$&T6&J+V|uy3>LJN4A*ImB7r3&k%9;rbyQG=g&6G`DJIf%9{2E%IQ|s5WO7x& z$gzMLR7j2={11Nj)+|mDYDGy0}HFmwy_uep6|pX2la$WpJCZ-9eC zV5~&h>mKj!>+ajXHSPZW05l$Qj=J7lV*mgE24YJ`L;x@VFaR)G(ALEO000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jdG51PTsm>5rNK000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}00039Nkl6IMO+`EI!J6k1RIGhT1QNj^Lc506=$!7b3a`$vFq-Ts5bqtKWkw5}WP? zZ+#OJAR<_6Pyf?W@DKt36cY11%L))tYIQD=!`THQd|8%4q6W`5B35{;+*+F?#Acuc z2XF{y5qJZCE$|lpN`M3YSbz)uNPrW5TYwvWOF#mCSwISYNk9^QDj*F%6o^NvB)lmQ zD<`6Kib=pP&p?#mh68}|-fy+)^N@g7J1|XCH+a#3bzM_p97j>`{zjzow}CMRA%s66 v&M?NL1`LfvbuBpq>VvnT$}gqri|6?dLEx8*PGzfh00000NkvXXu0mjfBDhiS literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/Pencil.png.import b/Assets/Graphics/Tools/Pencil.png.import new file mode 100644 index 000000000..cb740c12c --- /dev/null +++ b/Assets/Graphics/Tools/Pencil.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Pencil.png-4773a7bb0c8d739928689bb2cb1b3ac2.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/Pencil.png" +dest_files=[ "res://.import/Pencil.png-4773a7bb0c8d739928689bb2cb1b3ac2.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Tools/Pencil_l.png b/Assets/Graphics/Tools/Pencil_l.png new file mode 100644 index 0000000000000000000000000000000000000000..007ad282a685c028dc22414ac68b2672f3dd771f GIT binary patch literal 871 zcmV-t1DO1YP)EX>4Tx04R}tkv&MmKp2MKrbmEM7-$i+rcio?(U&)&c@QK88OgAjz4dR(i zOXs{#9A+g+AwDM_H|T=Ik6f2se&bwpSm2pqBa@mZ4ik&T4wgHZl?;`5nmD4U8s!UF zmle)ioYhK=weHDZ7|d%cX|B^6K^#j+APEsNYAB-u3sKrNQcR@iJm%pacKk_l$>b`7 zkz)Z>sE`~#_#gc4ty!3wbd!QHp!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A`$>Ae ztwoN2&^B;!-PYti;Bp5TdeS9BawI=3p-=$c&*+>U>u_$%`000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0003#Nkl9CV!;5`zAKr*EibmQyqZeT&EeF_VMbq~9> z;D|6?5xy~eB*M2KNhv`}IeEvav+sf@Bn;mQ?)ye2ptS}e#J~S>DtK9z001M2rfFye zwAQZFLx~|AUBJTIwjD`K!Fvx8Hr!?|gm4mMJ>Y`_z$_d^AO;>SP-S%#JW2oqzFGha zzDfWSzE}VozDR%q9xOlw4-%MzpKqt=M~uG{J}XdVHJooJQn**ZW?p4AT)!`5@ZcV> z64>z9Y<@ImD*Ivh;42oB`3e+85e!GKz~T4PUF3Nl1dgo$Q%bqb$O=3@envu=ktB)Z x_eL@c_MORkK2Ytj4%KI002ovPDHLkV1lJ8Z6W{w literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/Pencil_l.png.import b/Assets/Graphics/Tools/Pencil_l.png.import new file mode 100644 index 000000000..af9707238 --- /dev/null +++ b/Assets/Graphics/Tools/Pencil_l.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Pencil_l.png-f8ec98a3bc962b36c6f18db2218025e5.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/Pencil_l.png" +dest_files=[ "res://.import/Pencil_l.png-f8ec98a3bc962b36c6f18db2218025e5.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Assets/Graphics/Tools/Pencil_l_r.png b/Assets/Graphics/Tools/Pencil_l_r.png new file mode 100644 index 0000000000000000000000000000000000000000..90fff537258132f3d9c0f78a5abeef2c4c3a288a GIT binary patch literal 885 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 literal 0 HcmV?d00001 diff --git a/Assets/Graphics/Tools/RectSelect_r.png.import b/Assets/Graphics/Tools/RectSelect_r.png.import new file mode 100644 index 000000000..dbe56fad4 --- /dev/null +++ b/Assets/Graphics/Tools/RectSelect_r.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/RectSelect_r.png-e76dbc1255b176fd431a12910c93869f.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Tools/RectSelect_r.png" +dest_files=[ "res://.import/RectSelect_r.png-e76dbc1255b176fd431a12910c93869f.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Main.tscn b/Main.tscn index 4f0e291a3..932b0a3e0 100644 --- a/Main.tscn +++ b/Main.tscn @@ -1,133 +1,266 @@ -[gd_scene load_steps=10 format=2] +[gd_scene load_steps=39 format=2] [ext_resource path="res://Scripts/Main.gd" type="Script" id=1] -[ext_resource path="res://Assets/Graphics/left.png" type="Texture" id=2] -[ext_resource path="res://Assets/Graphics/right.png" type="Texture" id=3] -[ext_resource path="res://Prefabs/BrushButton.tscn" type="PackedScene" id=4] -[ext_resource path="res://Prefabs/Canvas.tscn" type="PackedScene" id=5] -[ext_resource path="res://Scripts/CameraMovement.gd" type="Script" id=6] -[ext_resource path="res://Scripts/SelectionRectangle.gd" type="Script" id=7] -[ext_resource path="res://Scripts/SecondViewport.gd" type="Script" id=8] -[ext_resource path="res://Scripts/AboutDialog.gd" type="Script" id=9] +[ext_resource path="res://Assets/Graphics/Tools/RectSelect.png" type="Texture" id=2] +[ext_resource path="res://Assets/Graphics/Tools/Pencil_l.png" type="Texture" id=3] +[ext_resource path="res://Assets/Graphics/Tools/Eraser_r.png" type="Texture" id=4] +[ext_resource path="res://Assets/Graphics/Tools/Bucket.png" type="Texture" id=5] +[ext_resource path="res://Assets/Graphics/Tools/LightenDarken.png" type="Texture" id=6] +[ext_resource path="res://Prefabs/BrushButton.tscn" type="PackedScene" id=7] +[ext_resource path="res://Assets/Graphics/left.png" type="Texture" id=8] +[ext_resource path="res://Assets/Graphics/right.png" type="Texture" id=9] +[ext_resource path="res://Scripts/HorizontalRuler.gd" type="Script" id=10] +[ext_resource path="res://Scripts/VerticalRuler.gd" type="Script" id=11] +[ext_resource path="res://Prefabs/Canvas.tscn" type="PackedScene" id=12] +[ext_resource path="res://Scripts/CameraMovement.gd" type="Script" id=13] +[ext_resource path="res://Scripts/SelectionRectangle.gd" type="Script" id=14] +[ext_resource path="res://Scripts/SecondViewport.gd" type="Script" id=15] +[ext_resource path="res://Assets/Graphics/Timeline/Go_To_First_Frame.png" type="Texture" id=16] +[ext_resource path="res://Assets/Graphics/Timeline/Previous_Frame.png" type="Texture" id=17] +[ext_resource path="res://Assets/Graphics/Timeline/Play Backwards.png" type="Texture" id=18] +[ext_resource path="res://Assets/Graphics/Timeline/Pause.png" type="Texture" id=19] +[ext_resource path="res://Assets/Graphics/Timeline/Play.png" type="Texture" id=20] +[ext_resource path="res://Assets/Graphics/Timeline/Next_Frame.png" type="Texture" id=21] +[ext_resource path="res://Assets/Graphics/Timeline/Go_To_Last_Frame.png" type="Texture" id=22] +[ext_resource path="res://Assets/Graphics/Timeline/Loop_None.png" type="Texture" id=23] +[ext_resource path="res://Assets/Graphics/Timeline/New_Frame.png" type="Texture" id=24] +[ext_resource path="res://Assets/Graphics/Layers/new_layer.png" type="Texture" id=25] +[ext_resource path="res://Assets/Graphics/Layers/delete_layer.png" type="Texture" id=26] +[ext_resource path="res://Assets/Graphics/Layers/delete_layer_disabled.png" type="Texture" id=27] +[ext_resource path="res://Assets/Graphics/Layers/move_up.png" type="Texture" id=28] +[ext_resource path="res://Assets/Graphics/Layers/move_up_disabled.png" type="Texture" id=29] +[ext_resource path="res://Assets/Graphics/Layers/move_down.png" type="Texture" id=30] +[ext_resource path="res://Assets/Graphics/Layers/move_down_disabled.png" type="Texture" id=31] +[ext_resource path="res://Assets/Graphics/Layers/clone_layer.png" type="Texture" id=32] +[ext_resource path="res://Assets/Graphics/Layers/merge_down.png" type="Texture" id=33] +[ext_resource path="res://Assets/Graphics/Layers/merge_down_disabled.png" type="Texture" id=34] +[ext_resource path="res://Scripts/AboutDialog.gd" type="Script" id=35] + +[sub_resource type="StyleBoxFlat" id=1] +bg_color = Color( 0.223529, 0.223529, 0.243137, 1 ) + +[sub_resource type="StyleBoxFlat" id=2] +bg_color = Color( 0.0862745, 0.0862745, 0.0862745, 1 ) + +[sub_resource type="StyleBoxFlat" id=3] +bg_color = Color( 0.0862745, 0.0862745, 0.0862745, 1 ) [node name="Control" type="Control"] anchor_right = 1.0 anchor_bottom = 1.0 +mouse_default_cursor_shape = 16 script = ExtResource( 1 ) +__meta__ = { +"_edit_horizontal_guides_": [ ], +"_edit_vertical_guides_": [ ] +} -[node name="UI" type="HBoxContainer" parent="."] +[node name="MenuAndUI" type="VBoxContainer" parent="."] editor/display_folded = true anchor_right = 1.0 anchor_bottom = 1.0 -size_flags_horizontal = 3 custom_constants/separation = 0 -[node name="ToolPanel" type="Panel" parent="UI"] -editor/display_folded = true -margin_right = 230.0 -margin_bottom = 600.0 -rect_min_size = Vector2( 230, 0 ) -size_flags_vertical = 3 +[node name="MenuContainer" type="Panel" parent="MenuAndUI"] +margin_right = 1152.0 +margin_bottom = 28.0 +rect_min_size = Vector2( 0, 28 ) +custom_styles/panel = SubResource( 1 ) -[node name="Tools" type="VBoxContainer" parent="UI/ToolPanel"] -editor/display_folded = true -anchor_right = 1.0 -anchor_bottom = 1.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 - -[node name="MenusAndTools" type="VBoxContainer" parent="UI/ToolPanel/Tools"] -editor/display_folded = true -margin_right = 230.0 -margin_bottom = 224.0 -size_flags_vertical = 3 - -[node name="MenuItems" type="HBoxContainer" parent="UI/ToolPanel/Tools/MenusAndTools"] -editor/display_folded = true -margin_right = 230.0 +[node name="MenuItems" type="HBoxContainer" parent="MenuAndUI/MenuContainer"] +margin_left = 2.0 +margin_top = 6.0 +margin_right = 1010.0 margin_bottom = 20.0 -[node name="FileMenu" type="MenuButton" parent="UI/ToolPanel/Tools/MenusAndTools/MenuItems"] +[node name="FileMenu" type="MenuButton" parent="MenuAndUI/MenuContainer/MenuItems"] margin_right = 35.0 margin_bottom = 20.0 mouse_default_cursor_shape = 2 text = "File" -[node name="EditMenu" type="MenuButton" parent="UI/ToolPanel/Tools/MenusAndTools/MenuItems"] +[node name="EditMenu" type="MenuButton" parent="MenuAndUI/MenuContainer/MenuItems"] margin_left = 39.0 margin_right = 75.0 margin_bottom = 20.0 mouse_default_cursor_shape = 2 text = "Edit" -[node name="ViewMenu" type="MenuButton" parent="UI/ToolPanel/Tools/MenusAndTools/MenuItems"] +[node name="ViewMenu" type="MenuButton" parent="MenuAndUI/MenuContainer/MenuItems"] margin_left = 79.0 margin_right = 121.0 margin_bottom = 20.0 mouse_default_cursor_shape = 2 text = "View" -[node name="HelpMenu" type="MenuButton" parent="UI/ToolPanel/Tools/MenusAndTools/MenuItems"] +[node name="HelpMenu" type="MenuButton" parent="MenuAndUI/MenuContainer/MenuItems"] margin_left = 125.0 margin_right = 167.0 margin_bottom = 20.0 mouse_default_cursor_shape = 2 text = "Help" -[node name="PaintToolsContainer" type="HBoxContainer" parent="UI/ToolPanel/Tools/MenusAndTools"] +[node name="HBoxContainer" type="HBoxContainer" parent="MenuAndUI/MenuContainer"] editor/display_folded = true -margin_top = 24.0 -margin_right = 230.0 -margin_bottom = 44.0 +anchor_left = 0.5 +anchor_right = 0.5 +anchor_bottom = 1.0 +margin_left = -65.5 +margin_right = 65.5 -[node name="Pencil" type="Button" parent="UI/ToolPanel/Tools/MenusAndTools/PaintToolsContainer"] -margin_right = 51.0 -margin_bottom = 20.0 +[node name="ZoomLevel" type="Label" parent="MenuAndUI/MenuContainer/HBoxContainer"] +margin_top = 7.0 +margin_right = 80.0 +margin_bottom = 21.0 +text = "Zoom: x7.81" + +[node name="CursorPosition" type="Label" parent="MenuAndUI/MenuContainer/HBoxContainer"] +margin_left = 84.0 +margin_top = 7.0 +margin_right = 131.0 +margin_bottom = 21.0 +text = "[64x64]" +align = 2 + +[node name="UI" type="HBoxContainer" parent="MenuAndUI"] +editor/display_folded = true +margin_top = 28.0 +margin_right = 1152.0 +margin_bottom = 648.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 +custom_constants/separation = 0 + +[node name="ToolPanel" type="Panel" parent="MenuAndUI/UI"] +margin_right = 242.0 +margin_bottom = 620.0 +rect_min_size = Vector2( 242, 0 ) +size_flags_vertical = 3 + +[node name="Tools" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel"] +editor/display_folded = true +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_left = 8.0 +margin_top = 8.0 +margin_right = -8.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 + +[node name="MenusAndTools" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools"] +margin_right = 226.0 +margin_bottom = 230.0 +size_flags_vertical = 3 +custom_constants/separation = 17 + +[node name="SelectionTools" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools"] +margin_right = 226.0 +margin_bottom = 54.0 + +[node name="VBoxContainer" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/SelectionTools"] +margin_right = 226.0 +margin_bottom = 18.0 +custom_constants/separation = 0 + +[node name="SelectionTools" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/SelectionTools/VBoxContainer"] +margin_right = 226.0 +margin_bottom = 14.0 +text = "Selection Tools" + +[node name="HSeparator6" type="HSeparator" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/SelectionTools/VBoxContainer"] +margin_top = 14.0 +margin_right = 226.0 +margin_bottom = 18.0 + +[node name="SelectionToolsContainer2" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/SelectionTools"] +margin_top = 22.0 +margin_right = 226.0 +margin_bottom = 54.0 + +[node name="RectSelect" type="TextureButton" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/SelectionTools/SelectionToolsContainer2"] +margin_right = 32.0 +margin_bottom = 32.0 +hint_tooltip = "R for left mouse button +Alt + R for right mouse button +Press Shift to move the content" +mouse_default_cursor_shape = 2 +button_mask = 3 +texture_normal = ExtResource( 2 ) + +[node name="DrawTools" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools"] +margin_top = 71.0 +margin_right = 226.0 +margin_bottom = 125.0 + +[node name="VBoxContainer" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/DrawTools"] +margin_right = 226.0 +margin_bottom = 18.0 +custom_constants/separation = 0 + +[node name="DrawTools" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/DrawTools/VBoxContainer"] +margin_right = 226.0 +margin_bottom = 14.0 +text = "Draw Tools" + +[node name="HSeparator5" type="HSeparator" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/DrawTools/VBoxContainer"] +margin_top = 14.0 +margin_right = 226.0 +margin_bottom = 18.0 + +[node name="PaintToolsContainer" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/DrawTools"] +margin_top = 22.0 +margin_right = 226.0 +margin_bottom = 54.0 + +[node name="Pencil" type="TextureButton" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/DrawTools/PaintToolsContainer"] +margin_right = 32.0 +margin_bottom = 32.0 hint_tooltip = "P for left mouse button Alt + P for right mouse button Hold Shift to make a line" mouse_default_cursor_shape = 2 button_mask = 3 -text = "Pencil" +texture_normal = ExtResource( 3 ) -[node name="LeftIndicator" type="Sprite" parent="UI/ToolPanel/Tools/MenusAndTools/PaintToolsContainer/Pencil"] -texture = ExtResource( 2 ) -centered = false -offset = Vector2( 0, -10 ) - -[node name="Eraser" type="Button" parent="UI/ToolPanel/Tools/MenusAndTools/PaintToolsContainer"] -margin_left = 55.0 -margin_right = 106.0 -margin_bottom = 20.0 +[node name="Eraser" type="TextureButton" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/DrawTools/PaintToolsContainer"] +margin_left = 36.0 +margin_right = 68.0 +margin_bottom = 32.0 hint_tooltip = "E for left mouse button Alt + E for right mouse button Hold Shift to make a line" mouse_default_cursor_shape = 2 button_mask = 3 -text = "Eraser" +texture_normal = ExtResource( 4 ) -[node name="RightIndicator" type="Sprite" parent="UI/ToolPanel/Tools/MenusAndTools/PaintToolsContainer/Eraser"] -texture = ExtResource( 3 ) -centered = false -offset = Vector2( 35, -10 ) - -[node name="Fill" type="Button" parent="UI/ToolPanel/Tools/MenusAndTools/PaintToolsContainer"] -margin_left = 110.0 -margin_right = 166.0 -margin_bottom = 20.0 +[node name="Bucket" type="TextureButton" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/DrawTools/PaintToolsContainer"] +margin_left = 72.0 +margin_right = 104.0 +margin_bottom = 32.0 hint_tooltip = "B for left mouse button Alt + B for right mouse button" mouse_default_cursor_shape = 2 button_mask = 3 -text = "Bucket" +texture_normal = ExtResource( 5 ) -[node name="ColorToolsContainer" type="HBoxContainer" parent="UI/ToolPanel/Tools/MenusAndTools"] -editor/display_folded = true -margin_top = 48.0 -margin_right = 230.0 -margin_bottom = 68.0 +[node name="LightenDarken" type="TextureButton" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/DrawTools/PaintToolsContainer"] +margin_left = 108.0 +margin_right = 140.0 +margin_bottom = 32.0 +hint_tooltip = "U for left mouse button +Alt + U for right mouse button +Ctrl to Darken" +mouse_default_cursor_shape = 2 +button_mask = 3 +texture_normal = ExtResource( 6 ) -[node name="PaintAllPixelsSameColor" type="Button" parent="UI/ToolPanel/Tools/MenusAndTools/ColorToolsContainer"] +[node name="ColorToolsContainer" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools"] +visible = false +margin_top = 142.0 +margin_right = 226.0 +margin_bottom = 162.0 + +[node name="PaintAllPixelsSameColor" type="Button" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools/ColorToolsContainer"] margin_right = 112.0 margin_bottom = 20.0 hint_tooltip = "Paint all pixels of the same color @@ -137,65 +270,39 @@ mouse_default_cursor_shape = 2 button_mask = 3 text = "PaintSameColor" -[node name="LightenDarken" type="Button" parent="UI/ToolPanel/Tools/MenusAndTools/ColorToolsContainer"] -margin_left = 116.0 -margin_right = 225.0 -margin_bottom = 20.0 -hint_tooltip = "U for left mouse button -Alt + U for right mouse button -Ctrl to Darken" -mouse_default_cursor_shape = 2 -button_mask = 3 -text = "Lighten/Darken" +[node name="HSeparator" type="HSeparator" parent="MenuAndUI/UI/ToolPanel/Tools"] +margin_top = 234.0 +margin_right = 226.0 +margin_bottom = 238.0 -[node name="SelectionToolsContainer2" type="HBoxContainer" parent="UI/ToolPanel/Tools/MenusAndTools"] -margin_top = 72.0 -margin_right = 230.0 -margin_bottom = 92.0 - -[node name="RectSelect" type="Button" parent="UI/ToolPanel/Tools/MenusAndTools/SelectionToolsContainer2"] -margin_right = 79.0 -margin_bottom = 20.0 -hint_tooltip = "R for left mouse button -Alt + R for right mouse button -Press Shift to move the content" -mouse_default_cursor_shape = 2 -button_mask = 3 -text = "RectSelect" - -[node name="HSeparator" type="HSeparator" parent="UI/ToolPanel/Tools"] -margin_top = 228.0 -margin_right = 230.0 -margin_bottom = 232.0 - -[node name="ToolOptions" type="HBoxContainer" parent="UI/ToolPanel/Tools"] +[node name="ToolOptions" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools"] editor/display_folded = true -margin_top = 236.0 -margin_right = 230.0 -margin_bottom = 460.0 +margin_top = 242.0 +margin_right = 226.0 +margin_bottom = 472.0 size_flags_vertical = 3 custom_constants/separation = 0 -[node name="LeftToolOptions" type="VBoxContainer" parent="UI/ToolPanel/Tools/ToolOptions"] -margin_right = 113.0 -margin_bottom = 224.0 +[node name="LeftToolOptions" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions"] +margin_right = 109.0 +margin_bottom = 230.0 size_flags_horizontal = 3 -[node name="LeftLabel" type="Label" parent="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] -margin_right = 113.0 +[node name="LeftLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] +margin_right = 109.0 margin_bottom = 14.0 text = "Left tool options" -[node name="LeftIndicatorCheckbox" type="CheckBox" parent="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] +[node name="LeftIndicatorCheckbox" type="CheckBox" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] margin_top = 18.0 -margin_right = 113.0 +margin_right = 109.0 margin_bottom = 42.0 hint_tooltip = "Show left mouse indicator when drawing" mouse_default_cursor_shape = 2 pressed = true text = "Left cursor" -[node name="LeftColorPickerButton" type="ColorPickerButton" parent="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] +[node name="LeftColorPickerButton" type="ColorPickerButton" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] margin_top = 46.0 margin_right = 36.0 margin_bottom = 78.0 @@ -205,90 +312,91 @@ mouse_default_cursor_shape = 2 size_flags_horizontal = 0 size_flags_vertical = 0 -[node name="BrushSizeLabel" type="Label" parent="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] +[node name="BrushSizeLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] margin_top = 82.0 -margin_right = 113.0 +margin_right = 109.0 margin_bottom = 96.0 text = "Brush size: " -[node name="LeftBrushSizeEdit" type="SpinBox" parent="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] +[node name="LeftBrushSizeEdit" type="SpinBox" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] margin_top = 100.0 -margin_right = 113.0 +margin_right = 109.0 margin_bottom = 124.0 mouse_default_cursor_shape = 2 min_value = 1.0 value = 1.0 suffix = "px" -[node name="ColorComesFrom" type="Label" parent="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] +[node name="ColorComesFrom" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] margin_top = 128.0 -margin_right = 113.0 +margin_right = 109.0 margin_bottom = 142.0 text = "Brush color from" -[node name="InterpolateColor" type="HBoxContainer" parent="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] -editor/display_folded = true +[node name="InterpolateColor" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] margin_top = 146.0 -margin_right = 113.0 +margin_right = 109.0 margin_bottom = 162.0 -[node name="BrushColorLabel" type="Label" parent="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/InterpolateColor"] +[node name="BrushColorLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/InterpolateColor"] margin_top = 1.0 margin_right = 9.0 margin_bottom = 15.0 rect_pivot_offset = Vector2( -90, -47 ) text = "B" -[node name="LeftInterpolateFactor" type="HSlider" parent="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/InterpolateColor"] +[node name="LeftInterpolateFactor" type="HSlider" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/InterpolateColor"] margin_left = 13.0 -margin_right = 101.0 +margin_right = 97.0 margin_bottom = 16.0 hint_tooltip = "Choose if the brush's color should come from the brush itself (left), or the currently selected color (right)" size_flags_horizontal = 3 max_value = 1.0 step = 0.01 -value = 0.5 +value = 1.0 ticks_on_borders = true -[node name="SelectedColorLabel" type="Label" parent="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/InterpolateColor"] -margin_left = 105.0 +[node name="SelectedColorLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/InterpolateColor"] +margin_left = 101.0 margin_top = 1.0 -margin_right = 113.0 +margin_right = 109.0 margin_bottom = 15.0 rect_pivot_offset = Vector2( -90, -47 ) text = "C" -[node name="LeftHorizontalMirroring" type="CheckBox" parent="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] +[node name="LeftHorizontalMirroring" type="CheckBox" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] margin_top = 166.0 -margin_right = 113.0 +margin_right = 109.0 margin_bottom = 190.0 hint_tooltip = "Enable horizontal mirrored drawing for the left tool" +mouse_default_cursor_shape = 2 text = "Horiz. Mirror" -[node name="LeftVerticalMirroring" type="CheckBox" parent="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] +[node name="LeftVerticalMirroring" type="CheckBox" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions"] margin_top = 194.0 -margin_right = 113.0 +margin_right = 109.0 margin_bottom = 218.0 hint_tooltip = "Enable vertical mirrored drawing for the left tool" +mouse_default_cursor_shape = 2 text = "Vert. Mirror" -[node name="VSeparator" type="VSeparator" parent="UI/ToolPanel/Tools/ToolOptions"] -margin_left = 113.0 -margin_right = 117.0 -margin_bottom = 224.0 +[node name="VSeparator" type="VSeparator" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions"] +margin_left = 109.0 +margin_right = 113.0 +margin_bottom = 230.0 -[node name="RightToolOptions" type="VBoxContainer" parent="UI/ToolPanel/Tools/ToolOptions"] -margin_left = 117.0 -margin_right = 230.0 -margin_bottom = 224.0 +[node name="RightToolOptions" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions"] +margin_left = 113.0 +margin_right = 226.0 +margin_bottom = 230.0 size_flags_horizontal = 3 -[node name="RightLabel" type="Label" parent="UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] +[node name="RightLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] margin_right = 113.0 margin_bottom = 14.0 text = "Right tool options" -[node name="RightIndicatorCheckbox" type="CheckBox" parent="UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] +[node name="RightIndicatorCheckbox" type="CheckBox" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] margin_top = 18.0 margin_right = 113.0 margin_bottom = 42.0 @@ -296,7 +404,7 @@ hint_tooltip = "Show right mouse indicator when drawing" mouse_default_cursor_shape = 2 text = "Right cursor" -[node name="RightColorPickerButton" type="ColorPickerButton" parent="UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] +[node name="RightColorPickerButton" type="ColorPickerButton" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] margin_top = 46.0 margin_right = 36.0 margin_bottom = 78.0 @@ -306,13 +414,13 @@ mouse_default_cursor_shape = 2 size_flags_horizontal = 0 size_flags_vertical = 0 -[node name="BrushSizeLabel" type="Label" parent="UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] +[node name="BrushSizeLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] margin_top = 82.0 margin_right = 113.0 margin_bottom = 96.0 text = "Brush size: " -[node name="RightBrushSizeEdit" type="SpinBox" parent="UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] +[node name="RightBrushSizeEdit" type="SpinBox" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] margin_top = 100.0 margin_right = 113.0 margin_bottom = 124.0 @@ -321,26 +429,25 @@ min_value = 1.0 value = 1.0 suffix = "px" -[node name="ColorComesFrom" type="Label" parent="UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] +[node name="ColorComesFrom" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] margin_top = 128.0 margin_right = 113.0 margin_bottom = 142.0 text = "Brush color from" -[node name="InterpolateColor" type="HBoxContainer" parent="UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] -editor/display_folded = true +[node name="InterpolateColor" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] margin_top = 146.0 margin_right = 113.0 margin_bottom = 162.0 -[node name="BrushColorLabel" type="Label" parent="UI/ToolPanel/Tools/ToolOptions/RightToolOptions/InterpolateColor"] +[node name="BrushColorLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions/InterpolateColor"] margin_top = 1.0 margin_right = 9.0 margin_bottom = 15.0 rect_pivot_offset = Vector2( -90, -47 ) text = "B" -[node name="RightInterpolateFactor" type="HSlider" parent="UI/ToolPanel/Tools/ToolOptions/RightToolOptions/InterpolateColor"] +[node name="RightInterpolateFactor" type="HSlider" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions/InterpolateColor"] margin_left = 13.0 margin_right = 101.0 margin_bottom = 16.0 @@ -348,10 +455,10 @@ hint_tooltip = "Choose if the brush's color should come from the brush itself (l size_flags_horizontal = 3 max_value = 1.0 step = 0.01 -value = 0.5 +value = 1.0 ticks_on_borders = true -[node name="SelectedColorLabel" type="Label" parent="UI/ToolPanel/Tools/ToolOptions/RightToolOptions/InterpolateColor"] +[node name="SelectedColorLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions/InterpolateColor"] margin_left = 105.0 margin_top = 1.0 margin_right = 113.0 @@ -359,459 +466,513 @@ margin_bottom = 15.0 rect_pivot_offset = Vector2( -90, -47 ) text = "C" -[node name="RightHorizontalMirroring" type="CheckBox" parent="UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] +[node name="RightHorizontalMirroring" type="CheckBox" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] margin_top = 166.0 margin_right = 113.0 margin_bottom = 190.0 hint_tooltip = "Enable horizontal mirrored drawing for the right tool" +mouse_default_cursor_shape = 2 text = "Horiz. Mirror" -[node name="RightVerticalMirroring" type="CheckBox" parent="UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] +[node name="RightVerticalMirroring" type="CheckBox" parent="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions"] margin_top = 194.0 margin_right = 113.0 margin_bottom = 218.0 hint_tooltip = "Enable vertical mirrored drawing for the right tool" +mouse_default_cursor_shape = 2 text = "Vert. Mirror" -[node name="HSeparator2" type="HSeparator" parent="UI/ToolPanel/Tools"] -margin_top = 464.0 -margin_right = 230.0 -margin_bottom = 468.0 +[node name="HSeparator2" type="HSeparator" parent="MenuAndUI/UI/ToolPanel/Tools"] +margin_top = 476.0 +margin_right = 226.0 +margin_bottom = 480.0 -[node name="FileBrushes" type="Label" parent="UI/ToolPanel/Tools"] -margin_top = 472.0 -margin_right = 230.0 -margin_bottom = 486.0 +[node name="FileBrushes" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools"] +margin_top = 484.0 +margin_right = 226.0 +margin_bottom = 498.0 text = "Brushes From Files" -[node name="BrushesContainer" type="ScrollContainer" parent="UI/ToolPanel/Tools"] -margin_top = 490.0 -margin_right = 230.0 -margin_bottom = 526.0 +[node name="BrushesContainer" type="ScrollContainer" parent="MenuAndUI/UI/ToolPanel/Tools"] +margin_top = 502.0 +margin_right = 226.0 +margin_bottom = 538.0 size_flags_horizontal = 3 scroll_vertical_enabled = false -[node name="BrushHBoxContainer" type="HBoxContainer" parent="UI/ToolPanel/Tools/BrushesContainer"] +[node name="BrushHBoxContainer" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/BrushesContainer"] editor/display_folded = true margin_right = 36.0 margin_bottom = 36.0 -[node name="PixelBrushButton" parent="UI/ToolPanel/Tools/BrushesContainer/BrushHBoxContainer" instance=ExtResource( 4 )] +[node name="PixelBrushButton" parent="MenuAndUI/UI/ToolPanel/Tools/BrushesContainer/BrushHBoxContainer" instance=ExtResource( 7 )] hint_tooltip = "Pixel brush" -[node name="LeftBrushIndicator" type="Sprite" parent="UI/ToolPanel/Tools/BrushesContainer/BrushHBoxContainer/PixelBrushButton"] +[node name="LeftBrushIndicator" type="Sprite" parent="MenuAndUI/UI/ToolPanel/Tools/BrushesContainer/BrushHBoxContainer/PixelBrushButton"] scale = Vector2( 0.8, 0.8 ) -texture = ExtResource( 2 ) +texture = ExtResource( 8 ) centered = false -[node name="RightBrushIndicator" type="Sprite" parent="UI/ToolPanel/Tools/BrushesContainer/BrushHBoxContainer/PixelBrushButton"] +[node name="RightBrushIndicator" type="Sprite" parent="MenuAndUI/UI/ToolPanel/Tools/BrushesContainer/BrushHBoxContainer/PixelBrushButton"] scale = Vector2( 0.8, 0.8 ) -texture = ExtResource( 3 ) +texture = ExtResource( 9 ) centered = false offset = Vector2( 28, 0 ) -[node name="HSeparator3" type="HSeparator" parent="UI/ToolPanel/Tools"] -margin_top = 530.0 -margin_right = 230.0 -margin_bottom = 534.0 +[node name="HSeparator3" type="HSeparator" parent="MenuAndUI/UI/ToolPanel/Tools"] +margin_top = 542.0 +margin_right = 226.0 +margin_bottom = 546.0 -[node name="ProjectBrushes" type="Label" parent="UI/ToolPanel/Tools"] -margin_top = 538.0 -margin_right = 230.0 -margin_bottom = 552.0 +[node name="ProjectBrushes" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools"] +margin_top = 550.0 +margin_right = 226.0 +margin_bottom = 564.0 text = "Custom Project Brushes" -[node name="CustomBrushesContainer" type="ScrollContainer" parent="UI/ToolPanel/Tools"] -margin_top = 556.0 -margin_right = 230.0 -margin_bottom = 592.0 +[node name="CustomBrushesContainer" type="ScrollContainer" parent="MenuAndUI/UI/ToolPanel/Tools"] +margin_top = 568.0 +margin_right = 226.0 +margin_bottom = 604.0 rect_min_size = Vector2( 0, 36 ) size_flags_horizontal = 3 scroll_vertical_enabled = false -[node name="CustomBrushHBoxContainer" type="HBoxContainer" parent="UI/ToolPanel/Tools/CustomBrushesContainer"] +[node name="CustomBrushHBoxContainer" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/CustomBrushesContainer"] -[node name="HSeparator4" type="HSeparator" parent="UI/ToolPanel/Tools"] -margin_top = 596.0 -margin_right = 230.0 -margin_bottom = 600.0 +[node name="HSeparator4" type="HSeparator" parent="MenuAndUI/UI/ToolPanel/Tools"] +margin_top = 608.0 +margin_right = 226.0 +margin_bottom = 612.0 -[node name="CanvasAndTimeline" type="VBoxContainer" parent="UI"] +[node name="CanvasAndTimeline" type="VBoxContainer" parent="MenuAndUI/UI"] editor/display_folded = true -margin_left = 230.0 -margin_right = 864.0 -margin_bottom = 600.0 +margin_left = 242.0 +margin_right = 928.0 +margin_bottom = 620.0 size_flags_horizontal = 3 +custom_constants/separation = 0 -[node name="HViewportContainer" type="HBoxContainer" parent="UI/CanvasAndTimeline"] -margin_right = 634.0 -margin_bottom = 464.0 +[node name="HViewportContainer" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline"] +margin_right = 686.0 +margin_bottom = 478.0 size_flags_horizontal = 3 size_flags_vertical = 3 -[node name="ViewportContainer" type="ViewportContainer" parent="UI/CanvasAndTimeline/HViewportContainer"] -margin_right = 634.0 -margin_bottom = 464.0 -mouse_default_cursor_shape = 3 +[node name="ViewportAndRulers" type="VBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer"] +margin_right = 686.0 +margin_bottom = 478.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 +custom_constants/separation = 0 + +[node name="HorizontalRuler" type="Panel" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers"] +margin_right = 686.0 +margin_bottom = 16.0 +rect_min_size = Vector2( 0, 16 ) +custom_styles/panel = SubResource( 2 ) +script = ExtResource( 10 ) + +[node name="ViewportandVerticalRuler" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers"] +margin_top = 16.0 +margin_right = 686.0 +margin_bottom = 478.0 +size_flags_vertical = 3 +custom_constants/separation = 0 + +[node name="VerticalRuler" type="Panel" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/ViewportandVerticalRuler"] +margin_right = 16.0 +margin_bottom = 462.0 +rect_min_size = Vector2( 16, 0 ) +size_flags_horizontal = 0 +size_flags_vertical = 3 +custom_styles/panel = SubResource( 3 ) +script = ExtResource( 11 ) + +[node name="ViewportContainer" type="ViewportContainer" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/ViewportandVerticalRuler"] +margin_left = 16.0 +margin_right = 686.0 +margin_bottom = 462.0 size_flags_horizontal = 3 size_flags_vertical = 3 stretch = true -[node name="Viewport" type="Viewport" parent="UI/CanvasAndTimeline/HViewportContainer/ViewportContainer"] -size = Vector2( 634, 464 ) +[node name="Viewport" type="Viewport" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/ViewportandVerticalRuler/ViewportContainer"] +size = Vector2( 670, 462 ) handle_input_locally = false render_target_update_mode = 3 -[node name="Canvas" parent="UI/CanvasAndTimeline/HViewportContainer/ViewportContainer/Viewport" instance=ExtResource( 5 )] +[node name="Canvas" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/ViewportandVerticalRuler/ViewportContainer/Viewport" instance=ExtResource( 12 )] -[node name="Camera2D" type="Camera2D" parent="UI/CanvasAndTimeline/HViewportContainer/ViewportContainer/Viewport"] +[node name="Camera2D" type="Camera2D" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/ViewportandVerticalRuler/ViewportContainer/Viewport"] current = true zoom = Vector2( 0.15, 0.15 ) -script = ExtResource( 6 ) +script = ExtResource( 13 ) -[node name="SelectionRectangle" type="Polygon2D" parent="UI/CanvasAndTimeline/HViewportContainer/ViewportContainer/Viewport"] +[node name="SelectionRectangle" type="Polygon2D" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/ViewportandVerticalRuler/ViewportContainer/Viewport"] z_index = 1 color = Color( 0.0823529, 0.694118, 0.623529, 0.592157 ) polygon = PoolVector2Array( 0, 0, 0, 0, 0, 0, 0, 0 ) -script = ExtResource( 7 ) +script = ExtResource( 14 ) -[node name="ViewportSeparator" type="VSeparator" parent="UI/CanvasAndTimeline/HViewportContainer"] +[node name="ViewportSeparator" type="VSeparator" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer"] visible = false margin_left = 315.0 margin_right = 319.0 margin_bottom = 464.0 -[node name="ViewportContainer2" type="ViewportContainer" parent="UI/CanvasAndTimeline/HViewportContainer"] +[node name="ViewportContainer2" type="ViewportContainer" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer"] editor/display_folded = true visible = false margin_left = 319.0 margin_right = 634.0 margin_bottom = 464.0 -mouse_default_cursor_shape = 3 size_flags_horizontal = 3 size_flags_vertical = 3 stretch = true -[node name="Viewport" type="Viewport" parent="UI/CanvasAndTimeline/HViewportContainer/ViewportContainer2"] +[node name="Viewport" type="Viewport" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportContainer2"] size = Vector2( 315, 464 ) handle_input_locally = false render_target_update_mode = 0 -script = ExtResource( 8 ) +script = ExtResource( 15 ) -[node name="Camera2D2" type="Camera2D" parent="UI/CanvasAndTimeline/HViewportContainer/ViewportContainer2/Viewport"] +[node name="Camera2D2" type="Camera2D" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportContainer2/Viewport"] current = true zoom = Vector2( 0.15, 0.15 ) -script = ExtResource( 6 ) +script = ExtResource( 13 ) -[node name="AnimationTimeline" type="Panel" parent="UI/CanvasAndTimeline"] +[node name="AnimationTimeline" type="Panel" parent="MenuAndUI/UI/CanvasAndTimeline"] editor/display_folded = true -margin_top = 468.0 -margin_right = 634.0 -margin_bottom = 600.0 -rect_min_size = Vector2( 0, 132 ) +margin_top = 478.0 +margin_right = 686.0 +margin_bottom = 620.0 +rect_min_size = Vector2( 0, 142 ) size_flags_horizontal = 3 -[node name="TimelineContainer" type="VBoxContainer" parent="UI/CanvasAndTimeline/AnimationTimeline"] +[node name="VSeparator" type="VSeparator" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline"] +anchor_top = 0.5 +anchor_bottom = 0.5 +margin_top = -71.0 +margin_right = 4.0 +margin_bottom = 71.0 + +[node name="AnimationContainer" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline"] +editor/display_folded = true anchor_right = 1.0 anchor_bottom = 1.0 +margin_left = 15.0 +margin_top = 4.0 + +[node name="TimelineContainer" type="VBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer"] +margin_right = 525.0 +margin_bottom = 138.0 size_flags_horizontal = 3 -[node name="ButtonContainer" type="CenterContainer" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer"] -margin_right = 634.0 +[node name="AnimationButtons" type="Control" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer"] +margin_right = 525.0 margin_bottom = 24.0 +rect_min_size = Vector2( 0, 24 ) -[node name="AnimationButtons" type="HBoxContainer" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/ButtonContainer"] -margin_left = 139.0 -margin_right = 495.0 -margin_bottom = 24.0 +[node name="CurrentFrame" type="Label" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons"] +anchor_top = 0.5 +anchor_bottom = 0.5 +margin_top = -7.0 +margin_right = 224.0 +margin_bottom = 7.0 +text = "Current frame: 1/1" -[node name="LoopLabel" type="Label" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/ButtonContainer/AnimationButtons"] -margin_top = 5.0 -margin_right = 35.0 -margin_bottom = 19.0 -text = "Loop:" +[node name="PlaybackButtons" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons"] +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +margin_left = -70.0 +margin_top = -10.0 +margin_right = 70.0 +margin_bottom = 10.0 +size_flags_horizontal = 0 -[node name="LoopAnim" type="Button" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/ButtonContainer/AnimationButtons"] -margin_left = 39.0 -margin_right = 69.0 -margin_bottom = 24.0 -hint_tooltip = "No: Animation doesn't loop -Cycle: Animation plays again when it reaches the last frame -Ping-pong: Animation plays again but backwards when it reaches the last frame" +[node name="FirstFrame" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons"] +margin_right = 20.0 +margin_bottom = 20.0 mouse_default_cursor_shape = 2 -text = "No" +texture_normal = ExtResource( 16 ) -[node name="PlayBackwards" type="Button" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/ButtonContainer/AnimationButtons"] -margin_left = 73.0 -margin_right = 182.0 -margin_bottom = 24.0 +[node name="PreviousFrame" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons"] +margin_left = 24.0 +margin_right = 44.0 +margin_bottom = 20.0 +mouse_default_cursor_shape = 2 +texture_normal = ExtResource( 17 ) + +[node name="PlayBackwards" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons"] +margin_left = 48.0 +margin_right = 68.0 +margin_bottom = 20.0 hint_tooltip = "Play the animation backwards (from end to beggining)" mouse_default_cursor_shape = 2 toggle_mode = true -text = "Play Backwards" +texture_normal = ExtResource( 18 ) +texture_pressed = ExtResource( 19 ) -[node name="PlayForward" type="Button" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/ButtonContainer/AnimationButtons"] -margin_left = 186.0 -margin_right = 278.0 -margin_bottom = 24.0 +[node name="PlayForward" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons"] +margin_left = 72.0 +margin_right = 92.0 +margin_bottom = 20.0 hint_tooltip = "Play the animation forward (from beggining to end)" mouse_default_cursor_shape = 2 size_flags_horizontal = 0 toggle_mode = true -text = "Play Forward" +texture_normal = ExtResource( 20 ) +texture_pressed = ExtResource( 19 ) -[node name="FPSValue" type="SpinBox" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/ButtonContainer/AnimationButtons"] -margin_left = 282.0 -margin_right = 356.0 +[node name="NextFrame" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons"] +margin_left = 96.0 +margin_right = 116.0 +margin_bottom = 20.0 +mouse_default_cursor_shape = 2 +texture_normal = ExtResource( 21 ) + +[node name="LastFrame" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons"] +margin_left = 120.0 +margin_right = 140.0 +margin_bottom = 20.0 +mouse_default_cursor_shape = 2 +texture_normal = ExtResource( 22 ) + +[node name="LoopButtons" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons"] +anchor_left = 1.0 +anchor_top = 0.5 +anchor_right = 1.0 +anchor_bottom = 0.5 +margin_left = -98.0 +margin_top = -11.0 +margin_bottom = 12.0 +size_flags_horizontal = 8 + +[node name="FPSValue" type="SpinBox" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/LoopButtons"] +margin_right = 74.0 margin_bottom = 24.0 hint_tooltip = "How many frames per second should the animation preview be? The more FPS, the faster the animation plays." mouse_default_cursor_shape = 2 min_value = 0.1 step = 0.1 -value = 1.0 +value = 6.0 suffix = "FPS" -[node name="HSeparator" type="HSeparator" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer"] +[node name="LoopAnim" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/LoopButtons"] +margin_left = 78.0 +margin_right = 98.0 +margin_bottom = 24.0 +hint_tooltip = "No: Animation doesn't loop +Cycle: Animation plays again when it reaches the last frame +Ping-pong: Animation plays again but backwards when it reaches the last frame" +mouse_default_cursor_shape = 2 +texture_normal = ExtResource( 23 ) + +[node name="HSeparator" type="HSeparator" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer"] margin_top = 28.0 -margin_right = 634.0 +margin_right = 525.0 margin_bottom = 32.0 -[node name="CenterContainer" type="CenterContainer" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer"] -editor/display_folded = true +[node name="CenterContainer" type="CenterContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer"] margin_top = 36.0 -margin_right = 634.0 -margin_bottom = 56.0 +margin_right = 525.0 +margin_bottom = 36.0 -[node name="FrameButtons" type="HBoxContainer" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/CenterContainer"] -margin_left = 258.0 -margin_right = 375.0 -margin_bottom = 20.0 +[node name="FrameButtons" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/CenterContainer"] +margin_left = 262.0 +margin_right = 262.0 -[node name="AddFrame" type="Button" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/CenterContainer/FrameButtons"] -margin_right = 20.0 -margin_bottom = 20.0 -hint_tooltip = "Add a new frame" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 0 -text = "+" +[node name="HSeparator2" type="HSeparator" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer"] +margin_top = 40.0 +margin_right = 525.0 +margin_bottom = 44.0 -[node name="RemoveFrame" type="Button" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/CenterContainer/FrameButtons"] -margin_left = 24.0 -margin_right = 41.0 -margin_bottom = 20.0 -hint_tooltip = "Remove selected frame" -mouse_default_cursor_shape = 8 -disabled = true -text = "-" - -[node name="MoveFrameLeft" type="Button" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/CenterContainer/FrameButtons"] -margin_left = 45.0 -margin_right = 65.0 -margin_bottom = 20.0 -hint_tooltip = "Move selected frame to the left" -mouse_default_cursor_shape = 8 -disabled = true -text = "<" - -[node name="MoveFrameRight" type="Button" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/CenterContainer/FrameButtons"] -margin_left = 69.0 -margin_right = 89.0 -margin_bottom = 20.0 -hint_tooltip = "Move selected frame to the right" -mouse_default_cursor_shape = 8 -disabled = true -text = ">" - -[node name="CloneFrame" type="Button" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/CenterContainer/FrameButtons"] -margin_left = 93.0 -margin_right = 117.0 -margin_bottom = 20.0 -hint_tooltip = "Clone current frame" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 0 -text = "Cl" - -[node name="HSeparator2" type="HSeparator" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer"] -margin_top = 60.0 -margin_right = 634.0 -margin_bottom = 64.0 - -[node name="ScrollContainer" type="ScrollContainer" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer"] -margin_top = 68.0 -margin_right = 634.0 -margin_bottom = 132.0 +[node name="ScrollContainer" type="ScrollContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer"] +margin_top = 48.0 +margin_right = 525.0 +margin_bottom = 138.0 size_flags_horizontal = 3 size_flags_vertical = 3 scroll_vertical_enabled = false -[node name="FrameContainer" type="HBoxContainer" parent="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/ScrollContainer"] +[node name="FrameAndButtonContainer" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/ScrollContainer"] +margin_right = 40.0 +margin_bottom = 36.0 -[node name="LayerPanel" type="Panel" parent="UI"] +[node name="AddFrame" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/ScrollContainer/FrameAndButtonContainer"] +margin_right = 36.0 +margin_bottom = 36.0 +hint_tooltip = "Add a new frame" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 0 +texture_normal = ExtResource( 24 ) + +[node name="FrameContainer" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/ScrollContainer/FrameAndButtonContainer"] +margin_left = 40.0 +margin_right = 40.0 +margin_bottom = 36.0 + +[node name="VSeparator" type="VSeparator" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer"] +margin_left = 529.0 +margin_right = 533.0 +margin_bottom = 138.0 + +[node name="OnionSkinningButtons" type="VBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer"] +margin_left = 537.0 +margin_right = 663.0 +margin_bottom = 138.0 + +[node name="OnionSkinning" type="Label" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons"] +margin_right = 126.0 +margin_bottom = 31.0 +text = "Onion Skinning: +Past Steps" + +[node name="PastOnionSkinning" type="SpinBox" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons"] +margin_top = 35.0 +margin_right = 126.0 +margin_bottom = 59.0 +mouse_default_cursor_shape = 2 + +[node name="OnionSkinningFuture" type="Label" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons"] +margin_top = 63.0 +margin_right = 126.0 +margin_bottom = 77.0 +text = "Future Steps" + +[node name="FutureOnionSkinning" type="SpinBox" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons"] +margin_top = 81.0 +margin_right = 126.0 +margin_bottom = 105.0 +mouse_default_cursor_shape = 2 + +[node name="BlueRedMode" type="CheckBox" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons"] +margin_top = 109.0 +margin_right = 126.0 +margin_bottom = 133.0 +mouse_default_cursor_shape = 2 +text = "Blue-Red Mode" + +[node name="VSeparator2" type="VSeparator" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer"] +margin_left = 667.0 +margin_right = 671.0 +margin_bottom = 138.0 + +[node name="LayerPanel" type="Panel" parent="MenuAndUI/UI"] editor/display_folded = true -margin_left = 864.0 -margin_right = 1024.0 -margin_bottom = 600.0 -rect_min_size = Vector2( 160, 0 ) +margin_left = 928.0 +margin_right = 1152.0 +margin_bottom = 620.0 +rect_min_size = Vector2( 224, 0 ) -[node name="LayersAndMisc" type="VBoxContainer" parent="UI/LayerPanel"] +[node name="LayersAndMisc" type="VBoxContainer" parent="MenuAndUI/UI/LayerPanel"] +editor/display_folded = true anchor_right = 1.0 anchor_bottom = 1.0 +margin_top = 8.0 custom_constants/separation = 3 -[node name="ScrollContainer" type="ScrollContainer" parent="UI/LayerPanel/LayersAndMisc"] -margin_right = 160.0 -margin_bottom = 382.0 +[node name="ScrollContainer" type="ScrollContainer" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc"] +margin_right = 224.0 +margin_bottom = 612.0 size_flags_horizontal = 3 size_flags_vertical = 3 -[node name="VBoxLayerContainer" type="VBoxContainer" parent="UI/LayerPanel/LayersAndMisc/ScrollContainer"] -editor/display_folded = true -margin_right = 160.0 -margin_bottom = 38.0 +[node name="VBoxLayerContainer" type="VBoxContainer" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer"] +margin_right = 224.0 +margin_bottom = 58.0 size_flags_horizontal = 3 -[node name="LayerLabel" type="Label" parent="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer"] -margin_right = 160.0 +[node name="LayerLabel" type="Label" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer"] +margin_right = 224.0 margin_bottom = 14.0 size_flags_horizontal = 3 size_flags_vertical = 0 text = "Layers" align = 1 -[node name="CenterContainer" type="CenterContainer" parent="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer"] +[node name="HSeparator" type="HSeparator" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer"] margin_top = 18.0 -margin_right = 160.0 -margin_bottom = 38.0 +margin_right = 224.0 +margin_bottom = 22.0 -[node name="LayerButtons" type="HBoxContainer" parent="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer"] -margin_left = 7.0 -margin_right = 153.0 -margin_bottom = 20.0 +[node name="CenterContainer" type="CenterContainer" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer"] +editor/display_folded = true +margin_top = 26.0 +margin_right = 224.0 +margin_bottom = 58.0 -[node name="AddLayerButton" type="Button" parent="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons"] -margin_right = 20.0 -margin_bottom = 20.0 +[node name="LayerButtons" type="HBoxContainer" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer"] +editor/display_folded = true +margin_left = 6.0 +margin_right = 218.0 +margin_bottom = 32.0 + +[node name="AddLayerButton" type="TextureButton" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons"] +margin_right = 32.0 +margin_bottom = 32.0 hint_tooltip = "Create a new layer" mouse_default_cursor_shape = 2 -text = "+" +texture_normal = ExtResource( 25 ) -[node name="RemoveLayerButton" type="Button" parent="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons"] -margin_left = 24.0 -margin_right = 44.0 -margin_bottom = 20.0 +[node name="RemoveLayerButton" type="TextureButton" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons"] +margin_left = 36.0 +margin_right = 68.0 +margin_bottom = 32.0 hint_tooltip = "Remove current layer" mouse_default_cursor_shape = 8 disabled = true -text = "X" +texture_normal = ExtResource( 26 ) +texture_disabled = ExtResource( 27 ) -[node name="MoveUpLayer" type="Button" parent="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons"] -margin_left = 48.0 -margin_right = 67.0 -margin_bottom = 20.0 +[node name="MoveUpLayer" type="TextureButton" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons"] +margin_left = 72.0 +margin_right = 104.0 +margin_bottom = 32.0 hint_tooltip = "Move up the current layer" mouse_default_cursor_shape = 8 disabled = true -text = "^" +texture_normal = ExtResource( 28 ) +texture_disabled = ExtResource( 29 ) -[node name="MoveDownLayer" type="Button" parent="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons"] -margin_left = 71.0 -margin_right = 90.0 -margin_bottom = 20.0 +[node name="MoveDownLayer" type="TextureButton" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons"] +margin_left = 108.0 +margin_right = 140.0 +margin_bottom = 32.0 hint_tooltip = "Move down the current layer" mouse_default_cursor_shape = 8 disabled = true -text = "v" +texture_normal = ExtResource( 30 ) +texture_disabled = ExtResource( 31 ) -[node name="CloneLayer" type="Button" parent="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons"] -margin_left = 94.0 -margin_right = 118.0 -margin_bottom = 20.0 +[node name="CloneLayer" type="TextureButton" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons"] +margin_left = 144.0 +margin_right = 176.0 +margin_bottom = 32.0 hint_tooltip = "Clone current layer" mouse_default_cursor_shape = 2 -text = "Cl" +texture_normal = ExtResource( 32 ) -[node name="MergeDownLayer" type="Button" parent="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons"] -margin_left = 122.0 -margin_right = 146.0 -margin_bottom = 20.0 +[node name="MergeDownLayer" type="TextureButton" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons"] +margin_left = 180.0 +margin_right = 212.0 +margin_bottom = 32.0 hint_tooltip = "Merge down current layer" mouse_default_cursor_shape = 8 disabled = true -text = "M" - -[node name="HSeparator" type="HSeparator" parent="UI/LayerPanel/LayersAndMisc"] -margin_top = 385.0 -margin_right = 160.0 -margin_bottom = 389.0 - -[node name="OnionSkinningButtons" type="VBoxContainer" parent="UI/LayerPanel/LayersAndMisc"] -editor/display_folded = true -margin_top = 392.0 -margin_right = 160.0 -margin_bottom = 525.0 - -[node name="OnionSkinning" type="Label" parent="UI/LayerPanel/LayersAndMisc/OnionSkinningButtons"] -margin_right = 160.0 -margin_bottom = 31.0 -text = "Onion Skinning: -Past Steps" - -[node name="PastOnionSkinning" type="SpinBox" parent="UI/LayerPanel/LayersAndMisc/OnionSkinningButtons"] -margin_top = 35.0 -margin_right = 160.0 -margin_bottom = 59.0 - -[node name="OnionSkinningFuture" type="Label" parent="UI/LayerPanel/LayersAndMisc/OnionSkinningButtons"] -margin_top = 63.0 -margin_right = 160.0 -margin_bottom = 77.0 -text = "Future Steps" - -[node name="FutureOnionSkinning" type="SpinBox" parent="UI/LayerPanel/LayersAndMisc/OnionSkinningButtons"] -margin_top = 81.0 -margin_right = 160.0 -margin_bottom = 105.0 - -[node name="BlueRedMode" type="CheckBox" parent="UI/LayerPanel/LayersAndMisc/OnionSkinningButtons"] -margin_top = 109.0 -margin_right = 160.0 -margin_bottom = 133.0 -text = "Blue-Red Mode" - -[node name="HSeparator2" type="HSeparator" parent="UI/LayerPanel/LayersAndMisc"] -margin_top = 528.0 -margin_right = 160.0 -margin_bottom = 532.0 - -[node name="CursorPosition" type="Label" parent="UI/LayerPanel/LayersAndMisc"] -margin_top = 535.0 -margin_right = 160.0 -margin_bottom = 549.0 -text = "[64x64]" - -[node name="ZoomLevel" type="Label" parent="UI/LayerPanel/LayersAndMisc"] -margin_top = 552.0 -margin_right = 160.0 -margin_bottom = 566.0 -text = "Zoom: x7.81" - -[node name="CurrentFrame" type="Label" parent="UI/LayerPanel/LayersAndMisc"] -margin_top = 569.0 -margin_right = 160.0 -margin_bottom = 583.0 -text = "Current frame: 1/1" - -[node name="EmptyLabel" type="Label" parent="UI/LayerPanel/LayersAndMisc"] -margin_top = 586.0 -margin_right = 160.0 -margin_bottom = 600.0 +texture_normal = ExtResource( 33 ) +texture_disabled = ExtResource( 34 ) [node name="SplitScreenButton" type="Button" parent="."] anchor_left = 1.0 anchor_right = 1.0 -margin_left = -184.0 -margin_right = -164.0 -margin_bottom = 20.0 +margin_left = -244.0 +margin_top = 45.0 +margin_right = -224.0 +margin_bottom = 65.0 size_flags_vertical = 0 toggle_mode = true text = "<" @@ -1026,7 +1187,7 @@ editor/display_folded = true margin_right = 284.0 margin_bottom = 186.0 window_title = "About Pixelorama" -script = ExtResource( 9 ) +script = ExtResource( 35 ) [node name="AboutUI" type="VBoxContainer" parent="AboutDialog"] margin_left = 8.0 @@ -1091,44 +1252,44 @@ Copyright 2019 - Orama Interactive" align = 1 [node name="AnimationTimer" type="Timer" parent="."] -[connection signal="toggled" from="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftIndicatorCheckbox" to="." method="_on_LeftIndicatorCheckbox_toggled"] -[connection signal="color_changed" from="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftColorPickerButton" to="." method="_on_LeftColorPickerButton_color_changed"] -[connection signal="popup_closed" from="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftColorPickerButton" to="." method="_can_draw_true"] -[connection signal="pressed" from="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftColorPickerButton" to="." method="_can_draw_false"] -[connection signal="value_changed" from="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftBrushSizeEdit" to="." method="_on_LeftBrushSizeEdit_value_changed"] -[connection signal="value_changed" from="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/InterpolateColor/LeftInterpolateFactor" to="." method="_on_LeftInterpolateFactor_value_changed"] -[connection signal="toggled" from="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftHorizontalMirroring" to="." method="_on_LeftHorizontalMirroring_toggled"] -[connection signal="toggled" from="UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftVerticalMirroring" to="." method="_on_LeftVerticalMirroring_toggled"] -[connection signal="toggled" from="UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightIndicatorCheckbox" to="." method="_on_RightIndicatorCheckbox_toggled"] -[connection signal="color_changed" from="UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightColorPickerButton" to="." method="_on_RightColorPickerButton_color_changed"] -[connection signal="popup_closed" from="UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightColorPickerButton" to="." method="_can_draw_true"] -[connection signal="pressed" from="UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightColorPickerButton" to="." method="_can_draw_false"] -[connection signal="value_changed" from="UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightBrushSizeEdit" to="." method="_on_RightBrushSizeEdit_value_changed"] -[connection signal="value_changed" from="UI/ToolPanel/Tools/ToolOptions/RightToolOptions/InterpolateColor/RightInterpolateFactor" to="." method="_on_RightInterpolateFactor_value_changed"] -[connection signal="toggled" from="UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightHorizontalMirroring" to="." method="_on_RightHorizontalMirroring_toggled"] -[connection signal="toggled" from="UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightVerticalMirroring" to="." method="_on_RightVerticalMirroring_toggled"] -[connection signal="mouse_entered" from="UI/CanvasAndTimeline/HViewportContainer/ViewportContainer" to="." method="_on_ViewportContainer_mouse_entered"] -[connection signal="mouse_exited" from="UI/CanvasAndTimeline/HViewportContainer/ViewportContainer" to="." method="_on_ViewportContainer_mouse_exited"] -[connection signal="mouse_entered" from="UI/CanvasAndTimeline/HViewportContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_entered"] -[connection signal="mouse_exited" from="UI/CanvasAndTimeline/HViewportContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_exited"] -[connection signal="pressed" from="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/ButtonContainer/AnimationButtons/LoopAnim" to="." method="_on_LoopAnim_pressed"] -[connection signal="toggled" from="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/ButtonContainer/AnimationButtons/PlayBackwards" to="." method="_on_PlayBackwards_toggled"] -[connection signal="toggled" from="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/ButtonContainer/AnimationButtons/PlayForward" to="." method="_on_PlayForward_toggled"] -[connection signal="value_changed" from="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/ButtonContainer/AnimationButtons/FPSValue" to="." method="_on_FPSValue_value_changed"] -[connection signal="pressed" from="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/CenterContainer/FrameButtons/AddFrame" to="." method="add_frame"] -[connection signal="pressed" from="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/CenterContainer/FrameButtons/RemoveFrame" to="." method="_on_RemoveFrame_pressed"] -[connection signal="pressed" from="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/CenterContainer/FrameButtons/MoveFrameLeft" to="." method="change_frame_order" binds= [ -1 ]] -[connection signal="pressed" from="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/CenterContainer/FrameButtons/MoveFrameRight" to="." method="change_frame_order" binds= [ 1 ]] -[connection signal="pressed" from="UI/CanvasAndTimeline/AnimationTimeline/TimelineContainer/CenterContainer/FrameButtons/CloneFrame" to="." method="add_frame" binds= [ false ]] -[connection signal="pressed" from="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons/AddLayerButton" to="." method="add_layer"] -[connection signal="pressed" from="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons/RemoveLayerButton" to="." method="_on_RemoveLayerButton_pressed"] -[connection signal="pressed" from="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons/MoveUpLayer" to="." method="change_layer_order" binds= [ 1 ]] -[connection signal="pressed" from="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons/MoveDownLayer" to="." method="change_layer_order" binds= [ -1 ]] -[connection signal="pressed" from="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons/CloneLayer" to="." method="add_layer" binds= [ false ]] -[connection signal="pressed" from="UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons/MergeDownLayer" to="." method="_on_MergeLayer_pressed"] -[connection signal="value_changed" from="UI/LayerPanel/LayersAndMisc/OnionSkinningButtons/PastOnionSkinning" to="." method="_on_PastOnionSkinning_value_changed"] -[connection signal="value_changed" from="UI/LayerPanel/LayersAndMisc/OnionSkinningButtons/FutureOnionSkinning" to="." method="_on_FutureOnionSkinning_value_changed"] -[connection signal="toggled" from="UI/LayerPanel/LayersAndMisc/OnionSkinningButtons/BlueRedMode" to="." method="_on_BlueRedMode_toggled"] +[connection signal="toggled" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftIndicatorCheckbox" to="." method="_on_LeftIndicatorCheckbox_toggled"] +[connection signal="color_changed" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftColorPickerButton" to="." method="_on_LeftColorPickerButton_color_changed"] +[connection signal="popup_closed" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftColorPickerButton" to="." method="_can_draw_true"] +[connection signal="pressed" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftColorPickerButton" to="." method="_can_draw_false"] +[connection signal="value_changed" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftBrushSizeEdit" to="." method="_on_LeftBrushSizeEdit_value_changed"] +[connection signal="value_changed" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/InterpolateColor/LeftInterpolateFactor" to="." method="_on_LeftInterpolateFactor_value_changed"] +[connection signal="toggled" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftHorizontalMirroring" to="." method="_on_LeftHorizontalMirroring_toggled"] +[connection signal="toggled" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/LeftToolOptions/LeftVerticalMirroring" to="." method="_on_LeftVerticalMirroring_toggled"] +[connection signal="toggled" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightIndicatorCheckbox" to="." method="_on_RightIndicatorCheckbox_toggled"] +[connection signal="color_changed" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightColorPickerButton" to="." method="_on_RightColorPickerButton_color_changed"] +[connection signal="popup_closed" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightColorPickerButton" to="." method="_can_draw_true"] +[connection signal="pressed" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightColorPickerButton" to="." method="_can_draw_false"] +[connection signal="value_changed" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightBrushSizeEdit" to="." method="_on_RightBrushSizeEdit_value_changed"] +[connection signal="value_changed" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions/InterpolateColor/RightInterpolateFactor" to="." method="_on_RightInterpolateFactor_value_changed"] +[connection signal="toggled" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightHorizontalMirroring" to="." method="_on_RightHorizontalMirroring_toggled"] +[connection signal="toggled" from="MenuAndUI/UI/ToolPanel/Tools/ToolOptions/RightToolOptions/RightVerticalMirroring" to="." method="_on_RightVerticalMirroring_toggled"] +[connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/ViewportandVerticalRuler/ViewportContainer" to="." method="_on_ViewportContainer_mouse_entered"] +[connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/ViewportandVerticalRuler/ViewportContainer" to="." method="_on_ViewportContainer_mouse_exited"] +[connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_entered"] +[connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_exited"] +[connection signal="pressed" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons/FirstFrame" to="." method="_on_FirstFrame_pressed"] +[connection signal="pressed" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons/PreviousFrame" to="." method="_on_PreviousFrame_pressed"] +[connection signal="toggled" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons/PlayBackwards" to="." method="_on_PlayBackwards_toggled"] +[connection signal="toggled" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons/PlayForward" to="." method="_on_PlayForward_toggled"] +[connection signal="pressed" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons/NextFrame" to="." method="_on_NextFrame_pressed"] +[connection signal="pressed" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons/LastFrame" to="." method="_on_LastFrame_pressed"] +[connection signal="value_changed" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/LoopButtons/FPSValue" to="." method="_on_FPSValue_value_changed"] +[connection signal="pressed" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/LoopButtons/LoopAnim" to="." method="_on_LoopAnim_pressed"] +[connection signal="pressed" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/ScrollContainer/FrameAndButtonContainer/AddFrame" to="." method="add_frame"] +[connection signal="value_changed" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons/PastOnionSkinning" to="." method="_on_PastOnionSkinning_value_changed"] +[connection signal="value_changed" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons/FutureOnionSkinning" to="." method="_on_FutureOnionSkinning_value_changed"] +[connection signal="toggled" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons/BlueRedMode" to="." method="_on_BlueRedMode_toggled"] +[connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons/AddLayerButton" to="." method="add_layer"] +[connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons/RemoveLayerButton" to="." method="_on_RemoveLayerButton_pressed"] +[connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons/MoveUpLayer" to="." method="change_layer_order" binds= [ 1 ]] +[connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons/MoveDownLayer" to="." method="change_layer_order" binds= [ -1 ]] +[connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons/CloneLayer" to="." method="add_layer" binds= [ false ]] +[connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/ScrollContainer/VBoxLayerContainer/CenterContainer/LayerButtons/MergeDownLayer" to="." method="_on_MergeLayer_pressed"] [connection signal="toggled" from="SplitScreenButton" to="." method="_on_SplitScreenButton_toggled"] [connection signal="confirmed" from="CreateNewImage" to="." method="_on_CreateNewImage_confirmed"] [connection signal="popup_hide" from="CreateNewImage" to="." method="_can_draw_true"] diff --git a/Prefabs/FrameButton.tscn b/Prefabs/FrameButton.tscn index 6f62bbf4e..10ec74759 100644 --- a/Prefabs/FrameButton.tscn +++ b/Prefabs/FrameButton.tscn @@ -14,6 +14,7 @@ mouse_default_cursor_shape = 2 size_flags_horizontal = 0 size_flags_vertical = 0 toggle_mode = true +button_mask = 3 script = ExtResource( 1 ) [node name="FrameTexture" type="TextureRect" parent="FrameButton"] @@ -26,6 +27,12 @@ size_flags_horizontal = 0 size_flags_vertical = 0 expand = true +[node name="PopupMenu" type="PopupMenu" parent="FrameButton"] +margin_right = 20.0 +margin_bottom = 20.0 +mouse_default_cursor_shape = 2 +items = [ "Remove Frame", null, 0, false, true, -1, 0, null, "", false, "Clone Frame", null, 0, false, false, -1, 0, null, "", false, "Move Left", null, 0, false, true, -1, 0, null, "", false, "Move Right", null, 0, false, true, -1, 0, null, "", false ] + [node name="FrameID" type="Label" parent="."] margin_top = 40.0 margin_right = 36.0 @@ -33,3 +40,4 @@ margin_bottom = 54.0 text = "0" align = 1 [connection signal="pressed" from="FrameButton" to="FrameButton" method="_on_FrameButton_pressed"] +[connection signal="id_pressed" from="FrameButton/PopupMenu" to="FrameButton" method="_on_PopupMenu_id_pressed"] diff --git a/Prefabs/LayerContainer.tscn b/Prefabs/LayerContainer.tscn index ab79dec8b..be14508f8 100644 --- a/Prefabs/LayerContainer.tscn +++ b/Prefabs/LayerContainer.tscn @@ -1,39 +1,46 @@ -[gd_scene load_steps=2 format=2] +[gd_scene load_steps=3 format=2] [ext_resource path="res://Scripts/LayerContainer.gd" type="Script" id=1] +[ext_resource path="res://Assets/Graphics/Layers/layer_visible.png" type="Texture" id=2] + [node name="LayerContainer" type="Button"] -margin_right = 159.0 -margin_bottom = 46.0 -rect_min_size = Vector2( 0, 42 ) +margin_left = -0.540344 +margin_right = 11.4597 +margin_bottom = 42.0 +rect_min_size = Vector2( 160, 42 ) toggle_mode = true script = ExtResource( 1 ) [node name="HBoxContainer" type="HBoxContainer" parent="."] -margin_left = 7.0 -margin_top = 5.0 -margin_right = 152.0 -margin_bottom = 37.0 +anchor_top = 0.5 +anchor_right = 1.0 +anchor_bottom = 0.5 +margin_left = 4.0 +margin_top = -16.0 +margin_bottom = 16.0 mouse_default_cursor_shape = 2 -[node name="VisibilityButton" type="Button" parent="HBoxContainer"] -margin_right = 20.0 +[node name="VisibilityButton" type="TextureButton" parent="HBoxContainer"] +margin_right = 32.0 margin_bottom = 32.0 hint_tooltip = "Toggle layer's visibility" mouse_default_cursor_shape = 2 -text = "V" +size_flags_horizontal = 0 +size_flags_vertical = 4 +texture_normal = ExtResource( 2 ) [node name="TextureRect" type="TextureRect" parent="HBoxContainer"] -margin_left = 24.0 -margin_right = 56.0 +margin_left = 36.0 +margin_right = 68.0 margin_bottom = 32.0 rect_min_size = Vector2( 32, 32 ) expand = true [node name="Label" type="Label" parent="HBoxContainer"] -margin_left = 60.0 +margin_left = 72.0 margin_top = 9.0 -margin_right = 106.0 +margin_right = 118.0 margin_bottom = 23.0 text = "Layer 0" align = 1 diff --git a/Scripts/Canvas.gd b/Scripts/Canvas.gd index e0346f464..fae9f743b 100644 --- a/Scripts/Canvas.gd +++ b/Scripts/Canvas.gd @@ -54,9 +54,6 @@ func _ready() -> void: camera_zoom() func camera_zoom() -> void: - #Set camera offset to the center of canvas - Global.camera.offset = size / 2 - Global.camera2.offset = size / 2 #Set camera zoom based on the sprite size var bigger = max(size.x, size.y) var zoom_max := Vector2(bigger, bigger) * 0.01 @@ -70,6 +67,12 @@ func camera_zoom() -> void: Global.camera2.zoom = Vector2(bigger, bigger) * 0.002 Global.zoom_level_label.text = "Zoom: x%s" % [stepify(1 / Global.camera.zoom.x, 0.01)] + #Set camera offset to the center of canvas + Global.camera.offset = size / 2 + #Global.camera.offset.x = size.x / 2 + Global.main_viewport.rect_size.x / 2 * -Global.camera.zoom.x + #Global.camera.offset.y = size.y / 2 + Global.main_viewport.rect_size.y / 2 * -Global.camera.zoom.y + Global.camera2.offset = size / 2 + # warning-ignore:unused_argument func _process(delta) -> void: sprite_changed_this_frame = false @@ -131,7 +134,7 @@ func _process(delta) -> void: pencil_and_eraser(mouse_pos, current_color, current_mouse_button) "Eraser": pencil_and_eraser(mouse_pos, Color(0, 0, 0, 0), current_mouse_button) - "Fill": + "Bucket": if mouse_in_canvas && Global.can_draw && Global.has_focus && Global.current_frame == frame: var current_color : Color var horizontal_mirror := false @@ -244,9 +247,8 @@ func _process(delta) -> void: func handle_undo(action : String) -> void: var canvases := [] - var animation_timer := $"../../../../../../AnimationTimer" var layer_index := -1 - if animation_timer.is_stopped(): #if we're not animating, store only the current canvas + if Global.animation_timer.is_stopped(): #if we're not animating, store only the current canvas canvases = [self] layer_index = current_layer_index else: #If we're animating, store all canvases @@ -270,9 +272,8 @@ func handle_redo(action : String) -> void: if Global.undos < Global.undo_redo.get_version(): return var canvases := [] - var animation_timer := $"../../../../../../AnimationTimer" var layer_index := -1 - if animation_timer.is_stopped(): + if Global.animation_timer.is_stopped(): canvases = [self] layer_index = current_layer_index else: diff --git a/Scripts/FrameButton.gd b/Scripts/FrameButton.gd index 810f85d76..709b409f2 100644 --- a/Scripts/FrameButton.gd +++ b/Scripts/FrameButton.gd @@ -1,6 +1,122 @@ extends Button var frame := 0 +onready var popup_menu := $PopupMenu func _on_FrameButton_pressed() -> void: - Global.current_frame = frame + if Input.is_action_just_released("left_mouse"): + Global.current_frame = frame + else: + if Global.canvases.size() == 1: + popup_menu.set_item_disabled(0, true) + popup_menu.set_item_disabled(2, true) + popup_menu.set_item_disabled(3, true) + else: + popup_menu.set_item_disabled(0, false) + if frame > 0: + popup_menu.set_item_disabled(2, false) + if frame < Global.canvases.size() - 1: + popup_menu.set_item_disabled(3, false) + popup_menu.popup(Rect2(get_global_mouse_position(), Vector2.ONE)) + pressed = !pressed + +func _on_PopupMenu_id_pressed(ID : int) -> void: + match ID: + 0: #Remove Frame + var canvas : Canvas = Global.canvases[frame] + var new_canvases := Global.canvases.duplicate() + new_canvases.erase(canvas) + var new_hidden_canvases := Global.hidden_canvases.duplicate() + new_hidden_canvases.append(canvas) + var current_frame := Global.current_frame + if current_frame > 0 && current_frame == new_canvases.size(): #If it's the last frame + current_frame -= 1 + + Global.undos += 1 + Global.undo_redo.create_action("Remove Frame") + + Global.undo_redo.add_do_property(Global, "canvases", new_canvases) + Global.undo_redo.add_do_property(Global, "hidden_canvases", new_hidden_canvases) + Global.undo_redo.add_do_property(Global, "canvas", new_canvases[current_frame]) + Global.undo_redo.add_do_property(Global, "current_frame", current_frame) + + for i in range(frame, new_canvases.size()): + var c : Canvas = new_canvases[i] + Global.undo_redo.add_do_property(c, "frame", i) + Global.undo_redo.add_undo_property(c, "frame", c.frame) + + Global.undo_redo.add_undo_property(Global, "canvases", Global.canvases) + Global.undo_redo.add_undo_property(Global, "hidden_canvases", Global.hidden_canvases) + Global.undo_redo.add_undo_property(Global, "canvas", canvas) + Global.undo_redo.add_undo_property(Global, "current_frame", Global.current_frame) + + Global.undo_redo.add_do_method(Global, "redo", [canvas]) + Global.undo_redo.add_undo_method(Global, "undo", [canvas]) + Global.undo_redo.commit_action() + + 1: #Clone Layer + var canvas : Canvas = Global.canvases[frame] + var new_canvas : Canvas = load("res://Prefabs/Canvas.tscn").instance() + new_canvas.size = Global.canvas.size + new_canvas.frame = Global.canvases.size() + + var new_canvases := Global.canvases.duplicate() + new_canvases.append(new_canvas) + var new_hidden_canvases := Global.hidden_canvases.duplicate() + new_hidden_canvases.append(new_canvas) + + for layer in canvas.layers: #Copy every layer + var sprite := Image.new() + sprite.copy_from(layer[0]) + sprite.lock() + var tex := ImageTexture.new() + tex.create_from_image(sprite, 0) + new_canvas.layers.append([sprite, tex, layer[2], layer[3]]) + + Global.undos += 1 + Global.undo_redo.create_action("Add Frame") + Global.undo_redo.add_do_method(Global, "redo", [new_canvas]) + Global.undo_redo.add_undo_method(Global, "undo", [new_canvas]) + + Global.undo_redo.add_do_property(Global, "canvases", new_canvases) + Global.undo_redo.add_do_property(Global, "hidden_canvases", Global.hidden_canvases) + Global.undo_redo.add_do_property(Global, "canvas", new_canvas) + Global.undo_redo.add_do_property(Global, "current_frame", new_canvases.size() - 1) + for child in Global.frame_container.get_children(): + var frame_button = child.get_node("FrameButton") + Global.undo_redo.add_do_property(frame_button, "pressed", false) + Global.undo_redo.add_undo_property(frame_button, "pressed", frame_button.pressed) + for c in Global.canvases: + Global.undo_redo.add_do_property(c, "visible", false) + Global.undo_redo.add_undo_property(c, "visible", c.visible) + + Global.undo_redo.add_undo_property(Global, "canvases", Global.canvases) + Global.undo_redo.add_undo_property(Global, "hidden_canvases", new_hidden_canvases) + Global.undo_redo.add_undo_property(Global, "canvas", Global.canvas) + Global.undo_redo.add_undo_property(Global, "current_frame", Global.current_frame) + Global.undo_redo.commit_action() + + 2: #Move Left + change_frame_order(-1) + 3: #Move Right + change_frame_order(1) + +func change_frame_order(rate : int) -> void: + var change = frame + rate + var new_canvases := Global.canvases.duplicate() + var temp = new_canvases[frame] + new_canvases[frame] = new_canvases[change] + new_canvases[change] = temp + + Global.undo_redo.create_action("Change Frame Order") + Global.undo_redo.add_do_property(Global, "canvases", new_canvases) + Global.undo_redo.add_do_property(Global.canvases[frame], "frame", change) + Global.undo_redo.add_do_property(Global.canvases[change], "frame", frame) + + Global.undo_redo.add_undo_property(Global, "canvases", Global.canvases) + Global.undo_redo.add_undo_property(Global.canvases[frame], "frame", frame) + Global.undo_redo.add_undo_property(Global.canvases[change], "frame", change) + + Global.undo_redo.add_undo_method(Global, "undo", [Global.canvases[frame]]) + Global.undo_redo.add_do_method(Global, "redo", [Global.canvases[frame]]) + Global.undo_redo.commit_action() \ No newline at end of file diff --git a/Scripts/Global.gd b/Scripts/Global.gd index 254c102f6..42213d69f 100644 --- a/Scripts/Global.gd +++ b/Scripts/Global.gd @@ -23,6 +23,7 @@ var hidden_canvases := [] var control : Node var canvas : Canvas var canvas_parent : Node +var main_viewport : ViewportContainer var second_viewport : ViewportContainer var viewport_separator : VSeparator var split_screen_button : Button @@ -41,8 +42,6 @@ var file_menu : MenuButton var edit_menu : MenuButton var view_menu : MenuButton var help_menu : MenuButton -var left_indicator : Sprite -var right_indicator : Sprite var left_color_picker : ColorPickerButton var right_color_picker : ColorPickerButton var left_brush_size_edit : SpinBox @@ -52,18 +51,16 @@ var right_interpolate_slider : HSlider var left_brush_indicator : Sprite var right_brush_indicator : Sprite -var loop_animation_button : Button -var play_forward : Button -var play_backwards : Button +var loop_animation_button : BaseButton +var play_forward : BaseButton +var play_backwards : BaseButton var frame_container : HBoxContainer -var remove_frame_button : Button -var move_left_frame_button : Button -var move_right_frame_button : Button var vbox_layer_container : VBoxContainer -var remove_layer_button : Button -var move_up_layer_button : Button -var move_down_layer_button : Button -var merge_down_layer_button : Button +var remove_layer_button : BaseButton +var move_up_layer_button : BaseButton +var move_down_layer_button : BaseButton +var merge_down_layer_button : BaseButton +var animation_timer : Timer var cursor_position_label : Label var zoom_level_label : Label var current_frame_label : Label @@ -114,11 +111,12 @@ func _ready() -> void: canvas = find_node_by_name(root, "Canvas") canvases.append(canvas) canvas_parent = canvas.get_parent() + main_viewport = find_node_by_name(root, "ViewportContainer") second_viewport = find_node_by_name(root, "ViewportContainer2") viewport_separator = find_node_by_name(root, "ViewportSeparator") split_screen_button = find_node_by_name(root, "SplitScreenButton") camera = find_node_by_name(canvas_parent, "Camera2D") - camera2 = find_node_by_name(canvas_parent.get_parent().get_parent(), "Camera2D2") + camera2 = find_node_by_name(root, "Camera2D2") selection_rectangle = find_node_by_name(root, "SelectionRectangle") image_clipboard = Image.new() @@ -127,8 +125,6 @@ func _ready() -> void: edit_menu = find_node_by_name(root, "EditMenu") view_menu = find_node_by_name(root, "ViewMenu") help_menu = find_node_by_name(root, "HelpMenu") - left_indicator = find_node_by_name(root, "LeftIndicator") - right_indicator = find_node_by_name(root, "RightIndicator") left_color_picker = find_node_by_name(root, "LeftColorPickerButton") right_color_picker = find_node_by_name(root, "RightColorPickerButton") left_brush_size_edit = find_node_by_name(root, "LeftBrushSizeEdit") @@ -143,14 +139,12 @@ func _ready() -> void: play_forward = find_node_by_name(root, "PlayForward") play_backwards = find_node_by_name(root, "PlayBackwards") frame_container = find_node_by_name(root, "FrameContainer") - remove_frame_button = find_node_by_name(root, "RemoveFrame") - move_left_frame_button = find_node_by_name(root, "MoveFrameLeft") - move_right_frame_button = find_node_by_name(root, "MoveFrameRight") vbox_layer_container = find_node_by_name(root, "VBoxLayerContainer") remove_layer_button = find_node_by_name(root, "RemoveLayerButton") move_up_layer_button = find_node_by_name(root, "MoveUpLayer") move_down_layer_button = find_node_by_name(root, "MoveDownLayer") merge_down_layer_button = find_node_by_name(root, "MergeDownLayer") + animation_timer = find_node_by_name(root, "AnimationTimer") cursor_position_label = find_node_by_name(root, "CursorPosition") zoom_level_label = find_node_by_name(root, "ZoomLevel") current_frame_label = find_node_by_name(root, "CurrentFrame") @@ -204,11 +198,9 @@ func undo(_canvases : Array, layer_index : int = -1) -> void: canvas_parent.move_child(_canvases[0], _canvases[0].frame) frame_container.add_child(_canvases[0].frame_button) frame_container.move_child(_canvases[0].frame_button, _canvases[0].frame) - remove_frame_button.disabled = false - remove_frame_button.mouse_default_cursor_shape = Control.CURSOR_POINTING_HAND elif action_name == "Change Frame Order": - frame_container.move_child(_canvases[0].frame_button, current_frame) - canvas_parent.move_child(_canvases[0], current_frame) + frame_container.move_child(_canvases[0].frame_button, _canvases[0].frame) + canvas_parent.move_child(_canvases[0], _canvases[0].frame) notification_label("Undo: %s" % action_name) @@ -238,17 +230,12 @@ func redo(_canvases : Array, layer_index : int = -1) -> void: canvas_parent.add_child(_canvases[0]) if !Global.frame_container.is_a_parent_of(_canvases[0].frame_button): Global.frame_container.add_child(_canvases[0].frame_button) - remove_frame_button.disabled = false - remove_frame_button.mouse_default_cursor_shape = Control.CURSOR_POINTING_HAND elif action_name == "Remove Frame": canvas_parent.remove_child(_canvases[0]) frame_container.remove_child(_canvases[0].frame_button) - if len(canvases) == 1: - remove_frame_button.disabled = true - remove_frame_button.mouse_default_cursor_shape = Control.CURSOR_FORBIDDEN elif action_name == "Change Frame Order": - frame_container.move_child(_canvases[0].frame_button, current_frame) - canvas_parent.move_child(_canvases[0], current_frame) + frame_container.move_child(_canvases[0].frame_button, _canvases[0].frame) + canvas_parent.move_child(_canvases[0], _canvases[0].frame) if control.redone: notification_label("Redo: %s" % action_name) @@ -268,20 +255,6 @@ func frame_changed(value : int) -> void: #Make only the current frame button pressed canvas.frame_button.get_node("FrameButton").pressed = true - if current_frame == 0: - move_left_frame_button.disabled = true - move_left_frame_button.mouse_default_cursor_shape = Control.CURSOR_FORBIDDEN - else: - move_left_frame_button.disabled = false - move_left_frame_button.mouse_default_cursor_shape = Control.CURSOR_POINTING_HAND - - if current_frame == canvases.size() - 1: - move_right_frame_button.disabled = true - move_right_frame_button.mouse_default_cursor_shape = Control.CURSOR_FORBIDDEN - else: - move_right_frame_button.disabled = false - move_right_frame_button.mouse_default_cursor_shape = Control.CURSOR_POINTING_HAND - func create_brush_button(brush_img : Image, brush_type := BRUSH_TYPES.CUSTOM) -> void: var hbox_container : HBoxContainer diff --git a/Scripts/HorizontalRuler.gd b/Scripts/HorizontalRuler.gd index 5c20cc0ba..854b8c0b9 100644 --- a/Scripts/HorizontalRuler.gd +++ b/Scripts/HorizontalRuler.gd @@ -9,6 +9,7 @@ var minor_subdivision := 5 var first : Vector2 var last : Vector2 +# warning-ignore:unused_argument func _process(delta) -> void: update() diff --git a/Scripts/LayerContainer.gd b/Scripts/LayerContainer.gd index 8f0f7a820..0f2b65f68 100644 --- a/Scripts/LayerContainer.gd +++ b/Scripts/LayerContainer.gd @@ -58,10 +58,10 @@ func changed_selection() -> void: func _on_VisibilityButton_pressed() -> void: if Global.canvas.layers[i][3]: Global.canvas.layers[i][3] = false - get_child(0).get_child(0).text = "I" + get_child(0).get_child(0).texture_normal = preload("res://Assets/Graphics/Layers/layer_invisible.png") else: Global.canvas.layers[i][3] = true - get_child(0).get_child(0).text = "V" + get_child(0).get_child(0).texture_normal = preload("res://Assets/Graphics/Layers/layer_visible.png") func _on_LineEdit_text_changed(new_text : String) -> void: Global.canvas.layers[i][2] = new_text diff --git a/Scripts/Main.gd b/Scripts/Main.gd index 1b434a901..d56af8d01 100644 --- a/Scripts/Main.gd +++ b/Scripts/Main.gd @@ -10,7 +10,7 @@ var export_all_frames : CheckBox var export_as_single_file : CheckBox var export_vertical_spritesheet : CheckBox var redone := false -var fps := 1.0 +var fps := 6.0 var animation_loop := 0 #0 is no loop, 1 is cycle loop, 2 is ping-pong loop var animation_forward := true @@ -19,7 +19,7 @@ func _ready() -> void: OS.set_window_title("Pixelorama %s" % ProjectSettings.get_setting("application/config/Version")) # Set a minimum window size to prevent UI elements from collapsing on each other. # This property is only available in 3.2alpha or later, so use `set()` to fail gracefully if it doesn't exist. - OS.set("min_window_size", Vector2(1024, 600)) + OS.set("min_window_size", Vector2(1152, 648)) var file_menu_items := { "New..." : KEY_MASK_CTRL + KEY_N, @@ -78,7 +78,7 @@ func _ready() -> void: #Node, left mouse shortcut, right mouse shortcut tools.append([Global.find_node_by_name(root, "Pencil"), "left_pencil_tool", "right_pencil_tool"]) tools.append([Global.find_node_by_name(root, "Eraser"), "left_eraser_tool", "right_eraser_tool"]) - tools.append([Global.find_node_by_name(root, "Fill"), "left_fill_tool", "right_fill_tool"]) + tools.append([Global.find_node_by_name(root, "Bucket"), "left_fill_tool", "right_fill_tool"]) tools.append([Global.find_node_by_name(root, "PaintAllPixelsSameColor"), "left_paint_all_tool", "right_paint_all_tool"]) tools.append([Global.find_node_by_name(root, "LightenDarken"), "left_lightdark_tool", "right_lightdark_tool"]) tools.append([Global.find_node_by_name(root, "RectSelect"), "left_rectangle_select_tool", "right_rectangle_select_tool"]) @@ -550,12 +550,21 @@ func _on_Tool_pressed(tool_pressed : BaseButton, mouse_press := true, key_for_le var current_action := tool_pressed.name if (mouse_press && Input.is_action_just_released("left_mouse")) || (!mouse_press && key_for_left): Global.current_left_tool = current_action - Global.left_indicator.get_parent().remove_child(Global.left_indicator) - tool_pressed.add_child(Global.left_indicator) elif (mouse_press && Input.is_action_just_released("right_mouse")) || (!mouse_press && !key_for_left): Global.current_right_tool = current_action - Global.right_indicator.get_parent().remove_child(Global.right_indicator) - tool_pressed.add_child(Global.right_indicator) + + for t in tools: + var tool_name : String = t[0].name + if tool_name == "PaintAllPixelsSameColor": + continue + if tool_name == Global.current_left_tool && tool_name == Global.current_right_tool: + t[0].texture_normal = load("res://Assets/Graphics/Tools/%s_l_r.png" % tool_name) + elif tool_name == Global.current_left_tool: + t[0].texture_normal = load("res://Assets/Graphics/Tools/%s_l.png" % tool_name) + elif tool_name == Global.current_right_tool: + t[0].texture_normal = load("res://Assets/Graphics/Tools/%s_r.png" % tool_name) + else: + t[0].texture_normal = load("res://Assets/Graphics/Tools/%s.png" % tool_name) func _on_LeftIndicatorCheckbox_toggled(button_pressed) -> void: Global.left_square_indicator_visible = button_pressed @@ -643,33 +652,24 @@ func _on_MergeLayer_pressed() -> void: Global.undo_redo.add_do_method(Global, "redo", [Global.canvas]) Global.undo_redo.commit_action() -func add_frame(is_new := true) -> void: - var canvas : Canvas = load("res://Prefabs/Canvas.tscn").instance() - canvas.size = Global.canvas.size - canvas.frame = Global.canvases.size() +func add_frame() -> void: + var new_canvas : Canvas = load("res://Prefabs/Canvas.tscn").instance() + new_canvas.size = Global.canvas.size + new_canvas.frame = Global.canvases.size() var new_canvases := Global.canvases.duplicate() - new_canvases.append(canvas) + new_canvases.append(new_canvas) var new_hidden_canvases := Global.hidden_canvases.duplicate() - new_hidden_canvases.append(canvas) - - if !is_new: #If we're cloning - for layer in Global.canvas.layers: #Copy every layer - var sprite := Image.new() - sprite.copy_from(layer[0]) - sprite.lock() - var tex := ImageTexture.new() - tex.create_from_image(sprite, 0) - canvas.layers.append([sprite, tex, layer[2], layer[3]]) + new_hidden_canvases.append(new_canvas) Global.undos += 1 Global.undo_redo.create_action("Add Frame") - Global.undo_redo.add_do_method(Global, "redo", [canvas]) - Global.undo_redo.add_undo_method(Global, "undo", [canvas]) + Global.undo_redo.add_do_method(Global, "redo", [new_canvas]) + Global.undo_redo.add_undo_method(Global, "undo", [new_canvas]) Global.undo_redo.add_do_property(Global, "canvases", new_canvases) Global.undo_redo.add_do_property(Global, "hidden_canvases", Global.hidden_canvases) - Global.undo_redo.add_do_property(Global, "canvas", canvas) + Global.undo_redo.add_do_property(Global, "canvas", new_canvas) Global.undo_redo.add_do_property(Global, "current_frame", new_canvases.size() - 1) for child in Global.frame_container.get_children(): var frame_button = child.get_node("FrameButton") @@ -685,102 +685,55 @@ func add_frame(is_new := true) -> void: Global.undo_redo.add_undo_property(Global, "current_frame", Global.current_frame) Global.undo_redo.commit_action() -func _on_RemoveFrame_pressed() -> void: - var new_canvases := Global.canvases.duplicate() - new_canvases.erase(Global.canvas) - var new_hidden_canvases := Global.hidden_canvases.duplicate() - new_hidden_canvases.append(Global.canvas) - var current_frame := Global.current_frame - if current_frame > 0 && current_frame == new_canvases.size(): - current_frame -= 1 - - Global.undos += 1 - Global.undo_redo.create_action("Remove Frame") - Global.undo_redo.add_undo_method(Global, "undo", [Global.canvas]) - - Global.undo_redo.add_do_property(Global, "canvases", new_canvases) - Global.undo_redo.add_do_property(Global, "hidden_canvases", new_hidden_canvases) - Global.undo_redo.add_do_property(Global, "canvas", new_canvases[current_frame]) - Global.undo_redo.add_do_property(Global, "current_frame", current_frame) - - var i := 0 - for canvas in new_canvases: - Global.undo_redo.add_do_property(canvas, "frame", i) - Global.undo_redo.add_undo_property(canvas, "frame", canvas.frame) - i += 1 - - Global.undo_redo.add_undo_property(Global, "canvases", Global.canvases) - Global.undo_redo.add_undo_property(Global, "hidden_canvases", Global.hidden_canvases) - Global.undo_redo.add_undo_property(Global, "canvas", Global.canvas) - Global.undo_redo.add_undo_property(Global, "current_frame", Global.current_frame) - - Global.undo_redo.add_do_method(Global, "redo", [Global.canvas]) - Global.undo_redo.commit_action() - -func change_frame_order(rate : int) -> void: - var change = Global.current_frame + rate - - var new_canvases := Global.canvases.duplicate() - var temp = new_canvases[Global.current_frame] - new_canvases[Global.current_frame] = new_canvases[change] - new_canvases[change] = temp - - Global.undo_redo.create_action("Change Frame Order") - Global.undo_redo.add_do_property(Global, "canvases", new_canvases) - Global.undo_redo.add_do_property(Global.canvas, "frame", change) - Global.undo_redo.add_do_property(Global.canvases[change], "frame", Global.current_frame) - Global.undo_redo.add_do_property(Global, "current_frame", change) - - Global.undo_redo.add_undo_property(Global, "canvases", Global.canvases) - Global.undo_redo.add_undo_property(Global.canvas, "frame", Global.current_frame) - Global.undo_redo.add_undo_property(Global.canvases[change], "frame", change) - Global.undo_redo.add_undo_property(Global, "current_frame", Global.current_frame) - - Global.undo_redo.add_undo_method(Global, "undo", [Global.canvas]) - Global.undo_redo.add_do_method(Global, "redo", [Global.canvas]) - Global.undo_redo.commit_action() - func _on_LoopAnim_pressed() -> void: - match Global.loop_animation_button.text: - "No": + match Global.loop_animation_button.texture_normal.resource_path: + "res://Assets/Graphics/Timeline/Loop_None.png": #Make it loop animation_loop = 1 - Global.loop_animation_button.text = "Cycle" - "Cycle": + Global.loop_animation_button.texture_normal = preload("res://Assets/Graphics/Timeline/Loop.png") + "res://Assets/Graphics/Timeline/Loop.png": #Make it ping-pong animation_loop = 2 - Global.loop_animation_button.text = "Ping-Pong" - "Ping-Pong": + Global.loop_animation_button.texture_normal = preload("res://Assets/Graphics/Timeline/Loop_PingPong.png") + "res://Assets/Graphics/Timeline/Loop_PingPong.png": #Make it stop animation_loop = 0 - Global.loop_animation_button.text = "No" + Global.loop_animation_button.texture_normal = preload("res://Assets/Graphics/Timeline/Loop_None.png") func _on_PlayForward_toggled(button_pressed) -> void: Global.play_backwards.pressed = false - Global.play_backwards.text = "Play Backwards" if button_pressed: - Global.play_forward.text = "Stop" $AnimationTimer.wait_time = 1 / fps $AnimationTimer.start() animation_forward = true else: - Global.play_forward.text = "Play Forward" $AnimationTimer.stop() func _on_PlayBackwards_toggled(button_pressed) -> void: Global.play_forward.pressed = false - Global.play_forward.text = "Play Forward" if button_pressed: - Global.play_backwards.text = "Stop" $AnimationTimer.wait_time = 1 / fps $AnimationTimer.start() animation_forward = false else: - Global.play_backwards.text = "Play Backwards" $AnimationTimer.stop() +func _on_NextFrame_pressed() -> void: + if Global.current_frame < Global.canvases.size() - 1: + Global.current_frame += 1 + +func _on_PreviousFrame_pressed() -> void: + if Global.current_frame > 0: + Global.current_frame -= 1 + +func _on_LastFrame_pressed() -> void: + Global.current_frame = Global.canvases.size() - 1 + +func _on_FirstFrame_pressed() -> void: + Global.current_frame = 0 + func _on_AnimationTimer_timeout() -> void: if animation_forward: if Global.current_frame < Global.canvases.size() - 1: @@ -789,9 +742,7 @@ func _on_AnimationTimer_timeout() -> void: match animation_loop: 0: #No loop Global.play_forward.pressed = false - Global.play_forward.text = "Play Forward" Global.play_backwards.pressed = false - Global.play_backwards.text = "Play Backwards" $AnimationTimer.stop() 1: #Cycle loop Global.current_frame = 0 @@ -806,9 +757,7 @@ func _on_AnimationTimer_timeout() -> void: match animation_loop: 0: #No loop Global.play_backwards.pressed = false - Global.play_backwards.text = "Play Backwards" Global.play_forward.pressed = false - Global.play_forward.text = "Play Forward" $AnimationTimer.stop() 1: #Cycle loop Global.current_frame = Global.canvases.size() - 1 diff --git a/Scripts/NotificationLabel.gd b/Scripts/NotificationLabel.gd index 7db0c4984..77cb82883 100644 --- a/Scripts/NotificationLabel.gd +++ b/Scripts/NotificationLabel.gd @@ -1,8 +1,5 @@ extends Label -# Declare member variables here. Examples: -# var a = 2 -# var b = "text" # Called when the node enters the scene tree for the first time. func _ready() -> void: diff --git a/Scripts/SecondViewport.gd b/Scripts/SecondViewport.gd index 6ccbac208..d283f4366 100644 --- a/Scripts/SecondViewport.gd +++ b/Scripts/SecondViewport.gd @@ -2,4 +2,4 @@ extends Viewport # Called when the node enters the scene tree for the first time. func _ready() -> void: - world_2d = $"../../ViewportContainer/Viewport".world_2d + world_2d = Global.canvas.get_parent().world_2d diff --git a/Scripts/SelectionRectangle.gd b/Scripts/SelectionRectangle.gd index c2b1411f9..9c8fb86c9 100644 --- a/Scripts/SelectionRectangle.gd +++ b/Scripts/SelectionRectangle.gd @@ -56,7 +56,7 @@ func _process(delta) -> void: tex.create_from_image(img, 0) update() else: - get_parent().get_parent().mouse_default_cursor_shape = Input.CURSOR_CROSS + get_parent().get_parent().mouse_default_cursor_shape = Input.CURSOR_ARROW if is_dragging: if (Global.current_left_tool == "RectSelect" && Input.is_action_pressed("left_mouse")) || (Global.current_right_tool == "RectSelect" && Input.is_action_pressed("right_mouse")): diff --git a/Scripts/VerticalRuler.gd b/Scripts/VerticalRuler.gd index 8225f187b..1cc924eb2 100644 --- a/Scripts/VerticalRuler.gd +++ b/Scripts/VerticalRuler.gd @@ -9,6 +9,7 @@ var minor_subdivision := 5 var first : Vector2 var last : Vector2 +# warning-ignore:unused_argument func _process(delta) -> void: update() diff --git a/icon.png b/icon.png index 916277470c3f3337353fbc3d34549f1aec7ce85c..62e85a40e918596f977dc0b9bf341cdb71a63d20 100644 GIT binary patch literal 1096 zcmV-O1h@N%P)p|9^7lyp$fo0N%cVhh#~Ws>B$3;gB?HPO-VDfQn27>>^TO9HA&7`rBEA zhg6C!{qERwhuoH>eXrUqg4hx64!k!I$-OSovXoLvIg48oFQjlw%n_`SO2L%Q3P$lr z3K{bhJAxq`4n#0bh6vsvw*{091tC}^BF#mR+p4~8borKDfWaCJ?WPeK}miK z!38hTl;j(y3N9!_51C2kXFCK+^njtSk>t0!CVI?7bFU5fx_BqS1)=C0J<0g$#Ry-< ztGW4uCYf_;r(rS8kmPqq`wD6$-;M@7EpN1qdNJ_x^5AEZK{SV4Oa4r;5NevkPjV!| z(po}GmNpfQq2$?Bk#lwz;GN%^nXe)lzI^NEy+nBBwSZaMl`O6c=B6ap`6BR51t1hL znolDq$}MyyOJ&ufkQ}Fpy{@a<6Kj$=QaG_sBj*eaQQ@2OruQsS&IW`AKmQJN~9iIav$LAw?0S8Eywjf={ zC-mp!Fn_Zt`9l7Qc{M+sx24`=|KT11H(o_%?Z)|1M8aGo9^(zyLs#-Mzd`!~CKQR0 zGxFxQBNOg)&aaNPEnm45q2Ks)?33D3DuM3@?tO&7o#KLYod#zAIn9pynfG$VRsAer z=Igxcq9?UHwrOre7Z>v-Ln11oU58995;H;CcU|Z0oF9K>EMnm4??LGhiBEL|w~*Tu zbKu4+`)zysOfwT|ij!b~UeKIw59CjVTa2^>#yV}Ey<_NRr2fm(1L#{gP5(gI!oFXg z=zWCC%F@lCraCA$^Kc)tY1O`*Q~=Z11z0DX;u|B${o6dMXa|IXyHCs}89%CDwu$Ce zO2iBM7-og9ivsmB5f&H*s(z~f9>@yzr;Q{m#)Mf}$_eIP6VQ_t&k~)Qih(i|y^z`2 z*98Zva948mL*QK}P{JRgX)bJ?>H!9|Lrp5%3QIVoW71J&xO%^25o%bUHMu-xNQEF7s5G>|4E$X+G4V3w!?vbaMwC^uPqF-_J0Tl5sp5SzSwxFoF*+0#g8O05wu zq;N~zAh+g^y94(PIz$k@wC|;xHSCbRrQa=^4)Bm3qQ4MDOyGzQ+si+nDrLHCZccRo O0000DTSMe}u+_ba%Q*2f^82 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 FV1jeNs^kCw diff --git a/project.godot b/project.godot index ebda5c73e..f34cd579f 100644 --- a/project.godot +++ b/project.godot @@ -40,6 +40,34 @@ Global="*res://Scripts/Global.gd" gdscript/warnings/narrowing_conversion=false gdscript/warnings/return_value_discarded=false +[display] + +window/size/width=1152 +window/size/height=648 + +[importer_defaults] + +texture={ +"compress/bptc_ldr": 0, +"compress/hdr_mode": 0, +"compress/lossy_quality": 0.7, +"compress/mode": 0, +"compress/normal_map": 0, +"detect_3d": true, +"flags/anisotropic": false, +"flags/filter": false, +"flags/mipmaps": false, +"flags/repeat": 0, +"flags/srgb": 2, +"process/HDR_as_SRGB": false, +"process/fix_alpha_border": true, +"process/invert_color": false, +"process/premult_alpha": false, +"size_limit": 0, +"stream": false, +"svg/scale": 1.0 +} + [input] zoom_in={