diff --git a/Assets/Graphics/Palette/bubblegum16.json b/Assets/Graphics/Palette/bubblegum16.json index 1239d8abf..021041afb 100644 --- a/Assets/Graphics/Palette/bubblegum16.json +++ b/Assets/Graphics/Palette/bubblegum16.json @@ -1,6 +1,6 @@ { - "name": "BubbleGum16", - "colors" : [ + "name": "BubbleGum16", + "colors" : [ { "data" : "#FF000000", "name" : "no name" }, { "data" : "#FF7f0622", "name" : "no name" }, { "data" : "#FFd62411", "name" : "no name" }, @@ -18,5 +18,6 @@ { "data" : "#FF007899", "name" : "no name" }, { "data" : "#FF002859", "name" : "no name" }, ], - "comments": "by PineTreePizza - https://twitter.com/PineTreePizza" + "comments": "by PineTreePizza - https://twitter.com/PineTreePizza", + "editable": false } \ No newline at end of file diff --git a/Assets/Graphics/Palette/default_palette.json b/Assets/Graphics/Palette/default_palette.json index b76ab8e6a..73d3c7e42 100644 --- a/Assets/Graphics/Palette/default_palette.json +++ b/Assets/Graphics/Palette/default_palette.json @@ -1,6 +1,6 @@ { - "name": "Default", - "colors" : [ + "name": "Default", + "colors" : [ { "data" : "#FF000000", "name" : "no name" }, { "data" : "#FF222034", "name" : "no name" }, { "data" : "#FF45283c", "name" : "no name" }, @@ -33,5 +33,7 @@ { "data" : "#FFd77bba", "name" : "no name" }, { "data" : "#FF8f974a", "name" : "no name" }, { "data" : "#FF8a6f30", "name" : "no name" } - ] + ], + "comments": "Aseprite default palette", + "editable": false } \ No newline at end of file diff --git a/Assets/Graphics/Palette/swatch_drag_preview.png b/Assets/Graphics/Palette/swatch_drag_preview.png new file mode 100644 index 000000000..401e48029 Binary files /dev/null and b/Assets/Graphics/Palette/swatch_drag_preview.png differ diff --git a/Assets/Graphics/Palette/swatch_drag_preview.png.import b/Assets/Graphics/Palette/swatch_drag_preview.png.import new file mode 100644 index 000000000..a44fda04f --- /dev/null +++ b/Assets/Graphics/Palette/swatch_drag_preview.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/swatch_drag_preview.png-4e3b034338643b2d9a5d7daa883dd850.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Graphics/Palette/swatch_drag_preview.png" +dest_files=[ "res://.import/swatch_drag_preview.png-4e3b034338643b2d9a5d7daa883dd850.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=false +svg/scale=1.0 diff --git a/Main.tscn b/Main.tscn index 1f3b7d8ef..12451ea91 100644 --- a/Main.tscn +++ b/Main.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=63 format=2] +[gd_scene load_steps=62 format=2] [ext_resource path="res://Themes & Styles/Main Theme.tres" type="Theme" id=1] [ext_resource path="res://Scripts/Main.gd" type="Script" id=2] @@ -43,17 +43,12 @@ [ext_resource path="res://Assets/Graphics/Canvas_split.png" type="Texture" id=41] [ext_resource path="res://Assets/Graphics/Canvas_unsplit.png" type="Texture" id=42] [ext_resource path="res://Scripts/AboutDialog.gd" type="Script" id=43] +[ext_resource path="res://Scripts/EditPalettePopup.gd" type="Script" id=44] [sub_resource type="StyleBoxFlat" id=1] bg_color = Color( 0.223529, 0.223529, 0.243137, 1 ) -[sub_resource type="InputEventKey" id=18] -scancode = 88 - -[sub_resource type="ShortCut" id=19] -shortcut = SubResource( 18 ) - -[sub_resource type="Image" id=20] +[sub_resource type="Image" id=18] data = { "data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ), "format": "RGBA8", @@ -63,10 +58,10 @@ data = { } [sub_resource type="ImageTexture" id=3] -image = SubResource( 20 ) +image = SubResource( 18 ) size = Vector2( 32, 32 ) -[sub_resource type="Image" id=21] +[sub_resource type="Image" id=19] data = { "data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ), "format": "RGBA8", @@ -76,7 +71,7 @@ data = { } [sub_resource type="ImageTexture" id=5] -image = SubResource( 21 ) +image = SubResource( 19 ) size = Vector2( 32, 32 ) [sub_resource type="InputEventKey" id=6] @@ -146,14 +141,13 @@ rect_min_size = Vector2( 0, 28 ) custom_styles/panel = SubResource( 1 ) [node name="MenuItems" type="HBoxContainer" parent="MenuAndUI/MenuContainer"] -editor/display_folded = true margin_left = 2.0 margin_top = 4.0 margin_right = 1010.0 [node name="FileMenu" type="MenuButton" parent="MenuAndUI/MenuContainer/MenuItems"] margin_right = 31.0 -margin_bottom = 21.0 +margin_bottom = 23.0 mouse_default_cursor_shape = 2 text = "File" switch_on_hover = true @@ -161,7 +155,7 @@ switch_on_hover = true [node name="EditMenu" type="MenuButton" parent="MenuAndUI/MenuContainer/MenuItems"] margin_left = 35.0 margin_right = 68.0 -margin_bottom = 21.0 +margin_bottom = 23.0 mouse_default_cursor_shape = 2 text = "Edit" switch_on_hover = true @@ -169,7 +163,7 @@ switch_on_hover = true [node name="ViewMenu" type="MenuButton" parent="MenuAndUI/MenuContainer/MenuItems"] margin_left = 72.0 margin_right = 110.0 -margin_bottom = 21.0 +margin_bottom = 23.0 mouse_default_cursor_shape = 2 text = "View" switch_on_hover = true @@ -177,7 +171,7 @@ switch_on_hover = true [node name="HelpMenu" type="MenuButton" parent="MenuAndUI/MenuContainer/MenuItems"] margin_left = 114.0 margin_right = 151.0 -margin_bottom = 21.0 +margin_bottom = 23.0 mouse_default_cursor_shape = 2 text = "Help" switch_on_hover = true @@ -208,6 +202,7 @@ text = "[64×64]" 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 @@ -216,7 +211,6 @@ size_flags_vertical = 3 custom_constants/separation = 0 [node name="ToolPanel" type="Panel" parent="MenuAndUI/UI"] -editor/display_folded = true margin_right = 224.0 margin_bottom = 620.0 rect_min_size = Vector2( 224, 0 ) @@ -239,6 +233,7 @@ margin_bottom = 127.0 custom_constants/separation = 17 [node name="UtilityTools" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/MenusAndTools"] +editor/display_folded = true margin_right = 208.0 margin_bottom = 55.0 @@ -353,9 +348,9 @@ custom_constants/separation = 8 alignment = 1 [node name="ColorPickersCenter" type="CenterContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions"] -margin_top = 35.0 +margin_top = 59.0 margin_right = 208.0 -margin_bottom = 67.0 +margin_bottom = 91.0 [node name="ColorPickersHorizontal" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/ColorPickersCenter"] margin_left = 27.0 @@ -373,6 +368,7 @@ size_flags_vertical = 0 flat = true [node name="ColorButtonsCenter" type="CenterContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/ColorPickersCenter/ColorPickersHorizontal"] +editor/display_folded = true margin_left = 68.0 margin_right = 85.0 margin_bottom = 32.0 @@ -387,8 +383,6 @@ margin_right = 17.0 margin_bottom = 7.0 hint_tooltip = "COLORSWITCH_HT" mouse_default_cursor_shape = 2 -shortcut_in_tooltip = false -shortcut = SubResource( 19 ) texture_normal = ExtResource( 9 ) [node name="ColorDefaults" type="TextureButton" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/ColorPickersCenter/ColorPickersHorizontal/ColorButtonsCenter/ColorButtonsVertical"] @@ -412,13 +406,13 @@ flat = true color = Color( 1, 1, 1, 1 ) [node name="HSeparator" type="HSeparator" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions"] -margin_top = 75.0 +margin_top = 99.0 margin_right = 208.0 -margin_bottom = 79.0 +margin_bottom = 103.0 [node name="LeftToolOptions" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions"] editor/display_folded = true -margin_top = 87.0 +margin_top = 111.0 margin_right = 208.0 margin_bottom = 242.0 @@ -431,7 +425,7 @@ align = 1 [node name="LeftIndicatorCheckbox" type="CheckBox" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions"] margin_top = 19.0 margin_right = 208.0 -margin_bottom = 43.0 +margin_bottom = 35.0 hint_tooltip = "LEFT_INDIC_HT" mouse_default_cursor_shape = 2 pressed = true @@ -439,9 +433,9 @@ text = "Left pixel indicator" [node name="LeftBrushType" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions"] editor/display_folded = true -margin_top = 47.0 +margin_top = 39.0 margin_right = 208.0 -margin_bottom = 79.0 +margin_bottom = 71.0 [node name="LeftBrushTypeButton" type="TextureButton" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftBrushType"] margin_right = 36.0 @@ -468,20 +462,20 @@ text = "Brush: Pixel" [node name="LeftBrushSize" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions"] editor/display_folded = true -margin_top = 83.0 +margin_top = 75.0 margin_right = 208.0 -margin_bottom = 108.0 +margin_bottom = 92.0 [node name="BrushSizeLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftBrushSize"] -margin_top = 5.0 +margin_top = 1.0 margin_right = 58.0 -margin_bottom = 20.0 +margin_bottom = 16.0 text = "Brush size:" [node name="LeftBrushSizeEdit" type="SpinBox" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftBrushSize"] margin_left = 62.0 -margin_right = 124.0 -margin_bottom = 25.0 +margin_right = 126.0 +margin_bottom = 17.0 mouse_default_cursor_shape = 2 min_value = 1.0 value = 1.0 @@ -490,26 +484,24 @@ suffix = "px" [node name="LeftColorInterpolation" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions"] editor/display_folded = true visible = false -margin_top = 112.0 +margin_top = 96.0 margin_right = 208.0 -margin_bottom = 137.0 +margin_bottom = 113.0 [node name="ColorComesFrom" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftColorInterpolation"] -margin_top = 5.0 +margin_top = 1.0 margin_right = 90.0 -margin_bottom = 20.0 +margin_bottom = 16.0 hint_tooltip = "COLORFROM_HT" text = "Brush color from" [node name="LeftInterpolateFactor" type="SpinBox" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftColorInterpolation"] margin_left = 94.0 margin_right = 208.0 -margin_bottom = 25.0 +margin_bottom = 17.0 hint_tooltip = "COLORFROM_HT" size_flags_horizontal = 3 -max_value = 1.0 -step = 0.01 -value = 1.0 +value = 100.0 [node name="LeftFillArea" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions"] editor/display_folded = true @@ -534,41 +526,39 @@ selected = 0 [node name="LeftLDOptions" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions"] editor/display_folded = true visible = false -margin_top = 110.0 -margin_right = 244.0 -margin_bottom = 158.0 +margin_top = 96.0 +margin_right = 208.0 +margin_bottom = 140.0 [node name="LeftLightenDarken" type="OptionButton" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftLDOptions"] -margin_right = 244.0 -margin_bottom = 20.0 +margin_right = 208.0 +margin_bottom = 23.0 text = "Lighten" items = [ "Lighten", null, false, 0, null, "Darken", null, false, 1, null ] selected = 0 [node name="LeftLDAmount" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftLDOptions"] -margin_top = 24.0 -margin_right = 244.0 -margin_bottom = 48.0 +margin_top = 27.0 +margin_right = 208.0 +margin_bottom = 44.0 [node name="LDAmountLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftLDOptions/LeftLDAmount"] -margin_top = 5.0 -margin_right = 55.0 -margin_bottom = 19.0 +margin_top = 1.0 +margin_right = 47.0 +margin_bottom = 16.0 text = "Amount:" [node name="LeftLDAmountSpinbox" type="SpinBox" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftLDOptions/LeftLDAmount"] -margin_left = 59.0 -margin_right = 133.0 -margin_bottom = 24.0 +margin_left = 51.0 +margin_right = 115.0 +margin_bottom = 17.0 hint_tooltip = "LDAMOUNT_HT" -max_value = 1.0 -step = 0.01 -value = 0.1 +value = 10.0 [node name="LeftMirroring" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions"] -margin_top = 112.0 +margin_top = 96.0 margin_right = 208.0 -margin_bottom = 155.0 +margin_bottom = 131.0 [node name="Label" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftMirroring"] margin_right = 208.0 @@ -578,19 +568,19 @@ text = "Mirroring" [node name="LeftMirrorButtons" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftMirroring"] margin_top = 19.0 margin_right = 208.0 -margin_bottom = 43.0 +margin_bottom = 35.0 [node name="LeftHorizontalMirroring" type="CheckBox" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftMirroring/LeftMirrorButtons"] -margin_right = 85.0 -margin_bottom = 24.0 +margin_right = 77.0 +margin_bottom = 16.0 hint_tooltip = "HORIZMIRROR_HT" mouse_default_cursor_shape = 2 text = "Horizontal" [node name="LeftVerticalMirroring" type="CheckBox" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/LeftToolOptions/LeftMirroring/LeftMirrorButtons"] -margin_left = 89.0 -margin_right = 158.0 -margin_bottom = 24.0 +margin_left = 81.0 +margin_right = 142.0 +margin_bottom = 16.0 hint_tooltip = "VERTMIRROR_HT" mouse_default_cursor_shape = 2 text = "Vertical" @@ -604,7 +594,7 @@ margin_bottom = 254.0 editor/display_folded = true margin_top = 262.0 margin_right = 208.0 -margin_bottom = 417.0 +margin_bottom = 393.0 [node name="RightLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions"] margin_right = 208.0 @@ -615,16 +605,16 @@ align = 1 [node name="RightIndicatorCheckbox" type="CheckBox" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions"] margin_top = 19.0 margin_right = 208.0 -margin_bottom = 43.0 +margin_bottom = 35.0 hint_tooltip = "RIGHT_INDIC_HT" mouse_default_cursor_shape = 2 text = "Right pixel indicator" [node name="RightBrushType" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions"] editor/display_folded = true -margin_top = 47.0 +margin_top = 39.0 margin_right = 208.0 -margin_bottom = 79.0 +margin_bottom = 71.0 [node name="RightBrushTypeButton" type="TextureButton" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightBrushType"] margin_right = 36.0 @@ -651,20 +641,20 @@ text = "Brush: Pixel" [node name="RightBrushSize" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions"] editor/display_folded = true -margin_top = 83.0 +margin_top = 75.0 margin_right = 208.0 -margin_bottom = 108.0 +margin_bottom = 92.0 [node name="BrushSizeLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightBrushSize"] -margin_top = 5.0 +margin_top = 1.0 margin_right = 58.0 -margin_bottom = 20.0 +margin_bottom = 16.0 text = "Brush size:" [node name="RightBrushSizeEdit" type="SpinBox" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightBrushSize"] margin_left = 62.0 -margin_right = 124.0 -margin_bottom = 25.0 +margin_right = 126.0 +margin_bottom = 17.0 mouse_default_cursor_shape = 2 min_value = 1.0 value = 1.0 @@ -673,26 +663,24 @@ suffix = "px" [node name="RightColorInterpolation" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions"] editor/display_folded = true visible = false -margin_top = 112.0 +margin_top = 96.0 margin_right = 208.0 -margin_bottom = 137.0 +margin_bottom = 113.0 [node name="ColorComesFrom" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightColorInterpolation"] -margin_top = 5.0 +margin_top = 1.0 margin_right = 90.0 -margin_bottom = 20.0 +margin_bottom = 16.0 hint_tooltip = "COLORFROM_HT" text = "Brush color from" [node name="RightInterpolateFactor" type="SpinBox" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightColorInterpolation"] margin_left = 94.0 margin_right = 208.0 -margin_bottom = 25.0 +margin_bottom = 17.0 hint_tooltip = "COLORFROM_HT" size_flags_horizontal = 3 -max_value = 1.0 -step = 0.01 -value = 1.0 +value = 100.0 [node name="RightFillArea" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions"] editor/display_folded = true @@ -717,42 +705,40 @@ selected = 0 [node name="RightLDOptions" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions"] editor/display_folded = true visible = false -margin_top = 110.0 -margin_right = 244.0 -margin_bottom = 158.0 +margin_top = 96.0 +margin_right = 208.0 +margin_bottom = 140.0 [node name="RightLightenDarken" type="OptionButton" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightLDOptions"] -margin_right = 244.0 -margin_bottom = 20.0 +margin_right = 208.0 +margin_bottom = 23.0 text = "Lighten" items = [ "Lighten", null, false, 0, null, "Darken", null, false, 1, null ] selected = 0 [node name="RightLDAmount" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightLDOptions"] -margin_top = 24.0 -margin_right = 244.0 -margin_bottom = 48.0 +margin_top = 27.0 +margin_right = 208.0 +margin_bottom = 44.0 [node name="LDAmountLabel" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightLDOptions/RightLDAmount"] -margin_top = 5.0 -margin_right = 55.0 -margin_bottom = 19.0 +margin_top = 1.0 +margin_right = 47.0 +margin_bottom = 16.0 text = "Amount:" [node name="RightLDAmountSpinbox" type="SpinBox" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightLDOptions/RightLDAmount"] -margin_left = 59.0 -margin_right = 133.0 -margin_bottom = 24.0 +margin_left = 51.0 +margin_right = 115.0 +margin_bottom = 17.0 hint_tooltip = "LDAMOUNT_HT" -max_value = 1.0 -step = 0.01 -value = 0.1 +value = 10.0 [node name="RightMirroring" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions"] editor/display_folded = true -margin_top = 112.0 +margin_top = 96.0 margin_right = 208.0 -margin_bottom = 155.0 +margin_bottom = 131.0 [node name="Label" type="Label" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightMirroring"] margin_right = 208.0 @@ -762,19 +748,19 @@ text = "Mirroring" [node name="RightMirrorButtons" type="HBoxContainer" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightMirroring"] margin_top = 19.0 margin_right = 208.0 -margin_bottom = 43.0 +margin_bottom = 35.0 [node name="RightHorizontalMirroring" type="CheckBox" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightMirroring/RightMirrorButtons"] -margin_right = 85.0 -margin_bottom = 24.0 +margin_right = 77.0 +margin_bottom = 16.0 hint_tooltip = "HORIZMIRROR_HT" mouse_default_cursor_shape = 2 text = "Horizontal" [node name="RightVerticalMirroring" type="CheckBox" parent="MenuAndUI/UI/ToolPanel/Tools/ColorAndToolOptions/RightToolOptions/RightMirroring/RightMirrorButtons"] -margin_left = 89.0 -margin_right = 158.0 -margin_bottom = 24.0 +margin_left = 81.0 +margin_right = 142.0 +margin_bottom = 16.0 hint_tooltip = "VERTMIRROR_HT" mouse_default_cursor_shape = 2 text = "Vertical" @@ -788,7 +774,6 @@ size_flags_horizontal = 3 custom_constants/separation = 0 [node name="HViewportContainer" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline"] -editor/display_folded = true margin_right = 704.0 margin_bottom = 478.0 size_flags_horizontal = 3 @@ -806,7 +791,6 @@ margin_right = 704.0 margin_bottom = 16.0 rect_min_size = Vector2( 0, 16 ) focus_mode = 0 -mouse_default_cursor_shape = 15 custom_styles/hover = ExtResource( 12 ) custom_styles/pressed = ExtResource( 12 ) custom_styles/focus = ExtResource( 12 ) @@ -827,7 +811,6 @@ margin_right = 16.0 margin_bottom = 462.0 rect_min_size = Vector2( 16, 0 ) focus_mode = 0 -mouse_default_cursor_shape = 14 size_flags_horizontal = 0 size_flags_vertical = 3 custom_styles/hover = ExtResource( 12 ) @@ -839,7 +822,6 @@ enabled_focus_mode = 0 script = ExtResource( 14 ) [node name="ViewportContainer" type="ViewportContainer" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/ViewportandVerticalRuler"] -editor/display_folded = true margin_left = 16.0 margin_right = 704.0 margin_bottom = 462.0 @@ -875,7 +857,6 @@ margin_right = 319.0 margin_bottom = 464.0 [node name="ViewportContainer2" type="ViewportContainer" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer"] -editor/display_folded = true visible = false margin_left = 345.0 margin_right = 686.0 @@ -917,32 +898,32 @@ margin_left = 15.0 margin_top = 4.0 [node name="TimelineContainer" type="VBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer"] -margin_right = 562.0 -margin_bottom = 139.0 +margin_right = 570.0 +margin_bottom = 138.0 size_flags_horizontal = 3 [node name="AnimationButtons" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer"] -margin_right = 562.0 -margin_bottom = 25.0 +margin_right = 570.0 +margin_bottom = 24.0 rect_min_size = Vector2( 0, 24 ) [node name="CurrentFrame" type="Label" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons"] -margin_top = 5.0 -margin_right = 234.0 -margin_bottom = 20.0 +margin_top = 4.0 +margin_right = 237.0 +margin_bottom = 19.0 size_flags_horizontal = 3 text = "Current frame: 1/1" [node name="PlaybackButtons" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons"] editor/display_folded = true -margin_left = 238.0 -margin_right = 378.0 -margin_bottom = 25.0 +margin_left = 241.0 +margin_right = 381.0 +margin_bottom = 24.0 size_flags_horizontal = 2 [node name="FirstFrame" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons"] margin_right = 20.0 -margin_bottom = 25.0 +margin_bottom = 24.0 hint_tooltip = "FIRSTFRAME_HT" mouse_default_cursor_shape = 2 shortcut_in_tooltip = false @@ -952,7 +933,7 @@ texture_normal = ExtResource( 19 ) [node name="PreviousFrame" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons"] margin_left = 24.0 margin_right = 44.0 -margin_bottom = 25.0 +margin_bottom = 24.0 hint_tooltip = "PREVIOUSFRAME_HT" mouse_default_cursor_shape = 2 shortcut_in_tooltip = false @@ -962,7 +943,7 @@ texture_normal = ExtResource( 20 ) [node name="PlayBackwards" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons"] margin_left = 48.0 margin_right = 68.0 -margin_bottom = 25.0 +margin_bottom = 24.0 hint_tooltip = "PLAYBACKWARDS_HT" mouse_default_cursor_shape = 2 toggle_mode = true @@ -974,7 +955,7 @@ texture_pressed = ExtResource( 22 ) [node name="PlayForward" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons"] margin_left = 72.0 margin_right = 92.0 -margin_bottom = 25.0 +margin_bottom = 24.0 hint_tooltip = "PLAYFORWARD_HT" mouse_default_cursor_shape = 2 size_flags_horizontal = 0 @@ -987,7 +968,7 @@ texture_pressed = ExtResource( 22 ) [node name="NextFrame" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons"] margin_left = 96.0 margin_right = 116.0 -margin_bottom = 25.0 +margin_bottom = 24.0 hint_tooltip = "NEXTFRAME_HT" mouse_default_cursor_shape = 2 shortcut_in_tooltip = false @@ -997,7 +978,7 @@ texture_normal = ExtResource( 24 ) [node name="LastFrame" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/PlaybackButtons"] margin_left = 120.0 margin_right = 140.0 -margin_bottom = 25.0 +margin_bottom = 24.0 hint_tooltip = "LASTFRAME_HT" mouse_default_cursor_shape = 2 shortcut_in_tooltip = false @@ -1005,14 +986,14 @@ shortcut = SubResource( 17 ) texture_normal = ExtResource( 25 ) [node name="LoopButtons" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons"] -margin_left = 476.0 -margin_right = 562.0 -margin_bottom = 25.0 +margin_left = 482.0 +margin_right = 570.0 +margin_bottom = 24.0 size_flags_horizontal = 0 [node name="FPSValue" type="SpinBox" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/LoopButtons"] -margin_right = 62.0 -margin_bottom = 25.0 +margin_right = 64.0 +margin_bottom = 24.0 hint_tooltip = "FPS_HT" mouse_default_cursor_shape = 2 min_value = 0.1 @@ -1021,35 +1002,35 @@ value = 6.0 suffix = "FPS" [node name="LoopAnim" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/AnimationButtons/LoopButtons"] -margin_left = 66.0 -margin_right = 86.0 -margin_bottom = 25.0 +margin_left = 68.0 +margin_right = 88.0 +margin_bottom = 24.0 hint_tooltip = "No loop" mouse_default_cursor_shape = 2 texture_normal = ExtResource( 26 ) [node name="HSeparator" type="HSeparator" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer"] -margin_top = 29.0 -margin_right = 562.0 -margin_bottom = 33.0 +margin_top = 28.0 +margin_right = 570.0 +margin_bottom = 32.0 [node name="TimelineSeconds" type="Control" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer"] -margin_top = 37.0 -margin_right = 562.0 -margin_bottom = 53.0 +margin_top = 36.0 +margin_right = 570.0 +margin_bottom = 52.0 rect_min_size = Vector2( 0, 16 ) script = ExtResource( 27 ) [node name="HSeparator2" type="HSeparator" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer"] -margin_top = 57.0 -margin_right = 562.0 -margin_bottom = 61.0 +margin_top = 56.0 +margin_right = 570.0 +margin_bottom = 60.0 [node name="FrameAndButtonContainer" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer"] editor/display_folded = true -margin_top = 65.0 -margin_right = 562.0 -margin_bottom = 101.0 +margin_top = 64.0 +margin_right = 570.0 +margin_bottom = 100.0 [node name="AddFrame" type="TextureButton" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/FrameAndButtonContainer"] margin_right = 36.0 @@ -1061,7 +1042,7 @@ texture_normal = ExtResource( 28 ) [node name="ScrollContainer" type="ScrollContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/FrameAndButtonContainer"] margin_left = 40.0 -margin_right = 562.0 +margin_right = 570.0 margin_bottom = 36.0 size_flags_horizontal = 3 size_flags_vertical = 3 @@ -1070,58 +1051,59 @@ scroll_vertical_enabled = false [node name="FrameContainer" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/TimelineContainer/FrameAndButtonContainer/ScrollContainer"] [node name="VSeparator" type="VSeparator" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer"] -margin_left = 566.0 -margin_right = 570.0 -margin_bottom = 139.0 +margin_left = 574.0 +margin_right = 578.0 +margin_bottom = 138.0 [node name="OnionSkinningButtons" type="VBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer"] editor/display_folded = true -margin_left = 574.0 +margin_left = 582.0 margin_right = 681.0 -margin_bottom = 139.0 +margin_bottom = 138.0 [node name="OnionSkinning" type="Label" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons"] -margin_right = 107.0 +margin_right = 99.0 margin_bottom = 15.0 text = "Onion Skinning:" [node name="OnionSkinningPast" type="Label" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons"] margin_top = 19.0 -margin_right = 107.0 +margin_right = 99.0 margin_bottom = 34.0 text = "Past Frames" [node name="PastOnionSkinning" type="SpinBox" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons"] margin_top = 38.0 -margin_right = 107.0 -margin_bottom = 63.0 +margin_right = 99.0 +margin_bottom = 55.0 mouse_default_cursor_shape = 2 [node name="OnionSkinningFuture" type="Label" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons"] -margin_top = 67.0 -margin_right = 107.0 -margin_bottom = 82.0 +margin_top = 59.0 +margin_right = 99.0 +margin_bottom = 74.0 text = "Future Frames" [node name="FutureOnionSkinning" type="SpinBox" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons"] -margin_top = 86.0 -margin_right = 107.0 -margin_bottom = 111.0 +margin_top = 78.0 +margin_right = 99.0 +margin_bottom = 95.0 mouse_default_cursor_shape = 2 [node name="BlueRedMode" type="CheckBox" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons"] -margin_top = 115.0 -margin_right = 107.0 -margin_bottom = 139.0 +margin_top = 99.0 +margin_right = 99.0 +margin_bottom = 115.0 mouse_default_cursor_shape = 2 text = "Blue-Red Mode" [node name="VSeparator2" type="VSeparator" parent="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer"] margin_left = 685.0 margin_right = 689.0 -margin_bottom = 139.0 +margin_bottom = 138.0 [node name="LayerPanel" type="Panel" parent="MenuAndUI/UI"] +editor/display_folded = true margin_left = 928.0 margin_right = 1152.0 margin_bottom = 620.0 @@ -1295,12 +1277,15 @@ margin_left = 36.0 margin_right = 68.0 margin_bottom = 32.0 texture_normal = ExtResource( 30 ) +texture_disabled = ExtResource( 31 ) [node name="PaletteOptionButton" type="OptionButton" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/PaletteButtons"] margin_left = 72.0 margin_right = 187.0 margin_bottom = 32.0 +grow_horizontal = 0 size_flags_horizontal = 3 +clip_text = true [node name="EditPalette" type="Button" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/PaletteButtons"] margin_left = 191.0 @@ -1334,10 +1319,10 @@ drag_to_rearrange_enabled = true [node name="File" type="ScrollContainer" parent="BrushesPopup/TabContainer"] anchor_right = 1.0 anchor_bottom = 1.0 -margin_left = 4.0 -margin_top = 33.0 -margin_right = -4.0 -margin_bottom = -4.0 +margin_left = 5.0 +margin_top = 39.0 +margin_right = -5.0 +margin_bottom = -5.0 rect_min_size = Vector2( 0, 36 ) size_flags_horizontal = 3 scroll_horizontal_enabled = false @@ -1352,10 +1337,10 @@ hint_tooltip = "Pixel brush" visible = false anchor_right = 1.0 anchor_bottom = 1.0 -margin_left = 4.0 -margin_top = 33.0 -margin_right = -4.0 -margin_bottom = -4.0 +margin_left = 5.0 +margin_top = 39.0 +margin_right = -5.0 +margin_bottom = -5.0 rect_min_size = Vector2( 0, 36 ) size_flags_horizontal = 3 scroll_horizontal_enabled = false @@ -1386,7 +1371,7 @@ margin_bottom = 70.0 margin_left = 8.0 margin_top = 8.0 margin_right = 192.0 -margin_bottom = 33.0 +margin_bottom = 31.0 [node name="ImageSize" type="Label" parent="CreateNewImage/VBoxContainer"] margin_right = 184.0 @@ -1396,7 +1381,7 @@ text = "Image Size" [node name="OptionsContainer" type="GridContainer" parent="CreateNewImage/VBoxContainer"] margin_top = 19.0 margin_right = 184.0 -margin_bottom = 98.0 +margin_bottom = 90.0 columns = 2 [node name="WidthLabel" type="Label" parent="CreateNewImage/VBoxContainer/OptionsContainer"] @@ -1406,8 +1391,8 @@ margin_bottom = 20.0 text = "Width:" [node name="WidthValue" type="SpinBox" parent="CreateNewImage/VBoxContainer/OptionsContainer"] -margin_left = 79.0 -margin_right = 143.0 +margin_left = 75.0 +margin_right = 139.0 margin_bottom = 25.0 min_value = 1.0 max_value = 16384.0 @@ -1415,32 +1400,32 @@ value = 64.0 suffix = "px" [node name="Height" type="Label" parent="CreateNewImage/VBoxContainer/OptionsContainer"] -margin_top = 34.0 +margin_top = 30.0 margin_right = 75.0 -margin_bottom = 49.0 +margin_bottom = 45.0 text = "Height:" [node name="HeightValue" type="SpinBox" parent="CreateNewImage/VBoxContainer/OptionsContainer"] -margin_left = 79.0 -margin_top = 29.0 -margin_right = 143.0 -margin_bottom = 54.0 +margin_left = 75.0 +margin_top = 25.0 +margin_right = 139.0 +margin_bottom = 50.0 min_value = 1.0 max_value = 16384.0 value = 64.0 suffix = "px" [node name="FillColorLabel" type="Label" parent="CreateNewImage/VBoxContainer/OptionsContainer"] -margin_top = 61.0 +margin_top = 53.0 margin_right = 75.0 -margin_bottom = 76.0 +margin_bottom = 68.0 text = "Fill with color:" [node name="FillColor" type="ColorPickerButton" parent="CreateNewImage/VBoxContainer/OptionsContainer"] -margin_left = 79.0 -margin_top = 58.0 -margin_right = 143.0 -margin_bottom = 79.0 +margin_left = 75.0 +margin_top = 50.0 +margin_right = 139.0 +margin_bottom = 71.0 rect_min_size = Vector2( 64, 20 ) color = Color( 0, 0, 0, 0 ) @@ -1507,7 +1492,7 @@ margin_bottom = 114.0 margin_left = 8.0 margin_top = 8.0 margin_right = 192.0 -margin_bottom = 77.0 +margin_bottom = 75.0 [node name="ImageSize" type="Label" parent="ScaleImage/VBoxContainer"] margin_right = 184.0 @@ -1518,7 +1503,7 @@ text = "Image Size" editor/display_folded = true margin_top = 19.0 margin_right = 184.0 -margin_bottom = 98.0 +margin_bottom = 90.0 columns = 2 [node name="WidthLabel" type="Label" parent="ScaleImage/VBoxContainer/OptionsContainer"] @@ -1528,8 +1513,8 @@ margin_bottom = 20.0 text = "Width:" [node name="WidthValue" type="SpinBox" parent="ScaleImage/VBoxContainer/OptionsContainer"] -margin_left = 76.0 -margin_right = 159.0 +margin_left = 72.0 +margin_right = 155.0 margin_bottom = 25.0 min_value = 1.0 max_value = 16384.0 @@ -1537,32 +1522,32 @@ value = 64.0 suffix = "px" [node name="Height" type="Label" parent="ScaleImage/VBoxContainer/OptionsContainer"] -margin_top = 34.0 +margin_top = 30.0 margin_right = 72.0 -margin_bottom = 49.0 +margin_bottom = 45.0 text = "Height:" [node name="HeightValue" type="SpinBox" parent="ScaleImage/VBoxContainer/OptionsContainer"] -margin_left = 76.0 -margin_top = 29.0 -margin_right = 159.0 -margin_bottom = 54.0 +margin_left = 72.0 +margin_top = 25.0 +margin_right = 155.0 +margin_bottom = 50.0 min_value = 1.0 max_value = 16384.0 value = 64.0 suffix = "px" [node name="InterpolationLabel" type="Label" parent="ScaleImage/VBoxContainer/OptionsContainer"] -margin_top = 61.0 +margin_top = 53.0 margin_right = 72.0 -margin_bottom = 76.0 +margin_bottom = 68.0 text = "Interpolation:" [node name="InterpolationType" type="OptionButton" parent="ScaleImage/VBoxContainer/OptionsContainer"] -margin_left = 76.0 -margin_top = 58.0 -margin_right = 159.0 -margin_bottom = 79.0 +margin_left = 72.0 +margin_top = 50.0 +margin_right = 155.0 +margin_bottom = 71.0 text = "Nearest" items = [ "Nearest", null, false, 0, null, "Bilinear", null, false, 1, null, "Cubic", null, false, 2, null, "Trilinear", null, false, 3, null, "Lanczos", null, true, 4, null ] selected = 0 @@ -1580,10 +1565,10 @@ anchor_right = 0.5 margin_left = -92.0 margin_top = 8.0 margin_right = 92.0 -margin_bottom = 33.0 +margin_bottom = 31.0 [node name="OptionsContainer" type="GridContainer" parent="PreferencesDialog/VBoxContainer"] -margin_right = 184.0 +margin_right = 195.0 margin_bottom = 21.0 columns = 2 @@ -1594,8 +1579,8 @@ margin_bottom = 18.0 text = "Language:" [node name="LanguageOption" type="OptionButton" parent="PreferencesDialog/VBoxContainer/OptionsContainer"] -margin_left = 61.0 -margin_right = 142.0 +margin_left = 57.0 +margin_right = 195.0 margin_bottom = 21.0 text = "System Language" items = [ "System Language", null, false, 0, null, "Deutsch [de]", null, false, 1, null, "Ελληνικά [el]", null, false, 2, null, "English [en]", null, false, 3, null, "Français [fr]", null, false, 4, null, "Polski [pl]", null, false, 5, null ] @@ -1603,14 +1588,14 @@ selected = 0 [node name="GridOptionsLabel" type="Label" parent="PreferencesDialog/VBoxContainer"] margin_top = 25.0 -margin_right = 184.0 +margin_right = 195.0 margin_bottom = 40.0 text = "Grid options" [node name="GridOptions" type="GridContainer" parent="PreferencesDialog/VBoxContainer"] margin_top = 44.0 -margin_right = 184.0 -margin_bottom = 123.0 +margin_right = 195.0 +margin_bottom = 115.0 columns = 2 [node name="WidthLabel" type="Label" parent="PreferencesDialog/VBoxContainer/GridOptions"] @@ -1620,8 +1605,8 @@ margin_bottom = 20.0 text = "Width:" [node name="GridWidthValue" type="SpinBox" parent="PreferencesDialog/VBoxContainer/GridOptions"] -margin_left = 43.0 -margin_right = 107.0 +margin_left = 39.0 +margin_right = 103.0 margin_bottom = 25.0 min_value = 1.0 max_value = 16384.0 @@ -1629,32 +1614,32 @@ value = 1.0 suffix = "px" [node name="Height" type="Label" parent="PreferencesDialog/VBoxContainer/GridOptions"] -margin_top = 34.0 +margin_top = 30.0 margin_right = 39.0 -margin_bottom = 49.0 +margin_bottom = 45.0 text = "Height:" [node name="GridHeightValue" type="SpinBox" parent="PreferencesDialog/VBoxContainer/GridOptions"] -margin_left = 43.0 -margin_top = 29.0 -margin_right = 107.0 -margin_bottom = 54.0 +margin_left = 39.0 +margin_top = 25.0 +margin_right = 103.0 +margin_bottom = 50.0 min_value = 1.0 max_value = 16384.0 value = 1.0 suffix = "px" [node name="GridColorLabel" type="Label" parent="PreferencesDialog/VBoxContainer/GridOptions"] -margin_top = 61.0 +margin_top = 53.0 margin_right = 39.0 -margin_bottom = 76.0 +margin_bottom = 68.0 text = "Color:" [node name="GridColor" type="ColorPickerButton" parent="PreferencesDialog/VBoxContainer/GridOptions"] -margin_left = 43.0 -margin_top = 58.0 -margin_right = 107.0 -margin_bottom = 79.0 +margin_left = 39.0 +margin_top = 50.0 +margin_right = 103.0 +margin_bottom = 71.0 rect_min_size = Vector2( 64, 20 ) [node name="AboutDialog" type="AcceptDialog" parent="."] @@ -1668,7 +1653,7 @@ script = ExtResource( 43 ) margin_left = 8.0 margin_top = 8.0 margin_right = 276.0 -margin_bottom = 149.0 +margin_bottom = 147.0 [node name="Pixelorama" type="Label" parent="AboutDialog/AboutUI"] margin_right = 268.0 @@ -1680,21 +1665,21 @@ align = 1 [node name="MadeBy" type="Label" parent="AboutDialog/AboutUI"] margin_top = 37.0 margin_right = 268.0 -margin_bottom = 70.0 +margin_bottom = 52.0 text = "MADEBY_LABEL" align = 1 [node name="Links" type="CenterContainer" parent="AboutDialog/AboutUI"] editor/display_folded = true -margin_top = 74.0 +margin_top = 56.0 margin_right = 268.0 -margin_bottom = 95.0 +margin_bottom = 77.0 [node name="LinkButtons" type="HBoxContainer" parent="AboutDialog/AboutUI/Links"] editor/display_folded = true margin_left = 37.0 margin_right = 231.0 -margin_bottom = 21.0 +margin_bottom = 23.0 [node name="Website" type="Button" parent="AboutDialog/AboutUI/Links/LinkButtons"] margin_right = 55.0 @@ -1714,9 +1699,9 @@ margin_bottom = 21.0 text = "Donate" [node name="Copyright" type="Label" parent="AboutDialog/AboutUI"] -margin_top = 99.0 +margin_top = 81.0 margin_right = 268.0 -margin_bottom = 132.0 +margin_bottom = 114.0 text = " Copyright 2019 - Orama Interactive" align = 1 @@ -1727,6 +1712,144 @@ margin_bottom = 70.0 resizable = true dialog_text = "QUIT_LABEL" +[node name="ErrorDialog" type="AcceptDialog" parent="."] +margin_right = 76.0 +margin_bottom = 60.0 +window_title = "Error!" +dialog_text = "This is an error message!" + +[node name="EditPalettePopup" type="WindowDialog" parent="."] +margin_right = 600.0 +margin_bottom = 550.0 +rect_min_size = Vector2( 600, 550 ) +window_title = "Edit Palette" +script = ExtResource( 44 ) + +[node name="VBoxContainer" type="VBoxContainer" parent="EditPalettePopup"] +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_left = 10.0 +margin_top = 10.0 +margin_right = -10.0 +margin_bottom = -10.0 +size_flags_horizontal = 3 + +[node name="HBoxContainer" type="HBoxContainer" parent="EditPalettePopup/VBoxContainer"] +margin_right = 580.0 +margin_bottom = 482.0 +size_flags_vertical = 3 + +[node name="EditPaletteColorPicker" type="ColorPicker" parent="EditPalettePopup/VBoxContainer/HBoxContainer"] +margin_left = 4.0 +margin_top = 4.0 +margin_right = 4.0 +margin_bottom = 4.0 + +[node name="Panel" type="Panel" parent="EditPalettePopup/VBoxContainer/HBoxContainer"] +margin_left = 294.0 +margin_right = 540.0 +margin_bottom = 482.0 +size_flags_horizontal = 3 + +[node name="EditPaletteGridContainer" type="GridContainer" parent="EditPalettePopup/VBoxContainer/HBoxContainer/Panel"] +anchor_right = 1.0 +anchor_bottom = 1.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 +columns = 8 + +[node name="VBoxContainer" type="VBoxContainer" parent="EditPalettePopup/VBoxContainer/HBoxContainer"] +margin_left = 544.0 +margin_right = 580.0 +margin_bottom = 482.0 + +[node name="AddSwatchButton" type="TextureButton" parent="EditPalettePopup/VBoxContainer/HBoxContainer/VBoxContainer"] +margin_right = 36.0 +margin_bottom = 36.0 +texture_normal = ExtResource( 28 ) + +[node name="RemoveSwatchButton" type="TextureButton" parent="EditPalettePopup/VBoxContainer/HBoxContainer/VBoxContainer"] +margin_top = 40.0 +margin_right = 36.0 +margin_bottom = 72.0 +texture_normal = ExtResource( 30 ) + +[node name="HBoxContainer3" type="HBoxContainer" parent="EditPalettePopup/VBoxContainer"] +margin_top = 486.0 +margin_right = 580.0 +margin_bottom = 503.0 + +[node name="Label" type="Label" parent="EditPalettePopup/VBoxContainer/HBoxContainer3"] +margin_top = 1.0 +margin_right = 68.0 +margin_bottom = 16.0 +text = "Color Name:" + +[node name="EditPaletteColorNameLineEdit" type="LineEdit" parent="EditPalettePopup/VBoxContainer/HBoxContainer3"] +margin_left = 72.0 +margin_right = 580.0 +margin_bottom = 17.0 +size_flags_horizontal = 3 + +[node name="HBoxContainer2" type="HBoxContainer" parent="EditPalettePopup/VBoxContainer"] +margin_top = 507.0 +margin_right = 580.0 +margin_bottom = 530.0 +size_flags_horizontal = 3 + +[node name="SpacerControl" type="Control" parent="EditPalettePopup/VBoxContainer/HBoxContainer2"] +margin_right = 159.0 +margin_bottom = 23.0 +size_flags_horizontal = 3 + +[node name="EditPaletteSaveButton" type="Button" parent="EditPalettePopup/VBoxContainer/HBoxContainer2"] +margin_left = 163.0 +margin_right = 201.0 +margin_bottom = 23.0 +text = "Save" + +[node name="SpacerControl2" type="Control" parent="EditPalettePopup/VBoxContainer/HBoxContainer2"] +margin_left = 205.0 +margin_right = 364.0 +margin_bottom = 23.0 +size_flags_horizontal = 3 + +[node name="EditPaletteCancelButton" type="Button" parent="EditPalettePopup/VBoxContainer/HBoxContainer2"] +margin_left = 368.0 +margin_right = 417.0 +margin_bottom = 23.0 +text = "Cancel" + +[node name="SpacerControl3" type="Control" parent="EditPalettePopup/VBoxContainer/HBoxContainer2"] +margin_left = 421.0 +margin_right = 580.0 +margin_bottom = 23.0 +size_flags_horizontal = 3 + +[node name="NewPaletteDialog" type="ConfirmationDialog" parent="."] +margin_right = 200.0 +margin_bottom = 70.0 +window_title = "Create a new custom palette from existing default?" + +[node name="HBoxContainer2" type="HBoxContainer" parent="NewPaletteDialog"] +margin_left = 8.0 +margin_top = 8.0 +margin_right = 315.0 +margin_bottom = 31.0 + +[node name="Label" type="Label" parent="NewPaletteDialog/HBoxContainer2"] +margin_top = 5.0 +margin_right = 77.0 +margin_bottom = 20.0 +text = "Palette Name:" + +[node name="NewPaletteNameLineEdit" type="LineEdit" parent="NewPaletteDialog/HBoxContainer2"] +margin_left = 81.0 +margin_right = 192.0 +margin_bottom = 25.0 +size_flags_horizontal = 3 +expand_to_text_length = true + [node name="AnimationTimer" type="Timer" parent="."] [node name="LeftCursor" type="Sprite" parent="."] @@ -1785,7 +1908,9 @@ visible = false [connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/LayerVBoxContainer/CenterLayerButtons/LayerButtons/CloneLayer" to="." method="add_layer" binds= [ false ]] [connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/LayerVBoxContainer/CenterLayerButtons/LayerButtons/MergeDownLayer" to="." method="_on_MergeLayer_pressed"] [connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/PaletteButtons/AddPalette" to="." method="_on_AddPalette_pressed"] +[connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/PaletteButtons/RemovePalette" to="." method="_on_RemovePalette_pressed"] [connection signal="item_selected" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/PaletteButtons/PaletteOptionButton" to="." method="_on_PaletteOptionButton_item_selected"] +[connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/PaletteButtons/EditPalette" to="." method="_on_EditPalette_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"] @@ -1810,4 +1935,11 @@ visible = false [connection signal="pressed" from="AboutDialog/AboutUI/Links/LinkButtons/Donate" to="AboutDialog" method="_on_Donate_pressed"] [connection signal="confirmed" from="QuitDialog" to="." method="_on_QuitDialog_confirmed"] [connection signal="popup_hide" from="QuitDialog" to="." method="_can_draw_true"] +[connection signal="color_changed" from="EditPalettePopup/VBoxContainer/HBoxContainer/EditPaletteColorPicker" to="EditPalettePopup" method="_on_EditPaletteColorPicker_color_changed"] +[connection signal="pressed" from="EditPalettePopup/VBoxContainer/HBoxContainer/VBoxContainer/AddSwatchButton" to="EditPalettePopup" method="_on_AddSwatchButton_pressed"] +[connection signal="pressed" from="EditPalettePopup/VBoxContainer/HBoxContainer/VBoxContainer/RemoveSwatchButton" to="EditPalettePopup" method="_on_RemoveSwatchButton_pressed"] +[connection signal="text_changed" from="EditPalettePopup/VBoxContainer/HBoxContainer3/EditPaletteColorNameLineEdit" to="EditPalettePopup" method="_on_EditPaletteColorNameLineEdit_text_changed"] +[connection signal="pressed" from="EditPalettePopup/VBoxContainer/HBoxContainer2/EditPaletteSaveButton" to="EditPalettePopup" method="_on_EditPaletteSaveButton_pressed"] +[connection signal="pressed" from="EditPalettePopup/VBoxContainer/HBoxContainer2/EditPaletteCancelButton" to="EditPalettePopup" method="_on_EditPaletteCancelButton_pressed"] +[connection signal="confirmed" from="NewPaletteDialog" to="." method="_on_NewPaletteDialog_confirmed"] [connection signal="timeout" from="AnimationTimer" to="." method="_on_AnimationTimer_timeout"] diff --git a/Prefabs/FrameButton.tscn b/Prefabs/FrameButton.tscn index d5d282de5..c8cda0a6e 100644 --- a/Prefabs/FrameButton.tscn +++ b/Prefabs/FrameButton.tscn @@ -1,27 +1,7 @@ -[gd_scene load_steps=5 format=2] +[gd_scene load_steps=3 format=2] -[ext_resource path="res://Scripts/FrameButton.gd" type="Script" id=1] - -[sub_resource type="StyleBoxFlat" id=1] -bg_color = Color( 0.337255, 0.32549, 0.388235, 1 ) -corner_radius_top_left = 2 -corner_radius_top_right = 2 -corner_radius_bottom_right = 2 -corner_radius_bottom_left = 2 - -[sub_resource type="StyleBoxFlat" id=2] -bg_color = Color( 0.211765, 0.2, 0.247059, 1 ) -corner_radius_top_left = 2 -corner_radius_top_right = 2 -corner_radius_bottom_right = 2 -corner_radius_bottom_left = 2 - -[sub_resource type="StyleBoxFlat" id=3] -bg_color = Color( 0.270588, 0.258824, 0.305882, 1 ) -corner_radius_top_left = 2 -corner_radius_top_right = 2 -corner_radius_bottom_right = 2 -corner_radius_bottom_left = 2 +[ext_resource path="res://Themes & Styles/Main Theme.tres" type="Theme" id=1] +[ext_resource path="res://Scripts/FrameButton.gd" type="Script" id=2] [node name="Frame" type="VBoxContainer"] margin_right = 32.0 @@ -34,12 +14,10 @@ rect_min_size = Vector2( 36, 36 ) mouse_default_cursor_shape = 2 size_flags_horizontal = 0 size_flags_vertical = 0 -custom_styles/hover = SubResource( 1 ) -custom_styles/pressed = SubResource( 2 ) -custom_styles/normal = SubResource( 3 ) +theme = ExtResource( 1 ) toggle_mode = true button_mask = 3 -script = ExtResource( 1 ) +script = ExtResource( 2 ) [node name="FrameTexture" type="TextureRect" parent="FrameButton"] margin_left = 2.0 diff --git a/Prefabs/LayerContainer.tscn b/Prefabs/LayerContainer.tscn index f422219d3..ff213f8c8 100644 --- a/Prefabs/LayerContainer.tscn +++ b/Prefabs/LayerContainer.tscn @@ -1,26 +1,16 @@ -[gd_scene load_steps=6 format=2] +[gd_scene load_steps=4 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] - -[sub_resource type="StyleBoxFlat" id=1] -bg_color = Color( 0.337255, 0.32549, 0.388235, 1 ) - -[sub_resource type="StyleBoxFlat" id=2] -bg_color = Color( 0.211765, 0.2, 0.247059, 1 ) - -[sub_resource type="StyleBoxFlat" id=3] -bg_color = Color( 0.270588, 0.258824, 0.305882, 1 ) +[ext_resource path="res://Themes & Styles/Main Theme.tres" type="Theme" id=1] +[ext_resource path="res://Scripts/LayerContainer.gd" type="Script" id=2] +[ext_resource path="res://Assets/Graphics/Layers/layer_visible.png" type="Texture" id=3] [node name="LayerContainer" type="Button"] margin_right = 160.0 margin_bottom = 42.0 rect_min_size = Vector2( 160, 42 ) -custom_styles/hover = SubResource( 1 ) -custom_styles/pressed = SubResource( 2 ) -custom_styles/normal = SubResource( 3 ) +theme = ExtResource( 1 ) toggle_mode = true -script = ExtResource( 1 ) +script = ExtResource( 2 ) __meta__ = { "_edit_horizontal_guides_": [ ] } @@ -34,7 +24,7 @@ hint_tooltip = "LAYERVISIBILITY_HT" mouse_default_cursor_shape = 2 size_flags_horizontal = 0 size_flags_vertical = 4 -texture_normal = ExtResource( 2 ) +texture_normal = ExtResource( 3 ) [node name="HBoxContainer" type="HBoxContainer" parent="."] anchor_left = 0.5 @@ -57,8 +47,8 @@ stretch_mode = 6 [node name="Label" type="Label" parent="HBoxContainer"] margin_left = 36.0 -margin_top = 9.0 -margin_right = 82.0 +margin_top = 8.0 +margin_right = 75.0 margin_bottom = 23.0 text = "Layer 0" align = 1 diff --git a/Prefabs/PaletteButton.tscn b/Prefabs/PaletteButton.tscn index 81c6fc731..fc1c63245 100644 --- a/Prefabs/PaletteButton.tscn +++ b/Prefabs/PaletteButton.tscn @@ -1,9 +1,11 @@ -[gd_scene load_steps=6 format=2] +[gd_scene load_steps=8 format=2] [ext_resource path="res://Themes & Styles/StyleBoxes/palette_stylebox_hover.tres" type="StyleBox" id=1] [ext_resource path="res://Themes & Styles/StyleBoxes/palette_stylebox_pressedr.tres" type="StyleBox" id=2] -[ext_resource path="res://Themes & Styles/StyleBoxes/palette_stylebox_normal.tres" type="StyleBox" id=3] -[ext_resource path="res://Assets/Graphics/Palette/palette_button_fill.png" type="Texture" id=4] +[ext_resource path="res://Themes & Styles/StyleBoxes/palette_stylebox_focus.tres" type="StyleBox" id=3] +[ext_resource path="res://Themes & Styles/StyleBoxes/palette_stylebox_normal.tres" type="StyleBox" id=4] +[ext_resource path="res://Scripts/PaletteButton.gd" type="Script" id=5] +[ext_resource path="res://Assets/Graphics/Palette/palette_button_fill.png" type="Texture" id=6] [sub_resource type="ImageTexture" id=1] @@ -14,9 +16,11 @@ rect_min_size = Vector2( 26, 26 ) hint_tooltip = "Color Name" custom_styles/hover = ExtResource( 1 ) custom_styles/pressed = ExtResource( 2 ) -custom_styles/normal = ExtResource( 3 ) +custom_styles/focus = ExtResource( 3 ) +custom_styles/normal = ExtResource( 4 ) button_mask = 3 icon = SubResource( 1 ) +script = ExtResource( 5 ) [node name="NinePatchRect" type="NinePatchRect" parent="."] anchor_right = 1.0 @@ -27,7 +31,7 @@ margin_right = -1.0 margin_bottom = -1.0 size_flags_horizontal = 3 size_flags_vertical = 3 -texture = ExtResource( 4 ) +texture = ExtResource( 6 ) patch_margin_left = 2 patch_margin_top = 2 patch_margin_right = 2 diff --git a/Scripts/EditPalettePopup.gd b/Scripts/EditPalettePopup.gd new file mode 100644 index 000000000..ba6d7d354 --- /dev/null +++ b/Scripts/EditPalettePopup.gd @@ -0,0 +1,120 @@ +extends WindowDialog + +onready var palette_grid = $VBoxContainer/HBoxContainer/Panel/EditPaletteGridContainer +onready var color_name_edit = $VBoxContainer/HBoxContainer3/EditPaletteColorNameLineEdit +onready var color_picker = $VBoxContainer/HBoxContainer/EditPaletteColorPicker + +var palette_button = preload("res://Prefabs/PaletteButton.tscn"); + +var current_palette : String +var current_swatch := -1 +var working_palette : Dictionary + + +func open(palette : String) -> void: + current_palette = palette + if Global.palettes.has(palette): + working_palette = Global.palettes[palette].duplicate() + + _display_palette() + + self.popup_centered() + pass + +func _display_palette() -> void: + _clear_swatches() + var index := 0 + + for color_data in working_palette.colors: + var color = Color(color_data.data) + var new_button = palette_button.instance() + + new_button.color = color + new_button.get_child(0).modulate = color + new_button.hint_tooltip = color_data.data.to_upper() + " " + color_data.name + new_button.draggable = true + new_button.index = index + new_button.connect("on_drop_data", self, "on_move_swatch") + new_button.connect("pressed", self, "on_swatch_select", [index]) + + palette_grid.add_child(new_button) + index += 1 + +func _clear_swatches() -> void: + for child in palette_grid.get_children(): + if child is BaseButton: + child.disconnect("on_drop_data", self, "on_move_swatch") + child.queue_free() + +func on_swatch_select(index : int) -> void: + current_swatch = index + color_name_edit.text = working_palette.colors[index].name + color_picker.color = working_palette.colors[index].data + pass + +func on_move_swatch(from : int, to : int) -> void: + var color_to_move = working_palette.colors[from] + working_palette.colors.remove(from) + working_palette.colors.insert(to, color_to_move) + + palette_grid.move_child(palette_grid.get_child(from), to) + + # Re-index swatches with new order + var index := 0 + for child in palette_grid.get_children(): + child.index = index + index += 1 + pass + +func _on_AddSwatchButton_pressed() -> void: + var color = Color.white + var color_data = {} + color_data.data = color.to_html(true) + color_data.name = "no name" + working_palette.colors.push_back(color_data) + var new_button = palette_button.instance() + + new_button.color = color + new_button.get_child(0).modulate = color + new_button.hint_tooltip = color_data.data.to_upper() + " " + color_data.name + new_button.draggable = true + var index : int = palette_grid.get_child_count() + new_button.index = index + new_button.connect("on_drop_data", self, "on_move_swatch") + new_button.connect("pressed", self, "on_swatch_select", [index]) + + palette_grid.add_child(new_button) + pass # Replace with function body. + +func _on_RemoveSwatchButton_pressed() -> void: + working_palette.colors.remove(current_swatch) + palette_grid.remove_child(palette_grid.get_child(current_swatch)) + pass # Replace with function body. + +func _on_EditPaletteSaveButton_pressed() -> void: + Global.palettes[current_palette] = working_palette + Global.palette_container.on_palette_select(current_palette) + Global.palette_container.save_palette(current_palette, working_palette.name + ".json") + self.hide() + pass # Replace with function body. + +func _on_EditPaletteCancelButton_pressed() -> void: + self.hide() + pass # Replace with function body. + +func _on_EditPaletteColorNameLineEdit_text_changed(new_text) -> void: + if current_swatch > 0 && current_swatch < working_palette.colors.size(): + working_palette.colors[current_swatch].name = new_text + _refresh_hint_tooltip(current_swatch) + pass + +func _on_EditPaletteColorPicker_color_changed(color) -> void: + if current_swatch > 0 && current_swatch < working_palette.colors.size(): + palette_grid.get_child(current_swatch).get_child(0).modulate = color + working_palette.colors[current_swatch].data = color.to_html(true) + _refresh_hint_tooltip(current_swatch) + pass + +func _refresh_hint_tooltip(index : int): + palette_grid.get_child(current_swatch).hint_tooltip = working_palette.colors[current_swatch].data.to_upper() + " " + working_palette.colors[current_swatch].name + pass diff --git a/Scripts/Global.gd b/Scripts/Global.gd index 6d2fa37bf..d62aadceb 100644 --- a/Scripts/Global.gd +++ b/Scripts/Global.gd @@ -187,6 +187,11 @@ var remove_palette_button : TextureButton var palette_option_button : OptionButton var edit_palette_button : BaseButton var palette_container : GridContainer +var edit_palette_popup : WindowDialog +var new_palette_dialog : ConfirmationDialog +var new_palette_name_line_edit : LineEdit + +var error_dialog : AcceptDialog func _ready() -> void: undo_redo = UndoRedo.new() @@ -275,6 +280,11 @@ func _ready() -> void: palette_option_button = find_node_by_name(root, "PaletteOptionButton") edit_palette_button = find_node_by_name(root, "EditPalette") palette_container = find_node_by_name(root, "PaletteContainer") + edit_palette_popup = find_node_by_name(root, "EditPalettePopup") + new_palette_dialog = find_node_by_name(root, "NewPaletteDialog") + new_palette_name_line_edit = find_node_by_name(new_palette_dialog, "NewPaletteNameLineEdit") + + error_dialog = find_node_by_name(root, "ErrorDialog") #Thanks to https://godotengine.org/qa/17524/how-to-find-an-instanced-scene-by-its-name func find_node_by_name(root, node_name) -> Node: @@ -439,7 +449,7 @@ func update_left_custom_brush() -> void: custom_brush.copy_from(custom_brushes[custom_left_brush_index]) var custom_brush_size = custom_brush.get_size() custom_brush.resize(custom_brush_size.x * left_brush_size, custom_brush_size.y * left_brush_size, Image.INTERPOLATE_NEAREST) - custom_left_brush_image = blend_image_with_color(custom_brush, left_color_picker.color, left_interpolate_slider.value) + custom_left_brush_image = blend_image_with_color(custom_brush, left_color_picker.color, left_interpolate_slider.value / 100) custom_left_brush_texture.create_from_image(custom_left_brush_image, 0) left_brush_type_button.get_child(0).texture = custom_left_brush_texture @@ -455,7 +465,7 @@ func update_right_custom_brush() -> void: custom_brush.copy_from(custom_brushes[custom_right_brush_index]) var custom_brush_size = custom_brush.get_size() custom_brush.resize(custom_brush_size.x * right_brush_size, custom_brush_size.y * right_brush_size, Image.INTERPOLATE_NEAREST) - custom_right_brush_image = blend_image_with_color(custom_brush, right_color_picker.color, right_interpolate_slider.value) + custom_right_brush_image = blend_image_with_color(custom_brush, right_color_picker.color, right_interpolate_slider.value / 100) custom_right_brush_texture.create_from_image(custom_right_brush_image, 0) right_brush_type_button.get_child(0).texture = custom_right_brush_texture diff --git a/Scripts/HorizontalRuler.gd b/Scripts/HorizontalRuler.gd index 7136bf07a..b0c443ef6 100644 --- a/Scripts/HorizontalRuler.gd +++ b/Scripts/HorizontalRuler.gd @@ -14,9 +14,9 @@ func _process(delta : float) -> void: update() var mouse_pos := get_local_mouse_position() if mouse_pos.x < RULER_WIDTH: #For double guides - mouse_default_cursor_shape = Control.CURSOR_BDIAGSIZE + mouse_default_cursor_shape = Control.CURSOR_FDIAGSIZE else: - mouse_default_cursor_shape = Control.CURSOR_HSPLIT + mouse_default_cursor_shape = Control.CURSOR_VSPLIT #Code taken and modified from Godot's source code func _draw() -> void: diff --git a/Scripts/Main.gd b/Scripts/Main.gd index eb37f3362..706733504 100644 --- a/Scripts/Main.gd +++ b/Scripts/Main.gd @@ -1012,12 +1012,12 @@ func _on_RightFillAreaOptions_item_selected(ID : int) -> void: func _on_LeftLightenDarken_item_selected(ID : int) -> void: Global.left_ld = ID func _on_LeftLDAmountSpinbox_value_changed(value : float) -> void: - Global.left_ld_amount = value + Global.left_ld_amount = value / 100 func _on_RightLightenDarken_item_selected(ID : int) -> void: Global.right_ld = ID func _on_RightLDAmountSpinbox_value_changed(value : float) -> void: - Global.right_ld_amount = value + Global.right_ld_amount = value / 100 func _on_LeftHorizontalMirroring_toggled(button_pressed) -> void: Global.left_horizontal_mirror = button_pressed @@ -1047,3 +1047,16 @@ func _exit_tree() -> void: func _on_PaletteOptionButton_item_selected(ID) -> void: var palette_name = Global.palette_option_button.get_item_metadata(ID) Global.palette_container.on_palette_select(palette_name) + +func _on_EditPalette_pressed() -> void: + Global.palette_container.on_edit_palette() + pass + +func _on_RemovePalette_pressed() -> void: + Global.palette_container.remove_current_palette() + pass + +func _on_NewPaletteDialog_confirmed() -> void: + Global.palette_container.on_new_palette_confirmed() + pass + diff --git a/Scripts/PaletteButton.gd b/Scripts/PaletteButton.gd new file mode 100644 index 000000000..72e9b8525 --- /dev/null +++ b/Scripts/PaletteButton.gd @@ -0,0 +1,26 @@ +extends Button +signal on_drop_data + +export var index := 0; +export var color : Color = Color.white +export var draggable := false + +var drag_preview_texture = preload("res://Assets/Graphics/Palette/swatch_drag_preview.png") + +func get_drag_data(position): + var data = null; + if(draggable): + #print(String(get_instance_id()) + ": Drag Start"); + data = {source_index = index}; + var drag_icon = TextureRect.new(); + drag_icon.texture = drag_preview_texture; + drag_icon.modulate = color + set_drag_preview(drag_icon); + return data; + +func can_drop_data(position, data): + return true; + +func drop_data(position, data): + emit_signal("on_drop_data", data.source_index, index); + pass; diff --git a/Scripts/PaletteContainer.gd b/Scripts/PaletteContainer.gd index f629a01e4..ef75a2597 100644 --- a/Scripts/PaletteContainer.gd +++ b/Scripts/PaletteContainer.gd @@ -3,46 +3,13 @@ extends GridContainer var palette_button = preload("res://Prefabs/PaletteButton.tscn"); var current_palette = "Default" - -var default_palette = [ - Color("#FF000000"), - Color("#FF222034"), - Color("#FF45283c"), - Color("#FF663931"), - Color("#FF8f563b"), - Color("#FFdf7126"), - Color("#FFd9a066"), - Color("#FFeec39a"), - Color("#FFfbf236"), - Color("#FF99e550"), - Color("#FF6abe30"), - Color("#FF37946e"), - Color("#FF4b692f"), - Color("#FF524b24"), - Color("#FF323c39"), - Color("#FF3f3f74"), - Color("#FF306082"), - Color("#FF5b6ee1"), - Color("#FF639bff"), - Color("#FF5fcde4"), - Color("#FFcbdbfc"), - Color("#FFffffff"), - Color("#FF9badb7"), - Color("#FF847e87"), - Color("#FF696a6a"), - Color("#FF595652"), - Color("#FF76428a"), - Color("#FFac3232"), - Color("#FFd95763"), - Color("#FFd77bba"), - Color("#FF8f974a"), - Color("#FF8a6f30") -] +var from_palette : = {} # Called when the node enters the scene tree for the first time. func _ready() -> void: _load_palettes() + #Select default palette "Default" on_palette_select(current_palette) func _clear_swatches() -> void: @@ -53,25 +20,93 @@ func _clear_swatches() -> void: func on_palette_select(palette_name : String) -> void: _clear_swatches() - current_palette = palette_name - if Global.palettes.has(palette_name): - _display_palette(Global.palettes[palette_name]) - else: + if Global.palettes.has(palette_name): #Palette exists in memory + current_palette = palette_name + var palette : Dictionary = Global.palettes[palette_name] + + Global.remove_palette_button.disabled = true # Cannot remove by default + if palette.has("editable"): + if palette.editable: + Global.remove_palette_button.disabled = false # Can remove if custom palette + + _display_palette(palette) + else: #Use default on fail + current_palette = "Default" _display_palette(Global.palettes["Default"]) -func _display_palette(palette : Array) -> void: +func on_edit_palette() -> void: + var palette : Dictionary = Global.palettes[current_palette] + + var create_new_palette := true # Create new palette by default + if palette.has("editable"): + if palette.editable: + create_new_palette = false # Edit if already a custom palette + + if create_new_palette: + from_palette = Global.palettes[current_palette] + Global.new_palette_name_line_edit.text = "Custom_" + current_palette + Global.new_palette_dialog.popup_centered() + else: + from_palette = {} + Global.edit_palette_popup.open(current_palette) + +func on_new_palette_confirmed() -> void: + var new_palette_name : String = Global.new_palette_name_line_edit.text + var result : String = create_new_palette(new_palette_name, from_palette) + if not result.empty(): + Global.error_dialog.set_text(result); + Global.error_dialog.popup_centered() + +func create_new_palette(name : String, from_palette : Dictionary = {}) -> String: # Returns empty string, else error string + var new_palette : Dictionary = {} + + # Check if new name is valid + if name.empty(): + return "Error: Palette must have a valid name." + if Global.palettes.has(name): + return "Error: Palette '" + name + "' already exists!" + + new_palette.name = name + + # Check if source palette has data + if from_palette.has("name"): + new_palette = from_palette.duplicate() + new_palette.name = name + new_palette.editable = true + else: + new_palette.colors = [] + new_palette.comments = "" + new_palette.editable = true + + # Add palette to Global and options + Global.palettes[name] = new_palette + Global.palette_option_button.add_item(name) + var index := Global.palette_option_button.get_item_count() - 1 + Global.palette_option_button.set_item_metadata(index, name) + Global.palette_option_button.select(index) + + save_palette(name, name + ".json") + + on_palette_select(name) + return "" + +func _display_palette(palette : Dictionary) -> void: var index := 0 - for color_data in palette: + + for color_data in palette.colors: var color = Color(color_data.data) var new_button = palette_button.instance() + new_button.get_child(0).modulate = color new_button.hint_tooltip = color_data.data.to_upper() + " " + color_data.name new_button.connect("pressed", self, "on_color_select", [index]) + add_child(new_button) index += 1 func on_color_select(index : int) -> void: - var color = Color(Global.palettes[current_palette][index].data) + var color = Color(Global.palettes[current_palette].colors[index].data) + if Input.is_action_just_released("left_mouse"): Global.left_color_picker.color = color Global.update_left_custom_brush() @@ -80,28 +115,21 @@ func on_color_select(index : int) -> void: Global.update_right_custom_brush() func _load_palettes() -> void: - var files := [] - + var file := File.new() var dir := Directory.new() if not dir.dir_exists("user://palettes"): dir.make_dir("user://palettes"); + if not dir.dir_exists("user://palettes/custom"): + dir.make_dir("user://palettes/custom") + if not file.file_exists("user://palettes/default_palette.json"): dir.copy("res://Assets/Graphics/Palette/default_palette.json","user://palettes/default_palette.json"); + if not file.file_exists("user://palettes/bubblegum16.json"): dir.copy("res://Assets/Graphics/Palette/bubblegum16.json","user://palettes/bubblegum16.json"); - dir.open("user://palettes") - dir.list_dir_begin() + var palette_files : Array = get_palette_files("user://palettes") - while true: - var file_name = dir.get_next() - if file_name == "": - break - elif not file_name.begins_with(".") && file_name.to_lower().ends_with("json"): - files.append(file_name) - - dir.list_dir_end() - - for file_name in files: + for file_name in palette_files: var result : String = load_palette("user://palettes/" + file_name) if result: Global.palette_option_button.add_item(result) @@ -110,10 +138,36 @@ func _load_palettes() -> void: if result == "Default": Global.palette_option_button.select(index) - for item in Global.palette_option_button.items: - print(item) + dir.open("user://palettes/custom") + var custom_palette_files : Array = get_palette_files("user://palettes/custom") + + for file_name in custom_palette_files: + var result : String = load_palette("user://palettes/custom/" + file_name) + if result: + Global.palette_option_button.add_item(result) + var index := Global.palette_option_button.get_item_count() - 1 + Global.palette_option_button.set_item_metadata(index, result) + +func get_palette_files(path : String) -> Array: + var dir := Directory.new() + var results = [] + + dir.open(path) + dir.list_dir_begin() + + while true: + var file_name = dir.get_next() + if file_name == "": + break + elif not file_name.begins_with(".") && file_name.to_lower().ends_with("json"): + results.append(file_name) + + dir.list_dir_end() + + return results func load_palette(path : String) -> String: + # Open file for reading var file := File.new() file.open(path, File.READ) @@ -121,7 +175,7 @@ func load_palette(path : String) -> String: var result_json = JSON.parse(text) var result = {} - var palette_name = null + var palette_name = null # Default error condition if result_json.error != OK: # If parse has errors print("Error: ", result_json.error) @@ -129,21 +183,36 @@ func load_palette(path : String) -> String: print("Error String: ", result_json.error_string) else: # If parse OK var data = result_json.result - if data.has("name"): + if data.has("name"): #If data is 'valid' palette file palette_name = data.name - Global.palettes[data.name] = data.colors + Global.palettes[data.name] = data file.close() return palette_name -func _save_palette(palette : Array, name : String, path : String) -> void: +func remove_current_palette() -> void: + if Global.palettes[current_palette].has("editable"): + if Global.palettes[current_palette].editable: + _delete_palette_file(current_palette + ".json") + Global.palettes.erase(current_palette) + var selected_index := Global.palette_option_button.selected + Global.palette_option_button.remove_item(selected_index) + if(selected_index - 1 >= 0): + Global.palette_option_button.select(selected_index - 1) + on_palette_select(Global.palette_option_button.get_item_metadata(selected_index - 1)) + pass + +func _delete_palette_file(file_name : String) -> void: + var dir = Directory.new() + dir.remove("user://palettes/custom/" + file_name) + +func save_palette(palette_name : String, filename : String) -> void: + var palette_data = Global.palettes[palette_name] + # Open file for writing var file := File.new() - file.open(path, File.WRITE) + file.open("user://palettes/custom/" + filename, File.WRITE) - var data := {} - data.name = name - data.colors = palette - - file.store_string(JSON.print(data)) + # Write palette data to file + file.store_string(JSON.print(palette_data)) file.close() diff --git a/Themes & Styles/Main Theme.tres b/Themes & Styles/Main Theme.tres index 1705ef9ff..c9cffbb92 100644 --- a/Themes & Styles/Main Theme.tres +++ b/Themes & Styles/Main Theme.tres @@ -1,8 +1,170 @@ -[gd_resource type="Theme" load_steps=2 format=2] +[gd_resource type="Theme" load_steps=14 format=2] [ext_resource path="res://Assets/Fonts/Roboto-Regular.tres" type="DynamicFont" id=1] +[sub_resource type="StyleBoxFlat" id=1] +bg_color = Color( 0.517647, 0.517647, 0.517647, 1 ) +border_width_left = 6 +border_width_top = 4 +border_width_right = 6 +border_width_bottom = 4 +border_color = Color( 0.517647, 0.517647, 0.517647, 1 ) +corner_radius_top_left = 4 +corner_radius_top_right = 4 +corner_radius_bottom_right = 4 +corner_radius_bottom_left = 4 +anti_aliasing = false + +[sub_resource type="StyleBoxFlat" id=2] +bg_color = Color( 0.321569, 0.321569, 0.321569, 1 ) +border_width_left = 6 +border_width_top = 4 +border_width_right = 6 +border_width_bottom = 4 +border_color = Color( 0.321569, 0.321569, 0.321569, 1 ) +corner_radius_top_left = 4 +corner_radius_top_right = 4 +corner_radius_bottom_right = 4 +corner_radius_bottom_left = 4 +anti_aliasing = false + +[sub_resource type="StyleBoxFlat" id=3] +bg_color = Color( 0.2, 0.2, 0.2, 1 ) +border_width_left = 6 +border_width_top = 4 +border_width_right = 6 +border_width_bottom = 4 +border_color = Color( 0.2, 0.2, 0.2, 1 ) +corner_radius_top_left = 4 +corner_radius_top_right = 4 +corner_radius_bottom_right = 4 +corner_radius_bottom_left = 4 +anti_aliasing = false + +[sub_resource type="StyleBoxFlat" id=4] +bg_color = Color( 0.6, 0.6, 0.6, 0 ) + +[sub_resource type="StyleBoxFlat" id=5] +bg_color = Color( 0.6, 0.6, 0.6, 0 ) + +[sub_resource type="StyleBoxFlat" id=6] +bg_color = Color( 0.6, 0.6, 0.6, 0 ) + +[sub_resource type="StyleBoxFlat" id=7] +bg_color = Color( 0.6, 0.6, 0.6, 0 ) + +[sub_resource type="StyleBoxFlat" id=8] +bg_color = Color( 0.321569, 0.321569, 0.321569, 1 ) +border_width_left = 8 +border_width_top = 1 +border_width_right = 4 +border_width_bottom = 1 +border_color = Color( 0.321569, 0.321569, 0.321569, 1 ) +corner_radius_top_left = 4 +corner_radius_top_right = 4 +corner_radius_bottom_right = 4 +corner_radius_bottom_left = 4 +anti_aliasing = false + +[sub_resource type="StyleBoxFlat" id=9] +bg_color = Color( 0.321569, 0.321569, 0.321569, 1 ) +border_width_left = 5 +border_width_top = 10 +border_width_right = 5 +border_width_bottom = 5 +border_color = Color( 0.321569, 0.321569, 0.321569, 1 ) +corner_radius_top_left = 4 +corner_radius_top_right = 4 +corner_radius_bottom_right = 4 +corner_radius_bottom_left = 4 +anti_aliasing = false + +[sub_resource type="StyleBoxFlat" id=10] +bg_color = Color( 0.2, 0.2, 0.2, 1 ) +border_width_left = 10 +border_width_top = 6 +border_width_right = 10 +border_width_bottom = 8 +border_color = Color( 0.2, 0.2, 0.2, 1 ) + +[sub_resource type="StyleBoxFlat" id=11] +bg_color = Color( 0.145098, 0.145098, 0.164706, 1 ) +border_width_left = 10 +border_width_top = 6 +border_width_right = 10 +border_width_bottom = 8 +border_color = Color( 0.145098, 0.145098, 0.164706, 1 ) + +[sub_resource type="StyleBoxFlat" id=12] +bg_color = Color( 0.321569, 0.321569, 0.321569, 1 ) +border_width_left = 10 +border_width_top = 6 +border_width_right = 10 +border_width_bottom = 8 +border_color = Color( 0.321569, 0.321569, 0.321569, 1 ) + [resource] default_font = ExtResource( 1 ) +Button/colors/font_color = Color( 0.878431, 0.878431, 0.878431, 1 ) +Button/colors/font_color_disabled = Color( 0.9, 0.9, 0.9, 0.2 ) +Button/colors/font_color_hover = Color( 0.941176, 0.941176, 0.941176, 1 ) +Button/colors/font_color_pressed = Color( 1, 1, 1, 1 ) +Button/constants/hseparation = 2 +Button/fonts/font = null +Button/styles/disabled = null +Button/styles/focus = null +Button/styles/hover = SubResource( 1 ) +Button/styles/normal = SubResource( 2 ) +Button/styles/pressed = SubResource( 3 ) +CheckBox/colors/font_color = Color( 0.878431, 0.878431, 0.878431, 1 ) +CheckBox/colors/font_color_disabled = Color( 0.9, 0.9, 0.9, 0.2 ) +CheckBox/colors/font_color_hover = Color( 0.941176, 0.941176, 0.941176, 1 ) +CheckBox/colors/font_color_hover_pressed = Color( 1, 1, 1, 1 ) +CheckBox/colors/font_color_pressed = Color( 1, 1, 1, 1 ) +CheckBox/constants/check_vadjust = 0 +CheckBox/constants/hseparation = 4 +CheckBox/fonts/font = null +CheckBox/icons/checked = null +CheckBox/icons/radio_checked = null +CheckBox/icons/radio_unchecked = null +CheckBox/icons/unchecked = null +CheckBox/styles/disabled = null +CheckBox/styles/focus = null +CheckBox/styles/hover = SubResource( 4 ) +CheckBox/styles/hover_pressed = SubResource( 5 ) +CheckBox/styles/normal = SubResource( 6 ) +CheckBox/styles/pressed = SubResource( 7 ) GridContainer/constants/hseparation = 0 GridContainer/constants/vseparation = 0 +LineEdit/colors/clear_button_color = Color( 0.878431, 0.878431, 0.878431, 1 ) +LineEdit/colors/clear_button_color_pressed = Color( 1, 1, 1, 1 ) +LineEdit/colors/cursor_color = Color( 0.941176, 0.941176, 0.941176, 1 ) +LineEdit/colors/font_color = Color( 0.878431, 0.878431, 0.878431, 1 ) +LineEdit/colors/font_color_selected = Color( 0, 0, 0, 1 ) +LineEdit/colors/selection_color = Color( 0.490196, 0.490196, 0.490196, 1 ) +LineEdit/constants/minimum_spaces = 12 +LineEdit/fonts/font = null +LineEdit/icons/clear = null +LineEdit/styles/focus = null +LineEdit/styles/normal = SubResource( 8 ) +LineEdit/styles/read_only = null +TabContainer/colors/font_color_bg = Color( 0.690196, 0.690196, 0.690196, 1 ) +TabContainer/colors/font_color_disabled = Color( 0.9, 0.9, 0.9, 0.2 ) +TabContainer/colors/font_color_fg = Color( 0.941176, 0.941176, 0.941176, 1 ) +TabContainer/constants/hseparation = 4 +TabContainer/constants/label_valign_bg = 2 +TabContainer/constants/label_valign_fg = 0 +TabContainer/constants/side_margin = 8 +TabContainer/constants/top_margin = 24 +TabContainer/fonts/font = null +TabContainer/icons/decrement = null +TabContainer/icons/decrement_highlight = null +TabContainer/icons/increment = null +TabContainer/icons/increment_highlight = null +TabContainer/icons/menu = null +TabContainer/icons/menu_highlight = null +TabContainer/styles/panel = SubResource( 9 ) +TabContainer/styles/tab_bg = SubResource( 10 ) +TabContainer/styles/tab_disabled = SubResource( 11 ) +TabContainer/styles/tab_fg = SubResource( 12 ) +VBoxContainer/constants/separation = 4 diff --git a/Themes & Styles/StyleBoxes/palette_stylebox_focus.tres b/Themes & Styles/StyleBoxes/palette_stylebox_focus.tres new file mode 100644 index 000000000..b734ad9a2 --- /dev/null +++ b/Themes & Styles/StyleBoxes/palette_stylebox_focus.tres @@ -0,0 +1,11 @@ +[gd_resource type="StyleBoxTexture" load_steps=2 format=2] + +[ext_resource path="res://Assets/Graphics/Palette/palette_button.png" type="Texture" id=1] + +[resource] +texture = ExtResource( 1 ) +region_rect = Rect2( 0, 0, 8, 8 ) +margin_left = 2.0 +margin_right = 2.0 +margin_top = 2.0 +margin_bottom = 2.0 diff --git a/Translations/#Translations.csv b/Translations/#Translations.csv index cc59177fa..202e0f915 100644 --- a/Translations/#Translations.csv +++ b/Translations/#Translations.csv @@ -1,152 +1,152 @@ -id,en,el,fr,de,pl,ru -OK,OK,Εντάξει,OK,OK,OK,OK -Cancel,Cancel,Άκυρο,Annuler,Abbrechen,Anuluj,Отмена -Open,Open,Άνοιγμα,Ouvrir,Öffnen,Otwórz,Открыть -Please Confirm...,Please Confirm...,Παρακαλώ επιβεβαιώστε...,Veuillez confirmer...,Bitte bestätigen...,Proszę potwierdzić...,Пожалуйста подтвердите... -Image Size,Image Size,Μέγεθος εικόνας,Taille de l'image,Bildgröße,Rozmiar obrazu,Размер изображения -Width:,Width:,Πλάτος:,Largeur :,Weite,Szerokość:,Ширина: -Height:,Height:,Ύψος:,Hauteur :,Höhe,Wysokość:,Высота -File,File,Αρχείο,Fichier,Datei,Plik,Файл -Edit,Edit,Επεξεργασία,Édition,Bearbeiten,Edycja,Редактировать -View,View,Προβολή,Affichage,Ansicht,Widok,Просмотр -Help,Help,Βοήθεια,Aide,Hilfe,Pomoc,Помощь -New...,New...,Νέο...,Nouveau...,Neu,Nowy...,Создать... -Open...,Open...,Άνοιγμα...,Ouvrir...,Öffnen...,Otwórz...,Открыть... -Save...,Save...,Αποθήκευση...,Enregistrer...,Speichern...,Zapisz...,Сохранить... -Save as...,Save as...,Αποθήκευση ως...,Enregistrer sous...,Speichern als...,Zapisz jako...,Сохранить как... -Import PNG...,Import PNG...,Εισαγωγή PNG...,Importer une image PNG...,Importiere PNG,Importuj PNG…,Импорт PNG... -Export PNG...,Export PNG...,Εξαγωγή PNG...,Exporter une image PNG...,Exportiere PNG,Eksportuj PNG…,Экспорт PNG... -Export PNG as...,Export PNG as...,Εξαγωγή PNG ως...,Exporter une image PNG sous...,Exportiere PNG als...,Eksportuj PNG jako...,Экспортировать PNG как... -Quit,Quit,Έξοδος,Quitter,Verlassen,Wyjdź,Выйти -Undo,Undo,Αναίρεση,Annuler,Rückgängig,Cofnij,Отменить -Redo,Redo,Ακύρωση αναίρεσης,Refaire,Wiederherstellen,Przywróć zmiany,Повторить -Scale Image,Scale Image,Κλιμάκωση εικόνας,Redimensionner l'image,Bild skalieren,Skalowanie obrazu,Увеличить изображение -Crop Image,Crop Image,Περικοπή,Rogner l'image,Bild zuschneiden,Kadrowanie obrazu,Обрезать выделенное -Clear Selection,Clear Selection,Καθαρισμός επιλογής,Ne rien sélectionner,Ausgewählten Bereich löschen,Wyczyść zaznaczenie,Снять выделение -Flip Horizontal,Flip Horizontal,Οριζόντια αναστροφή,Miroir horizontal,Horizontal spiegeln,Odbij w poziomie,Отразить по горизонтали -Flip Vertical,Flip Vertical,Κάθετη αναστροφή,Miroir vertical,Vertikal spiegeln,Odbij w pionie,Отразить по вертикале -Preferences,Preferences,Προτιμήσεις,Préférences,Einstellungen,Preferencje,Настройки -Tile Mode,Tile Mode,Λειτουργία μοτίβου,Mode tuile,Tile Mode,Tryb kafelkowy,Замостить плиткой -Show Grid,Show Grid,Εμφάνιση πλέγματος,Afficher la grille,Zeige Gitter,Pokaż siatkę,Показывать сетку -Show Rulers,Show Rulers,Εμφάνιση χαράκων,Afficher les règles,Zeige Lineale,Pokaż linijki,Показывать линейку -Show Guides,Show Guides,Εμφάνιση οδηγών,Afficher les guides,Zeige Anleitungen,Pokaż prowadnice,Показывать направляющие -Fill with color:,Fill with color:,Γέμισμα με χρώμα:,Remplir avec la couleur :,Fülle mit Farbe,Wypełnij kolorem:,Заливка цветом: -Open a File,Open a File,Άνοιγμα αρχείου,Ouvrir un fichier,Öffne eine Datei,Otwórz plik,Октрыть файл -Open File(s),Open File(s),Άνοιγμα αρχείου/ων,Ouvrir des fichiers,Öffne Datei(en),Otwórz pliki,Открыть файл(ы) -IMPORT_FILE_LABEL,Import as new frame,Εισαγωγή ως νέο καρέ,Importer en tant que trame,Importier als neues Frame,Importuj jako nowa klatka,Добавить как новый кадр -Save Sprite as .pxo,Save Sprite as .pxo,Αποθήκευση εικόνας ως .pxo,Enregistrer la sprite au format .pxo,Speichere Sprite als .pxo,Zapisz Sprite do .pxo,Сохранить Sprite как .pxo -Export Sprite,Export Sprite,Εξαγωγή εικόνας,Exporter une sprite,Exportiere Sprite,Eksportuj Sprite,Экспортировать Sprite -EXPORT_ALLFRAMES_LABEL,Export all frames,Εξαγωγή όλων των καρέ,Exporter toutes les trames,Exportiere alle Frames,Eksportuj wszystkie klatki,Экспортировать все кадры как -EXPORT_FRAMES_ASFILE_LABEL,Export frames as a single file,Εξαγωγή όλων των καρέ στο ίδιο αρχείο,Exporter les trames en un seul fichier,Exportiere Frames als eine einzige Datei,Eksportuj klatki jako jeden plik,Экспортировать кадры в один файл -EXPORT_VERTICAL_SPRITESHEET_LABEL,Vertical spritesheet,Κάθετη ευθυγράμμιση,Spritesheet vertical,Vertikales Spritesheet,Pionowy arkusz,Экспорт Sprite-листа -Path:,Path:,Διαδρομή:,Chemin :,Pfad:,Ścieżka:,Путь: -Directories & Files:,Directories & Files:,Φάκελοι & Αρχεία:,Répertoires et fichiers :,Verzeichnisse & Dateien,Pliki oraz katalogi:,Словари и файлы: -File:,File:,Αρχείο:,Fichier :,Datei:,Plik:,Файл: -Interpolation:,Interpolation:,Παρεμβολή:,Interpolation :,Interpolation,Interpolacja:,Интерполяция: -Nearest,Nearest,Χωρίς,Le plus proche,Nächstes,Najbliższy sąsiad,Ближайший -Bilinear,Bilinear,Διγραμμική,Linéaire,Bilinear,Dwuliniowa,Бинарный -Cubic,Cubic,Κυβική,Cubique,Kubisch,Sześcienna,Кубический -Trilinear,Trilinear,Τριγραμμική,Trilinéaire,Trilinear,Trójlinowa,Трехлинейный -Grid options,Grid options,Επιλογές πλέγματος,Configuration de la grille,Gitter Optionen,Ustawienia siatki,Настройки сетки -Color:,Color:,Χρώμα:,Couleur :,Farbe:,Kolor:,Цвет: -Language:,Language:,Γλώσσα:,Langue :,Sprache:,Język:,Язык: -System Language,System Language,Γλώσσα Συστήματος,Langue système,System Sprache,Język systemowy,Системный язык -About Pixelorama,About Pixelorama,Σχετικά με το Pixelorama,À propos de Pixelorama,Über Pixelorama,O Pixeloramie,О Pixeloram'е -MADEBY_LABEL,Your Free and Open Source Sprite Editor!\nDeveloped by Orama Interactive\n,Το δωρεάν και ανοιχτού κώδικα πρόγραμμά σας!\nΦτιαγμένο από την Orama Interactive\n,Votre éditeur de sprites libre et open source\nDéveloppé par Orama Interactive\n,Ihr kostenloser und opensource Pixeleditor!\nEntwickelt von Orama Interactive\n,Twój darmowy edytor Sprite-ów na otwartej licencji!\nTworzony przez: Orama Interactive\n,Ваш бесплатный и открытый Sprite редактор!\nРазработано Orama Interactive\n -Website,Website,Ιστοσελίδα,Site Web,Website,Strona internetowa,Сайт -Donate,Donate,Κάντε μια δωρεά,Faire un don,Spenden,Wspomóż,Поддержать -QUIT_LABEL,Are you sure you want to exit Pixelorama?,Σίγουρα θέλετε να βγείτε από το Pixelorama;,Voulez-vous vraiment quitter Pixelorama ?,Möchten sie Pixelorama wirklich verlassen?,Na pewno chcesz opuścić Pixeloramę?,Вы действительно хотите выйти из Pixeloram'ы? -Utility Tools,Utility Tools,Βοηθητικά Εργαλεία,Outils utilitaires,Dienstwerkzeuge,Narzędzia,Сервисные инструменты -RECTSELECT_HT,Rectangular Selection\n\nR for left mouse button\nAlt + R for right mouse button\n\nPress Shift to move the content,Ορθογώνια επιλογή\n\nR για το αριστερό κουμπί ποντικιού\nAlt + R για το δεξί κουμπί ποντικιού\n\nΠατήστε Shift για να μετακινηθεί το περιεχόμενο,Sélection rectangulaire\n\nR pour le bouton gauche de la souris\n\nAlt + R pour le bouton droit de la souris\n\nMaintenez Maj. appuyée pour déplacer le contenu,Rechteckige Auswahl\n\nR für die linke Maustaste\nAlt + R für die rechte Maustaste\n\nPresse Shift zum verschieben des Inhalts,Zaznaczenie prostokątne\n\nR dla lewego narzędzia\nAlt + R dla prawego narzędzia\n\nPrzytrzymaj Shift aby przenieść zawartość,Прямоугольное выдиление\n\nR для ЛКМ\nAlt + R для ПКМ\n\nShift для перемещения контента -COLORPICKER_HT,Color Picker\nSelect a color from a pixel of the sprite\n\nO for left mouse button\nAlt + O for right mouse button,Επιλογέας χρωμάτων\nΕπιλέξτε ένα χρώμα από ένα εικονοστοιχείο της εικόνας\n\nΟ για το αριστερό κουμπί ποντικιού\nAlt + Ο για το δεξί κουμπί ποντικιού,Sélecteur de couleurs\nSélectionnez la couleur d'un pixel de la sprite\n\nO pour le bouton gauche de la souris\n\nAlt + O pour le bouton droit de la souris,Farbauswahl\Wähle einr Farbe von einem Pixel des Sprites\n\nO für die linke Maustaste\nAlt + O für die rechte Maustaste,Próbnik\nPobiera kolor wybranego piksela do wybranego narzędzia.\n\nO dla lewego narzędzia\nAlt + O dla prawego narzędzia,Выбор цвета\nВыбрать цвет из пикселя Sprit'а\n\nO для ЛКМ\nAlt + O для ПКМ -Draw Tools,Draw Tools,Εργαλεία Ζωγραφικής,Outils de dessin,Zeichnenwerkzeuge,Rysowanie,Инструменты рисования -PENCIL_HT,Pencil\n\nP for left mouse button\nAlt + P for right mouse button\n\nHold Shift to make a line,Μολύβι\n\nP για το αριστερό κουμπί ποντικιού\nAlt + P για το δεξί κουμπί ποντικιού\n\nΚρατήστε Shift για να τραβήξετε μια γραμμή,Crayon\n\nP pour le bouton gauche de la souris\n\nAlt + P pour le bouton droit de la souris\n\nMaintenez Maj. appuyée pour dessiner une ligne,"Bleistift\n\nP für linke Maustaste\nAlt + P für rechte Maustaste\n\nHalte Shift, um eine Linie zu bilden.",Ołówek\n\nP dla lewego narzędzia\nAlt + P dla prawego narzędzia\n\nPrzytrzymaj Shift aby narysować linię,Карандаш\n\nP для ЛКМ\nAlt + P для ПКМ\n\nЗажать Shift для создания прямой -ERASER_HT,Eraser\n\nE for left mouse button\nAlt + E for right mouse button\n\nHold Shift to make a line,Γόμα\n\nE για το αριστερό κουμπί ποντικιού\nAlt + E για το δεξί κουμπί ποντικιού\n\nΚρατήστε Shift για να τραβήξετε μια γραμμή,Gomme\n\nE pour le bouton gauche de la souris\n\nAlt + E pour le bouton droit de la souris\n\nMaintenez Maj. appuyée pour dessiner une ligne,"Radiergummi\n\nE für die linke Maustaste\nAlt + E für die rechte Maustaste\n\nHalte Shift, um eine Linie zu bilden.",Gumka\n\nE dla lewego narzędzia\nAlt + E dla prawego narzędzia\n\nPrzytrzymaj Shift aby użyć w linii prostej,Ластик\n\nE для ЛКМ\nAlt + E для ПКМ\n\nЗажать Shift для очистки линией -BUCKET_HT,Bucket\n\nB for left mouse button\nAlt + B for right mouse button,Κουβάς\n\nB για το αριστερό κουμπί ποντικιού\nAlt + B για το δεξί κουμπί ποντικιού,Seau de remplissage\n\nB pour le bouton gauche de la souris\nAlt + B pour le bouton droit de la souris,Eimer\n\nB für linke Maustaste\nAlt + B für rechte Maustaste,Wiaderko\n\nB dla lewego narzędzia\nAlt + B dla prawego narzędzia,Заливка\n\nB для ЛКМ\nAlt + B для ПКМ -LD_HT,Lighten/Darken\n\nU for left mouse button\nAlt + U for right mouse button,Φώτισμα/Σκούρημα\n\nU για το αριστερό κουμπί ποντικιού\nAlt + U για το δεξί κουμπί ποντικιού,Éclaircir/Assombrir\n\nU pour le bouton gauche de la souris\nAlt + U pour le bouton droit de la souris,Erhellen/Verdunkeln\n\nU für linke Maustaste\nAlt + U für rechte Maustaste,Rozjaśnianie/Ściemnianie\n\nU dla lewego narzędzia\nAlt + U dla prawego narzędzia,Высветление/Затемнение\n\nU для ЛКМ\nAlt + U ПКМ -LEFTCOLOR_HT,Choose a color for the left tool,Επιλέξτε ένα χρώμα για το αριστερό εργαλείο,Choisissez une couleur pour l'outil gauche,Wähle eine Farbe für das linke Werkzeug,Wybiera kolor dla lewego narzędzia,Выбор цвета для левого инструмента -RIGHTCOLOR_HT,Choose a color for the right tool,Επιλέξτε ένα χρώμα για το δεξί εργαλείο,Choisissez une couleur pour l'outil droit,Wähle eine Farbe für das rechte Werkzeug,Wybiera kolor dla prawego narzędzia,Выбор цвета для правого инструмента -COLORSWITCH_HT,Switch left and right colors\n(X),Εναλλαγή μεταξύ αριστερού και δεξιού χρώματος\n(X),Alterner les couleurs de gauche et de droite\n(X),Wechsle linke und rechte Farben\n(X),Podmienia lewy kolor z prawym kolorem\n(X),Поменять цвета местами\n(X) -COLORDEFAULTS_HT,"Reset the colors to their default state (black for left, white for right)","Επαναφορά των χρωμάτων στην αρχική τους κατάσταση (μαύρο για το αριστερό, άσπρο για το δεξί)","Réinitialise les couleurs à leur état initial (noir pour l'outil gauche, blanc pour l'outil droit)","Setzt die Farben auf den Standardzustand zurück (schwarz für links, weiß für rechts).","Resetuje kolory do stanu domyślnego (czarny po lewej, biały po prawej)","Сбросить цвет по умолчанию (слева черный, справа белый)" -Raw Mode,Raw Mode,Ωμή Λειτουργία,Mode Raw,Raw-Mode,RGB w częściach setnych od 0.0 do 1.0,RGB от 0.0 до 1.0 (Raw Mode) -Left tool options,Left tool options,Επιλογές αριστερού εργαλείου,Options de l'outil gauche,Linke Werkzeugoptionen,Opcje lewego narzędzia,Настройки левого инструмента -Right tool options,Right tool options,Επιλογές δεξιού εργαλείου,Options de l'outil droit,Rechte Werkzeugoptionen,Opcje prawego narzędzia,Настройки правого инструмента -Left pixel indicator,Left pixel indicator,Δείκτης αριστερού πιξελ,Indicateur de pixel gauche,Linke Pixelanzeige,Wskaźnik lewego pędzla,Цвет для ЛКМ -LEFT_INDIC_HT,Show left mouse pixel indicator or brush on the canvas when drawing,Εμφάνιση δείκτη για το εικονοστοιχείο ή το πινέλο πάνω στον καμβά που αντιστοιχεί στο αριστερό κουμπί του ποντικιού,Affiche un indicateur de pixel ou de brosse pour l'outil gauche lorsque vous dessinez,Zeige linkes Mausicon oder Pinsel auf der Leinwand wenn gezeichnet wird,Wyświetl wskaźnik lewego narzędzia lub pędzla podczas rysowania,Отображать цвет кисти для ЛКМ во время рисования -RIGHT_INDIC_HT,Show right mouse pixel indicator or brush on the canvas when drawing,Εμφάνιση δείκτη για το εικονοστοιχείο ή το πινέλο πάνω στον καμβά που αντιστοιχεί στο δεξί κουμπί του ποντικιού,Affiche un indicateur de pixel ou de brosse pour l'outil droit lorsque vous dessinez,Zeige rechtes Mausicon oder Pinsel auf der Leinwand wenn gezeichnet wird,Wyświetl wskaźnik prawego narzędzia lub pędzla podczas rysowania,Отображать цвет кисти для ПКМ во время рисования -Right pixel indicator,Right pixel indicator,Δείκτης δεξιού πιξελ,Indicateur de pixel droit,Rechte Pixelanzeige,Wskaźnik prawego pędzla,Цвет для ПКМ -Brush:,Brush:,Πινέλο:,Brosse :,Pinsel:,Pędzel:,Кисть: -BRUSH_HT,Select a brush,Επιλέξτε ένα πινέλο,Sélectionnez une brosse,Wähle einen Pinsel,Wybierz pędzel,Выбрать кисть -Brush: Pixel,Brush: Pixel,Πινέλο: Εικονοστοιχείο,Brosse : Pixel,Pinsel: Pixel,Pędzel: Piksel,Кисть: Пиксель -Custom brush,Custom brush,Προσαρμοσμένο πινέλο,Brosse personnalisée,Benutzerdefinierter Pinsel,Niestandardowy pędzel,Текущая кисть -Brush size:,Brush size:,Μέγεθος πινέλου:,Taille de la brosse :,Pinselgröße:,Rozmiar pędzla:,Размер кисти: -Brush color from,Brush color from,Χρώμα πινέλου από,Couleur de la brosse depuis,Pinselfarbe von,Nadpisywanie koloru pędzla,Цвет кисти -COLORFROM_HT,"0: Color from the brush itself, 1: the currently selected color","0: Χρώμα από το πινέλο, 1: επιλεγμένο χρώμα","0 : Couleur depuis la brosse elle-même, 1 : la couleur actuellement sélectionnée","0: Farbe von dem Pinsel selbst, 1: die aktuell ausgewählte Farbe","0: Kolor pochodzący z samego pędzla, 1: Obecnie wybrany kolor rysowania","0: Собственный цвет кисти, 1: Выбранный цвет" -Fill area:,Fill area:,Περιοχή γεμίσματος:,Remplissage de zone :,Fülle Bereich,Wypełnij przestrzeń:,Залить область: -Area of the same color,Area of the same color,Περιοχή ίδιου χρώματος,Zone de la même couleur,Bereich mit der selben Farbe,Przestrzeń o takim samym kolorze,Область того же цвета -All pixels of the same color,All pixels of the same color,Όλα τα πίξελ ίδιου χρώματος,Tous les pixels de la même couleur,Alle Pixel mit der selben Farbe,Wszystkie piksele tego samego koloru,Все точки такого же цвета -Lighten,Lighten,Φώτισμα,Éclaircir,Erhellen,Rozjaśnianie,Высветлить -Darken,Darken,Σκούρημα,Assombrir,Verdunkeln,Przyciemnianie,Затемнить -Amount:,Amount:,Ποσό:,Quantité :,Menge:,Siła:,Кол-во: -LDAMOUNT_HT,Lighten/Darken amount,Ποσό φωτίσματος ή σκουρήματος,Quantité d'éclaircissement/assombrissement,Erhellen/Verdunkeln Menge,Siła rozjaśnienia/przyciemnienia,Интенсивность Высветления/Затемнения -Mirroring,Mirroring,Κατοπτρισμός,Miroir,Spiegeln,Lustrzane odbicie,Отразить зеркально -Horizontal,Horizontal,Οριζόντια,Horizontal,Horizontal spiegeln,Poziome,Горизонально -HORIZMIRROR_HT,Enable horizontal mirrored drawing,Ενεργοποίηση ζωγραφικής με οριζόντιο κατοπτρισμό,Dessine avec un miroir horizontal,Aktiviere horizontal gespiegelte Zeichnung ,Włącza lustrzane odbicie w poziomie podczas rysowania,Режим рисования горизонтального зеркалирования -VERTMIRROR_HT,Enable vertical mirrored drawing,Ενεργοποίηση ζωγραφικής με κάθετο κατοπτρισμό,Dessine avec un miroir vertical,Aktiviere vertikale gespiegelte Zeichnung,Włącza lustrzane odbicie w pionie podczas rysowania,Режим рисования вертикального зеркалирования -Vertical,Vertical,Κάθετα,Vertical,Vertikal,Pionowe,Вертикально -Current frame:,Current frame:,Τρέχον καρέ:,Trame actuelle :,Aktueller Frame,Obecna klatka:,Текущий кадр: -Current frame: 1/1,Current frame: 1/1,Τρέχον καρέ: 1/1,Trame actuelle : 1/1,Aktueller Frame 1/1,Obecna klatka: 1/1,Текущий кадр: 1/1 -FIRSTFRAME_HT,Jump to the first frame\n(Ctrl+Home),Μετάβαση στο πρώτο καρέ\n(Ctrl+Home),Aller à la première trame\n(Ctrl + Orig.),Springe zu dem ersten Frame\n(Strg+Home),Skocz do pierwszej klatki\n(Ctrl+Home),Перейти к первому кадру\n(Ctrl+Home) -PREVIOUSFRAME_HT,Go to the previous frame\n(Ctrl+Left),Μετάβαση στο προηγούμενο καρέ\n(Ctrl+Αριστερά),Aller à la trame précédente\n(Ctrl + Gauche),Gehe zu dem letzten Frame\n(Strg+Pfeil nach Links),Przejdź do poprzedniej klatki\n(Ctrl+Strzałka w lewo),На предыдущий кадр\n(Ctrl+Left) -PLAYBACKWARDS_HT,Play the animation backwards (from end to beginning)\n(F4),Αναπαραγωγή της κίνησης ανάποδα (από το τέλος προς την αρχή)\n(F4),Jouer l'animation à l'envers (de la fin vers le début)\n(F4),Spiele die Animation rückwärts ab (vom Ende bis zum Anfang)\n(F4),Odtwórz animację od końca\n(F4),Проиграть анимацию задом наперед (с конца в начало)\n(F4) -PLAYFORWARD_HT,Play the animation forward (from beginning to end)\n(F5),Αναπαραγωγή της κίνησης κανονικά (από την αρχή προς το τέλος)\n(F5),Jouer l'animation (du début vers la fin)\n(F5),Spiele die Animation vorwärts ab (vom Anfang bis zum Ende)\n(F5),Odtwórz animację od początku\n(F5),Проиграть анимацию по умолчанию (с начала в конец)\n(F5) -NEXTFRAME_HT,Go to the next frame\n(Ctrl+Right),Μετάβαση στο επόμενο καρέ\n(Ctrl+Δεξιά),Aller à la prochaine trame\n(Ctrl + Droite),Gehe zum nächsten Frame\n(Strg+Pfeil nach Rechts),Przejdź do następnej klatki\n(Ctrl+Strzałka w prawo),На следующий кадр\n(Ctrl+Right) -LASTFRAME_HT,Jump to the last frame\n(Ctrl+End),Μετάβαση στο τελευταίο καρέ\n(Ctrl+End),Aller à la dernière trame\n(Ctrl + Fin),Springe zum letzten Frame\n(Strg+Ende),Skocz do ostatniej klatki\n(Ctrl+End),Перейти на последний кадр\n(Ctrl+End) -FPS_HT,"How many frames per second should the animation preview be?\nThe more FPS, the faster the animation plays.","Πόσα καρέ ανά δευτερόλεπτο (FPS) να είναι η προεπισκόπηση της κίνησης;\nΌσο περισσότερα FPS, τόσο πιο γρήγορα παίζει η κίνηση.","Combien d'images par seconde pour l'aperçu de l'animation ?\nPlus cette valeur est élevée, plus l'animation sera jouée rapidement.","Wie viele Frames pro Sekunde sollte die Animationsvorschau haben?\n Je mehr FPS, desto schneller wird die Animation abgespielt.",W ilu klatkach na sekundę odtwarzana ma być animacja?\nWiększa ilość klatek na sekundę powoduje szybsze odtwarzanie.,"Число кадров в секунду для просмотра анимации?\nБольшее число кадров в секунду ускорит анмацию." -No loop,No loop,Όχι επανάληψη,Pas de bouclage,Keine Wiederholungsschleife,Brak zapętlania,Не зацикливать -Cycle loop,Cycle loop,Κυκλική επανάληψη,Bouclage en cycle,Zyklusschleife,Zapętl odtwarzanie,Зациклить -Ping-pong loop,Ping-pong loop,Επανάληψη πινγκ-πονγκ,Bouclage en ping-pong,Ping Pong Loop,Zapętlanie typu ping-pong,Пинг-Понг -Onion Skinning:,Onion Skinning:,Γειτονικά καρέ:,Peau d'oignon :,Onion Skinning:,Kalkowanie klatek:,Шлейф смежных кадров: -Past Frames,Past Frames,Παρελθοντικά καρέ,Trames passées,Letzten Frames,Przeszłe klatki,Предыдущие кадры -Future Frames,Future Frames,Μελλοντικά καρέ,Trames futures,Nächsten Frames,Przyszłe klatki,Последующие кадры -Blue-Red Mode,Blue-Red Mode,Μπλε-Κόκκινη λειτουργία,Mode rouge-bleu,Blau-Roter Modus,Niebiesko-czerwone prześwity,Сине-красный режим -Add a new frame,Add a new frame,Προσθήκη νέου καρέ,Ajouter une trame,Füge einen neuen Frame hinzu,Dodaj nową klatkę,Добавить новый кадр -Remove Frame,Remove Frame,Διαγραφή Καρέ,Supprimer la trame,Entferne Frame,Usuń klatkę,Удалить кадр -Clone Frame,Clone Frame,Κλωνοποίηση Καρέ,Cloner la trame,Kopiere Frame,Klonuj klatkę,Клонировать кадр -Move Left,Move Left,Μετακίνηση Αριστερά,Déplacer vers la gauche,Bewege nach Links,Przesuń w lewo,Сместить влево -Move Right,Move Right,Μετακίνηση Δεξιά,Déplacer vers la droite,Bewege nach Rechts,Przesuń w prawo,Сместить вправо -Layers,Layers,Στρώσεις,Calques,Ebenen,Warstwy,Слои -LAYERNEW_HT,Create a new layer,Δημιουργία νέας στρώσης,Créer un calque,Erstelle eine neue Ebene,Stwórz nową warstwę,Создать новый слой -LAYERREMOVE_HT,Remove current layer,Διαγραφή της τρέχουσας στρώσης,Supprimer le calque,Entferne aktuelle Ebene,Usuń obecną warstwę,Удалить текущий слой -LAYERUP_HT,Move up the current layer,Μετακίνηση της τρέχουσας στρώσης προς τα πάνω,Déplacer le calque vers le haut,Bewege aktuelle Ebene nach oben,Przesuń obecną warstwę do góry,Поднять текущий слой выше -LAYERDOWN_HT,Move down the current layer,Μετακίνηση της τρέχουσας στρώσης προς τα κάτω,Déplacer le calque vers le cas,Bewege aktuelle Ebene nach unten,Przesuń obecną warstwę w dół,Опустить текущий слой ниже -LAYERCLONE_HT,Clone current layer,Κλωνοποίηση της τρέχουσας στρώσης,Cloner le calque,Kopiere aktuelle Ebene,Duplikuj obecną warstwę,Клонировать текущий слой -LAYERMERGE_HT,Merge current layer with the one below,Συγχώνευση της τρέχουσας στρώσης με την από κάτω,Fusionner le calque vers le bas,Führe Ebene mit der darunter zusammen,Połącz obecną warstwę z warstwą powyżej,Объединить слой ниже с текущим -LAYERVISIBILITY_HT,Toggle layer's visibility,Εναλλαγή της ορατότητας της στρώσης,Afficher/Masquer le calque,Ändere die Sichtbarkeit der Ebene,Ukrywanie warstwy,Переключить видимость слоев -SPLITSCREEN_HT,Split screen\n\nShow second canvas,Διπλή οθόνη\n\nΕμφάνιση δεύτερου καμβά,Écran partagé\n\nAfficher un second canevas,Geteilter Bildschirm\n\nZeige zweite Leinwand,Podzielenie ekranu\n\nWyświetla drugie płótno,Разделить экран\n\nОтобразить второй холст -SPLITSCREEN_HIDE_HT,Split screen\n\nHide second canvas,Διπλή οθόνη\n\nΑπόκρυψη δεύτερου καμβάf,Écran partagé\n\nCacher le second canevas,Geteilter Bildschirm\n\nVerstecke zweite Leinwand,Podzielenie ekranu\n\nUkrywa drugie płótno,Разделить экран\n\nСкрыть второй холст -Undo: Draw,Undo: Draw,Αναίρεση: Ζωγραφική,Annuler : Dessin,Rückgängig: Zeichen,Cofnij: Rysowanie,Отменить: Рисование -Redo: Draw,Redo: Draw,Ακύρωση αναίρεσης: Ζωγραφική,Refaire : Dessin,Wiederherstellen: Zeichnen,Przywróć: Rysowanie,Повторить: Рисование -Undo: Rectangle Select,Undo: Rectangle Select,Αναίρεση: Ορθογώνια επιλογή,Annuler : Sélection par rectangle,Rückgängig: Rechteck Auswahl,Cofnij: Zaznaczenie prostokątne,Отменить: Прямоугольное выделение -Redo: Rectangle Select,Redo: Rectangle Select,Ακύρωση αναίρεσης: Ορθογώνια επιλογή,Refaire : Sélection par rectangle,Wiederherstellen: Rechteck Auswahl,Przywróć: Zaznaczenie prostokątne,Повторить: Прямоугольное выделение -Undo: Scale,Undo: Scale,Αναίρεση: Κλιμάκωση,Annuler : Redimensionner l'image,Rückgängig: Skalieren,Cofnij: Skalowanie,Отменить: Масштабирование -Redo: Scale,Redo: Scale,Ακύρωση αναίρεσης: Κλιμάκωση,Refaire : Redimensionner l'image,Wiederherstellen: Skalieren,Przywróć: Skalowanie,Повторить: Масштабирование -Undo: Add Layer,Undo: Add Layer,Αναίρεση: Προσθήκη στρώσης,Annuler : Ajouter un calque,Rückgängig: Ebene hinzufügen,Cofnij: Dodawanie warstwy,Отменить: Добавление слоя -Redo: Add Layer,Redo: Add Layer,Ακύρωση αναίρεσης: Προσθήκη στρώσης,Refaire : Ajouter un calque,Wiederherstellen: Ebene hinzufügen,Przywróć: Dodawanie warstwy,Повторить: Добавление слоя -Undo: Remove Layer,Undo: Remove Layer,Αναίρεση: Διαγραφή στρώσης,Annuler : Supprimer le calque,Rückgängigg: Entferne Ebene,Cofnij: Usuwanie warstwy,Отменить: Удаление слоя -Redo: Remove Layer,Redo: Remove Layer,Ακύρωση αναίρεσης: Διαγραφή στρώσης,Refaire : Supprimer le calque,Wiederherstellen: Entferne Ebene,Przywróć: Usuwanie warstwy,Повторить: Удаление слоя -Undo: Merge Layer,Undo: Merge Layer,Αναίρεση: Συγχώνευση στρώσης,Annuler : Fusionner le calque,Rückgängig: Füge Ebene zusammen,Cofnij: Scalanie warstw,Отменить: Объединение слоев -Redo: Merge Layer,Redo: Merge Layer,Ακύρωση αναίρεσης: Συγχώνευση στρώσης,Refaire : Fusionner le calque,Wiederherstellen: Füge Ebene zusammen,Przywróć: Scalanie warstw,Повторить: Объединение слоев -Undo: Change Layer Order,Undo: Change Layer Order,Αναίρεση: Αλλαγή σειράς στρώσης,Annuler : Modifier l'ordre des calques,Rückgängig: Ändere Ebenenreihenfolge,Cofnij: Zmiana kolejności warstw,Отменить: Смена порядка слоев -Redo: Change Layer Order,Redo: Change Layer Order,Ακύρωση αναίρεσης: Αλλαγή σειράς στρώσης,Refaire : Modifier l'ordre des calques,Wiederherstellen: Ändere Ebenenreihenfolge,Przywróć: Zmiana kolejności warstw,Повторить: Смена порядка слоев -Undo: Add Frame,Undo: Add Frame,Αναίρεση: Προσθήκη καρέ,Annuler : Ajouter une trame,Rückgängig: Füge Frame hinzu,Cofnij: Dodawanie klatki,Отменить: Добавление кадра -Redo: Add Frame,Redo: Add Frame,Ακύρωση αναίρεσης: Προσθήκη καρέ,Refaire : Ajouter une trame,Wiederherstellen: Füge Frame hinzu,Przywróć: Dodawanie klatki,Повторить: Добавление кадра -Undo: Remove Frame,Undo: Remove Frame,Αναίρεση: Διαγραφή καρέ,Annuler : Supprimer une trame,Rückgängig: Entferne Frame,Cofnij: Usunięcie klatki,Отменить: Удаление кадра -Redo: Remove Frame,Redo: Remove Frame,Ακύρωση αναίρεσης: Διαγραφή καρέ,Refaire : Supprimer une trame,Wiederherstellen: Entferne Frame,Przywróć: Usunięcie klatki,Повторить: Удаление кадра -Undo: Change Frame Order,Undo: Change Frame Order,Αναίρεση: Αλλαγή σειράς καρέ,Annuler : Modifier l'ordre des trames,Rückgängig: Ändere Framereihenfolge,Cofnij: Zmiana kolejności klatek,Отменить: Смена последовательности кадров -Redo: Change Frame Order,Redo: Change Frame Order,Ακύρωση αναίρεσης: Αλλαγή σειράς καρέ,Refaire : Modifier l'ordre des trames,Wiederherstellen: Ändere Framereihenfolge,Przywróć: Zmiana kolejności klatek,Повторить: Смена последовательности кадров -Undo: Delete Custom Brush,Undo: Delete Custom Brush,Αναίρεση: Διαγραφή προσαρμοσμένου πινέλου,Annuler : Supprimer la brosse personnalisée,Rückgängig: Entferne benutzerdefinierten Pinsel,Cofnij: Usuwanie niestandardowego pędzla,Отменить: Удаление текущей кисти -Redo: Delete Custom Brush,Redo: Delete Custom Brush,Ακύρωση αναίρεσης: Διαγραφή προσαρμοσμένου πινέλου,Refaire : Supprimer la brosse personnalisée,Wiederherstellen: Entferne benutzerdefinierten Pinsel,Przywróć: Usuwanie niestandardowego pędzla,Повторить: Удаление текущей кисти -Move Guide,Move Guide,Μετακίνηση βοηθού,Déplacer le guide,Bewegungsanleitung,Przesuń prowadnice,Сдвинуть направляющие -File saved,File saved,Το αρχείο αποθηκεύτηκε,Fichier enregistré,Datei gespeichert,Plik został zapisany,Файл сохранен -File exported,File exported,Έγινε εξαγωγή αρχείου,Fichier exporté,Datei exportiert,Plik został wyeksportowany,Файл экспортирован +id,en,el,fr,de,pl,ru +OK,OK,Εντάξει,OK,OK,OK,OK +Cancel,Cancel,Άκυρο,Annuler,Abbrechen,Anuluj,Отмена +Open,Open,Άνοιγμα,Ouvrir,Öffnen,Otwórz,Открыть +Please Confirm...,Please Confirm...,Παρακαλώ επιβεβαιώστε...,Veuillez confirmer...,Bitte bestätigen...,Proszę potwierdzić...,Пожалуйста подтвердите... +Image Size,Image Size,Μέγεθος εικόνας,Taille de l'image,Bildgröße,Rozmiar obrazu,Размер изображения +Width:,Width:,Πλάτος:,Largeur :,Weite,Szerokość:,Ширина: +Height:,Height:,Ύψος:,Hauteur :,Höhe,Wysokość:,Высота +File,File,Αρχείο,Fichier,Datei,Plik,Файл +Edit,Edit,Επεξεργασία,Édition,Bearbeiten,Edycja,Редактировать +View,View,Προβολή,Affichage,Ansicht,Widok,Просмотр +Help,Help,Βοήθεια,Aide,Hilfe,Pomoc,Помощь +New...,New...,Νέο...,Nouveau...,Neu,Nowy...,Создать... +Open...,Open...,Άνοιγμα...,Ouvrir...,Öffnen...,Otwórz...,Открыть... +Save...,Save...,Αποθήκευση...,Enregistrer...,Speichern...,Zapisz...,Сохранить... +Save as...,Save as...,Αποθήκευση ως...,Enregistrer sous...,Speichern als...,Zapisz jako...,Сохранить как... +Import PNG...,Import PNG...,Εισαγωγή PNG...,Importer une image PNG...,Importiere PNG,Importuj PNG…,Импорт PNG... +Export PNG...,Export PNG...,Εξαγωγή PNG...,Exporter une image PNG...,Exportiere PNG,Eksportuj PNG…,Экспорт PNG... +Export PNG as...,Export PNG as...,Εξαγωγή PNG ως...,Exporter une image PNG sous...,Exportiere PNG als...,Eksportuj PNG jako...,Экспортировать PNG как... +Quit,Quit,Έξοδος,Quitter,Verlassen,Wyjdź,Выйти +Undo,Undo,Αναίρεση,Annuler,Rückgängig,Cofnij,Отменить +Redo,Redo,Ακύρωση αναίρεσης,Refaire,Wiederherstellen,Przywróć zmiany,Повторить +Scale Image,Scale Image,Κλιμάκωση εικόνας,Redimensionner l'image,Bild skalieren,Skalowanie obrazu,Увеличить изображение +Crop Image,Crop Image,Περικοπή,Rogner l'image,Bild zuschneiden,Kadrowanie obrazu,Обрезать выделенное +Clear Selection,Clear Selection,Καθαρισμός επιλογής,Ne rien sélectionner,Ausgewählten Bereich löschen,Wyczyść zaznaczenie,Снять выделение +Flip Horizontal,Flip Horizontal,Οριζόντια αναστροφή,Miroir horizontal,Horizontal spiegeln,Odbij w poziomie,Отразить по горизонтали +Flip Vertical,Flip Vertical,Κάθετη αναστροφή,Miroir vertical,Vertikal spiegeln,Odbij w pionie,Отразить по вертикале +Preferences,Preferences,Προτιμήσεις,Préférences,Einstellungen,Preferencje,Настройки +Tile Mode,Tile Mode,Λειτουργία μοτίβου,Mode tuile,Tile Mode,Tryb kafelkowy,Замостить плиткой +Show Grid,Show Grid,Εμφάνιση πλέγματος,Afficher la grille,Zeige Gitter,Pokaż siatkę,Показывать сетку +Show Rulers,Show Rulers,Εμφάνιση χαράκων,Afficher les règles,Zeige Lineale,Pokaż linijki,Показывать линейку +Show Guides,Show Guides,Εμφάνιση οδηγών,Afficher les guides,Zeige Anleitungen,Pokaż prowadnice,Показывать направляющие +Fill with color:,Fill with color:,Γέμισμα με χρώμα:,Remplir avec la couleur :,Fülle mit Farbe,Wypełnij kolorem:,Заливка цветом: +Open a File,Open a File,Άνοιγμα αρχείου,Ouvrir un fichier,Öffne eine Datei,Otwórz plik,Октрыть файл +Open File(s),Open File(s),Άνοιγμα αρχείου/ων,Ouvrir des fichiers,Öffne Datei(en),Otwórz pliki,Открыть файл(ы) +IMPORT_FILE_LABEL,Import as new frame,Εισαγωγή ως νέο καρέ,Importer en tant que trame,Importier als neues Frame,Importuj jako nowa klatka,Добавить как новый кадр +Save Sprite as .pxo,Save Sprite as .pxo,Αποθήκευση εικόνας ως .pxo,Enregistrer la sprite au format .pxo,Speichere Sprite als .pxo,Zapisz Sprite do .pxo,Сохранить Sprite как .pxo +Export Sprite,Export Sprite,Εξαγωγή εικόνας,Exporter une sprite,Exportiere Sprite,Eksportuj Sprite,Экспортировать Sprite +EXPORT_ALLFRAMES_LABEL,Export all frames,Εξαγωγή όλων των καρέ,Exporter toutes les trames,Exportiere alle Frames,Eksportuj wszystkie klatki,Экспортировать все кадры как +EXPORT_FRAMES_ASFILE_LABEL,Export frames as a single file,Εξαγωγή όλων των καρέ στο ίδιο αρχείο,Exporter les trames en un seul fichier,Exportiere Frames als eine einzige Datei,Eksportuj klatki jako jeden plik,Экспортировать кадры в один файл +EXPORT_VERTICAL_SPRITESHEET_LABEL,Vertical spritesheet,Κάθετη ευθυγράμμιση,Spritesheet vertical,Vertikales Spritesheet,Pionowy arkusz,Экспорт Sprite-листа +Path:,Path:,Διαδρομή:,Chemin :,Pfad:,Ścieżka:,Путь: +Directories & Files:,Directories & Files:,Φάκελοι & Αρχεία:,Répertoires et fichiers :,Verzeichnisse & Dateien,Pliki oraz katalogi:,Словари и файлы: +File:,File:,Αρχείο:,Fichier :,Datei:,Plik:,Файл: +Interpolation:,Interpolation:,Παρεμβολή:,Interpolation :,Interpolation,Interpolacja:,Интерполяция: +Nearest,Nearest,Χωρίς,Le plus proche,Nächstes,Najbliższy sąsiad,Ближайший +Bilinear,Bilinear,Διγραμμική,Linéaire,Bilinear,Dwuliniowa,Бинарный +Cubic,Cubic,Κυβική,Cubique,Kubisch,Sześcienna,Кубический +Trilinear,Trilinear,Τριγραμμική,Trilinéaire,Trilinear,Trójlinowa,Трехлинейный +Grid options,Grid options,Επιλογές πλέγματος,Configuration de la grille,Gitter Optionen,Ustawienia siatki,Настройки сетки +Color:,Color:,Χρώμα:,Couleur :,Farbe:,Kolor:,Цвет: +Language:,Language:,Γλώσσα:,Langue :,Sprache:,Język:,Язык: +System Language,System Language,Γλώσσα Συστήματος,Langue système,System Sprache,Język systemowy,Системный язык +About Pixelorama,About Pixelorama,Σχετικά με το Pixelorama,À propos de Pixelorama,Über Pixelorama,O Pixeloramie,О Pixeloram'е +MADEBY_LABEL,Your Free and Open Source Sprite Editor!\nDeveloped by Orama Interactive\n,Το δωρεάν και ανοιχτού κώδικα πρόγραμμά σας!\nΦτιαγμένο από την Orama Interactive\n,Votre éditeur de sprites libre et open source\nDéveloppé par Orama Interactive\n,Ihr kostenloser und opensource Pixeleditor!\nEntwickelt von Orama Interactive\n,Twój darmowy edytor Sprite-ów na otwartej licencji!\nTworzony przez: Orama Interactive\n,Ваш бесплатный и открытый Sprite редактор!\nРазработано Orama Interactive\n +Website,Website,Ιστοσελίδα,Site Web,Website,Strona internetowa,Сайт +Donate,Donate,Κάντε μια δωρεά,Faire un don,Spenden,Wspomóż,Поддержать +QUIT_LABEL,Are you sure you want to exit Pixelorama?,Σίγουρα θέλετε να βγείτε από το Pixelorama;,Voulez-vous vraiment quitter Pixelorama ?,Möchten sie Pixelorama wirklich verlassen?,Na pewno chcesz opuścić Pixeloramę?,Вы действительно хотите выйти из Pixeloram'ы? +Utility Tools,Utility Tools,Βοηθητικά Εργαλεία,Outils utilitaires,Dienstwerkzeuge,Narzędzia,Сервисные инструменты +RECTSELECT_HT,Rectangular Selection\n\nR for left mouse button\nAlt + R for right mouse button\n\nPress Shift to move the content,Ορθογώνια επιλογή\n\nR για το αριστερό κουμπί ποντικιού\nAlt + R για το δεξί κουμπί ποντικιού\n\nΠατήστε Shift για να μετακινηθεί το περιεχόμενο,Sélection rectangulaire\n\nR pour le bouton gauche de la souris\n\nAlt + R pour le bouton droit de la souris\n\nMaintenez Maj. appuyée pour déplacer le contenu,Rechteckige Auswahl\n\nR für die linke Maustaste\nAlt + R für die rechte Maustaste\n\nPresse Shift zum verschieben des Inhalts,Zaznaczenie prostokątne\n\nR dla lewego narzędzia\nAlt + R dla prawego narzędzia\n\nPrzytrzymaj Shift aby przenieść zawartość,Прямоугольное выдиление\n\nR для ЛКМ\nAlt + R для ПКМ\n\nShift для перемещения контента +COLORPICKER_HT,Color Picker\nSelect a color from a pixel of the sprite\n\nO for left mouse button\nAlt + O for right mouse button,Επιλογέας χρωμάτων\nΕπιλέξτε ένα χρώμα από ένα εικονοστοιχείο της εικόνας\n\nΟ για το αριστερό κουμπί ποντικιού\nAlt + Ο για το δεξί κουμπί ποντικιού,Sélecteur de couleurs\nSélectionnez la couleur d'un pixel de la sprite\n\nO pour le bouton gauche de la souris\n\nAlt + O pour le bouton droit de la souris,Farbauswahl\Wähle einr Farbe von einem Pixel des Sprites\n\nO für die linke Maustaste\nAlt + O für die rechte Maustaste,Próbnik\nPobiera kolor wybranego piksela do wybranego narzędzia.\n\nO dla lewego narzędzia\nAlt + O dla prawego narzędzia,Выбор цвета\nВыбрать цвет из пикселя Sprit'а\n\nO для ЛКМ\nAlt + O для ПКМ +Draw Tools,Draw Tools,Εργαλεία Ζωγραφικής,Outils de dessin,Zeichnenwerkzeuge,Rysowanie,Инструменты рисования +PENCIL_HT,Pencil\n\nP for left mouse button\nAlt + P for right mouse button\n\nHold Shift to make a line,Μολύβι\n\nP για το αριστερό κουμπί ποντικιού\nAlt + P για το δεξί κουμπί ποντικιού\n\nΚρατήστε Shift για να τραβήξετε μια γραμμή,Crayon\n\nP pour le bouton gauche de la souris\n\nAlt + P pour le bouton droit de la souris\n\nMaintenez Maj. appuyée pour dessiner une ligne,"Bleistift\n\nP für linke Maustaste\nAlt + P für rechte Maustaste\n\nHalte Shift, um eine Linie zu bilden.",Ołówek\n\nP dla lewego narzędzia\nAlt + P dla prawego narzędzia\n\nPrzytrzymaj Shift aby narysować linię,Карандаш\n\nP для ЛКМ\nAlt + P для ПКМ\n\nЗажать Shift для создания прямой +ERASER_HT,Eraser\n\nE for left mouse button\nAlt + E for right mouse button\n\nHold Shift to make a line,Γόμα\n\nE για το αριστερό κουμπί ποντικιού\nAlt + E για το δεξί κουμπί ποντικιού\n\nΚρατήστε Shift για να τραβήξετε μια γραμμή,Gomme\n\nE pour le bouton gauche de la souris\n\nAlt + E pour le bouton droit de la souris\n\nMaintenez Maj. appuyée pour dessiner une ligne,"Radiergummi\n\nE für die linke Maustaste\nAlt + E für die rechte Maustaste\n\nHalte Shift, um eine Linie zu bilden.",Gumka\n\nE dla lewego narzędzia\nAlt + E dla prawego narzędzia\n\nPrzytrzymaj Shift aby użyć w linii prostej,Ластик\n\nE для ЛКМ\nAlt + E для ПКМ\n\nЗажать Shift для очистки линией +BUCKET_HT,Bucket\n\nB for left mouse button\nAlt + B for right mouse button,Κουβάς\n\nB για το αριστερό κουμπί ποντικιού\nAlt + B για το δεξί κουμπί ποντικιού,Seau de remplissage\n\nB pour le bouton gauche de la souris\nAlt + B pour le bouton droit de la souris,Eimer\n\nB für linke Maustaste\nAlt + B für rechte Maustaste,Wiaderko\n\nB dla lewego narzędzia\nAlt + B dla prawego narzędzia,Заливка\n\nB для ЛКМ\nAlt + B для ПКМ +LD_HT,Lighten/Darken\n\nU for left mouse button\nAlt + U for right mouse button,Φώτισμα/Σκούρημα\n\nU για το αριστερό κουμπί ποντικιού\nAlt + U για το δεξί κουμπί ποντικιού,Éclaircir/Assombrir\n\nU pour le bouton gauche de la souris\nAlt + U pour le bouton droit de la souris,Erhellen/Verdunkeln\n\nU für linke Maustaste\nAlt + U für rechte Maustaste,Rozjaśnianie/Ściemnianie\n\nU dla lewego narzędzia\nAlt + U dla prawego narzędzia,Высветление/Затемнение\n\nU для ЛКМ\nAlt + U ПКМ +LEFTCOLOR_HT,Choose a color for the left tool,Επιλέξτε ένα χρώμα για το αριστερό εργαλείο,Choisissez une couleur pour l'outil gauche,Wähle eine Farbe für das linke Werkzeug,Wybiera kolor dla lewego narzędzia,Выбор цвета для левого инструмента +RIGHTCOLOR_HT,Choose a color for the right tool,Επιλέξτε ένα χρώμα για το δεξί εργαλείο,Choisissez une couleur pour l'outil droit,Wähle eine Farbe für das rechte Werkzeug,Wybiera kolor dla prawego narzędzia,Выбор цвета для правого инструмента +COLORSWITCH_HT,Switch left and right colors\n(X),Εναλλαγή μεταξύ αριστερού και δεξιού χρώματος\n(X),Alterner les couleurs de gauche et de droite\n(X),Wechsle linke und rechte Farben\n(X),Podmienia lewy kolor z prawym kolorem\n(X),Поменять цвета местами\n(X) +COLORDEFAULTS_HT,"Reset the colors to their default state (black for left, white for right)","Επαναφορά των χρωμάτων στην αρχική τους κατάσταση (μαύρο για το αριστερό, άσπρο για το δεξί)","Réinitialise les couleurs à leur état initial (noir pour l'outil gauche, blanc pour l'outil droit)","Setzt die Farben auf den Standardzustand zurück (schwarz für links, weiß für rechts).","Resetuje kolory do stanu domyślnego (czarny po lewej, biały po prawej)","Сбросить цвет по умолчанию (слева черный, справа белый)" +Raw Mode,Raw Mode,Ωμή Λειτουργία,Mode Raw,Raw-Mode,RGB w częściach setnych od 0.0 do 1.0,RGB от 0.0 до 1.0 (Raw Mode) +Left tool options,Left tool options,Επιλογές αριστερού εργαλείου,Options de l'outil gauche,Linke Werkzeugoptionen,Opcje lewego narzędzia,Настройки левого инструмента +Right tool options,Right tool options,Επιλογές δεξιού εργαλείου,Options de l'outil droit,Rechte Werkzeugoptionen,Opcje prawego narzędzia,Настройки правого инструмента +Left pixel indicator,Left pixel indicator,Δείκτης αριστερού πιξελ,Indicateur de pixel gauche,Linke Pixelanzeige,Wskaźnik lewego pędzla,Цвет для ЛКМ +LEFT_INDIC_HT,Show left mouse pixel indicator or brush on the canvas when drawing,Εμφάνιση δείκτη για το εικονοστοιχείο ή το πινέλο πάνω στον καμβά που αντιστοιχεί στο αριστερό κουμπί του ποντικιού,Affiche un indicateur de pixel ou de brosse pour l'outil gauche lorsque vous dessinez,Zeige linkes Mausicon oder Pinsel auf der Leinwand wenn gezeichnet wird,Wyświetl wskaźnik lewego narzędzia lub pędzla podczas rysowania,Отображать цвет кисти для ЛКМ во время рисования +RIGHT_INDIC_HT,Show right mouse pixel indicator or brush on the canvas when drawing,Εμφάνιση δείκτη για το εικονοστοιχείο ή το πινέλο πάνω στον καμβά που αντιστοιχεί στο δεξί κουμπί του ποντικιού,Affiche un indicateur de pixel ou de brosse pour l'outil droit lorsque vous dessinez,Zeige rechtes Mausicon oder Pinsel auf der Leinwand wenn gezeichnet wird,Wyświetl wskaźnik prawego narzędzia lub pędzla podczas rysowania,Отображать цвет кисти для ПКМ во время рисования +Right pixel indicator,Right pixel indicator,Δείκτης δεξιού πιξελ,Indicateur de pixel droit,Rechte Pixelanzeige,Wskaźnik prawego pędzla,Цвет для ПКМ +Brush:,Brush:,Πινέλο:,Brosse :,Pinsel:,Pędzel:,Кисть: +BRUSH_HT,Select a brush,Επιλέξτε ένα πινέλο,Sélectionnez une brosse,Wähle einen Pinsel,Wybierz pędzel,Выбрать кисть +Brush: Pixel,Brush: Pixel,Πινέλο: Εικονοστοιχείο,Brosse : Pixel,Pinsel: Pixel,Pędzel: Piksel,Кисть: Пиксель +Custom brush,Custom brush,Προσαρμοσμένο πινέλο,Brosse personnalisée,Benutzerdefinierter Pinsel,Niestandardowy pędzel,Текущая кисть +Brush size:,Brush size:,Μέγεθος πινέλου:,Taille de la brosse :,Pinselgröße:,Rozmiar pędzla:,Размер кисти: +Brush color from,Brush color from,Χρώμα πινέλου από,Couleur de la brosse depuis,Pinselfarbe von,Nadpisywanie koloru pędzla,Цвет кисти +COLORFROM_HT,"0: Color from the brush itself, 100: the currently selected color","0: Χρώμα από το πινέλο, 100: επιλεγμένο χρώμα","0 : Couleur depuis la brosse elle-même, 100 : la couleur actuellement sélectionnée","0: Farbe von dem Pinsel selbst, 100: die aktuell ausgewählte Farbe","0: Kolor pochodzący z samego pędzla, 100: Obecnie wybrany kolor rysowania","0: Собственный цвет кисти, 100: Выбранный цвет" +Fill area:,Fill area:,Περιοχή γεμίσματος:,Remplissage de zone :,Fülle Bereich,Wypełnij przestrzeń:,Залить область: +Area of the same color,Area of the same color,Περιοχή ίδιου χρώματος,Zone de la même couleur,Bereich mit der selben Farbe,Przestrzeń o takim samym kolorze,Область того же цвета +All pixels of the same color,All pixels of the same color,Όλα τα πίξελ ίδιου χρώματος,Tous les pixels de la même couleur,Alle Pixel mit der selben Farbe,Wszystkie piksele tego samego koloru,Все точки такого же цвета +Lighten,Lighten,Φώτισμα,Éclaircir,Erhellen,Rozjaśnianie,Высветлить +Darken,Darken,Σκούρημα,Assombrir,Verdunkeln,Przyciemnianie,Затемнить +Amount:,Amount:,Ποσό:,Quantité :,Menge:,Siła:,Кол-во: +LDAMOUNT_HT,Lighten/Darken amount,Ποσό φωτίσματος ή σκουρήματος,Quantité d'éclaircissement/assombrissement,Erhellen/Verdunkeln Menge,Siła rozjaśnienia/przyciemnienia,Интенсивность Высветления/Затемнения +Mirroring,Mirroring,Κατοπτρισμός,Miroir,Spiegeln,Lustrzane odbicie,Отразить зеркально +Horizontal,Horizontal,Οριζόντια,Horizontal,Horizontal spiegeln,Poziome,Горизонально +HORIZMIRROR_HT,Enable horizontal mirrored drawing,Ενεργοποίηση ζωγραφικής με οριζόντιο κατοπτρισμό,Dessine avec un miroir horizontal,Aktiviere horizontal gespiegelte Zeichnung ,Włącza lustrzane odbicie w poziomie podczas rysowania,Режим рисования горизонтального зеркалирования +VERTMIRROR_HT,Enable vertical mirrored drawing,Ενεργοποίηση ζωγραφικής με κάθετο κατοπτρισμό,Dessine avec un miroir vertical,Aktiviere vertikale gespiegelte Zeichnung,Włącza lustrzane odbicie w pionie podczas rysowania,Режим рисования вертикального зеркалирования +Vertical,Vertical,Κάθετα,Vertical,Vertikal,Pionowe,Вертикально +Current frame:,Current frame:,Τρέχον καρέ:,Trame actuelle :,Aktueller Frame,Obecna klatka:,Текущий кадр: +Current frame: 1/1,Current frame: 1/1,Τρέχον καρέ: 1/1,Trame actuelle : 1/1,Aktueller Frame 1/1,Obecna klatka: 1/1,Текущий кадр: 1/1 +FIRSTFRAME_HT,Jump to the first frame\n(Ctrl+Home),Μετάβαση στο πρώτο καρέ\n(Ctrl+Home),Aller à la première trame\n(Ctrl + Orig.),Springe zu dem ersten Frame\n(Strg+Home),Skocz do pierwszej klatki\n(Ctrl+Home),Перейти к первому кадру\n(Ctrl+Home) +PREVIOUSFRAME_HT,Go to the previous frame\n(Ctrl+Left),Μετάβαση στο προηγούμενο καρέ\n(Ctrl+Αριστερά),Aller à la trame précédente\n(Ctrl + Gauche),Gehe zu dem letzten Frame\n(Strg+Pfeil nach Links),Przejdź do poprzedniej klatki\n(Ctrl+Strzałka w lewo),На предыдущий кадр\n(Ctrl+Left) +PLAYBACKWARDS_HT,Play the animation backwards (from end to beginning)\n(F4),Αναπαραγωγή της κίνησης ανάποδα (από το τέλος προς την αρχή)\n(F4),Jouer l'animation à l'envers (de la fin vers le début)\n(F4),Spiele die Animation rückwärts ab (vom Ende bis zum Anfang)\n(F4),Odtwórz animację od końca\n(F4),Проиграть анимацию задом наперед (с конца в начало)\n(F4) +PLAYFORWARD_HT,Play the animation forward (from beginning to end)\n(F5),Αναπαραγωγή της κίνησης κανονικά (από την αρχή προς το τέλος)\n(F5),Jouer l'animation (du début vers la fin)\n(F5),Spiele die Animation vorwärts ab (vom Anfang bis zum Ende)\n(F5),Odtwórz animację od początku\n(F5),Проиграть анимацию по умолчанию (с начала в конец)\n(F5) +NEXTFRAME_HT,Go to the next frame\n(Ctrl+Right),Μετάβαση στο επόμενο καρέ\n(Ctrl+Δεξιά),Aller à la prochaine trame\n(Ctrl + Droite),Gehe zum nächsten Frame\n(Strg+Pfeil nach Rechts),Przejdź do następnej klatki\n(Ctrl+Strzałka w prawo),На следующий кадр\n(Ctrl+Right) +LASTFRAME_HT,Jump to the last frame\n(Ctrl+End),Μετάβαση στο τελευταίο καρέ\n(Ctrl+End),Aller à la dernière trame\n(Ctrl + Fin),Springe zum letzten Frame\n(Strg+Ende),Skocz do ostatniej klatki\n(Ctrl+End),Перейти на последний кадр\n(Ctrl+End) +FPS_HT,"How many frames per second should the animation preview be?\nThe more FPS, the faster the animation plays.","Πόσα καρέ ανά δευτερόλεπτο (FPS) να είναι η προεπισκόπηση της κίνησης;\nΌσο περισσότερα FPS, τόσο πιο γρήγορα παίζει η κίνηση.","Combien d'images par seconde pour l'aperçu de l'animation ?\nPlus cette valeur est élevée, plus l'animation sera jouée rapidement.","Wie viele Frames pro Sekunde sollte die Animationsvorschau haben?\n Je mehr FPS, desto schneller wird die Animation abgespielt.",W ilu klatkach na sekundę odtwarzana ma być animacja?\nWiększa ilość klatek na sekundę powoduje szybsze odtwarzanie.,"Число кадров в секунду для просмотра анимации?\nБольшее число кадров в секунду ускорит анмацию." +No loop,No loop,Όχι επανάληψη,Pas de bouclage,Keine Wiederholungsschleife,Brak zapętlania,Не зацикливать +Cycle loop,Cycle loop,Κυκλική επανάληψη,Bouclage en cycle,Zyklusschleife,Zapętl odtwarzanie,Зациклить +Ping-pong loop,Ping-pong loop,Επανάληψη πινγκ-πονγκ,Bouclage en ping-pong,Ping Pong Loop,Zapętlanie typu ping-pong,Пинг-Понг +Onion Skinning:,Onion Skinning:,Γειτονικά καρέ:,Peau d'oignon :,Onion Skinning:,Kalkowanie klatek:,Шлейф смежных кадров: +Past Frames,Past Frames,Παρελθοντικά καρέ,Trames passées,Letzten Frames,Przeszłe klatki,Предыдущие кадры +Future Frames,Future Frames,Μελλοντικά καρέ,Trames futures,Nächsten Frames,Przyszłe klatki,Последующие кадры +Blue-Red Mode,Blue-Red Mode,Μπλε-Κόκκινη λειτουργία,Mode rouge-bleu,Blau-Roter Modus,Niebiesko-czerwone prześwity,Сине-красный режим +Add a new frame,Add a new frame,Προσθήκη νέου καρέ,Ajouter une trame,Füge einen neuen Frame hinzu,Dodaj nową klatkę,Добавить новый кадр +Remove Frame,Remove Frame,Διαγραφή Καρέ,Supprimer la trame,Entferne Frame,Usuń klatkę,Удалить кадр +Clone Frame,Clone Frame,Κλωνοποίηση Καρέ,Cloner la trame,Kopiere Frame,Klonuj klatkę,Клонировать кадр +Move Left,Move Left,Μετακίνηση Αριστερά,Déplacer vers la gauche,Bewege nach Links,Przesuń w lewo,Сместить влево +Move Right,Move Right,Μετακίνηση Δεξιά,Déplacer vers la droite,Bewege nach Rechts,Przesuń w prawo,Сместить вправо +Layers,Layers,Στρώσεις,Calques,Ebenen,Warstwy,Слои +LAYERNEW_HT,Create a new layer,Δημιουργία νέας στρώσης,Créer un calque,Erstelle eine neue Ebene,Stwórz nową warstwę,Создать новый слой +LAYERREMOVE_HT,Remove current layer,Διαγραφή της τρέχουσας στρώσης,Supprimer le calque,Entferne aktuelle Ebene,Usuń obecną warstwę,Удалить текущий слой +LAYERUP_HT,Move up the current layer,Μετακίνηση της τρέχουσας στρώσης προς τα πάνω,Déplacer le calque vers le haut,Bewege aktuelle Ebene nach oben,Przesuń obecną warstwę do góry,Поднять текущий слой выше +LAYERDOWN_HT,Move down the current layer,Μετακίνηση της τρέχουσας στρώσης προς τα κάτω,Déplacer le calque vers le cas,Bewege aktuelle Ebene nach unten,Przesuń obecną warstwę w dół,Опустить текущий слой ниже +LAYERCLONE_HT,Clone current layer,Κλωνοποίηση της τρέχουσας στρώσης,Cloner le calque,Kopiere aktuelle Ebene,Duplikuj obecną warstwę,Клонировать текущий слой +LAYERMERGE_HT,Merge current layer with the one below,Συγχώνευση της τρέχουσας στρώσης με την από κάτω,Fusionner le calque vers le bas,Führe Ebene mit der darunter zusammen,Połącz obecną warstwę z warstwą powyżej,Объединить слой ниже с текущим +LAYERVISIBILITY_HT,Toggle layer's visibility,Εναλλαγή της ορατότητας της στρώσης,Afficher/Masquer le calque,Ändere die Sichtbarkeit der Ebene,Ukrywanie warstwy,Переключить видимость слоев +SPLITSCREEN_HT,Split screen\n\nShow second canvas,Διπλή οθόνη\n\nΕμφάνιση δεύτερου καμβά,Écran partagé\n\nAfficher un second canevas,Geteilter Bildschirm\n\nZeige zweite Leinwand,Podzielenie ekranu\n\nWyświetla drugie płótno,Разделить экран\n\nОтобразить второй холст +SPLITSCREEN_HIDE_HT,Split screen\n\nHide second canvas,Διπλή οθόνη\n\nΑπόκρυψη δεύτερου καμβάf,Écran partagé\n\nCacher le second canevas,Geteilter Bildschirm\n\nVerstecke zweite Leinwand,Podzielenie ekranu\n\nUkrywa drugie płótno,Разделить экран\n\nСкрыть второй холст +Undo: Draw,Undo: Draw,Αναίρεση: Ζωγραφική,Annuler : Dessin,Rückgängig: Zeichen,Cofnij: Rysowanie,Отменить: Рисование +Redo: Draw,Redo: Draw,Ακύρωση αναίρεσης: Ζωγραφική,Refaire : Dessin,Wiederherstellen: Zeichnen,Przywróć: Rysowanie,Повторить: Рисование +Undo: Rectangle Select,Undo: Rectangle Select,Αναίρεση: Ορθογώνια επιλογή,Annuler : Sélection par rectangle,Rückgängig: Rechteck Auswahl,Cofnij: Zaznaczenie prostokątne,Отменить: Прямоугольное выделение +Redo: Rectangle Select,Redo: Rectangle Select,Ακύρωση αναίρεσης: Ορθογώνια επιλογή,Refaire : Sélection par rectangle,Wiederherstellen: Rechteck Auswahl,Przywróć: Zaznaczenie prostokątne,Повторить: Прямоугольное выделение +Undo: Scale,Undo: Scale,Αναίρεση: Κλιμάκωση,Annuler : Redimensionner l'image,Rückgängig: Skalieren,Cofnij: Skalowanie,Отменить: Масштабирование +Redo: Scale,Redo: Scale,Ακύρωση αναίρεσης: Κλιμάκωση,Refaire : Redimensionner l'image,Wiederherstellen: Skalieren,Przywróć: Skalowanie,Повторить: Масштабирование +Undo: Add Layer,Undo: Add Layer,Αναίρεση: Προσθήκη στρώσης,Annuler : Ajouter un calque,Rückgängig: Ebene hinzufügen,Cofnij: Dodawanie warstwy,Отменить: Добавление слоя +Redo: Add Layer,Redo: Add Layer,Ακύρωση αναίρεσης: Προσθήκη στρώσης,Refaire : Ajouter un calque,Wiederherstellen: Ebene hinzufügen,Przywróć: Dodawanie warstwy,Повторить: Добавление слоя +Undo: Remove Layer,Undo: Remove Layer,Αναίρεση: Διαγραφή στρώσης,Annuler : Supprimer le calque,Rückgängigg: Entferne Ebene,Cofnij: Usuwanie warstwy,Отменить: Удаление слоя +Redo: Remove Layer,Redo: Remove Layer,Ακύρωση αναίρεσης: Διαγραφή στρώσης,Refaire : Supprimer le calque,Wiederherstellen: Entferne Ebene,Przywróć: Usuwanie warstwy,Повторить: Удаление слоя +Undo: Merge Layer,Undo: Merge Layer,Αναίρεση: Συγχώνευση στρώσης,Annuler : Fusionner le calque,Rückgängig: Füge Ebene zusammen,Cofnij: Scalanie warstw,Отменить: Объединение слоев +Redo: Merge Layer,Redo: Merge Layer,Ακύρωση αναίρεσης: Συγχώνευση στρώσης,Refaire : Fusionner le calque,Wiederherstellen: Füge Ebene zusammen,Przywróć: Scalanie warstw,Повторить: Объединение слоев +Undo: Change Layer Order,Undo: Change Layer Order,Αναίρεση: Αλλαγή σειράς στρώσης,Annuler : Modifier l'ordre des calques,Rückgängig: Ändere Ebenenreihenfolge,Cofnij: Zmiana kolejności warstw,Отменить: Смена порядка слоев +Redo: Change Layer Order,Redo: Change Layer Order,Ακύρωση αναίρεσης: Αλλαγή σειράς στρώσης,Refaire : Modifier l'ordre des calques,Wiederherstellen: Ändere Ebenenreihenfolge,Przywróć: Zmiana kolejności warstw,Повторить: Смена порядка слоев +Undo: Add Frame,Undo: Add Frame,Αναίρεση: Προσθήκη καρέ,Annuler : Ajouter une trame,Rückgängig: Füge Frame hinzu,Cofnij: Dodawanie klatki,Отменить: Добавление кадра +Redo: Add Frame,Redo: Add Frame,Ακύρωση αναίρεσης: Προσθήκη καρέ,Refaire : Ajouter une trame,Wiederherstellen: Füge Frame hinzu,Przywróć: Dodawanie klatki,Повторить: Добавление кадра +Undo: Remove Frame,Undo: Remove Frame,Αναίρεση: Διαγραφή καρέ,Annuler : Supprimer une trame,Rückgängig: Entferne Frame,Cofnij: Usunięcie klatki,Отменить: Удаление кадра +Redo: Remove Frame,Redo: Remove Frame,Ακύρωση αναίρεσης: Διαγραφή καρέ,Refaire : Supprimer une trame,Wiederherstellen: Entferne Frame,Przywróć: Usunięcie klatki,Повторить: Удаление кадра +Undo: Change Frame Order,Undo: Change Frame Order,Αναίρεση: Αλλαγή σειράς καρέ,Annuler : Modifier l'ordre des trames,Rückgängig: Ändere Framereihenfolge,Cofnij: Zmiana kolejności klatek,Отменить: Смена последовательности кадров +Redo: Change Frame Order,Redo: Change Frame Order,Ακύρωση αναίρεσης: Αλλαγή σειράς καρέ,Refaire : Modifier l'ordre des trames,Wiederherstellen: Ändere Framereihenfolge,Przywróć: Zmiana kolejności klatek,Повторить: Смена последовательности кадров +Undo: Delete Custom Brush,Undo: Delete Custom Brush,Αναίρεση: Διαγραφή προσαρμοσμένου πινέλου,Annuler : Supprimer la brosse personnalisée,Rückgängig: Entferne benutzerdefinierten Pinsel,Cofnij: Usuwanie niestandardowego pędzla,Отменить: Удаление текущей кисти +Redo: Delete Custom Brush,Redo: Delete Custom Brush,Ακύρωση αναίρεσης: Διαγραφή προσαρμοσμένου πινέλου,Refaire : Supprimer la brosse personnalisée,Wiederherstellen: Entferne benutzerdefinierten Pinsel,Przywróć: Usuwanie niestandardowego pędzla,Повторить: Удаление текущей кисти +Move Guide,Move Guide,Μετακίνηση βοηθού,Déplacer le guide,Bewegungsanleitung,Przesuń prowadnice,Сдвинуть направляющие +File saved,File saved,Το αρχείο αποθηκεύτηκε,Fichier enregistré,Datei gespeichert,Plik został zapisany,Файл сохранен +File exported,File exported,Έγινε εξαγωγή αρχείου,Fichier exporté,Datei exportiert,Plik został wyeksportowany,Файл экспортирован