From caa797e26e137ad324050a569a4826074c4c96b5 Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Tue, 19 May 2020 03:51:16 +0300 Subject: [PATCH 01/14] Created ColorAndToolOptions script and scene Removed the tool option signals from Main.gd and put them to ColorAndToolOptions.gd. Instead of having 2 methods for left and right, they are now in one method, using a boolean to differentiate between left and right. --- src/Main.gd | 207 ----- src/Main.tscn | 1023 +--------------------- src/Palette/PaletteImportFileDialog.tscn | 4 +- src/UI/ColorAndToolOptions.gd | 188 ++++ src/UI/ColorAndToolOptions.tscn | 993 +++++++++++++++++++++ src/UI/Dialogs/ExportDialog.tscn | 4 +- src/UI/Dialogs/ImportSprites.tscn | 6 +- 7 files changed, 1197 insertions(+), 1228 deletions(-) create mode 100644 src/UI/ColorAndToolOptions.gd create mode 100644 src/UI/ColorAndToolOptions.tscn diff --git a/src/Main.gd b/src/Main.gd index 1d56d762d..653967ee7 100644 --- a/src/Main.gd +++ b/src/Main.gd @@ -7,8 +7,6 @@ var tools := [] var redone := false var unsaved_canvas_state := 0 var is_quitting_on_save := false -var previous_left_color := Color.black -var previous_right_color := Color.white # Called when the node enters the scene tree for the first time. @@ -534,10 +532,6 @@ func _can_draw_true() -> void: Global.dialog_open(false) -func _can_draw_false() -> void: - Global.can_draw = false - - func _on_Tool_pressed(tool_pressed : BaseButton, mouse_press := true, key_for_left := true) -> void: var current_action := tool_pressed.name if (mouse_press and Input.is_action_just_released("left_mouse")) or (!mouse_press and key_for_left): @@ -628,203 +622,10 @@ func _on_Tool_pressed(tool_pressed : BaseButton, mouse_press := true, key_for_le Global.right_cursor_tool_texture.create_from_image(load("res://assets/graphics/cursor_icons/%s_cursor.png" % Global.current_right_tool.to_lower()), 0) -func _on_LeftBrushTypeButton_pressed() -> void: - Global.brushes_popup.popup(Rect2(Global.left_brush_type_button.rect_global_position, Vector2(226, 72))) - Global.brush_type_window_position = "left" - - -func _on_RightBrushTypeButton_pressed() -> void: - Global.brushes_popup.popup(Rect2(Global.right_brush_type_button.rect_global_position, Vector2(226, 72))) - Global.brush_type_window_position = "right" - - -func _on_LeftBrushSizeEdit_value_changed(value) -> void: - Global.left_brush_size_edit.value = value - Global.left_brush_size_slider.value = value - var new_size = int(value) - Global.left_brush_size = new_size - update_left_custom_brush() - - -func _on_RightBrushSizeEdit_value_changed(value) -> void: - Global.right_brush_size_edit.value = value - Global.right_brush_size_slider.value = value - var new_size = int(value) - Global.right_brush_size = new_size - update_right_custom_brush() - - func _on_Brush_Selected() -> void: $BrushesPopup.hide() -func _on_ColorSwitch_pressed() -> void: - var temp: Color = Global.left_color_picker.color - Global.left_color_picker.color = Global.right_color_picker.color - Global.right_color_picker.color = temp - update_left_custom_brush() - update_right_custom_brush() - - -func _on_ColorDefaults_pressed() -> void: - Global.left_color_picker.color = Color.black - Global.right_color_picker.color = Color.white - update_left_custom_brush() - update_right_custom_brush() - - -func _on_LeftColorPickerButton_color_changed(color : Color) -> void: - # If the color changed while it's on full transparency, make it opaque (GH issue #54) - if color.a == 0: - if previous_left_color.r != color.r or previous_left_color.g != color.g or previous_left_color.b != color.b: - Global.left_color_picker.color.a = 1 - update_left_custom_brush() - previous_left_color = color - - -func _on_RightColorPickerButton_color_changed(color : Color) -> void: - # If the color changed while it's on full transparency, make it opaque (GH issue #54) - if color.a == 0: - if previous_right_color.r != color.r or previous_right_color.g != color.g or previous_right_color.b != color.b: - Global.right_color_picker.color.a = 1 - update_right_custom_brush() - previous_right_color = color - - -func _on_LeftInterpolateFactor_value_changed(value : float) -> void: - Global.left_interpolate_spinbox.value = value - Global.left_interpolate_slider.value = value - update_left_custom_brush() - - -func _on_RightInterpolateFactor_value_changed(value : float) -> void: - Global.right_interpolate_spinbox.value = value - Global.right_interpolate_slider.value = value - update_right_custom_brush() - - -func update_left_custom_brush() -> void: - Global.update_left_custom_brush() - - -func update_right_custom_brush() -> void: - Global.update_right_custom_brush() - - -func _on_LeftFillAreaOptions_item_selected(ID : int) -> void: - Global.left_fill_area = ID - - -func _on_LeftFillWithOptions_item_selected(ID : int) -> void: - Global.left_fill_with = ID - if ID == 1: - Global.left_fill_pattern_container.visible = true - else: - Global.left_fill_pattern_container.visible = false - - -func _on_LeftPatternTypeButton_pressed() -> void: - Global.pattern_window_position = "left" - Global.patterns_popup.popup(Rect2(Global.left_brush_type_button.rect_global_position, Vector2(226, 72))) - - -func _on_LeftPatternOffsetX_value_changed(value : float) -> void: - Global.left_fill_pattern_offset.x = value - - -func _on_LeftPatternOffsetY_value_changed(value : float) -> void: - Global.left_fill_pattern_offset.y = value - - -func _on_RightPatternOffsetX_value_changed(value : float) -> void: - Global.right_fill_pattern_offset.x = value - - -func _on_RightPatternOffsetY_value_changed(value : float) -> void: - Global.right_fill_pattern_offset.y = value - - -func _on_RightFillAreaOptions_item_selected(ID : int) -> void: - Global.right_fill_area = ID - - -func _on_RightFillWithOptions_item_selected(ID : int) -> void: - Global.right_fill_with = ID - if ID == 1: - Global.right_fill_pattern_container.visible = true - else: - Global.right_fill_pattern_container.visible = false - - -func _on_RightPatternTypeButton_pressed() -> void: - Global.pattern_window_position = "right" - Global.patterns_popup.popup(Rect2(Global.right_brush_type_button.rect_global_position, Vector2(226, 72))) - - -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 / 100 - Global.left_ld_amount_slider.value = value - Global.left_ld_amount_spinbox.value = value - - -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 / 100 - Global.right_ld_amount_slider.value = value - Global.right_ld_amount_spinbox.value = value - - -func _on_LeftForColorOptions_item_selected(ID : int) -> void: - Global.left_color_picker_for = ID - - -func _on_RightForColorOptions_item_selected(ID : int) -> void: - Global.right_color_picker_for = ID - - -func _on_LeftZoomModeOptions_item_selected(ID : int) -> void: - Global.left_zoom_mode = ID - - -func _on_RightZoomModeOptions_item_selected(ID : int) -> void: - Global.right_zoom_mode = ID - - -func _on_FitToFrameButton_pressed() -> void: - Global.camera.fit_to_frame(Global.canvas.size) - - -func _on_100ZoomButton_pressed() -> void: - Global.camera.zoom = Vector2.ONE - Global.camera.offset = Global.canvas.size / 2 - Global.zoom_level_label.text = str(round(100 / Global.camera.zoom.x)) + " %" - Global.horizontal_ruler.update() - Global.vertical_ruler.update() - - -func _on_LeftHorizontalMirroring_toggled(button_pressed) -> void: - Global.left_horizontal_mirror = button_pressed - - -func _on_LeftVerticalMirroring_toggled(button_pressed) -> void: - Global.left_vertical_mirror = button_pressed - - -func _on_RightHorizontalMirroring_toggled(button_pressed) -> void: - Global.right_horizontal_mirror = button_pressed - - -func _on_RightVerticalMirroring_toggled(button_pressed) -> void: - Global.right_vertical_mirror = button_pressed - - func show_quit_dialog() -> void: if !$QuitDialog.visible: if !Global.project_has_changed: @@ -868,11 +669,3 @@ func _on_BackupConfirmation_delete(project_path : String, backup_path : String) # Reopen last project if Global.open_last_project: load_last_project() - - -func _on_LeftPixelPerfectMode_toggled(button_pressed : bool) -> void: - Global.left_pixel_perfect = button_pressed - - -func _on_RightPixelPerfectMode_toggled(button_pressed : bool) -> void: - Global.right_pixel_perfect = button_pressed diff --git a/src/Main.tscn b/src/Main.tscn index 474171a47..4bfe07390 100644 --- a/src/Main.tscn +++ b/src/Main.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=57 format=2] +[gd_scene load_steps=46 format=2] [ext_resource path="res://assets/themes/dark/theme.tres" type="Theme" id=1] [ext_resource path="res://src/Main.gd" type="Script" id=2] @@ -9,9 +9,7 @@ [ext_resource path="res://assets/graphics/dark_themes/tools/lightendarken.png" type="Texture" id=7] [ext_resource path="res://assets/graphics/dark_themes/tools/colorpicker.png" type="Texture" id=8] [ext_resource path="res://assets/graphics/dark_themes/tools/bucket.png" type="Texture" id=9] -[ext_resource path="res://assets/graphics/dark_themes/misc/color_switch.png" type="Texture" id=10] -[ext_resource path="res://assets/graphics/dark_themes/misc/color_defaults.png" type="Texture" id=11] -[ext_resource path="res://assets/graphics/brush_button.png" type="Texture" id=12] +[ext_resource path="res://src/UI/ColorAndToolOptions.tscn" type="PackedScene" id=10] [ext_resource path="res://assets/themes/dark/ruler_style.tres" type="StyleBox" id=13] [ext_resource path="res://src/UI/Rulers/HorizontalRuler.gd" type="Script" id=14] [ext_resource path="res://src/UI/Rulers/VerticalRuler.gd" type="Script" id=15] @@ -23,13 +21,11 @@ [ext_resource path="res://assets/graphics/dark_themes/palette/edit_palette.png" type="Texture" id=21] [ext_resource path="res://assets/graphics/dark_themes/palette/add_palette.png" type="Texture" id=22] [ext_resource path="res://assets/graphics/dark_themes/tools/zoom.png" type="Texture" id=23] -[ext_resource path="res://assets/graphics/dark_themes/tools/horizontal_mirror_on.png" type="Texture" id=24] [ext_resource path="res://src/Palette/PaletteContainer.gd" type="Script" id=25] [ext_resource path="res://src/UI/BrushButton.tscn" type="PackedScene" id=26] [ext_resource path="res://src/UI/Dialogs/SplashDialog.tscn" type="PackedScene" id=27] [ext_resource path="res://src/UI/Dialogs/CreateNewImage.tscn" type="PackedScene" id=28] [ext_resource path="res://src/UI/Dialogs/ImportSprites.tscn" type="PackedScene" id=29] -[ext_resource path="res://assets/graphics/dark_themes/tools/horizontal_mirror_off.png" type="Texture" id=30] [ext_resource path="res://src/UI/Dialogs/ScaleImage.tscn" type="PackedScene" id=31] [ext_resource path="res://src/UI/Dialogs/PreferencesDialog.tscn" type="PackedScene" id=32] [ext_resource path="res://src/UI/Dialogs/OutlineDialog.tscn" type="PackedScene" id=33] @@ -39,8 +35,6 @@ [ext_resource path="res://src/Palette/PaletteImportFileDialog.tscn" type="PackedScene" id=37] [ext_resource path="res://src/UI/Dialogs/RotateImage.tscn" type="PackedScene" id=38] [ext_resource path="res://src/UI/Dialogs/ExportDialog.tscn" type="PackedScene" id=39] -[ext_resource path="res://assets/graphics/dark_themes/tools/vertical_mirror_off.png" type="Texture" id=40] -[ext_resource path="res://assets/graphics/dark_themes/tools/vertical_mirror_on.png" type="Texture" id=41] [ext_resource path="res://src/Shaders/TransparentChecker.shader" type="Shader" id=42] [ext_resource path="res://src/UI/Dialogs/HSVDialog.tscn" type="PackedScene" id=44] [ext_resource path="res://src/UI/TransparentChecker.gd" type="Script" id=45] @@ -53,36 +47,8 @@ shader_param/size = 10.0 shader_param/color1 = Color( 0.7, 0.7, 0.7, 1 ) shader_param/color2 = Color( 1, 1, 1, 1 ) -[sub_resource type="ShortCut" id=2] - [sub_resource type="Image" id=11] 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", -"height": 32, -"mipmaps": false, -"width": 32 -} - -[sub_resource type="ImageTexture" id=4] -image = SubResource( 11 ) -size = Vector2( 32, 32 ) - -[sub_resource type="Image" id=12] -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", -"height": 32, -"mipmaps": false, -"width": 32 -} - -[sub_resource type="ImageTexture" id=6] -image = SubResource( 12 ) -size = Vector2( 32, 32 ) - -[sub_resource type="Image" id=13] -data = { "data": PoolByteArray( 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 255, 0, 0, 0, 0, 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, 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, 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, 255, 0, 0, 0, 0, 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, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ), "format": "RGBA8", "height": 9, @@ -93,10 +59,10 @@ data = { [sub_resource type="ImageTexture" id=8] flags = 3 flags = 3 -image = SubResource( 13 ) +image = SubResource( 11 ) size = Vector2( 9, 9 ) -[sub_resource type="Image" id=14] +[sub_resource type="Image" id=12] data = { "data": PoolByteArray( 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, 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, 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, 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, 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, 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, 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, 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, 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, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ), "format": "RGBA8", @@ -108,7 +74,7 @@ data = { [sub_resource type="ImageTexture" id=10] flags = 3 flags = 3 -image = SubResource( 14 ) +image = SubResource( 12 ) size = Vector2( 9, 9 ) [node name="Control" type="Control"] @@ -571,928 +537,7 @@ margin_bottom = 676.0 size_flags_vertical = 3 custom_constants/autohide = 0 -[node name="ColorAndToolOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit"] -margin_right = 330.0 -margin_bottom = 255.0 -size_flags_vertical = 3 -custom_constants/separation = 8 - -[node name="ColorButtonsVertical" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions"] -margin_right = 330.0 -margin_bottom = 51.0 -custom_constants/separation = 2 - -[node name="ColorSwitchCenter" type="CenterContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical"] -margin_right = 330.0 -margin_bottom = 7.0 - -[node name="ColorSwitch" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorSwitchCenter" groups=[ -"UIButtons", -]] -margin_left = 152.0 -margin_right = 177.0 -margin_bottom = 7.0 -focus_mode = 0 -mouse_default_cursor_shape = 2 -shortcut_in_tooltip = false -shortcut = SubResource( 2 ) -texture_normal = ExtResource( 10 ) - -[node name="ColorPickersCenter" type="CenterContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical"] -margin_top = 9.0 -margin_right = 330.0 -margin_bottom = 41.0 - -[node name="ColorPickersHorizontal" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter"] -margin_left = 94.0 -margin_right = 235.0 -margin_bottom = 32.0 -custom_constants/separation = 13 - -[node name="LeftColorPickerButton" type="ColorPickerButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal"] -margin_right = 64.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 64, 32 ) -hint_tooltip = "Choose a color for the left tool" -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 0 -size_flags_vertical = 0 - -[node name="RightColorPickerButton" type="ColorPickerButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal"] -margin_left = 77.0 -margin_right = 141.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 64, 32 ) -hint_tooltip = "Choose a color for the right tool" -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 0 -size_flags_vertical = 0 -color = Color( 1, 1, 1, 1 ) - -[node name="ColorDefaultsCenter" type="CenterContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical"] -margin_top = 43.0 -margin_right = 330.0 -margin_bottom = 51.0 -size_flags_horizontal = 3 - -[node name="ColorDefaults" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorDefaultsCenter" groups=[ -"UIButtons", -]] -margin_left = 152.0 -margin_right = 177.0 -margin_bottom = 8.0 -hint_tooltip = "Reset the colors to their default state (black for left, white for right)" -focus_mode = 0 -mouse_default_cursor_shape = 2 -texture_normal = ExtResource( 11 ) - -[node name="ScrollContainer" type="ScrollContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions"] -margin_top = 59.0 -margin_right = 330.0 -margin_bottom = 255.0 -size_flags_vertical = 3 - -[node name="ToolOptions" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer"] -margin_right = 330.0 -margin_bottom = 196.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 - -[node name="LeftPanelContainer" type="PanelContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions"] -margin_left = 16.0 -margin_right = 146.0 -margin_bottom = 130.0 -rect_min_size = Vector2( 130, 0 ) -size_flags_horizontal = 6 -size_flags_vertical = 0 - -[node name="LeftToolOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer"] -margin_left = 4.5 -margin_top = 3.0 -margin_right = 125.5 -margin_bottom = 127.0 -size_flags_horizontal = 3 - -[node name="LeftLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -margin_right = 121.0 -margin_bottom = 15.0 -text = "Left tool" -align = 1 -autowrap = true - -[node name="LeftBrushType" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -margin_top = 19.0 -margin_right = 121.0 -margin_bottom = 51.0 -alignment = 1 - -[node name="LeftBrushTypeButton" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType"] -margin_left = 14.0 -margin_right = 50.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 36, 32 ) -hint_tooltip = "Select a brush" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 0 -texture_normal = ExtResource( 12 ) - -[node name="BrushTexture" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType/LeftBrushTypeButton"] -margin_right = 32.0 -margin_bottom = 32.0 -texture = SubResource( 4 ) -expand = true -stretch_mode = 6 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="LeftBrushSizeEdit" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType"] -margin_left = 54.0 -margin_right = 106.0 -margin_bottom = 32.0 -mouse_default_cursor_shape = 2 -min_value = 1.0 -value = 1.0 -align = 1 -suffix = "px" - -[node name="LeftBrushSizeSlider" type="HSlider" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -margin_left = 14.0 -margin_top = 55.0 -margin_right = 106.0 -margin_bottom = 67.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -size_flags_vertical = 1 -min_value = 1.0 -value = 1.0 -allow_greater = true -ticks_on_borders = true - -[node name="LeftBrushPixelPerfectMode" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -margin_top = 71.0 -margin_right = 121.0 -margin_bottom = 87.0 -alignment = 1 - -[node name="LeftPixelPerfectMode" type="CheckBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushPixelPerfectMode"] -margin_left = 17.0 -margin_right = 104.0 -margin_bottom = 16.0 -grow_horizontal = 2 -grow_vertical = 2 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Pixel Perfect" -align = 1 - -[node name="LeftColorInterpolation" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 159.0 -margin_bottom = 131.0 -alignment = 1 - -[node name="ColorComesFrom" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation"] -margin_left = 34.0 -margin_right = 124.0 -margin_bottom = 15.0 -hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" -mouse_filter = 1 -size_flags_horizontal = 4 -text = "Brush color from" - -[node name="LeftInterpolateFactor" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation"] -margin_left = 52.0 -margin_top = 19.0 -margin_right = 106.0 -margin_bottom = 36.0 -hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -value = 100.0 -align = 1 - -[node name="LeftInterpolateSlider" type="HSlider" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation"] -margin_left = 33.0 -margin_top = 40.0 -margin_right = 125.0 -margin_bottom = 56.0 -rect_min_size = Vector2( 92, 0 ) -hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -size_flags_vertical = 1 -value = 100.0 -ticks_on_borders = true - -[node name="LeftFillArea" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -visible = false -margin_top = 71.0 -margin_right = 154.0 -margin_bottom = 252.0 - -[node name="FillAreaLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] -margin_left = 54.0 -margin_right = 100.0 -margin_bottom = 15.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Fill area:" - -[node name="LeftFillAreaOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] -margin_left = 21.0 -margin_top = 19.0 -margin_right = 133.0 -margin_bottom = 40.0 -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Same color area" -items = [ "Same color area", null, false, 0, null, "Same color pixels", null, false, 1, null ] -selected = 0 - -[node name="FillWithLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] -margin_left = 54.0 -margin_top = 44.0 -margin_right = 99.0 -margin_bottom = 59.0 -size_flags_horizontal = 4 -text = "Fill with:" - -[node name="LeftFillWithOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] -margin_left = 26.0 -margin_top = 63.0 -margin_right = 127.0 -margin_bottom = 84.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Selected Color" -items = [ "Selected Color", null, false, 0, null, "Pattern", null, false, 1, null ] -selected = 0 - -[node name="LeftFillPattern" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] -visible = false -margin_left = 44.0 -margin_top = 88.0 -margin_right = 109.0 -margin_bottom = 181.0 -size_flags_horizontal = 4 - -[node name="LeftPatternTypeButton" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] -margin_left = 16.0 -margin_right = 48.0 -margin_bottom = 32.0 -hint_tooltip = "Select a brush" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -texture_normal = ExtResource( 12 ) - -[node name="PatternTexture" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/LeftPatternTypeButton"] -margin_right = 32.0 -margin_bottom = 32.0 -expand = true -stretch_mode = 6 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Offset" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] -margin_top = 36.0 -margin_right = 65.0 -margin_bottom = 51.0 -text = "Offset" - -[node name="XOffset" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] -margin_top = 55.0 -margin_right = 65.0 -margin_bottom = 72.0 - -[node name="Label" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/XOffset"] -margin_top = 1.0 -margin_right = 8.0 -margin_bottom = 16.0 -text = "X" - -[node name="LeftPatternOffsetX" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/XOffset"] -margin_left = 11.0 -margin_right = 65.0 -margin_bottom = 17.0 -mouse_default_cursor_shape = 2 - -[node name="YOffset" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] -margin_top = 76.0 -margin_right = 65.0 -margin_bottom = 93.0 - -[node name="Label" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/YOffset"] -margin_top = 1.0 -margin_right = 7.0 -margin_bottom = 16.0 -text = "Y" - -[node name="LeftPatternOffsetY" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/YOffset"] -margin_left = 10.0 -margin_right = 64.0 -margin_bottom = 17.0 -mouse_default_cursor_shape = 2 - -[node name="LeftLDOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 153.0 -margin_bottom = 158.0 -alignment = 1 - -[node name="LeftLightenDarken" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] -margin_left = 30.0 -margin_right = 122.0 -margin_bottom = 23.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Lighten" -items = [ "Lighten", null, false, 0, null, "Darken", null, false, 1, null ] -selected = 0 - -[node name="LDAmountLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] -margin_left = 53.0 -margin_top = 27.0 -margin_right = 100.0 -margin_bottom = 42.0 -size_flags_horizontal = 4 -text = "Amount:" - -[node name="LeftLDAmountSpinbox" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] -margin_left = 49.0 -margin_top = 46.0 -margin_right = 103.0 -margin_bottom = 63.0 -hint_tooltip = "Lighten/Darken amount" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -value = 10.0 -align = 1 - -[node name="LeftLDAmountSlider" type="HSlider" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] -margin_left = 30.0 -margin_top = 67.0 -margin_right = 122.0 -margin_bottom = 83.0 -rect_min_size = Vector2( 92, 0 ) -hint_tooltip = "Lighten/Darken amount" -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -size_flags_vertical = 1 -value = 10.0 -ticks_on_borders = true - -[node name="LeftColorPickerOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 159.0 -margin_bottom = 117.0 - -[node name="Label" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorPickerOptions"] -margin_left = 57.0 -margin_right = 101.0 -margin_bottom = 15.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Pick for:" - -[node name="LeftForColorOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorPickerOptions"] -margin_left = 42.0 -margin_top = 19.0 -margin_right = 116.0 -margin_bottom = 42.0 -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Left Color" -items = [ "Left Color", null, false, 0, null, "Right Color", null, false, 1, null ] -selected = 0 - -[node name="LeftZoomOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 153.0 -margin_bottom = 190.0 - -[node name="ModeLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] -margin_left = 60.0 -margin_right = 93.0 -margin_bottom = 15.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Mode:" - -[node name="LeftZoomModeOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] -margin_left = 30.0 -margin_top = 19.0 -margin_right = 122.0 -margin_bottom = 42.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Zoom in" -items = [ "Zoom in", null, false, 0, null, "Zoom out", null, false, 1, null ] -selected = 0 - -[node name="OptionsLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] -margin_left = 54.0 -margin_top = 46.0 -margin_right = 99.0 -margin_bottom = 61.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Options:" - -[node name="FitToFrameButton" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] -margin_left = 30.0 -margin_top = 65.0 -margin_right = 122.0 -margin_bottom = 88.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Fit to frame" - -[node name="100%ZoomButton" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] -margin_left = 30.0 -margin_top = 92.0 -margin_right = 122.0 -margin_bottom = 115.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "100% Zoom" - -[node name="EmptySpacer" type="Control" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -margin_top = 91.0 -margin_right = 121.0 -margin_bottom = 103.0 -rect_min_size = Vector2( 0, 12 ) - -[node name="LeftMirrorButtons" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -margin_top = 107.0 -margin_right = 121.0 -margin_bottom = 124.0 -custom_constants/separation = 44 -alignment = 1 - -[node name="LeftHorizontalMirroring" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons" groups=[ -"UIButtons", -]] -margin_left = 22.0 -margin_right = 37.0 -margin_bottom = 17.0 -hint_tooltip = "Enable horizontal mirrored drawing" -focus_mode = 0 -mouse_default_cursor_shape = 2 -toggle_mode = true -texture_normal = ExtResource( 30 ) -texture_pressed = ExtResource( 24 ) - -[node name="LeftVerticalMirroring" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons" groups=[ -"UIButtons", -]] -margin_left = 81.0 -margin_right = 98.0 -margin_bottom = 17.0 -hint_tooltip = "Enable vertical mirrored drawing" -focus_mode = 0 -mouse_default_cursor_shape = 2 -toggle_mode = true -texture_normal = ExtResource( 40 ) -texture_pressed = ExtResource( 41 ) - -[node name="RightPanelContainer" type="PanelContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions"] -margin_left = 183.0 -margin_right = 313.0 -margin_bottom = 130.0 -rect_min_size = Vector2( 130, 0 ) -size_flags_horizontal = 6 -size_flags_vertical = 0 - -[node name="RightToolOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer"] -margin_left = 4.5 -margin_top = 3.0 -margin_right = 125.5 -margin_bottom = 127.0 -size_flags_horizontal = 3 - -[node name="RightLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -margin_right = 121.0 -margin_bottom = 15.0 -text = "Right tool" -align = 1 -autowrap = true - -[node name="RightBrushType" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -margin_top = 19.0 -margin_right = 121.0 -margin_bottom = 51.0 -alignment = 1 - -[node name="RightBrushTypeButton" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType"] -margin_left = 14.0 -margin_right = 50.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 36, 32 ) -hint_tooltip = "Select a brush" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 0 -texture_normal = ExtResource( 12 ) - -[node name="BrushTexture" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType/RightBrushTypeButton"] -margin_right = 32.0 -margin_bottom = 32.0 -texture = SubResource( 6 ) -expand = true -stretch_mode = 6 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="RightBrushSizeEdit" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType"] -margin_left = 54.0 -margin_right = 106.0 -margin_bottom = 32.0 -mouse_default_cursor_shape = 2 -min_value = 1.0 -value = 1.0 -align = 1 -suffix = "px" - -[node name="RightBrushSizeSlider" type="HSlider" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -margin_left = 14.0 -margin_top = 55.0 -margin_right = 106.0 -margin_bottom = 67.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -size_flags_vertical = 1 -min_value = 1.0 -value = 1.0 -allow_greater = true -ticks_on_borders = true - -[node name="RightBrushPixelPerfectMode" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -margin_top = 71.0 -margin_right = 121.0 -margin_bottom = 87.0 -alignment = 1 - -[node name="RightPixelPerfectMode" type="CheckBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushPixelPerfectMode"] -margin_left = 17.0 -margin_right = 104.0 -margin_bottom = 16.0 -grow_horizontal = 2 -grow_vertical = 2 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Pixel Perfect" -align = 1 - -[node name="RightColorInterpolation" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 144.0 -margin_bottom = 131.0 -alignment = 1 - -[node name="ColorComesFrom" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation"] -margin_left = 27.0 -margin_right = 117.0 -margin_bottom = 15.0 -hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" -mouse_filter = 1 -size_flags_horizontal = 4 -text = "Brush color from" - -[node name="RightInterpolateFactor" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation"] -margin_left = 45.0 -margin_top = 19.0 -margin_right = 99.0 -margin_bottom = 36.0 -hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -value = 100.0 -align = 1 - -[node name="RightInterpolateSlider" type="HSlider" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation"] -margin_left = 25.0 -margin_top = 40.0 -margin_right = 117.0 -margin_bottom = 56.0 -rect_min_size = Vector2( 92, 0 ) -hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -size_flags_vertical = 1 -value = 100.0 -ticks_on_borders = true - -[node name="RightFillArea" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -visible = false -margin_top = 71.0 -margin_right = 160.0 -margin_bottom = 155.0 - -[node name="FillAreaLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] -margin_left = 57.0 -margin_right = 103.0 -margin_bottom = 15.0 -size_flags_horizontal = 4 -text = "Fill area:" - -[node name="RightFillAreaOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] -margin_left = 24.0 -margin_top = 19.0 -margin_right = 136.0 -margin_bottom = 40.0 -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Same color area" -items = [ "Same color area", null, false, 0, null, "Same color pixels", null, false, 1, null ] -selected = 0 - -[node name="FillWithLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] -margin_left = 57.0 -margin_top = 44.0 -margin_right = 102.0 -margin_bottom = 59.0 -size_flags_horizontal = 4 -text = "Fill with:" - -[node name="RightFillWithOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] -margin_left = 38.0 -margin_top = 63.0 -margin_right = 122.0 -margin_bottom = 84.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Selected Color" -items = [ "Selected Color", null, false, 0, null, "Pattern", null, false, 1, null ] -selected = 0 - -[node name="RightFillPattern" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] -visible = false -margin_left = 59.0 -margin_top = 88.0 -margin_right = 95.0 -margin_bottom = 120.0 -size_flags_horizontal = 4 - -[node name="RightPatternTypeButton" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] -margin_right = 36.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 36, 32 ) -hint_tooltip = "Select a brush" -mouse_default_cursor_shape = 2 -texture_normal = ExtResource( 12 ) - -[node name="PatternTexture" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/RightPatternTypeButton"] -margin_right = 32.0 -margin_bottom = 32.0 -expand = true -stretch_mode = 6 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Offset" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] -margin_left = -185.0 -margin_top = 36.0 -margin_right = -120.0 -margin_bottom = 51.0 -text = "Offset" - -[node name="XOffset" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] -margin_left = -185.0 -margin_top = 55.0 -margin_right = -120.0 -margin_bottom = 72.0 - -[node name="Label" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/XOffset"] -margin_top = 1.0 -margin_right = 8.0 -margin_bottom = 16.0 -text = "X" - -[node name="RightPatternOffsetX" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/XOffset"] -margin_left = 11.0 -margin_right = 65.0 -margin_bottom = 17.0 -mouse_default_cursor_shape = 2 - -[node name="YOffset" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] -margin_left = -185.0 -margin_top = 76.0 -margin_right = -120.0 -margin_bottom = 93.0 - -[node name="Label" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/YOffset"] -margin_top = 1.0 -margin_right = 7.0 -margin_bottom = 16.0 -text = "Y" - -[node name="RightPatternOffsetY" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/YOffset"] -margin_left = 10.0 -margin_right = 64.0 -margin_bottom = 17.0 -mouse_default_cursor_shape = 2 - -[node name="RightLDOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 138.0 -margin_bottom = 158.0 - -[node name="RightLightenDarken" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] -margin_left = 22.0 -margin_right = 114.0 -margin_bottom = 23.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Lighten" -items = [ "Lighten", null, false, 0, null, "Darken", null, false, 1, null ] -selected = 0 - -[node name="LDAmountLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] -margin_left = 45.0 -margin_top = 27.0 -margin_right = 92.0 -margin_bottom = 42.0 -size_flags_horizontal = 4 -text = "Amount:" - -[node name="RightLDAmountSpinbox" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] -margin_left = 42.0 -margin_top = 46.0 -margin_right = 96.0 -margin_bottom = 63.0 -hint_tooltip = "Lighten/Darken amount" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -value = 10.0 -align = 1 - -[node name="RightLDAmountSlider" type="HSlider" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] -margin_left = 22.0 -margin_top = 67.0 -margin_right = 114.0 -margin_bottom = 83.0 -rect_min_size = Vector2( 92, 0 ) -hint_tooltip = "Lighten/Darken amount" -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -size_flags_vertical = 1 -value = 10.0 -ticks_on_borders = true - -[node name="RightColorPickerOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 144.0 -margin_bottom = 117.0 - -[node name="Label" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorPickerOptions"] -margin_left = 50.0 -margin_right = 94.0 -margin_bottom = 15.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Pick for:" - -[node name="RightForColorOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorPickerOptions"] -margin_left = 31.0 -margin_top = 19.0 -margin_right = 113.0 -margin_bottom = 42.0 -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Right Color" -items = [ "Left Color", null, false, 0, null, "Right Color", null, false, 1, null ] -selected = 1 - -[node name="RightZoomOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 138.0 -margin_bottom = 190.0 - -[node name="ModeLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] -margin_left = 52.0 -margin_right = 85.0 -margin_bottom = 15.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Mode:" - -[node name="RightZoomModeOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] -margin_left = 22.0 -margin_top = 19.0 -margin_right = 114.0 -margin_bottom = 42.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Zoom out" -items = [ "Zoom in", null, false, 0, null, "Zoom out", null, false, 1, null ] -selected = 1 - -[node name="OptionsLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] -margin_left = 46.0 -margin_top = 46.0 -margin_right = 91.0 -margin_bottom = 61.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Options:" - -[node name="FitToFrameButton" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] -margin_left = 22.0 -margin_top = 65.0 -margin_right = 114.0 -margin_bottom = 88.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Fit to frame" - -[node name="100%ZoomButton" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] -margin_left = 22.0 -margin_top = 92.0 -margin_right = 114.0 -margin_bottom = 115.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "100% Zoom" - -[node name="EmptySpacer" type="Control" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -margin_top = 91.0 -margin_right = 121.0 -margin_bottom = 103.0 -rect_min_size = Vector2( 0, 12 ) - -[node name="RightMirrorButtons" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -margin_top = 107.0 -margin_right = 121.0 -margin_bottom = 124.0 -custom_constants/separation = 44 -alignment = 1 - -[node name="RightHorizontalMirroring" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons" groups=[ -"UIButtons", -]] -margin_left = 22.0 -margin_right = 37.0 -margin_bottom = 17.0 -hint_tooltip = "Enable horizontal mirrored drawing" -focus_mode = 0 -mouse_default_cursor_shape = 2 -toggle_mode = true -texture_normal = ExtResource( 30 ) -texture_pressed = ExtResource( 24 ) - -[node name="RightVerticalMirroring" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons" groups=[ -"UIButtons", -]] -margin_left = 81.0 -margin_right = 98.0 -margin_bottom = 17.0 -hint_tooltip = "Enable vertical mirrored drawing" -focus_mode = 0 -mouse_default_cursor_shape = 2 -toggle_mode = true -texture_normal = ExtResource( 40 ) -texture_pressed = ExtResource( 41 ) +[node name="ColorAndToolOptions" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit" instance=ExtResource( 10 )] [node name="PanelContainer" type="PanelContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit"] margin_left = 15.0 @@ -1717,8 +762,8 @@ resizable = true mode = 0 access = 2 filters = PoolStringArray( "*.pxo ; Pixelorama Project" ) -current_dir = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama" -current_path = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama/" +current_dir = "C:/Users" +current_path = "C:/Users/" [node name="SaveSprite" type="FileDialog" parent="."] anchor_left = 0.5 @@ -1733,8 +778,8 @@ window_title = "Save Sprite as .pxo" resizable = true access = 2 filters = PoolStringArray( "*.pxo ; Pixelorama Project" ) -current_dir = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama" -current_path = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama/" +current_dir = "C:/Users" +current_path = "C:/Users/" [node name="ImportSprites" parent="." instance=ExtResource( 29 )] @@ -1818,54 +863,6 @@ Do you want to reload it?" [connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" to="." method="_on_ViewportContainer_mouse_exited"] [connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_entered"] [connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_exited"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorSwitchCenter/ColorSwitch" to="." method="_on_ColorSwitch_pressed"] -[connection signal="color_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/LeftColorPickerButton" to="." method="_on_LeftColorPickerButton_color_changed"] -[connection signal="popup_closed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/LeftColorPickerButton" to="." method="_can_draw_true"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/LeftColorPickerButton" to="." method="_can_draw_false"] -[connection signal="color_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/RightColorPickerButton" to="." method="_on_RightColorPickerButton_color_changed"] -[connection signal="popup_closed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/RightColorPickerButton" to="." method="_can_draw_true"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/RightColorPickerButton" to="." method="_can_draw_false"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorDefaultsCenter/ColorDefaults" to="." method="_on_ColorDefaults_pressed"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType/LeftBrushTypeButton" to="." method="_on_LeftBrushTypeButton_pressed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType/LeftBrushSizeEdit" to="." method="_on_LeftBrushSizeEdit_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushSizeSlider" to="." method="_on_LeftBrushSizeEdit_value_changed"] -[connection signal="toggled" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushPixelPerfectMode/LeftPixelPerfectMode" to="." method="_on_LeftPixelPerfectMode_toggled"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation/LeftInterpolateFactor" to="." method="_on_LeftInterpolateFactor_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation/LeftInterpolateSlider" to="." method="_on_LeftInterpolateFactor_value_changed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillAreaOptions" to="." method="_on_LeftFillAreaOptions_item_selected"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillWithOptions" to="." method="_on_LeftFillWithOptions_item_selected"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/LeftPatternTypeButton" to="." method="_on_LeftPatternTypeButton_pressed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/XOffset/LeftPatternOffsetX" to="." method="_on_LeftPatternOffsetX_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/YOffset/LeftPatternOffsetY" to="." method="_on_LeftPatternOffsetY_value_changed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions/LeftLightenDarken" to="." method="_on_LeftLightenDarken_item_selected"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions/LeftLDAmountSpinbox" to="." method="_on_LeftLDAmountSpinbox_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions/LeftLDAmountSlider" to="." method="_on_LeftLDAmountSpinbox_value_changed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorPickerOptions/LeftForColorOptions" to="." method="_on_LeftForColorOptions_item_selected"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions/LeftZoomModeOptions" to="." method="_on_LeftZoomModeOptions_item_selected"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions/FitToFrameButton" to="." method="_on_FitToFrameButton_pressed"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions/100%ZoomButton" to="." method="_on_100ZoomButton_pressed"] -[connection signal="toggled" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons/LeftHorizontalMirroring" to="." method="_on_LeftHorizontalMirroring_toggled"] -[connection signal="toggled" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons/LeftVerticalMirroring" to="." method="_on_LeftVerticalMirroring_toggled"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType/RightBrushTypeButton" to="." method="_on_RightBrushTypeButton_pressed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType/RightBrushSizeEdit" to="." method="_on_RightBrushSizeEdit_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushSizeSlider" to="." method="_on_RightBrushSizeEdit_value_changed"] -[connection signal="toggled" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushPixelPerfectMode/RightPixelPerfectMode" to="." method="_on_RightPixelPerfectMode_toggled"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation/RightInterpolateFactor" to="." method="_on_RightInterpolateFactor_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation/RightInterpolateSlider" to="." method="_on_RightInterpolateFactor_value_changed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillAreaOptions" to="." method="_on_RightFillAreaOptions_item_selected"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillWithOptions" to="." method="_on_RightFillWithOptions_item_selected"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/RightPatternTypeButton" to="." method="_on_RightPatternTypeButton_pressed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/XOffset/RightPatternOffsetX" to="." method="_on_RightPatternOffsetX_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/YOffset/RightPatternOffsetY" to="." method="_on_RightPatternOffsetY_value_changed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions/RightLightenDarken" to="." method="_on_RightLightenDarken_item_selected"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions/RightLDAmountSpinbox" to="." method="_on_RightLDAmountSpinbox_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions/RightLDAmountSlider" to="." method="_on_RightLDAmountSpinbox_value_changed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorPickerOptions/RightForColorOptions" to="." method="_on_RightForColorOptions_item_selected"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions/RightZoomModeOptions" to="." method="_on_RightZoomModeOptions_item_selected"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions/FitToFrameButton" to="." method="_on_FitToFrameButton_pressed"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions/100%ZoomButton" to="." method="_on_100ZoomButton_pressed"] -[connection signal="toggled" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons/RightHorizontalMirroring" to="." method="_on_RightHorizontalMirroring_toggled"] -[connection signal="toggled" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons/RightVerticalMirroring" to="." method="_on_RightVerticalMirroring_toggled"] [connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/AddPalette" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_AddPalette_pressed"] [connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/EditPalette" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_edit_palette"] [connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/PaletteOptionButton" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_PaletteOptionButton_item_selected"] diff --git a/src/Palette/PaletteImportFileDialog.tscn b/src/Palette/PaletteImportFileDialog.tscn index f003ecadc..584c9c7e8 100644 --- a/src/Palette/PaletteImportFileDialog.tscn +++ b/src/Palette/PaletteImportFileDialog.tscn @@ -11,5 +11,5 @@ resizable = true mode = 0 access = 2 filters = PoolStringArray( "*.json ; JavaScript Object Notation" ) -current_dir = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama" -current_path = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama/" +current_dir = "C:/Users" +current_path = "C:/Users/" diff --git a/src/UI/ColorAndToolOptions.gd b/src/UI/ColorAndToolOptions.gd new file mode 100644 index 000000000..acd1da216 --- /dev/null +++ b/src/UI/ColorAndToolOptions.gd @@ -0,0 +1,188 @@ +extends VBoxContainer + + +var previous_left_color := Color.black +var previous_right_color := Color.white + + +func _on_ColorSwitch_pressed() -> void: + var temp: Color = Global.left_color_picker.color + Global.left_color_picker.color = Global.right_color_picker.color + Global.right_color_picker.color = temp + Global.update_left_custom_brush() + Global.update_right_custom_brush() + + +func _on_ColorPickerButton_color_changed(color : Color, right : bool): + # If the color changed while it's on full transparency, make it opaque (GH issue #54) + if right: + if color.a == 0: + if previous_right_color.r != color.r or previous_right_color.g != color.g or previous_right_color.b != color.b: + Global.right_color_picker.color.a = 1 + Global.update_right_custom_brush() + previous_right_color = color + else: + if color.a == 0: + if previous_left_color.r != color.r or previous_left_color.g != color.g or previous_left_color.b != color.b: + Global.left_color_picker.color.a = 1 + Global.update_left_custom_brush() + previous_left_color = color + + +func _on_ColorPickerButton_pressed() -> void: + Global.can_draw = false + + +func _on_ColorPickerButton_popup_closed() -> void: + Global.can_draw = true + + +func _on_ColorDefaults_pressed() -> void: + Global.left_color_picker.color = Color.black + Global.right_color_picker.color = Color.white + Global.update_left_custom_brush() + Global.update_right_custom_brush() + + +func _on_FitToFrameButton_pressed() -> void: + Global.camera.fit_to_frame(Global.canvas.size) + + +func _on_100ZoomButton_pressed() -> void: + Global.camera.zoom = Vector2.ONE + Global.camera.offset = Global.canvas.size / 2 + Global.zoom_level_label.text = str(round(100 / Global.camera.zoom.x)) + " %" + Global.horizontal_ruler.update() + Global.vertical_ruler.update() + + +func _on_BrushTypeButton_pressed(right : bool) -> void: + if right: + Global.brushes_popup.popup(Rect2(Global.right_brush_type_button.rect_global_position, Vector2(226, 72))) + Global.brush_type_window_position = "right" + else: + Global.brushes_popup.popup(Rect2(Global.left_brush_type_button.rect_global_position, Vector2(226, 72))) + Global.brush_type_window_position = "left" + + +func _on_BrushSizeEdit_value_changed(value : float, right : bool) -> void: + var new_size = int(value) + if right: + Global.right_brush_size_edit.value = value + Global.right_brush_size_slider.value = value + Global.right_brush_size = new_size + Global.update_right_custom_brush() + else: + Global.left_brush_size_edit.value = value + Global.left_brush_size_slider.value = value + Global.left_brush_size = new_size + Global.update_left_custom_brush() + + +func _on_PixelPerfectMode_toggled(button_pressed : bool, right : bool) -> void: + if right: + Global.right_pixel_perfect = button_pressed + else: + Global.left_pixel_perfect = button_pressed + + +func _on_InterpolateFactor_value_changed(value : float, right : bool) -> void: + if right: + Global.right_interpolate_spinbox.value = value + Global.right_interpolate_slider.value = value + Global.update_right_custom_brush() + else: + Global.left_interpolate_spinbox.value = value + Global.left_interpolate_slider.value = value + Global.update_left_custom_brush() + + +func _on_FillAreaOptions_item_selected(ID : int, right : bool) -> void: + if right: + Global.right_fill_area = ID + else: + Global.left_fill_area = ID + + +func _on_FillWithOptions_item_selected(ID : int, right : bool) -> void: + if right: + Global.right_fill_with = ID + if ID == 1: + Global.right_fill_pattern_container.visible = true + else: + Global.right_fill_pattern_container.visible = false + else: + Global.left_fill_with = ID + if ID == 1: + Global.left_fill_pattern_container.visible = true + else: + Global.left_fill_pattern_container.visible = false + + +func _on_PatternTypeButton_pressed(right : bool) -> void: + if right: + Global.pattern_window_position = "right" + Global.patterns_popup.popup(Rect2(Global.right_brush_type_button.rect_global_position, Vector2(226, 72))) + else: + Global.pattern_window_position = "left" + Global.patterns_popup.popup(Rect2(Global.left_brush_type_button.rect_global_position, Vector2(226, 72))) + + +func _on_PatternOffsetX_value_changed(value : float, right : bool) -> void: + if right: + Global.right_fill_pattern_offset.x = value + else: + Global.left_fill_pattern_offset.x = value + + +func _on_PatternOffsetY_value_changed(value : float, right : bool) -> void: + if right: + Global.right_fill_pattern_offset.y = value + else: + Global.left_fill_pattern_offset.y = value + + +func _on_LightenDarken_item_selected(ID : int, right : bool) -> void: + if right: + Global.right_ld = ID + else: + Global.left_ld = ID + + +func _on_LDAmount_value_changed(value : float, right : bool) -> void: + if right: + Global.right_ld_amount = value / 100 + Global.right_ld_amount_slider.value = value + Global.right_ld_amount_spinbox.value = value + else: + Global.left_ld_amount = value / 100 + Global.left_ld_amount_slider.value = value + Global.left_ld_amount_spinbox.value = value + + +func _on_ForColorOptions_item_selected(ID : int, right : bool) -> void: + if right: + Global.right_color_picker_for = ID + else: + Global.left_color_picker_for = ID + + +func _on_ZoomModeOptions_item_selected(ID : int, right : bool) -> void: + if right: + Global.right_zoom_mode = ID + else: + Global.left_zoom_mode = ID + + +func _on_HorizontalMirroring_toggled(button_pressed : bool, right : bool) -> void: + if right: + Global.right_horizontal_mirror = button_pressed + else: + Global.left_horizontal_mirror = button_pressed + + +func _on_VerticalMirroring_toggled(button_pressed : bool, right : bool) -> void: + if right: + Global.right_vertical_mirror = button_pressed + else: + Global.left_vertical_mirror = button_pressed diff --git a/src/UI/ColorAndToolOptions.tscn b/src/UI/ColorAndToolOptions.tscn new file mode 100644 index 000000000..062b2e8b5 --- /dev/null +++ b/src/UI/ColorAndToolOptions.tscn @@ -0,0 +1,993 @@ +[gd_scene load_steps=14 format=2] + +[ext_resource path="res://assets/graphics/dark_themes/misc/color_switch.png" type="Texture" id=1] +[ext_resource path="res://assets/graphics/dark_themes/misc/color_defaults.png" type="Texture" id=2] +[ext_resource path="res://assets/graphics/brush_button.png" type="Texture" id=3] +[ext_resource path="res://assets/graphics/dark_themes/tools/horizontal_mirror_on.png" type="Texture" id=4] +[ext_resource path="res://assets/graphics/dark_themes/tools/horizontal_mirror_off.png" type="Texture" id=5] +[ext_resource path="res://assets/graphics/dark_themes/tools/vertical_mirror_on.png" type="Texture" id=6] +[ext_resource path="res://assets/graphics/dark_themes/tools/vertical_mirror_off.png" type="Texture" id=7] +[ext_resource path="res://src/UI/ColorAndToolOptions.gd" type="Script" id=8] + +[sub_resource type="ShortCut" id=1] + +[sub_resource type="Image" id=6] +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", +"height": 32, +"mipmaps": false, +"width": 32 +} + +[sub_resource type="ImageTexture" id=3] +image = SubResource( 6 ) +size = Vector2( 32, 32 ) + +[sub_resource type="Image" id=7] +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", +"height": 32, +"mipmaps": false, +"width": 32 +} + +[sub_resource type="ImageTexture" id=5] +image = SubResource( 7 ) +size = Vector2( 32, 32 ) + +[node name="ColorAndToolOptions" type="VBoxContainer"] +margin_right = 330.0 +margin_bottom = 255.0 +size_flags_vertical = 3 +custom_constants/separation = 8 +script = ExtResource( 8 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="ColorButtonsVertical" type="VBoxContainer" parent="."] +margin_right = 330.0 +margin_bottom = 51.0 +custom_constants/separation = 2 + +[node name="ColorSwitchCenter" type="CenterContainer" parent="ColorButtonsVertical"] +margin_right = 330.0 +margin_bottom = 7.0 + +[node name="ColorSwitch" type="TextureButton" parent="ColorButtonsVertical/ColorSwitchCenter" groups=[ +"UIButtons", +]] +margin_left = 152.0 +margin_right = 177.0 +margin_bottom = 7.0 +mouse_default_cursor_shape = 2 +shortcut_in_tooltip = false +shortcut = SubResource( 1 ) +texture_normal = ExtResource( 1 ) + +[node name="ColorPickersCenter" type="CenterContainer" parent="ColorButtonsVertical"] +margin_top = 9.0 +margin_right = 330.0 +margin_bottom = 41.0 + +[node name="ColorPickersHorizontal" type="HBoxContainer" parent="ColorButtonsVertical/ColorPickersCenter"] +margin_left = 94.0 +margin_right = 235.0 +margin_bottom = 32.0 +custom_constants/separation = 13 + +[node name="LeftColorPickerButton" type="ColorPickerButton" parent="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal"] +margin_right = 64.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 64, 32 ) +hint_tooltip = "Choose a color for the left tool" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 0 +size_flags_vertical = 0 + +[node name="RightColorPickerButton" type="ColorPickerButton" parent="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal"] +margin_left = 77.0 +margin_right = 141.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 64, 32 ) +hint_tooltip = "Choose a color for the right tool" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 0 +size_flags_vertical = 0 +color = Color( 1, 1, 1, 1 ) + +[node name="ColorDefaultsCenter" type="CenterContainer" parent="ColorButtonsVertical"] +margin_top = 43.0 +margin_right = 330.0 +margin_bottom = 51.0 +size_flags_horizontal = 3 + +[node name="ColorDefaults" type="TextureButton" parent="ColorButtonsVertical/ColorDefaultsCenter" groups=[ +"UIButtons", +]] +margin_left = 152.0 +margin_right = 177.0 +margin_bottom = 8.0 +hint_tooltip = "Reset the colors to their default state (black for left, white for right)" +mouse_default_cursor_shape = 2 +texture_normal = ExtResource( 2 ) + +[node name="ScrollContainer" type="ScrollContainer" parent="."] +margin_top = 59.0 +margin_right = 330.0 +margin_bottom = 255.0 +size_flags_vertical = 3 + +[node name="ToolOptions" type="HBoxContainer" parent="ScrollContainer"] +margin_right = 330.0 +margin_bottom = 196.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 + +[node name="LeftPanelContainer" type="PanelContainer" parent="ScrollContainer/ToolOptions"] +margin_left = 16.0 +margin_right = 146.0 +margin_bottom = 149.0 +rect_min_size = Vector2( 130, 0 ) +size_flags_horizontal = 6 +size_flags_vertical = 0 + +[node name="LeftToolOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer"] +margin_left = 7.0 +margin_top = 7.0 +margin_right = 123.0 +margin_bottom = 142.0 +size_flags_horizontal = 3 + +[node name="LeftLabel" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +margin_right = 116.0 +margin_bottom = 14.0 +text = "Left tool" +align = 1 +autowrap = true + +[node name="LeftBrushType" type="HBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +margin_top = 18.0 +margin_right = 116.0 +margin_bottom = 50.0 +alignment = 1 + +[node name="LeftBrushTypeButton" type="TextureButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType"] +margin_left = 1.0 +margin_right = 37.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 36, 32 ) +hint_tooltip = "Select a brush" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 0 +texture_normal = ExtResource( 3 ) + +[node name="BrushTexture" type="TextureRect" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType/LeftBrushTypeButton"] +margin_right = 32.0 +margin_bottom = 32.0 +texture = SubResource( 3 ) +expand = true +stretch_mode = 6 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="LeftBrushSizeEdit" type="SpinBox" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType"] +margin_left = 41.0 +margin_right = 115.0 +margin_bottom = 32.0 +mouse_default_cursor_shape = 2 +min_value = 1.0 +value = 1.0 +align = 1 +suffix = "px" + +[node name="LeftBrushSizeSlider" type="HSlider" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +margin_left = 12.0 +margin_top = 54.0 +margin_right = 104.0 +margin_bottom = 70.0 +rect_min_size = Vector2( 92, 0 ) +focus_mode = 0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 1 +min_value = 1.0 +value = 1.0 +allow_greater = true +ticks_on_borders = true + +[node name="LeftBrushPixelPerfectMode" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +margin_top = 74.0 +margin_right = 116.0 +margin_bottom = 98.0 +alignment = 1 + +[node name="LeftPixelPerfectMode" type="CheckBox" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushPixelPerfectMode"] +margin_left = 4.0 +margin_right = 112.0 +margin_bottom = 24.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Pixel Perfect" +align = 1 + +[node name="LeftColorInterpolation" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +visible = false +margin_top = 102.0 +margin_right = 116.0 +margin_bottom = 164.0 +alignment = 1 + +[node name="ColorComesFrom" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation"] +margin_left = 4.0 +margin_right = 111.0 +margin_bottom = 14.0 +hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" +mouse_filter = 1 +size_flags_horizontal = 4 +text = "Brush color from" + +[node name="LeftInterpolateFactor" type="SpinBox" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation"] +margin_left = 21.0 +margin_top = 18.0 +margin_right = 95.0 +margin_bottom = 42.0 +hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +value = 100.0 +align = 1 + +[node name="LeftInterpolateSlider" type="HSlider" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation"] +margin_left = 12.0 +margin_top = 46.0 +margin_right = 104.0 +margin_bottom = 62.0 +rect_min_size = Vector2( 92, 0 ) +hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" +focus_mode = 0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 1 +value = 100.0 +ticks_on_borders = true + +[node name="LeftFillArea" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +visible = false +margin_top = 71.0 +margin_right = 154.0 +margin_bottom = 252.0 + +[node name="FillAreaLabel" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] +margin_left = 54.0 +margin_right = 100.0 +margin_bottom = 15.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Fill area:" + +[node name="LeftFillAreaOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] +margin_left = 21.0 +margin_top = 19.0 +margin_right = 133.0 +margin_bottom = 40.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Same color area" +items = [ "Same color area", null, false, 0, null, "Same color pixels", null, false, 1, null ] +selected = 0 + +[node name="FillWithLabel" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] +margin_left = 54.0 +margin_top = 44.0 +margin_right = 99.0 +margin_bottom = 59.0 +size_flags_horizontal = 4 +text = "Fill with:" + +[node name="LeftFillWithOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] +margin_left = 26.0 +margin_top = 63.0 +margin_right = 127.0 +margin_bottom = 84.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Selected Color" +items = [ "Selected Color", null, false, 0, null, "Pattern", null, false, 1, null ] +selected = 0 + +[node name="LeftFillPattern" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] +visible = false +margin_left = 44.0 +margin_top = 88.0 +margin_right = 109.0 +margin_bottom = 181.0 +size_flags_horizontal = 4 + +[node name="LeftPatternTypeButton" type="TextureButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] +margin_left = 16.0 +margin_right = 48.0 +margin_bottom = 32.0 +hint_tooltip = "Select a brush" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +texture_normal = ExtResource( 3 ) + +[node name="PatternTexture" type="TextureRect" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/LeftPatternTypeButton"] +margin_right = 32.0 +margin_bottom = 32.0 +expand = true +stretch_mode = 6 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="Offset" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] +margin_top = 36.0 +margin_right = 65.0 +margin_bottom = 51.0 +text = "Offset" + +[node name="XOffset" type="HBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] +margin_top = 55.0 +margin_right = 65.0 +margin_bottom = 72.0 + +[node name="Label" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/XOffset"] +margin_top = 1.0 +margin_right = 8.0 +margin_bottom = 16.0 +text = "X" + +[node name="LeftPatternOffsetX" type="SpinBox" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/XOffset"] +margin_left = 11.0 +margin_right = 65.0 +margin_bottom = 17.0 +mouse_default_cursor_shape = 2 + +[node name="YOffset" type="HBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] +margin_top = 76.0 +margin_right = 65.0 +margin_bottom = 93.0 + +[node name="Label" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/YOffset"] +margin_top = 1.0 +margin_right = 7.0 +margin_bottom = 16.0 +text = "Y" + +[node name="LeftPatternOffsetY" type="SpinBox" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/YOffset"] +margin_left = 10.0 +margin_right = 64.0 +margin_bottom = 17.0 +mouse_default_cursor_shape = 2 + +[node name="LeftLDOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 153.0 +margin_bottom = 158.0 +alignment = 1 + +[node name="LeftLightenDarken" type="OptionButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] +margin_left = 30.0 +margin_right = 122.0 +margin_bottom = 23.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Lighten" +items = [ "Lighten", null, false, 0, null, "Darken", null, false, 1, null ] +selected = 0 + +[node name="LDAmountLabel" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] +margin_left = 53.0 +margin_top = 27.0 +margin_right = 100.0 +margin_bottom = 42.0 +size_flags_horizontal = 4 +text = "Amount:" + +[node name="LeftLDAmountSpinbox" type="SpinBox" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] +margin_left = 49.0 +margin_top = 46.0 +margin_right = 103.0 +margin_bottom = 63.0 +hint_tooltip = "Lighten/Darken amount" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +value = 10.0 +align = 1 + +[node name="LeftLDAmountSlider" type="HSlider" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] +margin_left = 30.0 +margin_top = 67.0 +margin_right = 122.0 +margin_bottom = 83.0 +rect_min_size = Vector2( 92, 0 ) +hint_tooltip = "Lighten/Darken amount" +focus_mode = 0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 1 +value = 10.0 +ticks_on_borders = true + +[node name="LeftColorPickerOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 159.0 +margin_bottom = 117.0 + +[node name="Label" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorPickerOptions"] +margin_left = 57.0 +margin_right = 101.0 +margin_bottom = 15.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Pick for:" + +[node name="LeftForColorOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorPickerOptions"] +margin_left = 42.0 +margin_top = 19.0 +margin_right = 116.0 +margin_bottom = 42.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Left Color" +items = [ "Left Color", null, false, 0, null, "Right Color", null, false, 1, null ] +selected = 0 + +[node name="LeftZoomOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 153.0 +margin_bottom = 190.0 + +[node name="ModeLabel" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] +margin_left = 60.0 +margin_right = 93.0 +margin_bottom = 15.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Mode:" + +[node name="LeftZoomModeOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] +margin_left = 30.0 +margin_top = 19.0 +margin_right = 122.0 +margin_bottom = 42.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Zoom in" +items = [ "Zoom in", null, false, 0, null, "Zoom out", null, false, 1, null ] +selected = 0 + +[node name="OptionsLabel" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] +margin_left = 54.0 +margin_top = 46.0 +margin_right = 99.0 +margin_bottom = 61.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Options:" + +[node name="FitToFrameButton" type="Button" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] +margin_left = 30.0 +margin_top = 65.0 +margin_right = 122.0 +margin_bottom = 88.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Fit to frame" + +[node name="100%ZoomButton" type="Button" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] +margin_left = 30.0 +margin_top = 92.0 +margin_right = 122.0 +margin_bottom = 115.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "100% Zoom" + +[node name="EmptySpacer" type="Control" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +margin_top = 102.0 +margin_right = 116.0 +margin_bottom = 114.0 +rect_min_size = Vector2( 0, 12 ) + +[node name="LeftMirrorButtons" type="HBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +margin_top = 118.0 +margin_right = 116.0 +margin_bottom = 135.0 +custom_constants/separation = 44 +alignment = 1 + +[node name="LeftHorizontalMirroring" type="TextureButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons" groups=[ +"UIButtons", +]] +margin_left = 20.0 +margin_right = 35.0 +margin_bottom = 17.0 +hint_tooltip = "Enable horizontal mirrored drawing" +mouse_default_cursor_shape = 2 +toggle_mode = true +texture_normal = ExtResource( 5 ) +texture_pressed = ExtResource( 4 ) + +[node name="LeftVerticalMirroring" type="TextureButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons" groups=[ +"UIButtons", +]] +margin_left = 79.0 +margin_right = 96.0 +margin_bottom = 17.0 +hint_tooltip = "Enable vertical mirrored drawing" +mouse_default_cursor_shape = 2 +toggle_mode = true +texture_normal = ExtResource( 7 ) +texture_pressed = ExtResource( 6 ) + +[node name="RightPanelContainer" type="PanelContainer" parent="ScrollContainer/ToolOptions"] +margin_left = 183.0 +margin_right = 313.0 +margin_bottom = 149.0 +rect_min_size = Vector2( 130, 0 ) +size_flags_horizontal = 6 +size_flags_vertical = 0 + +[node name="RightToolOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer"] +margin_left = 7.0 +margin_top = 7.0 +margin_right = 123.0 +margin_bottom = 142.0 +size_flags_horizontal = 3 + +[node name="RightLabel" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +margin_right = 116.0 +margin_bottom = 14.0 +text = "Right tool" +align = 1 +autowrap = true + +[node name="RightBrushType" type="HBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +margin_top = 18.0 +margin_right = 116.0 +margin_bottom = 50.0 +alignment = 1 + +[node name="RightBrushTypeButton" type="TextureButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType"] +margin_left = 1.0 +margin_right = 37.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 36, 32 ) +hint_tooltip = "Select a brush" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 0 +texture_normal = ExtResource( 3 ) + +[node name="BrushTexture" type="TextureRect" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType/RightBrushTypeButton"] +margin_right = 32.0 +margin_bottom = 32.0 +texture = SubResource( 5 ) +expand = true +stretch_mode = 6 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="RightBrushSizeEdit" type="SpinBox" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType"] +margin_left = 41.0 +margin_right = 115.0 +margin_bottom = 32.0 +mouse_default_cursor_shape = 2 +min_value = 1.0 +value = 1.0 +align = 1 +suffix = "px" + +[node name="RightBrushSizeSlider" type="HSlider" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +margin_left = 12.0 +margin_top = 54.0 +margin_right = 104.0 +margin_bottom = 70.0 +rect_min_size = Vector2( 92, 0 ) +focus_mode = 0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 1 +min_value = 1.0 +value = 1.0 +allow_greater = true +ticks_on_borders = true + +[node name="RightBrushPixelPerfectMode" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +margin_top = 74.0 +margin_right = 116.0 +margin_bottom = 98.0 +alignment = 1 + +[node name="RightPixelPerfectMode" type="CheckBox" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushPixelPerfectMode"] +margin_left = 4.0 +margin_right = 112.0 +margin_bottom = 24.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Pixel Perfect" +align = 1 + +[node name="RightColorInterpolation" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 144.0 +margin_bottom = 131.0 +alignment = 1 + +[node name="ColorComesFrom" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation"] +margin_left = 27.0 +margin_right = 117.0 +margin_bottom = 15.0 +hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" +mouse_filter = 1 +size_flags_horizontal = 4 +text = "Brush color from" + +[node name="RightInterpolateFactor" type="SpinBox" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation"] +margin_left = 45.0 +margin_top = 19.0 +margin_right = 99.0 +margin_bottom = 36.0 +hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +value = 100.0 +align = 1 + +[node name="RightInterpolateSlider" type="HSlider" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation"] +margin_left = 25.0 +margin_top = 40.0 +margin_right = 117.0 +margin_bottom = 56.0 +rect_min_size = Vector2( 92, 0 ) +hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" +focus_mode = 0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 1 +value = 100.0 +ticks_on_borders = true + +[node name="RightFillArea" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +visible = false +margin_top = 71.0 +margin_right = 160.0 +margin_bottom = 155.0 + +[node name="FillAreaLabel" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] +margin_left = 57.0 +margin_right = 103.0 +margin_bottom = 15.0 +size_flags_horizontal = 4 +text = "Fill area:" + +[node name="RightFillAreaOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] +margin_left = 24.0 +margin_top = 19.0 +margin_right = 136.0 +margin_bottom = 40.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Same color area" +items = [ "Same color area", null, false, 0, null, "Same color pixels", null, false, 1, null ] +selected = 0 + +[node name="FillWithLabel" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] +margin_left = 57.0 +margin_top = 44.0 +margin_right = 102.0 +margin_bottom = 59.0 +size_flags_horizontal = 4 +text = "Fill with:" + +[node name="RightFillWithOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] +margin_left = 38.0 +margin_top = 63.0 +margin_right = 122.0 +margin_bottom = 84.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Selected Color" +items = [ "Selected Color", null, false, 0, null, "Pattern", null, false, 1, null ] +selected = 0 + +[node name="RightFillPattern" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] +visible = false +margin_left = 59.0 +margin_top = 88.0 +margin_right = 95.0 +margin_bottom = 120.0 +size_flags_horizontal = 4 + +[node name="RightPatternTypeButton" type="TextureButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] +margin_right = 36.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 36, 32 ) +hint_tooltip = "Select a brush" +mouse_default_cursor_shape = 2 +texture_normal = ExtResource( 3 ) + +[node name="PatternTexture" type="TextureRect" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/RightPatternTypeButton"] +margin_right = 32.0 +margin_bottom = 32.0 +expand = true +stretch_mode = 6 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="Offset" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] +margin_left = -185.0 +margin_top = 36.0 +margin_right = -120.0 +margin_bottom = 51.0 +text = "Offset" + +[node name="XOffset" type="HBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] +margin_left = -185.0 +margin_top = 55.0 +margin_right = -120.0 +margin_bottom = 72.0 + +[node name="Label" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/XOffset"] +margin_top = 1.0 +margin_right = 8.0 +margin_bottom = 16.0 +text = "X" + +[node name="RightPatternOffsetX" type="SpinBox" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/XOffset"] +margin_left = 11.0 +margin_right = 65.0 +margin_bottom = 17.0 +mouse_default_cursor_shape = 2 + +[node name="YOffset" type="HBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] +margin_left = -185.0 +margin_top = 76.0 +margin_right = -120.0 +margin_bottom = 93.0 + +[node name="Label" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/YOffset"] +margin_top = 1.0 +margin_right = 7.0 +margin_bottom = 16.0 +text = "Y" + +[node name="RightPatternOffsetY" type="SpinBox" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/YOffset"] +margin_left = 10.0 +margin_right = 64.0 +margin_bottom = 17.0 +mouse_default_cursor_shape = 2 + +[node name="RightLDOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 138.0 +margin_bottom = 158.0 + +[node name="RightLightenDarken" type="OptionButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] +margin_left = 22.0 +margin_right = 114.0 +margin_bottom = 23.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Lighten" +items = [ "Lighten", null, false, 0, null, "Darken", null, false, 1, null ] +selected = 0 + +[node name="LDAmountLabel" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] +margin_left = 45.0 +margin_top = 27.0 +margin_right = 92.0 +margin_bottom = 42.0 +size_flags_horizontal = 4 +text = "Amount:" + +[node name="RightLDAmountSpinbox" type="SpinBox" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] +margin_left = 42.0 +margin_top = 46.0 +margin_right = 96.0 +margin_bottom = 63.0 +hint_tooltip = "Lighten/Darken amount" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +value = 10.0 +align = 1 + +[node name="RightLDAmountSlider" type="HSlider" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] +margin_left = 22.0 +margin_top = 67.0 +margin_right = 114.0 +margin_bottom = 83.0 +rect_min_size = Vector2( 92, 0 ) +hint_tooltip = "Lighten/Darken amount" +focus_mode = 0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 1 +value = 10.0 +ticks_on_borders = true + +[node name="RightColorPickerOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 144.0 +margin_bottom = 117.0 + +[node name="Label" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorPickerOptions"] +margin_left = 50.0 +margin_right = 94.0 +margin_bottom = 15.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Pick for:" + +[node name="RightForColorOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorPickerOptions"] +margin_left = 31.0 +margin_top = 19.0 +margin_right = 113.0 +margin_bottom = 42.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Right Color" +items = [ "Left Color", null, false, 0, null, "Right Color", null, false, 1, null ] +selected = 1 + +[node name="RightZoomOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 138.0 +margin_bottom = 190.0 + +[node name="ModeLabel" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] +margin_left = 52.0 +margin_right = 85.0 +margin_bottom = 15.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Mode:" + +[node name="RightZoomModeOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] +margin_left = 22.0 +margin_top = 19.0 +margin_right = 114.0 +margin_bottom = 42.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Zoom out" +items = [ "Zoom in", null, false, 0, null, "Zoom out", null, false, 1, null ] +selected = 1 + +[node name="OptionsLabel" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] +margin_left = 46.0 +margin_top = 46.0 +margin_right = 91.0 +margin_bottom = 61.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Options:" + +[node name="FitToFrameButton" type="Button" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] +margin_left = 22.0 +margin_top = 65.0 +margin_right = 114.0 +margin_bottom = 88.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Fit to frame" + +[node name="100%ZoomButton" type="Button" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] +margin_left = 22.0 +margin_top = 92.0 +margin_right = 114.0 +margin_bottom = 115.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "100% Zoom" + +[node name="EmptySpacer" type="Control" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +margin_top = 102.0 +margin_right = 116.0 +margin_bottom = 114.0 +rect_min_size = Vector2( 0, 12 ) + +[node name="RightMirrorButtons" type="HBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +margin_top = 118.0 +margin_right = 116.0 +margin_bottom = 135.0 +custom_constants/separation = 44 +alignment = 1 + +[node name="RightHorizontalMirroring" type="TextureButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons" groups=[ +"UIButtons", +]] +margin_left = 20.0 +margin_right = 35.0 +margin_bottom = 17.0 +hint_tooltip = "Enable horizontal mirrored drawing" +mouse_default_cursor_shape = 2 +toggle_mode = true +texture_normal = ExtResource( 5 ) +texture_pressed = ExtResource( 4 ) + +[node name="RightVerticalMirroring" type="TextureButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons" groups=[ +"UIButtons", +]] +margin_left = 79.0 +margin_right = 96.0 +margin_bottom = 17.0 +hint_tooltip = "Enable vertical mirrored drawing" +mouse_default_cursor_shape = 2 +toggle_mode = true +texture_normal = ExtResource( 7 ) +texture_pressed = ExtResource( 6 ) +[connection signal="pressed" from="ColorButtonsVertical/ColorSwitchCenter/ColorSwitch" to="." method="_on_ColorSwitch_pressed"] +[connection signal="color_changed" from="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/LeftColorPickerButton" to="." method="_on_ColorPickerButton_color_changed" binds= [ false ]] +[connection signal="popup_closed" from="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/LeftColorPickerButton" to="." method="_on_ColorPickerButton_popup_closed"] +[connection signal="pressed" from="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/LeftColorPickerButton" to="." method="_on_ColorPickerButton_pressed"] +[connection signal="color_changed" from="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/RightColorPickerButton" to="." method="_on_ColorPickerButton_color_changed" binds= [ true ]] +[connection signal="popup_closed" from="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/RightColorPickerButton" to="." method="_on_ColorPickerButton_popup_closed"] +[connection signal="pressed" from="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/RightColorPickerButton" to="." method="_on_ColorPickerButton_pressed"] +[connection signal="pressed" from="ColorButtonsVertical/ColorDefaultsCenter/ColorDefaults" to="." method="_on_ColorDefaults_pressed"] +[connection signal="pressed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType/LeftBrushTypeButton" to="." method="_on_BrushTypeButton_pressed" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType/LeftBrushSizeEdit" to="." method="_on_BrushSizeEdit_value_changed" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushSizeSlider" to="." method="_on_BrushSizeEdit_value_changed" binds= [ false ]] +[connection signal="toggled" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushPixelPerfectMode/LeftPixelPerfectMode" to="." method="_on_PixelPerfectMode_toggled" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation/LeftInterpolateFactor" to="." method="_on_InterpolateFactor_value_changed" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation/LeftInterpolateSlider" to="." method="_on_InterpolateFactor_value_changed" binds= [ false ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillAreaOptions" to="." method="_on_FillAreaOptions_item_selected" binds= [ false ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillWithOptions" to="." method="_on_FillWithOptions_item_selected" binds= [ false ]] +[connection signal="pressed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/LeftPatternTypeButton" to="." method="_on_PatternTypeButton_pressed" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/XOffset/LeftPatternOffsetX" to="." method="_on_PatternOffsetX_value_changed" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/YOffset/LeftPatternOffsetY" to="." method="_on_PatternOffsetY_value_changed" binds= [ false ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions/LeftLightenDarken" to="." method="_on_LightenDarken_item_selected" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions/LeftLDAmountSpinbox" to="." method="_on_LDAmount_value_changed" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions/LeftLDAmountSlider" to="." method="_on_LDAmount_value_changed" binds= [ false ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorPickerOptions/LeftForColorOptions" to="." method="_on_ForColorOptions_item_selected" binds= [ false ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions/LeftZoomModeOptions" to="." method="_on_ZoomModeOptions_item_selected" binds= [ false ]] +[connection signal="pressed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions/FitToFrameButton" to="." method="_on_FitToFrameButton_pressed"] +[connection signal="pressed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions/100%ZoomButton" to="." method="_on_100ZoomButton_pressed"] +[connection signal="toggled" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons/LeftHorizontalMirroring" to="." method="_on_HorizontalMirroring_toggled" binds= [ false ]] +[connection signal="toggled" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons/LeftVerticalMirroring" to="." method="_on_VerticalMirroring_toggled" binds= [ false ]] +[connection signal="pressed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType/RightBrushTypeButton" to="." method="_on_BrushTypeButton_pressed" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType/RightBrushSizeEdit" to="." method="_on_BrushSizeEdit_value_changed" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushSizeSlider" to="." method="_on_BrushSizeEdit_value_changed" binds= [ true ]] +[connection signal="toggled" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushPixelPerfectMode/RightPixelPerfectMode" to="." method="_on_PixelPerfectMode_toggled" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation/RightInterpolateFactor" to="." method="_on_InterpolateFactor_value_changed" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation/RightInterpolateSlider" to="." method="_on_InterpolateFactor_value_changed" binds= [ true ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillAreaOptions" to="." method="_on_FillAreaOptions_item_selected" binds= [ true ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillWithOptions" to="." method="_on_FillWithOptions_item_selected" binds= [ true ]] +[connection signal="pressed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/RightPatternTypeButton" to="." method="_on_PatternTypeButton_pressed" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/XOffset/RightPatternOffsetX" to="." method="_on_PatternOffsetX_value_changed" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/YOffset/RightPatternOffsetY" to="." method="_on_PatternOffsetY_value_changed" binds= [ true ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions/RightLightenDarken" to="." method="_on_LightenDarken_item_selected" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions/RightLDAmountSpinbox" to="." method="_on_LDAmount_value_changed" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions/RightLDAmountSlider" to="." method="_on_LDAmount_value_changed" binds= [ true ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorPickerOptions/RightForColorOptions" to="." method="_on_ForColorOptions_item_selected" binds= [ true ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions/RightZoomModeOptions" to="." method="_on_ZoomModeOptions_item_selected" binds= [ true ]] +[connection signal="pressed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions/FitToFrameButton" to="." method="_on_FitToFrameButton_pressed"] +[connection signal="pressed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions/100%ZoomButton" to="." method="_on_100ZoomButton_pressed"] +[connection signal="toggled" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons/RightHorizontalMirroring" to="." method="_on_HorizontalMirroring_toggled" binds= [ true ]] +[connection signal="toggled" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons/RightVerticalMirroring" to="." method="_on_VerticalMirroring_toggled" binds= [ true ]] diff --git a/src/UI/Dialogs/ExportDialog.tscn b/src/UI/Dialogs/ExportDialog.tscn index 093c16f41..23625dbbf 100644 --- a/src/UI/Dialogs/ExportDialog.tscn +++ b/src/UI/Dialogs/ExportDialog.tscn @@ -346,8 +346,8 @@ window_title = "Open a Directory" resizable = true mode = 2 access = 2 -current_dir = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama" -current_path = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama/" +current_dir = "C:/Users" +current_path = "C:/Users/" [node name="PathValidationAlert" type="AcceptDialog" parent="Popups"] margin_left = 8.0 diff --git a/src/UI/Dialogs/ImportSprites.tscn b/src/UI/Dialogs/ImportSprites.tscn index 8911e62d6..29cf6ddce 100644 --- a/src/UI/Dialogs/ImportSprites.tscn +++ b/src/UI/Dialogs/ImportSprites.tscn @@ -2,8 +2,6 @@ [ext_resource path="res://src/UI/Dialogs/ImportSprites.gd" type="Script" id=1] - - [node name="ImportSprites" type="FileDialog"] margin_right = 515.0 margin_bottom = 348.0 @@ -12,8 +10,8 @@ resizable = true mode = 1 access = 2 filters = PoolStringArray( "*.bmp ; BMP Image", "*.hdr ; Radiance HDR Image", "*.jpg,*.jpeg ; JPEG Image", "*.png ; PNG Image", "*.svg ; SVG Image", "*.tga ; TGA Image", "*.webp ; WebP Image" ) -current_dir = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama" -current_path = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama/" +current_dir = "C:/Users" +current_path = "C:/Users/" script = ExtResource( 1 ) [node name="HBoxContainer2" type="HBoxContainer" parent="."] From 1e114d6f4f6986b17dfcb2341cbf2c263e0ee3a6 Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Tue, 19 May 2020 03:51:16 +0300 Subject: [PATCH 02/14] Created ColorAndToolOptions script and scene Removed the tool option signals from Main.gd and put them to ColorAndToolOptions.gd. Instead of having 2 methods for left and right, they are now in one method, using a boolean to differentiate between left and right. --- addons/godot-gifexporter | 2 +- src/Main.gd | 207 ----- src/Main.tscn | 1074 +--------------------- src/Palette/PaletteImportFileDialog.tscn | 4 +- src/UI/ColorAndToolOptions.gd | 188 ++++ src/UI/ColorAndToolOptions.tscn | 993 ++++++++++++++++++++ src/UI/Dialogs/ExportDialog.tscn | 4 +- src/UI/Dialogs/ImportSprites.tscn | 6 +- 8 files changed, 1201 insertions(+), 1277 deletions(-) create mode 100644 src/UI/ColorAndToolOptions.gd create mode 100644 src/UI/ColorAndToolOptions.tscn diff --git a/addons/godot-gifexporter b/addons/godot-gifexporter index eb7be4f9a..5dd56aa96 160000 --- a/addons/godot-gifexporter +++ b/addons/godot-gifexporter @@ -1 +1 @@ -Subproject commit eb7be4f9a9dded53f2ce8a24ecba001da368ca5c +Subproject commit 5dd56aa9616098ce59375a09737bf0fc8fc8505a diff --git a/src/Main.gd b/src/Main.gd index 233bc47cb..7c084a146 100644 --- a/src/Main.gd +++ b/src/Main.gd @@ -7,8 +7,6 @@ var tools := [] var redone := false var unsaved_canvas_state := 0 var is_quitting_on_save := false -var previous_left_color := Color.black -var previous_right_color := Color.white # Called when the node enters the scene tree for the first time. @@ -534,10 +532,6 @@ func _can_draw_true() -> void: Global.dialog_open(false) -func _can_draw_false() -> void: - Global.can_draw = false - - func _on_Tool_pressed(tool_pressed : BaseButton, mouse_press := true, key_for_left := true) -> void: var current_action := tool_pressed.name if (mouse_press and Input.is_action_just_released("left_mouse")) or (!mouse_press and key_for_left): @@ -628,203 +622,10 @@ func _on_Tool_pressed(tool_pressed : BaseButton, mouse_press := true, key_for_le Global.right_cursor_tool_texture.create_from_image(load("res://assets/graphics/cursor_icons/%s_cursor.png" % Global.current_right_tool.to_lower()), 0) -func _on_LeftBrushTypeButton_pressed() -> void: - Global.brushes_popup.popup(Rect2(Global.left_brush_type_button.rect_global_position, Vector2(226, 72))) - Global.brush_type_window_position = "left" - - -func _on_RightBrushTypeButton_pressed() -> void: - Global.brushes_popup.popup(Rect2(Global.right_brush_type_button.rect_global_position, Vector2(226, 72))) - Global.brush_type_window_position = "right" - - -func _on_LeftBrushSizeEdit_value_changed(value) -> void: - Global.left_brush_size_edit.value = value - Global.left_brush_size_slider.value = value - var new_size = int(value) - Global.left_brush_size = new_size - update_left_custom_brush() - - -func _on_RightBrushSizeEdit_value_changed(value) -> void: - Global.right_brush_size_edit.value = value - Global.right_brush_size_slider.value = value - var new_size = int(value) - Global.right_brush_size = new_size - update_right_custom_brush() - - func _on_Brush_Selected() -> void: $BrushesPopup.hide() -func _on_ColorSwitch_pressed() -> void: - var temp: Color = Global.left_color_picker.color - Global.left_color_picker.color = Global.right_color_picker.color - Global.right_color_picker.color = temp - update_left_custom_brush() - update_right_custom_brush() - - -func _on_ColorDefaults_pressed() -> void: - Global.left_color_picker.color = Color.black - Global.right_color_picker.color = Color.white - update_left_custom_brush() - update_right_custom_brush() - - -func _on_LeftColorPickerButton_color_changed(color : Color) -> void: - # If the color changed while it's on full transparency, make it opaque (GH issue #54) - if color.a == 0: - if previous_left_color.r != color.r or previous_left_color.g != color.g or previous_left_color.b != color.b: - Global.left_color_picker.color.a = 1 - update_left_custom_brush() - previous_left_color = color - - -func _on_RightColorPickerButton_color_changed(color : Color) -> void: - # If the color changed while it's on full transparency, make it opaque (GH issue #54) - if color.a == 0: - if previous_right_color.r != color.r or previous_right_color.g != color.g or previous_right_color.b != color.b: - Global.right_color_picker.color.a = 1 - update_right_custom_brush() - previous_right_color = color - - -func _on_LeftInterpolateFactor_value_changed(value : float) -> void: - Global.left_interpolate_spinbox.value = value - Global.left_interpolate_slider.value = value - update_left_custom_brush() - - -func _on_RightInterpolateFactor_value_changed(value : float) -> void: - Global.right_interpolate_spinbox.value = value - Global.right_interpolate_slider.value = value - update_right_custom_brush() - - -func update_left_custom_brush() -> void: - Global.update_left_custom_brush() - - -func update_right_custom_brush() -> void: - Global.update_right_custom_brush() - - -func _on_LeftFillAreaOptions_item_selected(ID : int) -> void: - Global.left_fill_area = ID - - -func _on_LeftFillWithOptions_item_selected(ID : int) -> void: - Global.left_fill_with = ID - if ID == 1: - Global.left_fill_pattern_container.visible = true - else: - Global.left_fill_pattern_container.visible = false - - -func _on_LeftPatternTypeButton_pressed() -> void: - Global.pattern_window_position = "left" - Global.patterns_popup.popup(Rect2(Global.left_brush_type_button.rect_global_position, Vector2(226, 72))) - - -func _on_LeftPatternOffsetX_value_changed(value : float) -> void: - Global.left_fill_pattern_offset.x = value - - -func _on_LeftPatternOffsetY_value_changed(value : float) -> void: - Global.left_fill_pattern_offset.y = value - - -func _on_RightPatternOffsetX_value_changed(value : float) -> void: - Global.right_fill_pattern_offset.x = value - - -func _on_RightPatternOffsetY_value_changed(value : float) -> void: - Global.right_fill_pattern_offset.y = value - - -func _on_RightFillAreaOptions_item_selected(ID : int) -> void: - Global.right_fill_area = ID - - -func _on_RightFillWithOptions_item_selected(ID : int) -> void: - Global.right_fill_with = ID - if ID == 1: - Global.right_fill_pattern_container.visible = true - else: - Global.right_fill_pattern_container.visible = false - - -func _on_RightPatternTypeButton_pressed() -> void: - Global.pattern_window_position = "right" - Global.patterns_popup.popup(Rect2(Global.right_brush_type_button.rect_global_position, Vector2(226, 72))) - - -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 / 100 - Global.left_ld_amount_slider.value = value - Global.left_ld_amount_spinbox.value = value - - -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 / 100 - Global.right_ld_amount_slider.value = value - Global.right_ld_amount_spinbox.value = value - - -func _on_LeftForColorOptions_item_selected(ID : int) -> void: - Global.left_color_picker_for = ID - - -func _on_RightForColorOptions_item_selected(ID : int) -> void: - Global.right_color_picker_for = ID - - -func _on_LeftZoomModeOptions_item_selected(ID : int) -> void: - Global.left_zoom_mode = ID - - -func _on_RightZoomModeOptions_item_selected(ID : int) -> void: - Global.right_zoom_mode = ID - - -func _on_FitToFrameButton_pressed() -> void: - Global.camera.fit_to_frame(Global.canvas.size) - - -func _on_100ZoomButton_pressed() -> void: - Global.camera.zoom = Vector2.ONE - Global.camera.offset = Global.canvas.size / 2 - Global.zoom_level_label.text = str(round(100 / Global.camera.zoom.x)) + " %" - Global.horizontal_ruler.update() - Global.vertical_ruler.update() - - -func _on_LeftHorizontalMirroring_toggled(button_pressed) -> void: - Global.left_horizontal_mirror = button_pressed - - -func _on_LeftVerticalMirroring_toggled(button_pressed) -> void: - Global.left_vertical_mirror = button_pressed - - -func _on_RightHorizontalMirroring_toggled(button_pressed) -> void: - Global.right_horizontal_mirror = button_pressed - - -func _on_RightVerticalMirroring_toggled(button_pressed) -> void: - Global.right_vertical_mirror = button_pressed - - func show_quit_dialog() -> void: if !$QuitDialog.visible: if !Global.project_has_changed: @@ -868,11 +669,3 @@ func _on_BackupConfirmation_delete(project_path : String, backup_path : String) # Reopen last project if Global.open_last_project: load_last_project() - - -func _on_LeftPixelPerfectMode_toggled(button_pressed : bool) -> void: - Global.left_pixel_perfect = button_pressed - - -func _on_RightPixelPerfectMode_toggled(button_pressed : bool) -> void: - Global.right_pixel_perfect = button_pressed diff --git a/src/Main.tscn b/src/Main.tscn index 220284b1b..08ab5e258 100644 --- a/src/Main.tscn +++ b/src/Main.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=61 format=2] +[gd_scene load_steps=46 format=2] [ext_resource path="res://assets/themes/dark/theme.tres" type="Theme" id=1] [ext_resource path="res://src/Main.gd" type="Script" id=2] @@ -9,9 +9,7 @@ [ext_resource path="res://assets/graphics/dark_themes/tools/lightendarken.png" type="Texture" id=7] [ext_resource path="res://assets/graphics/dark_themes/tools/colorpicker.png" type="Texture" id=8] [ext_resource path="res://assets/graphics/dark_themes/tools/bucket.png" type="Texture" id=9] -[ext_resource path="res://assets/graphics/dark_themes/misc/color_switch.png" type="Texture" id=10] -[ext_resource path="res://assets/graphics/dark_themes/misc/color_defaults.png" type="Texture" id=11] -[ext_resource path="res://assets/graphics/brush_button.png" type="Texture" id=12] +[ext_resource path="res://src/UI/ColorAndToolOptions.tscn" type="PackedScene" id=10] [ext_resource path="res://assets/themes/dark/ruler_style.tres" type="StyleBox" id=13] [ext_resource path="res://src/UI/Rulers/HorizontalRuler.gd" type="Script" id=14] [ext_resource path="res://src/UI/Rulers/VerticalRuler.gd" type="Script" id=15] @@ -23,13 +21,11 @@ [ext_resource path="res://assets/graphics/dark_themes/palette/edit_palette.png" type="Texture" id=21] [ext_resource path="res://assets/graphics/dark_themes/palette/add_palette.png" type="Texture" id=22] [ext_resource path="res://assets/graphics/dark_themes/tools/zoom.png" type="Texture" id=23] -[ext_resource path="res://assets/graphics/dark_themes/tools/horizontal_mirror_on.png" type="Texture" id=24] [ext_resource path="res://src/Palette/PaletteContainer.gd" type="Script" id=25] [ext_resource path="res://src/UI/BrushButton.tscn" type="PackedScene" id=26] [ext_resource path="res://src/UI/Dialogs/SplashDialog.tscn" type="PackedScene" id=27] [ext_resource path="res://src/UI/Dialogs/CreateNewImage.tscn" type="PackedScene" id=28] [ext_resource path="res://src/UI/Dialogs/ImportSprites.tscn" type="PackedScene" id=29] -[ext_resource path="res://assets/graphics/dark_themes/tools/horizontal_mirror_off.png" type="Texture" id=30] [ext_resource path="res://src/UI/Dialogs/ScaleImage.tscn" type="PackedScene" id=31] [ext_resource path="res://src/UI/Dialogs/PreferencesDialog.tscn" type="PackedScene" id=32] [ext_resource path="res://src/UI/Dialogs/OutlineDialog.tscn" type="PackedScene" id=33] @@ -39,17 +35,11 @@ [ext_resource path="res://src/Palette/PaletteImportFileDialog.tscn" type="PackedScene" id=37] [ext_resource path="res://src/UI/Dialogs/RotateImage.tscn" type="PackedScene" id=38] [ext_resource path="res://src/UI/Dialogs/ExportDialog.tscn" type="PackedScene" id=39] -[ext_resource path="res://assets/graphics/dark_themes/tools/vertical_mirror_off.png" type="Texture" id=40] -[ext_resource path="res://assets/graphics/dark_themes/tools/vertical_mirror_on.png" type="Texture" id=41] [ext_resource path="res://src/Shaders/TransparentChecker.shader" type="Shader" id=42] -[ext_resource path="res://src/UI/Dialogs/CantRemoveMorePalettesDialog.tscn" type="PackedScene" id=43] [ext_resource path="res://src/UI/Dialogs/HSVDialog.tscn" type="PackedScene" id=44] [ext_resource path="res://src/UI/TransparentChecker.gd" type="Script" id=45] [ext_resource path="res://src/UI/Dialogs/OpenLastProjectAlertDialog.tscn" type="PackedScene" id=46] [ext_resource path="res://src/UI/Dialogs/NoProjectEditedOrCreatedAlertDialog.tscn" type="PackedScene" id=47] -[ext_resource path="res://src/UI/Dialogs/PaletteDoesntExistDialog.tscn" type="PackedScene" id=48] -[ext_resource path="res://src/UI/Dialogs/PaletteRemoveErrorDialog.tscn" type="PackedScene" id=49] -[ext_resource path="res://assets/graphics/dark_themes/palette/remove_palette.png" type="Texture" id=50] [sub_resource type="ShaderMaterial" id=1] shader = ExtResource( 42 ) @@ -57,35 +47,7 @@ shader_param/size = 10.0 shader_param/color1 = Color( 0.7, 0.7, 0.7, 1 ) shader_param/color2 = Color( 1, 1, 1, 1 ) -[sub_resource type="ShortCut" id=2] - -[sub_resource type="Image" id=3] -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", -"height": 32, -"mipmaps": false, -"width": 32 -} - -[sub_resource type="ImageTexture" id=4] -image = SubResource( 3 ) -size = Vector2( 32, 32 ) - -[sub_resource type="Image" id=5] -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", -"height": 32, -"mipmaps": false, -"width": 32 -} - -[sub_resource type="ImageTexture" id=6] -image = SubResource( 5 ) -size = Vector2( 32, 32 ) - -[sub_resource type="Image" id=7] +[sub_resource type="Image" id=11] data = { "data": PoolByteArray( 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 255, 0, 0, 0, 0, 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, 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, 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, 255, 0, 0, 0, 0, 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, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ), "format": "RGBA8", @@ -97,10 +59,10 @@ data = { [sub_resource type="ImageTexture" id=8] flags = 3 flags = 3 -image = SubResource( 7 ) +image = SubResource( 11 ) size = Vector2( 9, 9 ) -[sub_resource type="Image" id=9] +[sub_resource type="Image" id=12] data = { "data": PoolByteArray( 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, 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, 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, 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, 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, 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, 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, 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, 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, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ), "format": "RGBA8", @@ -112,7 +74,7 @@ data = { [sub_resource type="ImageTexture" id=10] flags = 3 flags = 3 -image = SubResource( 9 ) +image = SubResource( 12 ) size = Vector2( 9, 9 ) [node name="Control" type="Control"] @@ -575,928 +537,7 @@ margin_bottom = 676.0 size_flags_vertical = 3 custom_constants/autohide = 0 -[node name="ColorAndToolOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit"] -margin_right = 330.0 -margin_bottom = 255.0 -size_flags_vertical = 3 -custom_constants/separation = 8 - -[node name="ColorButtonsVertical" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions"] -margin_right = 330.0 -margin_bottom = 51.0 -custom_constants/separation = 2 - -[node name="ColorSwitchCenter" type="CenterContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical"] -margin_right = 330.0 -margin_bottom = 7.0 - -[node name="ColorSwitch" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorSwitchCenter" groups=[ -"UIButtons", -]] -margin_left = 152.0 -margin_right = 177.0 -margin_bottom = 7.0 -focus_mode = 0 -mouse_default_cursor_shape = 2 -shortcut_in_tooltip = false -shortcut = SubResource( 2 ) -texture_normal = ExtResource( 10 ) - -[node name="ColorPickersCenter" type="CenterContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical"] -margin_top = 9.0 -margin_right = 330.0 -margin_bottom = 41.0 - -[node name="ColorPickersHorizontal" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter"] -margin_left = 94.0 -margin_right = 235.0 -margin_bottom = 32.0 -custom_constants/separation = 13 - -[node name="LeftColorPickerButton" type="ColorPickerButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal"] -margin_right = 64.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 64, 32 ) -hint_tooltip = "Choose a color for the left tool" -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 0 -size_flags_vertical = 0 - -[node name="RightColorPickerButton" type="ColorPickerButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal"] -margin_left = 77.0 -margin_right = 141.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 64, 32 ) -hint_tooltip = "Choose a color for the right tool" -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 0 -size_flags_vertical = 0 -color = Color( 1, 1, 1, 1 ) - -[node name="ColorDefaultsCenter" type="CenterContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical"] -margin_top = 43.0 -margin_right = 330.0 -margin_bottom = 51.0 -size_flags_horizontal = 3 - -[node name="ColorDefaults" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorDefaultsCenter" groups=[ -"UIButtons", -]] -margin_left = 152.0 -margin_right = 177.0 -margin_bottom = 8.0 -hint_tooltip = "Reset the colors to their default state (black for left, white for right)" -focus_mode = 0 -mouse_default_cursor_shape = 2 -texture_normal = ExtResource( 11 ) - -[node name="ScrollContainer" type="ScrollContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions"] -margin_top = 59.0 -margin_right = 330.0 -margin_bottom = 255.0 -size_flags_vertical = 3 - -[node name="ToolOptions" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer"] -margin_right = 330.0 -margin_bottom = 196.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 - -[node name="LeftPanelContainer" type="PanelContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions"] -margin_left = 16.0 -margin_right = 146.0 -margin_bottom = 130.0 -rect_min_size = Vector2( 130, 0 ) -size_flags_horizontal = 6 -size_flags_vertical = 0 - -[node name="LeftToolOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer"] -margin_left = 4.5 -margin_top = 3.0 -margin_right = 125.5 -margin_bottom = 127.0 -size_flags_horizontal = 3 - -[node name="LeftLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -margin_right = 121.0 -margin_bottom = 15.0 -text = "Left tool" -align = 1 -autowrap = true - -[node name="LeftBrushType" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -margin_top = 19.0 -margin_right = 121.0 -margin_bottom = 51.0 -alignment = 1 - -[node name="LeftBrushTypeButton" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType"] -margin_left = 14.0 -margin_right = 50.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 36, 32 ) -hint_tooltip = "Select a brush" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 0 -texture_normal = ExtResource( 12 ) - -[node name="BrushTexture" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType/LeftBrushTypeButton"] -margin_right = 32.0 -margin_bottom = 32.0 -texture = SubResource( 4 ) -expand = true -stretch_mode = 6 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="LeftBrushSizeEdit" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType"] -margin_left = 54.0 -margin_right = 106.0 -margin_bottom = 32.0 -mouse_default_cursor_shape = 2 -min_value = 1.0 -value = 1.0 -align = 1 -suffix = "px" - -[node name="LeftBrushSizeSlider" type="HSlider" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -margin_left = 14.0 -margin_top = 55.0 -margin_right = 106.0 -margin_bottom = 67.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -size_flags_vertical = 1 -min_value = 1.0 -value = 1.0 -allow_greater = true -ticks_on_borders = true - -[node name="LeftBrushPixelPerfectMode" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -margin_top = 71.0 -margin_right = 121.0 -margin_bottom = 87.0 -alignment = 1 - -[node name="LeftPixelPerfectMode" type="CheckBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushPixelPerfectMode"] -margin_left = 17.0 -margin_right = 104.0 -margin_bottom = 16.0 -grow_horizontal = 2 -grow_vertical = 2 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Pixel Perfect" -align = 1 - -[node name="LeftColorInterpolation" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 159.0 -margin_bottom = 131.0 -alignment = 1 - -[node name="ColorComesFrom" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation"] -margin_left = 34.0 -margin_right = 124.0 -margin_bottom = 15.0 -hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" -mouse_filter = 1 -size_flags_horizontal = 4 -text = "Brush color from" - -[node name="LeftInterpolateFactor" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation"] -margin_left = 52.0 -margin_top = 19.0 -margin_right = 106.0 -margin_bottom = 36.0 -hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -value = 100.0 -align = 1 - -[node name="LeftInterpolateSlider" type="HSlider" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation"] -margin_left = 33.0 -margin_top = 40.0 -margin_right = 125.0 -margin_bottom = 56.0 -rect_min_size = Vector2( 92, 0 ) -hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -size_flags_vertical = 1 -value = 100.0 -ticks_on_borders = true - -[node name="LeftFillArea" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -visible = false -margin_top = 71.0 -margin_right = 154.0 -margin_bottom = 252.0 - -[node name="FillAreaLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] -margin_left = 54.0 -margin_right = 100.0 -margin_bottom = 15.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Fill area:" - -[node name="LeftFillAreaOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] -margin_left = 21.0 -margin_top = 19.0 -margin_right = 133.0 -margin_bottom = 40.0 -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Same color area" -items = [ "Same color area", null, false, 0, null, "Same color pixels", null, false, 1, null ] -selected = 0 - -[node name="FillWithLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] -margin_left = 54.0 -margin_top = 44.0 -margin_right = 99.0 -margin_bottom = 59.0 -size_flags_horizontal = 4 -text = "Fill with:" - -[node name="LeftFillWithOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] -margin_left = 26.0 -margin_top = 63.0 -margin_right = 127.0 -margin_bottom = 84.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Selected Color" -items = [ "Selected Color", null, false, 0, null, "Pattern", null, false, 1, null ] -selected = 0 - -[node name="LeftFillPattern" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] -visible = false -margin_left = 44.0 -margin_top = 88.0 -margin_right = 109.0 -margin_bottom = 181.0 -size_flags_horizontal = 4 - -[node name="LeftPatternTypeButton" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] -margin_left = 16.0 -margin_right = 48.0 -margin_bottom = 32.0 -hint_tooltip = "Select a brush" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -texture_normal = ExtResource( 12 ) - -[node name="PatternTexture" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/LeftPatternTypeButton"] -margin_right = 32.0 -margin_bottom = 32.0 -expand = true -stretch_mode = 6 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Offset" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] -margin_top = 36.0 -margin_right = 65.0 -margin_bottom = 51.0 -text = "Offset" - -[node name="XOffset" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] -margin_top = 55.0 -margin_right = 65.0 -margin_bottom = 72.0 - -[node name="Label" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/XOffset"] -margin_top = 1.0 -margin_right = 8.0 -margin_bottom = 16.0 -text = "X" - -[node name="LeftPatternOffsetX" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/XOffset"] -margin_left = 11.0 -margin_right = 65.0 -margin_bottom = 17.0 -mouse_default_cursor_shape = 2 - -[node name="YOffset" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] -margin_top = 76.0 -margin_right = 65.0 -margin_bottom = 93.0 - -[node name="Label" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/YOffset"] -margin_top = 1.0 -margin_right = 7.0 -margin_bottom = 16.0 -text = "Y" - -[node name="LeftPatternOffsetY" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/YOffset"] -margin_left = 10.0 -margin_right = 64.0 -margin_bottom = 17.0 -mouse_default_cursor_shape = 2 - -[node name="LeftLDOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 153.0 -margin_bottom = 158.0 -alignment = 1 - -[node name="LeftLightenDarken" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] -margin_left = 30.0 -margin_right = 122.0 -margin_bottom = 23.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Lighten" -items = [ "Lighten", null, false, 0, null, "Darken", null, false, 1, null ] -selected = 0 - -[node name="LDAmountLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] -margin_left = 53.0 -margin_top = 27.0 -margin_right = 100.0 -margin_bottom = 42.0 -size_flags_horizontal = 4 -text = "Amount:" - -[node name="LeftLDAmountSpinbox" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] -margin_left = 49.0 -margin_top = 46.0 -margin_right = 103.0 -margin_bottom = 63.0 -hint_tooltip = "Lighten/Darken amount" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -value = 10.0 -align = 1 - -[node name="LeftLDAmountSlider" type="HSlider" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] -margin_left = 30.0 -margin_top = 67.0 -margin_right = 122.0 -margin_bottom = 83.0 -rect_min_size = Vector2( 92, 0 ) -hint_tooltip = "Lighten/Darken amount" -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -size_flags_vertical = 1 -value = 10.0 -ticks_on_borders = true - -[node name="LeftColorPickerOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 159.0 -margin_bottom = 117.0 - -[node name="Label" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorPickerOptions"] -margin_left = 57.0 -margin_right = 101.0 -margin_bottom = 15.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Pick for:" - -[node name="LeftForColorOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorPickerOptions"] -margin_left = 42.0 -margin_top = 19.0 -margin_right = 116.0 -margin_bottom = 42.0 -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Left Color" -items = [ "Left Color", null, false, 0, null, "Right Color", null, false, 1, null ] -selected = 0 - -[node name="LeftZoomOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 153.0 -margin_bottom = 190.0 - -[node name="ModeLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] -margin_left = 60.0 -margin_right = 93.0 -margin_bottom = 15.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Mode:" - -[node name="LeftZoomModeOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] -margin_left = 30.0 -margin_top = 19.0 -margin_right = 122.0 -margin_bottom = 42.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Zoom in" -items = [ "Zoom in", null, false, 0, null, "Zoom out", null, false, 1, null ] -selected = 0 - -[node name="OptionsLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] -margin_left = 54.0 -margin_top = 46.0 -margin_right = 99.0 -margin_bottom = 61.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Options:" - -[node name="FitToFrameButton" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] -margin_left = 30.0 -margin_top = 65.0 -margin_right = 122.0 -margin_bottom = 88.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Fit to frame" - -[node name="100%ZoomButton" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] -margin_left = 30.0 -margin_top = 92.0 -margin_right = 122.0 -margin_bottom = 115.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "100% Zoom" - -[node name="EmptySpacer" type="Control" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -margin_top = 91.0 -margin_right = 121.0 -margin_bottom = 103.0 -rect_min_size = Vector2( 0, 12 ) - -[node name="LeftMirrorButtons" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] -margin_top = 107.0 -margin_right = 121.0 -margin_bottom = 124.0 -custom_constants/separation = 44 -alignment = 1 - -[node name="LeftHorizontalMirroring" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons" groups=[ -"UIButtons", -]] -margin_left = 22.0 -margin_right = 37.0 -margin_bottom = 17.0 -hint_tooltip = "Enable horizontal mirrored drawing" -focus_mode = 0 -mouse_default_cursor_shape = 2 -toggle_mode = true -texture_normal = ExtResource( 30 ) -texture_pressed = ExtResource( 24 ) - -[node name="LeftVerticalMirroring" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons" groups=[ -"UIButtons", -]] -margin_left = 81.0 -margin_right = 98.0 -margin_bottom = 17.0 -hint_tooltip = "Enable vertical mirrored drawing" -focus_mode = 0 -mouse_default_cursor_shape = 2 -toggle_mode = true -texture_normal = ExtResource( 40 ) -texture_pressed = ExtResource( 41 ) - -[node name="RightPanelContainer" type="PanelContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions"] -margin_left = 183.0 -margin_right = 313.0 -margin_bottom = 130.0 -rect_min_size = Vector2( 130, 0 ) -size_flags_horizontal = 6 -size_flags_vertical = 0 - -[node name="RightToolOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer"] -margin_left = 4.5 -margin_top = 3.0 -margin_right = 125.5 -margin_bottom = 127.0 -size_flags_horizontal = 3 - -[node name="RightLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -margin_right = 121.0 -margin_bottom = 15.0 -text = "Right tool" -align = 1 -autowrap = true - -[node name="RightBrushType" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -margin_top = 19.0 -margin_right = 121.0 -margin_bottom = 51.0 -alignment = 1 - -[node name="RightBrushTypeButton" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType"] -margin_left = 14.0 -margin_right = 50.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 36, 32 ) -hint_tooltip = "Select a brush" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 0 -texture_normal = ExtResource( 12 ) - -[node name="BrushTexture" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType/RightBrushTypeButton"] -margin_right = 32.0 -margin_bottom = 32.0 -texture = SubResource( 6 ) -expand = true -stretch_mode = 6 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="RightBrushSizeEdit" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType"] -margin_left = 54.0 -margin_right = 106.0 -margin_bottom = 32.0 -mouse_default_cursor_shape = 2 -min_value = 1.0 -value = 1.0 -align = 1 -suffix = "px" - -[node name="RightBrushSizeSlider" type="HSlider" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -margin_left = 14.0 -margin_top = 55.0 -margin_right = 106.0 -margin_bottom = 67.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -size_flags_vertical = 1 -min_value = 1.0 -value = 1.0 -allow_greater = true -ticks_on_borders = true - -[node name="RightBrushPixelPerfectMode" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -margin_top = 71.0 -margin_right = 121.0 -margin_bottom = 87.0 -alignment = 1 - -[node name="RightPixelPerfectMode" type="CheckBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushPixelPerfectMode"] -margin_left = 17.0 -margin_right = 104.0 -margin_bottom = 16.0 -grow_horizontal = 2 -grow_vertical = 2 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Pixel Perfect" -align = 1 - -[node name="RightColorInterpolation" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 144.0 -margin_bottom = 131.0 -alignment = 1 - -[node name="ColorComesFrom" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation"] -margin_left = 27.0 -margin_right = 117.0 -margin_bottom = 15.0 -hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" -mouse_filter = 1 -size_flags_horizontal = 4 -text = "Brush color from" - -[node name="RightInterpolateFactor" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation"] -margin_left = 45.0 -margin_top = 19.0 -margin_right = 99.0 -margin_bottom = 36.0 -hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -value = 100.0 -align = 1 - -[node name="RightInterpolateSlider" type="HSlider" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation"] -margin_left = 25.0 -margin_top = 40.0 -margin_right = 117.0 -margin_bottom = 56.0 -rect_min_size = Vector2( 92, 0 ) -hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -size_flags_vertical = 1 -value = 100.0 -ticks_on_borders = true - -[node name="RightFillArea" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -visible = false -margin_top = 71.0 -margin_right = 160.0 -margin_bottom = 155.0 - -[node name="FillAreaLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] -margin_left = 57.0 -margin_right = 103.0 -margin_bottom = 15.0 -size_flags_horizontal = 4 -text = "Fill area:" - -[node name="RightFillAreaOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] -margin_left = 24.0 -margin_top = 19.0 -margin_right = 136.0 -margin_bottom = 40.0 -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Same color area" -items = [ "Same color area", null, false, 0, null, "Same color pixels", null, false, 1, null ] -selected = 0 - -[node name="FillWithLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] -margin_left = 57.0 -margin_top = 44.0 -margin_right = 102.0 -margin_bottom = 59.0 -size_flags_horizontal = 4 -text = "Fill with:" - -[node name="RightFillWithOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] -margin_left = 38.0 -margin_top = 63.0 -margin_right = 122.0 -margin_bottom = 84.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Selected Color" -items = [ "Selected Color", null, false, 0, null, "Pattern", null, false, 1, null ] -selected = 0 - -[node name="RightFillPattern" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] -visible = false -margin_left = 59.0 -margin_top = 88.0 -margin_right = 95.0 -margin_bottom = 120.0 -size_flags_horizontal = 4 - -[node name="RightPatternTypeButton" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] -margin_right = 36.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 36, 32 ) -hint_tooltip = "Select a brush" -mouse_default_cursor_shape = 2 -texture_normal = ExtResource( 12 ) - -[node name="PatternTexture" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/RightPatternTypeButton"] -margin_right = 32.0 -margin_bottom = 32.0 -expand = true -stretch_mode = 6 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Offset" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] -margin_left = -185.0 -margin_top = 36.0 -margin_right = -120.0 -margin_bottom = 51.0 -text = "Offset" - -[node name="XOffset" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] -margin_left = -185.0 -margin_top = 55.0 -margin_right = -120.0 -margin_bottom = 72.0 - -[node name="Label" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/XOffset"] -margin_top = 1.0 -margin_right = 8.0 -margin_bottom = 16.0 -text = "X" - -[node name="RightPatternOffsetX" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/XOffset"] -margin_left = 11.0 -margin_right = 65.0 -margin_bottom = 17.0 -mouse_default_cursor_shape = 2 - -[node name="YOffset" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] -margin_left = -185.0 -margin_top = 76.0 -margin_right = -120.0 -margin_bottom = 93.0 - -[node name="Label" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/YOffset"] -margin_top = 1.0 -margin_right = 7.0 -margin_bottom = 16.0 -text = "Y" - -[node name="RightPatternOffsetY" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/YOffset"] -margin_left = 10.0 -margin_right = 64.0 -margin_bottom = 17.0 -mouse_default_cursor_shape = 2 - -[node name="RightLDOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 138.0 -margin_bottom = 158.0 - -[node name="RightLightenDarken" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] -margin_left = 22.0 -margin_right = 114.0 -margin_bottom = 23.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Lighten" -items = [ "Lighten", null, false, 0, null, "Darken", null, false, 1, null ] -selected = 0 - -[node name="LDAmountLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] -margin_left = 45.0 -margin_top = 27.0 -margin_right = 92.0 -margin_bottom = 42.0 -size_flags_horizontal = 4 -text = "Amount:" - -[node name="RightLDAmountSpinbox" type="SpinBox" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] -margin_left = 42.0 -margin_top = 46.0 -margin_right = 96.0 -margin_bottom = 63.0 -hint_tooltip = "Lighten/Darken amount" -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -value = 10.0 -align = 1 - -[node name="RightLDAmountSlider" type="HSlider" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] -margin_left = 22.0 -margin_top = 67.0 -margin_right = 114.0 -margin_bottom = 83.0 -rect_min_size = Vector2( 92, 0 ) -hint_tooltip = "Lighten/Darken amount" -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -size_flags_vertical = 1 -value = 10.0 -ticks_on_borders = true - -[node name="RightColorPickerOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 144.0 -margin_bottom = 117.0 - -[node name="Label" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorPickerOptions"] -margin_left = 50.0 -margin_right = 94.0 -margin_bottom = 15.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Pick for:" - -[node name="RightForColorOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorPickerOptions"] -margin_left = 31.0 -margin_top = 19.0 -margin_right = 113.0 -margin_bottom = 42.0 -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Right Color" -items = [ "Left Color", null, false, 0, null, "Right Color", null, false, 1, null ] -selected = 1 - -[node name="RightZoomOptions" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -visible = false -margin_top = 75.0 -margin_right = 138.0 -margin_bottom = 190.0 - -[node name="ModeLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] -margin_left = 52.0 -margin_right = 85.0 -margin_bottom = 15.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Mode:" - -[node name="RightZoomModeOptions" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] -margin_left = 22.0 -margin_top = 19.0 -margin_right = 114.0 -margin_bottom = 42.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Zoom out" -items = [ "Zoom in", null, false, 0, null, "Zoom out", null, false, 1, null ] -selected = 1 - -[node name="OptionsLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] -margin_left = 46.0 -margin_top = 46.0 -margin_right = 91.0 -margin_bottom = 61.0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Options:" - -[node name="FitToFrameButton" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] -margin_left = 22.0 -margin_top = 65.0 -margin_right = 114.0 -margin_bottom = 88.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "Fit to frame" - -[node name="100%ZoomButton" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] -margin_left = 22.0 -margin_top = 92.0 -margin_right = 114.0 -margin_bottom = 115.0 -rect_min_size = Vector2( 92, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -size_flags_horizontal = 4 -text = "100% Zoom" - -[node name="EmptySpacer" type="Control" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -margin_top = 91.0 -margin_right = 121.0 -margin_bottom = 103.0 -rect_min_size = Vector2( 0, 12 ) - -[node name="RightMirrorButtons" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] -margin_top = 107.0 -margin_right = 121.0 -margin_bottom = 124.0 -custom_constants/separation = 44 -alignment = 1 - -[node name="RightHorizontalMirroring" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons" groups=[ -"UIButtons", -]] -margin_left = 22.0 -margin_right = 37.0 -margin_bottom = 17.0 -hint_tooltip = "Enable horizontal mirrored drawing" -focus_mode = 0 -mouse_default_cursor_shape = 2 -toggle_mode = true -texture_normal = ExtResource( 30 ) -texture_pressed = ExtResource( 24 ) - -[node name="RightVerticalMirroring" type="TextureButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons" groups=[ -"UIButtons", -]] -margin_left = 81.0 -margin_right = 98.0 -margin_bottom = 17.0 -hint_tooltip = "Enable vertical mirrored drawing" -focus_mode = 0 -mouse_default_cursor_shape = 2 -toggle_mode = true -texture_normal = ExtResource( 40 ) -texture_pressed = ExtResource( 41 ) +[node name="ColorAndToolOptions" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit" instance=ExtResource( 10 )] [node name="PanelContainer" type="PanelContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit"] margin_left = 15.0 @@ -1529,8 +570,8 @@ margin_right = 291.0 margin_bottom = 51.0 [node name="PaletteButtons" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer"] -margin_left = 40.0 -margin_right = 251.0 +margin_left = 58.0 +margin_right = 233.0 margin_bottom = 32.0 [node name="AddPalette" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons" groups=[ @@ -1594,36 +635,9 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="RemovePalette" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons" groups=[ -"UIButtons", -]] -margin_left = 72.0 -margin_right = 104.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 32, 32 ) -hint_tooltip = "Remove currently selected palette" -focus_mode = 0 -mouse_default_cursor_shape = 2 - -[node name="TextureRect" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/RemovePalette"] -anchor_left = 0.5 -anchor_top = 0.5 -anchor_right = 0.5 -anchor_bottom = 0.5 -margin_left = -12.0 -margin_top = -12.0 -margin_right = 12.0 -margin_bottom = 12.0 -size_flags_horizontal = 0 -size_flags_vertical = 0 -texture = ExtResource( 50 ) -__meta__ = { -"_edit_use_anchors_": false -} - [node name="PaletteOptionButton" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons"] -margin_left = 108.0 -margin_right = 211.0 +margin_left = 72.0 +margin_right = 175.0 margin_bottom = 32.0 grow_horizontal = 0 rect_min_size = Vector2( 103, 0 ) @@ -1768,7 +782,6 @@ current_dir = "C:/Users" current_path = "C:/Users/" [node name="ImportSprites" parent="." instance=ExtResource( 29 )] -window_title = "Otwórz plik(i)" [node name="ExportDialog" parent="." instance=ExtResource( 39 )] @@ -1816,7 +829,6 @@ dialog_text = "This is an error message!" [node name="NewPaletteDialog" parent="." instance=ExtResource( 36 )] [node name="PaletteImportFileDialog" parent="." instance=ExtResource( 37 )] -window_title = "Otwórz plik" filters = PoolStringArray( "*.json ; JavaScript Object Notation", "*.gpl ; Gimp Palette Library", "*.png; Portable Network Graphics" ) [node name="HSVDialog" parent="." instance=ExtResource( 44 )] @@ -1827,18 +839,7 @@ margin_bottom = 62.0 [node name="NoProjectEditedOrCreatedAlertDialog" parent="." instance=ExtResource( 47 )] margin_bottom = 62.0 - -[node name="CantRemoveMorePalettesDialog" parent="." instance=ExtResource( 43 )] -margin_right = 189.0 -margin_bottom = 60.0 - -[node name="PaletteDoesntExistDialog" parent="." instance=ExtResource( 48 )] -margin_right = 306.0 -margin_bottom = 60.0 - -[node name="PaletteRemoveErrorDialog" parent="." instance=ExtResource( 49 )] -margin_right = 314.0 -margin_bottom = 60.0 +window_title = "Alarm!" [node name="LeftCursor" type="Sprite" parent="."] visible = false @@ -1862,57 +863,8 @@ Do you want to reload it?" [connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" to="." method="_on_ViewportContainer_mouse_exited"] [connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_entered"] [connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_exited"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorSwitchCenter/ColorSwitch" to="." method="_on_ColorSwitch_pressed"] -[connection signal="color_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/LeftColorPickerButton" to="." method="_on_LeftColorPickerButton_color_changed"] -[connection signal="popup_closed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/LeftColorPickerButton" to="." method="_can_draw_true"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/LeftColorPickerButton" to="." method="_can_draw_false"] -[connection signal="color_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/RightColorPickerButton" to="." method="_on_RightColorPickerButton_color_changed"] -[connection signal="popup_closed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/RightColorPickerButton" to="." method="_can_draw_true"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/RightColorPickerButton" to="." method="_can_draw_false"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ColorButtonsVertical/ColorDefaultsCenter/ColorDefaults" to="." method="_on_ColorDefaults_pressed"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType/LeftBrushTypeButton" to="." method="_on_LeftBrushTypeButton_pressed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType/LeftBrushSizeEdit" to="." method="_on_LeftBrushSizeEdit_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushSizeSlider" to="." method="_on_LeftBrushSizeEdit_value_changed"] -[connection signal="toggled" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushPixelPerfectMode/LeftPixelPerfectMode" to="." method="_on_LeftPixelPerfectMode_toggled"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation/LeftInterpolateFactor" to="." method="_on_LeftInterpolateFactor_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation/LeftInterpolateSlider" to="." method="_on_LeftInterpolateFactor_value_changed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillAreaOptions" to="." method="_on_LeftFillAreaOptions_item_selected"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillWithOptions" to="." method="_on_LeftFillWithOptions_item_selected"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/LeftPatternTypeButton" to="." method="_on_LeftPatternTypeButton_pressed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/XOffset/LeftPatternOffsetX" to="." method="_on_LeftPatternOffsetX_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/YOffset/LeftPatternOffsetY" to="." method="_on_LeftPatternOffsetY_value_changed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions/LeftLightenDarken" to="." method="_on_LeftLightenDarken_item_selected"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions/LeftLDAmountSpinbox" to="." method="_on_LeftLDAmountSpinbox_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions/LeftLDAmountSlider" to="." method="_on_LeftLDAmountSpinbox_value_changed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorPickerOptions/LeftForColorOptions" to="." method="_on_LeftForColorOptions_item_selected"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions/LeftZoomModeOptions" to="." method="_on_LeftZoomModeOptions_item_selected"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions/FitToFrameButton" to="." method="_on_FitToFrameButton_pressed"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions/100%ZoomButton" to="." method="_on_100ZoomButton_pressed"] -[connection signal="toggled" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons/LeftHorizontalMirroring" to="." method="_on_LeftHorizontalMirroring_toggled"] -[connection signal="toggled" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons/LeftVerticalMirroring" to="." method="_on_LeftVerticalMirroring_toggled"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType/RightBrushTypeButton" to="." method="_on_RightBrushTypeButton_pressed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType/RightBrushSizeEdit" to="." method="_on_RightBrushSizeEdit_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushSizeSlider" to="." method="_on_RightBrushSizeEdit_value_changed"] -[connection signal="toggled" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushPixelPerfectMode/RightPixelPerfectMode" to="." method="_on_RightPixelPerfectMode_toggled"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation/RightInterpolateFactor" to="." method="_on_RightInterpolateFactor_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation/RightInterpolateSlider" to="." method="_on_RightInterpolateFactor_value_changed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillAreaOptions" to="." method="_on_RightFillAreaOptions_item_selected"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillWithOptions" to="." method="_on_RightFillWithOptions_item_selected"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/RightPatternTypeButton" to="." method="_on_RightPatternTypeButton_pressed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/XOffset/RightPatternOffsetX" to="." method="_on_RightPatternOffsetX_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/YOffset/RightPatternOffsetY" to="." method="_on_RightPatternOffsetY_value_changed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions/RightLightenDarken" to="." method="_on_RightLightenDarken_item_selected"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions/RightLDAmountSpinbox" to="." method="_on_RightLDAmountSpinbox_value_changed"] -[connection signal="value_changed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions/RightLDAmountSlider" to="." method="_on_RightLDAmountSpinbox_value_changed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorPickerOptions/RightForColorOptions" to="." method="_on_RightForColorOptions_item_selected"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions/RightZoomModeOptions" to="." method="_on_RightZoomModeOptions_item_selected"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions/FitToFrameButton" to="." method="_on_FitToFrameButton_pressed"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions/100%ZoomButton" to="." method="_on_100ZoomButton_pressed"] -[connection signal="toggled" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons/RightHorizontalMirroring" to="." method="_on_RightHorizontalMirroring_toggled"] -[connection signal="toggled" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/ColorAndToolOptions/ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons/RightVerticalMirroring" to="." method="_on_RightVerticalMirroring_toggled"] [connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/AddPalette" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_AddPalette_pressed"] [connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/EditPalette" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_edit_palette"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/RemovePalette" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_RemovePalette_pressed"] [connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/PaletteOptionButton" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_PaletteOptionButton_item_selected"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/PixelBrushButton" to="." method="_on_Brush_Selected"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton" to="." method="_on_Brush_Selected"] @@ -1948,4 +900,4 @@ Do you want to reload it?" [editable path="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton"] -[editable path="BrushesPopup/TabContainer/File/FileBrushContainer/FilledCircleBrushButton"] +[editable path="BrushesPopup/TabContainer/File/FileBrushContainer/FilledCircleBrushButton"] \ No newline at end of file diff --git a/src/Palette/PaletteImportFileDialog.tscn b/src/Palette/PaletteImportFileDialog.tscn index f003ecadc..584c9c7e8 100644 --- a/src/Palette/PaletteImportFileDialog.tscn +++ b/src/Palette/PaletteImportFileDialog.tscn @@ -11,5 +11,5 @@ resizable = true mode = 0 access = 2 filters = PoolStringArray( "*.json ; JavaScript Object Notation" ) -current_dir = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama" -current_path = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama/" +current_dir = "C:/Users" +current_path = "C:/Users/" diff --git a/src/UI/ColorAndToolOptions.gd b/src/UI/ColorAndToolOptions.gd new file mode 100644 index 000000000..acd1da216 --- /dev/null +++ b/src/UI/ColorAndToolOptions.gd @@ -0,0 +1,188 @@ +extends VBoxContainer + + +var previous_left_color := Color.black +var previous_right_color := Color.white + + +func _on_ColorSwitch_pressed() -> void: + var temp: Color = Global.left_color_picker.color + Global.left_color_picker.color = Global.right_color_picker.color + Global.right_color_picker.color = temp + Global.update_left_custom_brush() + Global.update_right_custom_brush() + + +func _on_ColorPickerButton_color_changed(color : Color, right : bool): + # If the color changed while it's on full transparency, make it opaque (GH issue #54) + if right: + if color.a == 0: + if previous_right_color.r != color.r or previous_right_color.g != color.g or previous_right_color.b != color.b: + Global.right_color_picker.color.a = 1 + Global.update_right_custom_brush() + previous_right_color = color + else: + if color.a == 0: + if previous_left_color.r != color.r or previous_left_color.g != color.g or previous_left_color.b != color.b: + Global.left_color_picker.color.a = 1 + Global.update_left_custom_brush() + previous_left_color = color + + +func _on_ColorPickerButton_pressed() -> void: + Global.can_draw = false + + +func _on_ColorPickerButton_popup_closed() -> void: + Global.can_draw = true + + +func _on_ColorDefaults_pressed() -> void: + Global.left_color_picker.color = Color.black + Global.right_color_picker.color = Color.white + Global.update_left_custom_brush() + Global.update_right_custom_brush() + + +func _on_FitToFrameButton_pressed() -> void: + Global.camera.fit_to_frame(Global.canvas.size) + + +func _on_100ZoomButton_pressed() -> void: + Global.camera.zoom = Vector2.ONE + Global.camera.offset = Global.canvas.size / 2 + Global.zoom_level_label.text = str(round(100 / Global.camera.zoom.x)) + " %" + Global.horizontal_ruler.update() + Global.vertical_ruler.update() + + +func _on_BrushTypeButton_pressed(right : bool) -> void: + if right: + Global.brushes_popup.popup(Rect2(Global.right_brush_type_button.rect_global_position, Vector2(226, 72))) + Global.brush_type_window_position = "right" + else: + Global.brushes_popup.popup(Rect2(Global.left_brush_type_button.rect_global_position, Vector2(226, 72))) + Global.brush_type_window_position = "left" + + +func _on_BrushSizeEdit_value_changed(value : float, right : bool) -> void: + var new_size = int(value) + if right: + Global.right_brush_size_edit.value = value + Global.right_brush_size_slider.value = value + Global.right_brush_size = new_size + Global.update_right_custom_brush() + else: + Global.left_brush_size_edit.value = value + Global.left_brush_size_slider.value = value + Global.left_brush_size = new_size + Global.update_left_custom_brush() + + +func _on_PixelPerfectMode_toggled(button_pressed : bool, right : bool) -> void: + if right: + Global.right_pixel_perfect = button_pressed + else: + Global.left_pixel_perfect = button_pressed + + +func _on_InterpolateFactor_value_changed(value : float, right : bool) -> void: + if right: + Global.right_interpolate_spinbox.value = value + Global.right_interpolate_slider.value = value + Global.update_right_custom_brush() + else: + Global.left_interpolate_spinbox.value = value + Global.left_interpolate_slider.value = value + Global.update_left_custom_brush() + + +func _on_FillAreaOptions_item_selected(ID : int, right : bool) -> void: + if right: + Global.right_fill_area = ID + else: + Global.left_fill_area = ID + + +func _on_FillWithOptions_item_selected(ID : int, right : bool) -> void: + if right: + Global.right_fill_with = ID + if ID == 1: + Global.right_fill_pattern_container.visible = true + else: + Global.right_fill_pattern_container.visible = false + else: + Global.left_fill_with = ID + if ID == 1: + Global.left_fill_pattern_container.visible = true + else: + Global.left_fill_pattern_container.visible = false + + +func _on_PatternTypeButton_pressed(right : bool) -> void: + if right: + Global.pattern_window_position = "right" + Global.patterns_popup.popup(Rect2(Global.right_brush_type_button.rect_global_position, Vector2(226, 72))) + else: + Global.pattern_window_position = "left" + Global.patterns_popup.popup(Rect2(Global.left_brush_type_button.rect_global_position, Vector2(226, 72))) + + +func _on_PatternOffsetX_value_changed(value : float, right : bool) -> void: + if right: + Global.right_fill_pattern_offset.x = value + else: + Global.left_fill_pattern_offset.x = value + + +func _on_PatternOffsetY_value_changed(value : float, right : bool) -> void: + if right: + Global.right_fill_pattern_offset.y = value + else: + Global.left_fill_pattern_offset.y = value + + +func _on_LightenDarken_item_selected(ID : int, right : bool) -> void: + if right: + Global.right_ld = ID + else: + Global.left_ld = ID + + +func _on_LDAmount_value_changed(value : float, right : bool) -> void: + if right: + Global.right_ld_amount = value / 100 + Global.right_ld_amount_slider.value = value + Global.right_ld_amount_spinbox.value = value + else: + Global.left_ld_amount = value / 100 + Global.left_ld_amount_slider.value = value + Global.left_ld_amount_spinbox.value = value + + +func _on_ForColorOptions_item_selected(ID : int, right : bool) -> void: + if right: + Global.right_color_picker_for = ID + else: + Global.left_color_picker_for = ID + + +func _on_ZoomModeOptions_item_selected(ID : int, right : bool) -> void: + if right: + Global.right_zoom_mode = ID + else: + Global.left_zoom_mode = ID + + +func _on_HorizontalMirroring_toggled(button_pressed : bool, right : bool) -> void: + if right: + Global.right_horizontal_mirror = button_pressed + else: + Global.left_horizontal_mirror = button_pressed + + +func _on_VerticalMirroring_toggled(button_pressed : bool, right : bool) -> void: + if right: + Global.right_vertical_mirror = button_pressed + else: + Global.left_vertical_mirror = button_pressed diff --git a/src/UI/ColorAndToolOptions.tscn b/src/UI/ColorAndToolOptions.tscn new file mode 100644 index 000000000..062b2e8b5 --- /dev/null +++ b/src/UI/ColorAndToolOptions.tscn @@ -0,0 +1,993 @@ +[gd_scene load_steps=14 format=2] + +[ext_resource path="res://assets/graphics/dark_themes/misc/color_switch.png" type="Texture" id=1] +[ext_resource path="res://assets/graphics/dark_themes/misc/color_defaults.png" type="Texture" id=2] +[ext_resource path="res://assets/graphics/brush_button.png" type="Texture" id=3] +[ext_resource path="res://assets/graphics/dark_themes/tools/horizontal_mirror_on.png" type="Texture" id=4] +[ext_resource path="res://assets/graphics/dark_themes/tools/horizontal_mirror_off.png" type="Texture" id=5] +[ext_resource path="res://assets/graphics/dark_themes/tools/vertical_mirror_on.png" type="Texture" id=6] +[ext_resource path="res://assets/graphics/dark_themes/tools/vertical_mirror_off.png" type="Texture" id=7] +[ext_resource path="res://src/UI/ColorAndToolOptions.gd" type="Script" id=8] + +[sub_resource type="ShortCut" id=1] + +[sub_resource type="Image" id=6] +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", +"height": 32, +"mipmaps": false, +"width": 32 +} + +[sub_resource type="ImageTexture" id=3] +image = SubResource( 6 ) +size = Vector2( 32, 32 ) + +[sub_resource type="Image" id=7] +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", +"height": 32, +"mipmaps": false, +"width": 32 +} + +[sub_resource type="ImageTexture" id=5] +image = SubResource( 7 ) +size = Vector2( 32, 32 ) + +[node name="ColorAndToolOptions" type="VBoxContainer"] +margin_right = 330.0 +margin_bottom = 255.0 +size_flags_vertical = 3 +custom_constants/separation = 8 +script = ExtResource( 8 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="ColorButtonsVertical" type="VBoxContainer" parent="."] +margin_right = 330.0 +margin_bottom = 51.0 +custom_constants/separation = 2 + +[node name="ColorSwitchCenter" type="CenterContainer" parent="ColorButtonsVertical"] +margin_right = 330.0 +margin_bottom = 7.0 + +[node name="ColorSwitch" type="TextureButton" parent="ColorButtonsVertical/ColorSwitchCenter" groups=[ +"UIButtons", +]] +margin_left = 152.0 +margin_right = 177.0 +margin_bottom = 7.0 +mouse_default_cursor_shape = 2 +shortcut_in_tooltip = false +shortcut = SubResource( 1 ) +texture_normal = ExtResource( 1 ) + +[node name="ColorPickersCenter" type="CenterContainer" parent="ColorButtonsVertical"] +margin_top = 9.0 +margin_right = 330.0 +margin_bottom = 41.0 + +[node name="ColorPickersHorizontal" type="HBoxContainer" parent="ColorButtonsVertical/ColorPickersCenter"] +margin_left = 94.0 +margin_right = 235.0 +margin_bottom = 32.0 +custom_constants/separation = 13 + +[node name="LeftColorPickerButton" type="ColorPickerButton" parent="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal"] +margin_right = 64.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 64, 32 ) +hint_tooltip = "Choose a color for the left tool" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 0 +size_flags_vertical = 0 + +[node name="RightColorPickerButton" type="ColorPickerButton" parent="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal"] +margin_left = 77.0 +margin_right = 141.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 64, 32 ) +hint_tooltip = "Choose a color for the right tool" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 0 +size_flags_vertical = 0 +color = Color( 1, 1, 1, 1 ) + +[node name="ColorDefaultsCenter" type="CenterContainer" parent="ColorButtonsVertical"] +margin_top = 43.0 +margin_right = 330.0 +margin_bottom = 51.0 +size_flags_horizontal = 3 + +[node name="ColorDefaults" type="TextureButton" parent="ColorButtonsVertical/ColorDefaultsCenter" groups=[ +"UIButtons", +]] +margin_left = 152.0 +margin_right = 177.0 +margin_bottom = 8.0 +hint_tooltip = "Reset the colors to their default state (black for left, white for right)" +mouse_default_cursor_shape = 2 +texture_normal = ExtResource( 2 ) + +[node name="ScrollContainer" type="ScrollContainer" parent="."] +margin_top = 59.0 +margin_right = 330.0 +margin_bottom = 255.0 +size_flags_vertical = 3 + +[node name="ToolOptions" type="HBoxContainer" parent="ScrollContainer"] +margin_right = 330.0 +margin_bottom = 196.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 + +[node name="LeftPanelContainer" type="PanelContainer" parent="ScrollContainer/ToolOptions"] +margin_left = 16.0 +margin_right = 146.0 +margin_bottom = 149.0 +rect_min_size = Vector2( 130, 0 ) +size_flags_horizontal = 6 +size_flags_vertical = 0 + +[node name="LeftToolOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer"] +margin_left = 7.0 +margin_top = 7.0 +margin_right = 123.0 +margin_bottom = 142.0 +size_flags_horizontal = 3 + +[node name="LeftLabel" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +margin_right = 116.0 +margin_bottom = 14.0 +text = "Left tool" +align = 1 +autowrap = true + +[node name="LeftBrushType" type="HBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +margin_top = 18.0 +margin_right = 116.0 +margin_bottom = 50.0 +alignment = 1 + +[node name="LeftBrushTypeButton" type="TextureButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType"] +margin_left = 1.0 +margin_right = 37.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 36, 32 ) +hint_tooltip = "Select a brush" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 0 +texture_normal = ExtResource( 3 ) + +[node name="BrushTexture" type="TextureRect" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType/LeftBrushTypeButton"] +margin_right = 32.0 +margin_bottom = 32.0 +texture = SubResource( 3 ) +expand = true +stretch_mode = 6 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="LeftBrushSizeEdit" type="SpinBox" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType"] +margin_left = 41.0 +margin_right = 115.0 +margin_bottom = 32.0 +mouse_default_cursor_shape = 2 +min_value = 1.0 +value = 1.0 +align = 1 +suffix = "px" + +[node name="LeftBrushSizeSlider" type="HSlider" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +margin_left = 12.0 +margin_top = 54.0 +margin_right = 104.0 +margin_bottom = 70.0 +rect_min_size = Vector2( 92, 0 ) +focus_mode = 0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 1 +min_value = 1.0 +value = 1.0 +allow_greater = true +ticks_on_borders = true + +[node name="LeftBrushPixelPerfectMode" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +margin_top = 74.0 +margin_right = 116.0 +margin_bottom = 98.0 +alignment = 1 + +[node name="LeftPixelPerfectMode" type="CheckBox" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushPixelPerfectMode"] +margin_left = 4.0 +margin_right = 112.0 +margin_bottom = 24.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Pixel Perfect" +align = 1 + +[node name="LeftColorInterpolation" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +visible = false +margin_top = 102.0 +margin_right = 116.0 +margin_bottom = 164.0 +alignment = 1 + +[node name="ColorComesFrom" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation"] +margin_left = 4.0 +margin_right = 111.0 +margin_bottom = 14.0 +hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" +mouse_filter = 1 +size_flags_horizontal = 4 +text = "Brush color from" + +[node name="LeftInterpolateFactor" type="SpinBox" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation"] +margin_left = 21.0 +margin_top = 18.0 +margin_right = 95.0 +margin_bottom = 42.0 +hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +value = 100.0 +align = 1 + +[node name="LeftInterpolateSlider" type="HSlider" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation"] +margin_left = 12.0 +margin_top = 46.0 +margin_right = 104.0 +margin_bottom = 62.0 +rect_min_size = Vector2( 92, 0 ) +hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" +focus_mode = 0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 1 +value = 100.0 +ticks_on_borders = true + +[node name="LeftFillArea" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +visible = false +margin_top = 71.0 +margin_right = 154.0 +margin_bottom = 252.0 + +[node name="FillAreaLabel" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] +margin_left = 54.0 +margin_right = 100.0 +margin_bottom = 15.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Fill area:" + +[node name="LeftFillAreaOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] +margin_left = 21.0 +margin_top = 19.0 +margin_right = 133.0 +margin_bottom = 40.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Same color area" +items = [ "Same color area", null, false, 0, null, "Same color pixels", null, false, 1, null ] +selected = 0 + +[node name="FillWithLabel" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] +margin_left = 54.0 +margin_top = 44.0 +margin_right = 99.0 +margin_bottom = 59.0 +size_flags_horizontal = 4 +text = "Fill with:" + +[node name="LeftFillWithOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] +margin_left = 26.0 +margin_top = 63.0 +margin_right = 127.0 +margin_bottom = 84.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Selected Color" +items = [ "Selected Color", null, false, 0, null, "Pattern", null, false, 1, null ] +selected = 0 + +[node name="LeftFillPattern" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea"] +visible = false +margin_left = 44.0 +margin_top = 88.0 +margin_right = 109.0 +margin_bottom = 181.0 +size_flags_horizontal = 4 + +[node name="LeftPatternTypeButton" type="TextureButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] +margin_left = 16.0 +margin_right = 48.0 +margin_bottom = 32.0 +hint_tooltip = "Select a brush" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +texture_normal = ExtResource( 3 ) + +[node name="PatternTexture" type="TextureRect" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/LeftPatternTypeButton"] +margin_right = 32.0 +margin_bottom = 32.0 +expand = true +stretch_mode = 6 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="Offset" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] +margin_top = 36.0 +margin_right = 65.0 +margin_bottom = 51.0 +text = "Offset" + +[node name="XOffset" type="HBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] +margin_top = 55.0 +margin_right = 65.0 +margin_bottom = 72.0 + +[node name="Label" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/XOffset"] +margin_top = 1.0 +margin_right = 8.0 +margin_bottom = 16.0 +text = "X" + +[node name="LeftPatternOffsetX" type="SpinBox" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/XOffset"] +margin_left = 11.0 +margin_right = 65.0 +margin_bottom = 17.0 +mouse_default_cursor_shape = 2 + +[node name="YOffset" type="HBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern"] +margin_top = 76.0 +margin_right = 65.0 +margin_bottom = 93.0 + +[node name="Label" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/YOffset"] +margin_top = 1.0 +margin_right = 7.0 +margin_bottom = 16.0 +text = "Y" + +[node name="LeftPatternOffsetY" type="SpinBox" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/YOffset"] +margin_left = 10.0 +margin_right = 64.0 +margin_bottom = 17.0 +mouse_default_cursor_shape = 2 + +[node name="LeftLDOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 153.0 +margin_bottom = 158.0 +alignment = 1 + +[node name="LeftLightenDarken" type="OptionButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] +margin_left = 30.0 +margin_right = 122.0 +margin_bottom = 23.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Lighten" +items = [ "Lighten", null, false, 0, null, "Darken", null, false, 1, null ] +selected = 0 + +[node name="LDAmountLabel" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] +margin_left = 53.0 +margin_top = 27.0 +margin_right = 100.0 +margin_bottom = 42.0 +size_flags_horizontal = 4 +text = "Amount:" + +[node name="LeftLDAmountSpinbox" type="SpinBox" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] +margin_left = 49.0 +margin_top = 46.0 +margin_right = 103.0 +margin_bottom = 63.0 +hint_tooltip = "Lighten/Darken amount" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +value = 10.0 +align = 1 + +[node name="LeftLDAmountSlider" type="HSlider" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions"] +margin_left = 30.0 +margin_top = 67.0 +margin_right = 122.0 +margin_bottom = 83.0 +rect_min_size = Vector2( 92, 0 ) +hint_tooltip = "Lighten/Darken amount" +focus_mode = 0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 1 +value = 10.0 +ticks_on_borders = true + +[node name="LeftColorPickerOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 159.0 +margin_bottom = 117.0 + +[node name="Label" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorPickerOptions"] +margin_left = 57.0 +margin_right = 101.0 +margin_bottom = 15.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Pick for:" + +[node name="LeftForColorOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorPickerOptions"] +margin_left = 42.0 +margin_top = 19.0 +margin_right = 116.0 +margin_bottom = 42.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Left Color" +items = [ "Left Color", null, false, 0, null, "Right Color", null, false, 1, null ] +selected = 0 + +[node name="LeftZoomOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 153.0 +margin_bottom = 190.0 + +[node name="ModeLabel" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] +margin_left = 60.0 +margin_right = 93.0 +margin_bottom = 15.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Mode:" + +[node name="LeftZoomModeOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] +margin_left = 30.0 +margin_top = 19.0 +margin_right = 122.0 +margin_bottom = 42.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Zoom in" +items = [ "Zoom in", null, false, 0, null, "Zoom out", null, false, 1, null ] +selected = 0 + +[node name="OptionsLabel" type="Label" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] +margin_left = 54.0 +margin_top = 46.0 +margin_right = 99.0 +margin_bottom = 61.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Options:" + +[node name="FitToFrameButton" type="Button" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] +margin_left = 30.0 +margin_top = 65.0 +margin_right = 122.0 +margin_bottom = 88.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Fit to frame" + +[node name="100%ZoomButton" type="Button" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions"] +margin_left = 30.0 +margin_top = 92.0 +margin_right = 122.0 +margin_bottom = 115.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "100% Zoom" + +[node name="EmptySpacer" type="Control" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +margin_top = 102.0 +margin_right = 116.0 +margin_bottom = 114.0 +rect_min_size = Vector2( 0, 12 ) + +[node name="LeftMirrorButtons" type="HBoxContainer" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions"] +margin_top = 118.0 +margin_right = 116.0 +margin_bottom = 135.0 +custom_constants/separation = 44 +alignment = 1 + +[node name="LeftHorizontalMirroring" type="TextureButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons" groups=[ +"UIButtons", +]] +margin_left = 20.0 +margin_right = 35.0 +margin_bottom = 17.0 +hint_tooltip = "Enable horizontal mirrored drawing" +mouse_default_cursor_shape = 2 +toggle_mode = true +texture_normal = ExtResource( 5 ) +texture_pressed = ExtResource( 4 ) + +[node name="LeftVerticalMirroring" type="TextureButton" parent="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons" groups=[ +"UIButtons", +]] +margin_left = 79.0 +margin_right = 96.0 +margin_bottom = 17.0 +hint_tooltip = "Enable vertical mirrored drawing" +mouse_default_cursor_shape = 2 +toggle_mode = true +texture_normal = ExtResource( 7 ) +texture_pressed = ExtResource( 6 ) + +[node name="RightPanelContainer" type="PanelContainer" parent="ScrollContainer/ToolOptions"] +margin_left = 183.0 +margin_right = 313.0 +margin_bottom = 149.0 +rect_min_size = Vector2( 130, 0 ) +size_flags_horizontal = 6 +size_flags_vertical = 0 + +[node name="RightToolOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer"] +margin_left = 7.0 +margin_top = 7.0 +margin_right = 123.0 +margin_bottom = 142.0 +size_flags_horizontal = 3 + +[node name="RightLabel" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +margin_right = 116.0 +margin_bottom = 14.0 +text = "Right tool" +align = 1 +autowrap = true + +[node name="RightBrushType" type="HBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +margin_top = 18.0 +margin_right = 116.0 +margin_bottom = 50.0 +alignment = 1 + +[node name="RightBrushTypeButton" type="TextureButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType"] +margin_left = 1.0 +margin_right = 37.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 36, 32 ) +hint_tooltip = "Select a brush" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 0 +texture_normal = ExtResource( 3 ) + +[node name="BrushTexture" type="TextureRect" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType/RightBrushTypeButton"] +margin_right = 32.0 +margin_bottom = 32.0 +texture = SubResource( 5 ) +expand = true +stretch_mode = 6 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="RightBrushSizeEdit" type="SpinBox" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType"] +margin_left = 41.0 +margin_right = 115.0 +margin_bottom = 32.0 +mouse_default_cursor_shape = 2 +min_value = 1.0 +value = 1.0 +align = 1 +suffix = "px" + +[node name="RightBrushSizeSlider" type="HSlider" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +margin_left = 12.0 +margin_top = 54.0 +margin_right = 104.0 +margin_bottom = 70.0 +rect_min_size = Vector2( 92, 0 ) +focus_mode = 0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 1 +min_value = 1.0 +value = 1.0 +allow_greater = true +ticks_on_borders = true + +[node name="RightBrushPixelPerfectMode" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +margin_top = 74.0 +margin_right = 116.0 +margin_bottom = 98.0 +alignment = 1 + +[node name="RightPixelPerfectMode" type="CheckBox" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushPixelPerfectMode"] +margin_left = 4.0 +margin_right = 112.0 +margin_bottom = 24.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Pixel Perfect" +align = 1 + +[node name="RightColorInterpolation" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 144.0 +margin_bottom = 131.0 +alignment = 1 + +[node name="ColorComesFrom" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation"] +margin_left = 27.0 +margin_right = 117.0 +margin_bottom = 15.0 +hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" +mouse_filter = 1 +size_flags_horizontal = 4 +text = "Brush color from" + +[node name="RightInterpolateFactor" type="SpinBox" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation"] +margin_left = 45.0 +margin_top = 19.0 +margin_right = 99.0 +margin_bottom = 36.0 +hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +value = 100.0 +align = 1 + +[node name="RightInterpolateSlider" type="HSlider" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation"] +margin_left = 25.0 +margin_top = 40.0 +margin_right = 117.0 +margin_bottom = 56.0 +rect_min_size = Vector2( 92, 0 ) +hint_tooltip = "0: Color from the brush itself, 100: the currently selected color" +focus_mode = 0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 1 +value = 100.0 +ticks_on_borders = true + +[node name="RightFillArea" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +visible = false +margin_top = 71.0 +margin_right = 160.0 +margin_bottom = 155.0 + +[node name="FillAreaLabel" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] +margin_left = 57.0 +margin_right = 103.0 +margin_bottom = 15.0 +size_flags_horizontal = 4 +text = "Fill area:" + +[node name="RightFillAreaOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] +margin_left = 24.0 +margin_top = 19.0 +margin_right = 136.0 +margin_bottom = 40.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Same color area" +items = [ "Same color area", null, false, 0, null, "Same color pixels", null, false, 1, null ] +selected = 0 + +[node name="FillWithLabel" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] +margin_left = 57.0 +margin_top = 44.0 +margin_right = 102.0 +margin_bottom = 59.0 +size_flags_horizontal = 4 +text = "Fill with:" + +[node name="RightFillWithOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] +margin_left = 38.0 +margin_top = 63.0 +margin_right = 122.0 +margin_bottom = 84.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Selected Color" +items = [ "Selected Color", null, false, 0, null, "Pattern", null, false, 1, null ] +selected = 0 + +[node name="RightFillPattern" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea"] +visible = false +margin_left = 59.0 +margin_top = 88.0 +margin_right = 95.0 +margin_bottom = 120.0 +size_flags_horizontal = 4 + +[node name="RightPatternTypeButton" type="TextureButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] +margin_right = 36.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 36, 32 ) +hint_tooltip = "Select a brush" +mouse_default_cursor_shape = 2 +texture_normal = ExtResource( 3 ) + +[node name="PatternTexture" type="TextureRect" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/RightPatternTypeButton"] +margin_right = 32.0 +margin_bottom = 32.0 +expand = true +stretch_mode = 6 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="Offset" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] +margin_left = -185.0 +margin_top = 36.0 +margin_right = -120.0 +margin_bottom = 51.0 +text = "Offset" + +[node name="XOffset" type="HBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] +margin_left = -185.0 +margin_top = 55.0 +margin_right = -120.0 +margin_bottom = 72.0 + +[node name="Label" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/XOffset"] +margin_top = 1.0 +margin_right = 8.0 +margin_bottom = 16.0 +text = "X" + +[node name="RightPatternOffsetX" type="SpinBox" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/XOffset"] +margin_left = 11.0 +margin_right = 65.0 +margin_bottom = 17.0 +mouse_default_cursor_shape = 2 + +[node name="YOffset" type="HBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern"] +margin_left = -185.0 +margin_top = 76.0 +margin_right = -120.0 +margin_bottom = 93.0 + +[node name="Label" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/YOffset"] +margin_top = 1.0 +margin_right = 7.0 +margin_bottom = 16.0 +text = "Y" + +[node name="RightPatternOffsetY" type="SpinBox" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/YOffset"] +margin_left = 10.0 +margin_right = 64.0 +margin_bottom = 17.0 +mouse_default_cursor_shape = 2 + +[node name="RightLDOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 138.0 +margin_bottom = 158.0 + +[node name="RightLightenDarken" type="OptionButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] +margin_left = 22.0 +margin_right = 114.0 +margin_bottom = 23.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Lighten" +items = [ "Lighten", null, false, 0, null, "Darken", null, false, 1, null ] +selected = 0 + +[node name="LDAmountLabel" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] +margin_left = 45.0 +margin_top = 27.0 +margin_right = 92.0 +margin_bottom = 42.0 +size_flags_horizontal = 4 +text = "Amount:" + +[node name="RightLDAmountSpinbox" type="SpinBox" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] +margin_left = 42.0 +margin_top = 46.0 +margin_right = 96.0 +margin_bottom = 63.0 +hint_tooltip = "Lighten/Darken amount" +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +value = 10.0 +align = 1 + +[node name="RightLDAmountSlider" type="HSlider" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions"] +margin_left = 22.0 +margin_top = 67.0 +margin_right = 114.0 +margin_bottom = 83.0 +rect_min_size = Vector2( 92, 0 ) +hint_tooltip = "Lighten/Darken amount" +focus_mode = 0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +size_flags_vertical = 1 +value = 10.0 +ticks_on_borders = true + +[node name="RightColorPickerOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 144.0 +margin_bottom = 117.0 + +[node name="Label" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorPickerOptions"] +margin_left = 50.0 +margin_right = 94.0 +margin_bottom = 15.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Pick for:" + +[node name="RightForColorOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorPickerOptions"] +margin_left = 31.0 +margin_top = 19.0 +margin_right = 113.0 +margin_bottom = 42.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Right Color" +items = [ "Left Color", null, false, 0, null, "Right Color", null, false, 1, null ] +selected = 1 + +[node name="RightZoomOptions" type="VBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +visible = false +margin_top = 75.0 +margin_right = 138.0 +margin_bottom = 190.0 + +[node name="ModeLabel" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] +margin_left = 52.0 +margin_right = 85.0 +margin_bottom = 15.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Mode:" + +[node name="RightZoomModeOptions" type="OptionButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] +margin_left = 22.0 +margin_top = 19.0 +margin_right = 114.0 +margin_bottom = 42.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Zoom out" +items = [ "Zoom in", null, false, 0, null, "Zoom out", null, false, 1, null ] +selected = 1 + +[node name="OptionsLabel" type="Label" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] +margin_left = 46.0 +margin_top = 46.0 +margin_right = 91.0 +margin_bottom = 61.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Options:" + +[node name="FitToFrameButton" type="Button" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] +margin_left = 22.0 +margin_top = 65.0 +margin_right = 114.0 +margin_bottom = 88.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "Fit to frame" + +[node name="100%ZoomButton" type="Button" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions"] +margin_left = 22.0 +margin_top = 92.0 +margin_right = 114.0 +margin_bottom = 115.0 +rect_min_size = Vector2( 92, 0 ) +mouse_default_cursor_shape = 2 +size_flags_horizontal = 4 +text = "100% Zoom" + +[node name="EmptySpacer" type="Control" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +margin_top = 102.0 +margin_right = 116.0 +margin_bottom = 114.0 +rect_min_size = Vector2( 0, 12 ) + +[node name="RightMirrorButtons" type="HBoxContainer" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions"] +margin_top = 118.0 +margin_right = 116.0 +margin_bottom = 135.0 +custom_constants/separation = 44 +alignment = 1 + +[node name="RightHorizontalMirroring" type="TextureButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons" groups=[ +"UIButtons", +]] +margin_left = 20.0 +margin_right = 35.0 +margin_bottom = 17.0 +hint_tooltip = "Enable horizontal mirrored drawing" +mouse_default_cursor_shape = 2 +toggle_mode = true +texture_normal = ExtResource( 5 ) +texture_pressed = ExtResource( 4 ) + +[node name="RightVerticalMirroring" type="TextureButton" parent="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons" groups=[ +"UIButtons", +]] +margin_left = 79.0 +margin_right = 96.0 +margin_bottom = 17.0 +hint_tooltip = "Enable vertical mirrored drawing" +mouse_default_cursor_shape = 2 +toggle_mode = true +texture_normal = ExtResource( 7 ) +texture_pressed = ExtResource( 6 ) +[connection signal="pressed" from="ColorButtonsVertical/ColorSwitchCenter/ColorSwitch" to="." method="_on_ColorSwitch_pressed"] +[connection signal="color_changed" from="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/LeftColorPickerButton" to="." method="_on_ColorPickerButton_color_changed" binds= [ false ]] +[connection signal="popup_closed" from="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/LeftColorPickerButton" to="." method="_on_ColorPickerButton_popup_closed"] +[connection signal="pressed" from="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/LeftColorPickerButton" to="." method="_on_ColorPickerButton_pressed"] +[connection signal="color_changed" from="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/RightColorPickerButton" to="." method="_on_ColorPickerButton_color_changed" binds= [ true ]] +[connection signal="popup_closed" from="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/RightColorPickerButton" to="." method="_on_ColorPickerButton_popup_closed"] +[connection signal="pressed" from="ColorButtonsVertical/ColorPickersCenter/ColorPickersHorizontal/RightColorPickerButton" to="." method="_on_ColorPickerButton_pressed"] +[connection signal="pressed" from="ColorButtonsVertical/ColorDefaultsCenter/ColorDefaults" to="." method="_on_ColorDefaults_pressed"] +[connection signal="pressed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType/LeftBrushTypeButton" to="." method="_on_BrushTypeButton_pressed" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushType/LeftBrushSizeEdit" to="." method="_on_BrushSizeEdit_value_changed" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushSizeSlider" to="." method="_on_BrushSizeEdit_value_changed" binds= [ false ]] +[connection signal="toggled" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftBrushPixelPerfectMode/LeftPixelPerfectMode" to="." method="_on_PixelPerfectMode_toggled" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation/LeftInterpolateFactor" to="." method="_on_InterpolateFactor_value_changed" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorInterpolation/LeftInterpolateSlider" to="." method="_on_InterpolateFactor_value_changed" binds= [ false ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillAreaOptions" to="." method="_on_FillAreaOptions_item_selected" binds= [ false ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillWithOptions" to="." method="_on_FillWithOptions_item_selected" binds= [ false ]] +[connection signal="pressed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/LeftPatternTypeButton" to="." method="_on_PatternTypeButton_pressed" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/XOffset/LeftPatternOffsetX" to="." method="_on_PatternOffsetX_value_changed" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftFillArea/LeftFillPattern/YOffset/LeftPatternOffsetY" to="." method="_on_PatternOffsetY_value_changed" binds= [ false ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions/LeftLightenDarken" to="." method="_on_LightenDarken_item_selected" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions/LeftLDAmountSpinbox" to="." method="_on_LDAmount_value_changed" binds= [ false ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftLDOptions/LeftLDAmountSlider" to="." method="_on_LDAmount_value_changed" binds= [ false ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftColorPickerOptions/LeftForColorOptions" to="." method="_on_ForColorOptions_item_selected" binds= [ false ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions/LeftZoomModeOptions" to="." method="_on_ZoomModeOptions_item_selected" binds= [ false ]] +[connection signal="pressed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions/FitToFrameButton" to="." method="_on_FitToFrameButton_pressed"] +[connection signal="pressed" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftZoomOptions/100%ZoomButton" to="." method="_on_100ZoomButton_pressed"] +[connection signal="toggled" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons/LeftHorizontalMirroring" to="." method="_on_HorizontalMirroring_toggled" binds= [ false ]] +[connection signal="toggled" from="ScrollContainer/ToolOptions/LeftPanelContainer/LeftToolOptions/LeftMirrorButtons/LeftVerticalMirroring" to="." method="_on_VerticalMirroring_toggled" binds= [ false ]] +[connection signal="pressed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType/RightBrushTypeButton" to="." method="_on_BrushTypeButton_pressed" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushType/RightBrushSizeEdit" to="." method="_on_BrushSizeEdit_value_changed" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushSizeSlider" to="." method="_on_BrushSizeEdit_value_changed" binds= [ true ]] +[connection signal="toggled" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightBrushPixelPerfectMode/RightPixelPerfectMode" to="." method="_on_PixelPerfectMode_toggled" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation/RightInterpolateFactor" to="." method="_on_InterpolateFactor_value_changed" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorInterpolation/RightInterpolateSlider" to="." method="_on_InterpolateFactor_value_changed" binds= [ true ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillAreaOptions" to="." method="_on_FillAreaOptions_item_selected" binds= [ true ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillWithOptions" to="." method="_on_FillWithOptions_item_selected" binds= [ true ]] +[connection signal="pressed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/RightPatternTypeButton" to="." method="_on_PatternTypeButton_pressed" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/XOffset/RightPatternOffsetX" to="." method="_on_PatternOffsetX_value_changed" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightFillArea/RightFillPattern/YOffset/RightPatternOffsetY" to="." method="_on_PatternOffsetY_value_changed" binds= [ true ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions/RightLightenDarken" to="." method="_on_LightenDarken_item_selected" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions/RightLDAmountSpinbox" to="." method="_on_LDAmount_value_changed" binds= [ true ]] +[connection signal="value_changed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightLDOptions/RightLDAmountSlider" to="." method="_on_LDAmount_value_changed" binds= [ true ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightColorPickerOptions/RightForColorOptions" to="." method="_on_ForColorOptions_item_selected" binds= [ true ]] +[connection signal="item_selected" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions/RightZoomModeOptions" to="." method="_on_ZoomModeOptions_item_selected" binds= [ true ]] +[connection signal="pressed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions/FitToFrameButton" to="." method="_on_FitToFrameButton_pressed"] +[connection signal="pressed" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightZoomOptions/100%ZoomButton" to="." method="_on_100ZoomButton_pressed"] +[connection signal="toggled" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons/RightHorizontalMirroring" to="." method="_on_HorizontalMirroring_toggled" binds= [ true ]] +[connection signal="toggled" from="ScrollContainer/ToolOptions/RightPanelContainer/RightToolOptions/RightMirrorButtons/RightVerticalMirroring" to="." method="_on_VerticalMirroring_toggled" binds= [ true ]] diff --git a/src/UI/Dialogs/ExportDialog.tscn b/src/UI/Dialogs/ExportDialog.tscn index 093c16f41..23625dbbf 100644 --- a/src/UI/Dialogs/ExportDialog.tscn +++ b/src/UI/Dialogs/ExportDialog.tscn @@ -346,8 +346,8 @@ window_title = "Open a Directory" resizable = true mode = 2 access = 2 -current_dir = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama" -current_path = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama/" +current_dir = "C:/Users" +current_path = "C:/Users/" [node name="PathValidationAlert" type="AcceptDialog" parent="Popups"] margin_left = 8.0 diff --git a/src/UI/Dialogs/ImportSprites.tscn b/src/UI/Dialogs/ImportSprites.tscn index 8911e62d6..29cf6ddce 100644 --- a/src/UI/Dialogs/ImportSprites.tscn +++ b/src/UI/Dialogs/ImportSprites.tscn @@ -2,8 +2,6 @@ [ext_resource path="res://src/UI/Dialogs/ImportSprites.gd" type="Script" id=1] - - [node name="ImportSprites" type="FileDialog"] margin_right = 515.0 margin_bottom = 348.0 @@ -12,8 +10,8 @@ resizable = true mode = 1 access = 2 filters = PoolStringArray( "*.bmp ; BMP Image", "*.hdr ; Radiance HDR Image", "*.jpg,*.jpeg ; JPEG Image", "*.png ; PNG Image", "*.svg ; SVG Image", "*.tga ; TGA Image", "*.webp ; WebP Image" ) -current_dir = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama" -current_path = "C:/Users/Overloaded/Dropbox/Orama Founding Members/εταιρικα αρχεια/Godot Projects/Pixelorama/" +current_dir = "C:/Users" +current_path = "C:/Users/" script = ExtResource( 1 ) [node name="HBoxContainer2" type="HBoxContainer" parent="."] From 8c2c8a1d7b160a0fc652b70bf4351a6f264e3313 Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Wed, 20 May 2020 01:02:25 +0300 Subject: [PATCH 03/14] Rebase master (remove palette) to refactoring --- src/Main.tscn | 65 ++++++++++++++++++++++++++------- src/Palette/PaletteContainer.gd | 2 +- 2 files changed, 52 insertions(+), 15 deletions(-) diff --git a/src/Main.tscn b/src/Main.tscn index 08ab5e258..820d0a888 100644 --- a/src/Main.tscn +++ b/src/Main.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=46 format=2] +[gd_scene load_steps=50 format=2] [ext_resource path="res://assets/themes/dark/theme.tres" type="Theme" id=1] [ext_resource path="res://src/Main.gd" type="Script" id=2] @@ -10,6 +10,8 @@ [ext_resource path="res://assets/graphics/dark_themes/tools/colorpicker.png" type="Texture" id=8] [ext_resource path="res://assets/graphics/dark_themes/tools/bucket.png" type="Texture" id=9] [ext_resource path="res://src/UI/ColorAndToolOptions.tscn" type="PackedScene" id=10] +[ext_resource path="res://src/UI/Dialogs/PaletteRemoveErrorDialog.tscn" type="PackedScene" id=11] +[ext_resource path="res://src/UI/Dialogs/PaletteDoesntExistDialog.tscn" type="PackedScene" id=12] [ext_resource path="res://assets/themes/dark/ruler_style.tres" type="StyleBox" id=13] [ext_resource path="res://src/UI/Rulers/HorizontalRuler.gd" type="Script" id=14] [ext_resource path="res://src/UI/Rulers/VerticalRuler.gd" type="Script" id=15] @@ -21,11 +23,13 @@ [ext_resource path="res://assets/graphics/dark_themes/palette/edit_palette.png" type="Texture" id=21] [ext_resource path="res://assets/graphics/dark_themes/palette/add_palette.png" type="Texture" id=22] [ext_resource path="res://assets/graphics/dark_themes/tools/zoom.png" type="Texture" id=23] +[ext_resource path="res://src/UI/Dialogs/CantRemoveMorePalettesDialog.tscn" type="PackedScene" id=24] [ext_resource path="res://src/Palette/PaletteContainer.gd" type="Script" id=25] [ext_resource path="res://src/UI/BrushButton.tscn" type="PackedScene" id=26] [ext_resource path="res://src/UI/Dialogs/SplashDialog.tscn" type="PackedScene" id=27] [ext_resource path="res://src/UI/Dialogs/CreateNewImage.tscn" type="PackedScene" id=28] [ext_resource path="res://src/UI/Dialogs/ImportSprites.tscn" type="PackedScene" id=29] +[ext_resource path="res://assets/graphics/dark_themes/palette/remove_palette.png" type="Texture" id=30] [ext_resource path="res://src/UI/Dialogs/ScaleImage.tscn" type="PackedScene" id=31] [ext_resource path="res://src/UI/Dialogs/PreferencesDialog.tscn" type="PackedScene" id=32] [ext_resource path="res://src/UI/Dialogs/OutlineDialog.tscn" type="PackedScene" id=33] @@ -47,7 +51,7 @@ shader_param/size = 10.0 shader_param/color1 = Color( 0.7, 0.7, 0.7, 1 ) shader_param/color2 = Color( 1, 1, 1, 1 ) -[sub_resource type="Image" id=11] +[sub_resource type="Image" id=6] data = { "data": PoolByteArray( 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 255, 0, 0, 0, 0, 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, 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, 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, 255, 0, 0, 0, 0, 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, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ), "format": "RGBA8", @@ -56,13 +60,13 @@ data = { "width": 9 } -[sub_resource type="ImageTexture" id=8] +[sub_resource type="ImageTexture" id=3] flags = 3 flags = 3 -image = SubResource( 11 ) +image = SubResource( 6 ) size = Vector2( 9, 9 ) -[sub_resource type="Image" id=12] +[sub_resource type="Image" id=7] data = { "data": PoolByteArray( 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, 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, 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, 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, 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, 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, 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, 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, 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, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ), "format": "RGBA8", @@ -71,10 +75,10 @@ data = { "width": 9 } -[sub_resource type="ImageTexture" id=10] +[sub_resource type="ImageTexture" id=5] flags = 3 flags = 3 -image = SubResource( 12 ) +image = SubResource( 7 ) size = Vector2( 9, 9 ) [node name="Control" type="Control"] @@ -570,8 +574,8 @@ margin_right = 291.0 margin_bottom = 51.0 [node name="PaletteButtons" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer"] -margin_left = 58.0 -margin_right = 233.0 +margin_left = 40.0 +margin_right = 251.0 margin_bottom = 32.0 [node name="AddPalette" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons" groups=[ @@ -635,9 +639,35 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="PaletteOptionButton" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons"] +[node name="RemovePalette" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons" groups=[ +"UIButtons", +]] margin_left = 72.0 -margin_right = 175.0 +margin_right = 104.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 32, 32 ) +hint_tooltip = "Remove currently selected palette" +mouse_default_cursor_shape = 2 + +[node name="TextureRect" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/RemovePalette"] +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +margin_left = -12.0 +margin_top = -12.0 +margin_right = 12.0 +margin_bottom = 12.0 +size_flags_horizontal = 0 +size_flags_vertical = 0 +texture = ExtResource( 30 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="PaletteOptionButton" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons"] +margin_left = 108.0 +margin_right = 211.0 margin_bottom = 32.0 grow_horizontal = 0 rect_min_size = Vector2( 103, 0 ) @@ -705,7 +735,7 @@ brush_type = 1 custom_brush_index = -2 [node name="BrushTexture" parent="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton" index="0"] -texture = SubResource( 8 ) +texture = SubResource( 3 ) [node name="FilledCircleBrushButton" parent="BrushesPopup/TabContainer/File/FileBrushContainer" instance=ExtResource( 26 )] margin_left = 70.0 @@ -716,7 +746,7 @@ brush_type = 2 custom_brush_index = -1 [node name="BrushTexture" parent="BrushesPopup/TabContainer/File/FileBrushContainer/FilledCircleBrushButton" index="0"] -texture = SubResource( 10 ) +texture = SubResource( 5 ) [node name="Project" type="ScrollContainer" parent="BrushesPopup/TabContainer"] visible = false @@ -841,6 +871,12 @@ margin_bottom = 62.0 margin_bottom = 62.0 window_title = "Alarm!" +[node name="CantRemoveMorePalettesDialog" parent="." instance=ExtResource( 24 )] + +[node name="PaletteDoesntExistDialog" parent="." instance=ExtResource( 12 )] + +[node name="PaletteRemoveErrorDialog" parent="." instance=ExtResource( 11 )] + [node name="LeftCursor" type="Sprite" parent="."] visible = false @@ -865,6 +901,7 @@ Do you want to reload it?" [connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_exited"] [connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/AddPalette" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_AddPalette_pressed"] [connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/EditPalette" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_edit_palette"] +[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/RemovePalette" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_RemovePalette_pressed"] [connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/PaletteOptionButton" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_PaletteOptionButton_item_selected"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/PixelBrushButton" to="." method="_on_Brush_Selected"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton" to="." method="_on_Brush_Selected"] @@ -900,4 +937,4 @@ Do you want to reload it?" [editable path="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton"] -[editable path="BrushesPopup/TabContainer/File/FileBrushContainer/FilledCircleBrushButton"] \ No newline at end of file +[editable path="BrushesPopup/TabContainer/File/FileBrushContainer/FilledCircleBrushButton"] diff --git a/src/Palette/PaletteContainer.gd b/src/Palette/PaletteContainer.gd index 70df729ef..7996d3c82 100644 --- a/src/Palette/PaletteContainer.gd +++ b/src/Palette/PaletteContainer.gd @@ -305,5 +305,5 @@ func _on_NewPaletteDialog_popup_hide() -> void: Global.dialog_open(false) -func _on_RemovePalette_pressed(): +func _on_RemovePalette_pressed() -> void: remove_palette(current_palette) From 2ebdf510478adb9b7e8845aec0902a2966b941a7 Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Wed, 20 May 2020 01:31:38 +0300 Subject: [PATCH 04/14] Use error dialog instead of individual erro dialogs for when removing palettes --- .gitignore | 1 - src/Main.tscn | 11 +---------- src/Palette/PaletteContainer.gd | 13 +++++++++---- src/UI/Dialogs/CantRemoveMorePalettesDialog.tscn | 5 ----- src/UI/Dialogs/PaletteDoesntExistDialog.tscn | 5 ----- src/UI/Dialogs/PaletteRemoveErrorDialog.tscn | 7 ------- 6 files changed, 10 insertions(+), 32 deletions(-) delete mode 100644 src/UI/Dialogs/CantRemoveMorePalettesDialog.tscn delete mode 100644 src/UI/Dialogs/PaletteDoesntExistDialog.tscn delete mode 100644 src/UI/Dialogs/PaletteRemoveErrorDialog.tscn diff --git a/.gitignore b/.gitignore index 44ef949b6..a77af6a13 100644 --- a/.gitignore +++ b/.gitignore @@ -15,5 +15,4 @@ mono_crash.*.json .directory *~ Translations/Update Translations.bat -Scripts/Old/ diff --git a/src/Main.tscn b/src/Main.tscn index 820d0a888..625d60608 100644 --- a/src/Main.tscn +++ b/src/Main.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=50 format=2] +[gd_scene load_steps=47 format=2] [ext_resource path="res://assets/themes/dark/theme.tres" type="Theme" id=1] [ext_resource path="res://src/Main.gd" type="Script" id=2] @@ -10,8 +10,6 @@ [ext_resource path="res://assets/graphics/dark_themes/tools/colorpicker.png" type="Texture" id=8] [ext_resource path="res://assets/graphics/dark_themes/tools/bucket.png" type="Texture" id=9] [ext_resource path="res://src/UI/ColorAndToolOptions.tscn" type="PackedScene" id=10] -[ext_resource path="res://src/UI/Dialogs/PaletteRemoveErrorDialog.tscn" type="PackedScene" id=11] -[ext_resource path="res://src/UI/Dialogs/PaletteDoesntExistDialog.tscn" type="PackedScene" id=12] [ext_resource path="res://assets/themes/dark/ruler_style.tres" type="StyleBox" id=13] [ext_resource path="res://src/UI/Rulers/HorizontalRuler.gd" type="Script" id=14] [ext_resource path="res://src/UI/Rulers/VerticalRuler.gd" type="Script" id=15] @@ -23,7 +21,6 @@ [ext_resource path="res://assets/graphics/dark_themes/palette/edit_palette.png" type="Texture" id=21] [ext_resource path="res://assets/graphics/dark_themes/palette/add_palette.png" type="Texture" id=22] [ext_resource path="res://assets/graphics/dark_themes/tools/zoom.png" type="Texture" id=23] -[ext_resource path="res://src/UI/Dialogs/CantRemoveMorePalettesDialog.tscn" type="PackedScene" id=24] [ext_resource path="res://src/Palette/PaletteContainer.gd" type="Script" id=25] [ext_resource path="res://src/UI/BrushButton.tscn" type="PackedScene" id=26] [ext_resource path="res://src/UI/Dialogs/SplashDialog.tscn" type="PackedScene" id=27] @@ -871,12 +868,6 @@ margin_bottom = 62.0 margin_bottom = 62.0 window_title = "Alarm!" -[node name="CantRemoveMorePalettesDialog" parent="." instance=ExtResource( 24 )] - -[node name="PaletteDoesntExistDialog" parent="." instance=ExtResource( 12 )] - -[node name="PaletteRemoveErrorDialog" parent="." instance=ExtResource( 11 )] - [node name="LeftCursor" type="Sprite" parent="."] visible = false diff --git a/src/Palette/PaletteContainer.gd b/src/Palette/PaletteContainer.gd index 7996d3c82..dd0ec0ec4 100644 --- a/src/Palette/PaletteContainer.gd +++ b/src/Palette/PaletteContainer.gd @@ -273,19 +273,24 @@ func get_best_palette_file_location(looking_paths: Array, fname: String): # -> func remove_palette(palette_name : String) -> void: # Don't allow user to remove palette if there is no one left if Global.palettes.size() < 2: - get_node('/root/Control/CantRemoveMorePalettesDialog').popup_centered() + Global.error_dialog.set_text("You can't remove more palettes!") + Global.error_dialog.popup_centered() + Global.dialog_open(true) return # Don't allow user to try to remove not existing palettes if not palette_name in Global.palettes: - get_node('/root/Control/PaletteDoesntExistDialog').popup_centered() + Global.error_dialog.set_text("Cannot remove the palette, because it doesn't exist!") + Global.error_dialog.popup_centered() + Global.dialog_open(true) return Global.directory_module.ensure_xdg_user_dirs_exist() var palette = Global.palettes[palette_name] var result = palette.remove_file() # Inform user if pallete hasn't been removed from disk because of an error if result != OK: - get_node('/root/Control/PaletteRemoveErrorDialog').dialog_text %= str(result) - get_node('/root/Control/PaletteRemoveErrorDialog').popup_centered() + Global.error_dialog.set_text(tr("An error occured while removing the palette! Error code: %s") % str(result)) + Global.error_dialog.popup_centered() + Global.dialog_open(true) # Remove palette in the program anyway, because if you don't do it # then Pixelorama will crash Global.palettes.erase(palette_name) diff --git a/src/UI/Dialogs/CantRemoveMorePalettesDialog.tscn b/src/UI/Dialogs/CantRemoveMorePalettesDialog.tscn deleted file mode 100644 index a83ba9c06..000000000 --- a/src/UI/Dialogs/CantRemoveMorePalettesDialog.tscn +++ /dev/null @@ -1,5 +0,0 @@ -[gd_scene format=2] - -[node name="CantRemoveMorePalettesDialog" type="AcceptDialog"] -window_title = "Alarm!" -dialog_text = "You can't remove more palettes!" diff --git a/src/UI/Dialogs/PaletteDoesntExistDialog.tscn b/src/UI/Dialogs/PaletteDoesntExistDialog.tscn deleted file mode 100644 index 360b41a47..000000000 --- a/src/UI/Dialogs/PaletteDoesntExistDialog.tscn +++ /dev/null @@ -1,5 +0,0 @@ -[gd_scene format=2] - -[node name="PaletteDoesntExistDialog" type="AcceptDialog"] -window_title = "Alarm!" -dialog_text = "Cannot remove the palette, because it doesn't exist!" diff --git a/src/UI/Dialogs/PaletteRemoveErrorDialog.tscn b/src/UI/Dialogs/PaletteRemoveErrorDialog.tscn deleted file mode 100644 index cb8cf9412..000000000 --- a/src/UI/Dialogs/PaletteRemoveErrorDialog.tscn +++ /dev/null @@ -1,7 +0,0 @@ -[gd_scene format=2] - -[node name="PaletteRemoveErrorDialog" type="AcceptDialog"] -margin_right = 90.0 -margin_bottom = 58.0 -window_title = "Alarm!" -dialog_text = "An error occured while removing the palette! Error code: %s" From 8e6516a4d453608ff7d5d66b16b2ec6a8518e127 Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Wed, 20 May 2020 01:37:36 +0300 Subject: [PATCH 05/14] Use error dialog for 2 more cases NoProjectEditedOrCreatedAlertDialog and OpenLastProjectAlertDialog --- src/Main.gd | 6 ++++-- src/Main.tscn | 13 +------------ .../NoProjectEditedOrCreatedAlertDialog.tscn | 7 ------- src/UI/Dialogs/OpenLastProjectAlertDialog.tscn | 7 ------- 4 files changed, 5 insertions(+), 28 deletions(-) delete mode 100644 src/UI/Dialogs/NoProjectEditedOrCreatedAlertDialog.tscn delete mode 100644 src/UI/Dialogs/OpenLastProjectAlertDialog.tscn diff --git a/src/Main.gd b/src/Main.gd index 7c084a146..64282f6ac 100644 --- a/src/Main.gd +++ b/src/Main.gd @@ -267,7 +267,8 @@ func file_menu_id_pressed(id : int) -> void: else: load_last_project() else: # if not then warn user that he didn't edit any project yet - $NoProjectEditedOrCreatedAlertDialog.popup_centered() + Global.error_dialog.set_text("You haven't saved or opened any project in Pixelorama yet!") + Global.error_dialog.popup_centered() Global.dialog_open(true) 3: # Save is_quitting_on_save = false @@ -474,7 +475,8 @@ func load_last_project() -> void: _on_OpenSprite_file_selected(file_path) else: # If file doesn't exist on disk then warn user about this - $OpenLastProjectAlertDialog.popup_centered() + Global.error_dialog.set_text("Cannot find last project file.") + Global.error_dialog.popup_centered() Global.dialog_open(true) diff --git a/src/Main.tscn b/src/Main.tscn index 625d60608..67331e0ca 100644 --- a/src/Main.tscn +++ b/src/Main.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=47 format=2] +[gd_scene load_steps=45 format=2] [ext_resource path="res://assets/themes/dark/theme.tres" type="Theme" id=1] [ext_resource path="res://src/Main.gd" type="Script" id=2] @@ -39,8 +39,6 @@ [ext_resource path="res://src/Shaders/TransparentChecker.shader" type="Shader" id=42] [ext_resource path="res://src/UI/Dialogs/HSVDialog.tscn" type="PackedScene" id=44] [ext_resource path="res://src/UI/TransparentChecker.gd" type="Script" id=45] -[ext_resource path="res://src/UI/Dialogs/OpenLastProjectAlertDialog.tscn" type="PackedScene" id=46] -[ext_resource path="res://src/UI/Dialogs/NoProjectEditedOrCreatedAlertDialog.tscn" type="PackedScene" id=47] [sub_resource type="ShaderMaterial" id=1] shader = ExtResource( 42 ) @@ -860,14 +858,6 @@ filters = PoolStringArray( "*.json ; JavaScript Object Notation", "*.gpl ; Gimp [node name="HSVDialog" parent="." instance=ExtResource( 44 )] -[node name="OpenLastProjectAlertDialog" parent="." instance=ExtResource( 46 )] -margin_right = 179.0 -margin_bottom = 62.0 - -[node name="NoProjectEditedOrCreatedAlertDialog" parent="." instance=ExtResource( 47 )] -margin_bottom = 62.0 -window_title = "Alarm!" - [node name="LeftCursor" type="Sprite" parent="."] visible = false @@ -923,7 +913,6 @@ Do you want to reload it?" [connection signal="file_selected" from="PaletteImportFileDialog" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_palette_import_file_selected"] [connection signal="popup_hide" from="PaletteImportFileDialog" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_NewPaletteDialog_popup_hide"] [connection signal="popup_hide" from="HSVDialog" to="." method="_can_draw_true"] -[connection signal="popup_hide" from="NoProjectEditedOrCreatedAlertDialog" to="." method="_can_draw_true"] [connection signal="popup_hide" from="BackupConfirmation" to="." method="_can_draw_true"] [editable path="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton"] diff --git a/src/UI/Dialogs/NoProjectEditedOrCreatedAlertDialog.tscn b/src/UI/Dialogs/NoProjectEditedOrCreatedAlertDialog.tscn deleted file mode 100644 index 81fe43227..000000000 --- a/src/UI/Dialogs/NoProjectEditedOrCreatedAlertDialog.tscn +++ /dev/null @@ -1,7 +0,0 @@ -[gd_scene format=2] - -[node name="NoProjectEditedOrCreatedAlertDialog" type="AcceptDialog"] -dialog_text = "You haven't saved or opened any project in Pixelorama yet!" -__meta__ = { -"_edit_use_anchors_": false -} diff --git a/src/UI/Dialogs/OpenLastProjectAlertDialog.tscn b/src/UI/Dialogs/OpenLastProjectAlertDialog.tscn deleted file mode 100644 index d06c75e81..000000000 --- a/src/UI/Dialogs/OpenLastProjectAlertDialog.tscn +++ /dev/null @@ -1,7 +0,0 @@ -[gd_scene format=2] - -[node name="OpenLastProjectAlertDialog" type="AcceptDialog"] -margin_right = 209.0 -margin_bottom = 58.0 -window_title = "Alarm!" -dialog_text = "Cannot find last project file." From 30e7b34dc9d8546290f9bf5de85d12add9d1a5cb Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Wed, 20 May 2020 01:44:27 +0300 Subject: [PATCH 06/14] Made OpenSprite and SaveSprite separate scenes --- src/Main.tscn | 43 +++++++++------------------------- src/UI/Dialogs/OpenSprite.tscn | 12 ++++++++++ src/UI/Dialogs/SaveSprite.tscn | 16 +++++++++++++ 3 files changed, 39 insertions(+), 32 deletions(-) create mode 100644 src/UI/Dialogs/OpenSprite.tscn create mode 100644 src/UI/Dialogs/SaveSprite.tscn diff --git a/src/Main.tscn b/src/Main.tscn index 67331e0ca..9b5b7677b 100644 --- a/src/Main.tscn +++ b/src/Main.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=45 format=2] +[gd_scene load_steps=47 format=2] [ext_resource path="res://assets/themes/dark/theme.tres" type="Theme" id=1] [ext_resource path="res://src/Main.gd" type="Script" id=2] @@ -10,6 +10,8 @@ [ext_resource path="res://assets/graphics/dark_themes/tools/colorpicker.png" type="Texture" id=8] [ext_resource path="res://assets/graphics/dark_themes/tools/bucket.png" type="Texture" id=9] [ext_resource path="res://src/UI/ColorAndToolOptions.tscn" type="PackedScene" id=10] +[ext_resource path="res://src/UI/Dialogs/SaveSprite.tscn" type="PackedScene" id=11] +[ext_resource path="res://src/UI/Dialogs/OpenSprite.tscn" type="PackedScene" id=12] [ext_resource path="res://assets/themes/dark/ruler_style.tres" type="StyleBox" id=13] [ext_resource path="res://src/UI/Rulers/HorizontalRuler.gd" type="Script" id=14] [ext_resource path="res://src/UI/Rulers/VerticalRuler.gd" type="Script" id=15] @@ -779,32 +781,9 @@ columns = 6 [node name="CreateNewImage" parent="." instance=ExtResource( 28 )] -[node name="OpenSprite" type="FileDialog" parent="."] -margin_right = 515.0 -margin_bottom = 348.0 -window_title = "Open a File" -resizable = true -mode = 0 -access = 2 -filters = PoolStringArray( "*.pxo ; Pixelorama Project" ) -current_dir = "C:/Users" -current_path = "C:/Users/" +[node name="OpenSprite" parent="." instance=ExtResource( 12 )] -[node name="SaveSprite" type="FileDialog" parent="."] -anchor_left = 0.5 -anchor_top = 0.5 -anchor_right = 0.5 -anchor_bottom = 0.5 -margin_left = -512.0 -margin_top = -300.0 -margin_right = 3.0 -margin_bottom = 48.0 -window_title = "Save Sprite as .pxo" -resizable = true -access = 2 -filters = PoolStringArray( "*.pxo ; Pixelorama Project" ) -current_dir = "C:/Users" -current_path = "C:/Users/" +[node name="SaveSprite" parent="." instance=ExtResource( 11 )] [node name="ImportSprites" parent="." instance=ExtResource( 29 )] @@ -858,12 +837,6 @@ filters = PoolStringArray( "*.json ; JavaScript Object Notation", "*.gpl ; Gimp [node name="HSVDialog" parent="." instance=ExtResource( 44 )] -[node name="LeftCursor" type="Sprite" parent="."] -visible = false - -[node name="RightCursor" type="Sprite" parent="."] -visible = false - [node name="BackupConfirmation" type="ConfirmationDialog" parent="."] margin_right = 349.0 margin_bottom = 88.0 @@ -872,6 +845,12 @@ popup_exclusive = true dialog_text = "Autosaved backup for %s was found. Do you want to reload it?" +[node name="LeftCursor" type="Sprite" parent="."] +visible = false + +[node name="RightCursor" type="Sprite" parent="."] +visible = false + [node name="ModulateTween" type="Tween" parent="."] [connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" method="_on_HorizontalRuler_mouse_entered"] [connection signal="pressed" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" method="_on_HorizontalRuler_pressed"] diff --git a/src/UI/Dialogs/OpenSprite.tscn b/src/UI/Dialogs/OpenSprite.tscn new file mode 100644 index 000000000..491d2ed01 --- /dev/null +++ b/src/UI/Dialogs/OpenSprite.tscn @@ -0,0 +1,12 @@ +[gd_scene format=2] + +[node name="OpenSprite" type="FileDialog"] +margin_right = 515.0 +margin_bottom = 348.0 +window_title = "Open a File" +resizable = true +mode = 0 +access = 2 +filters = PoolStringArray( "*.pxo ; Pixelorama Project" ) +current_dir = "C:/Users" +current_path = "C:/Users/" diff --git a/src/UI/Dialogs/SaveSprite.tscn b/src/UI/Dialogs/SaveSprite.tscn new file mode 100644 index 000000000..3bdc19f6f --- /dev/null +++ b/src/UI/Dialogs/SaveSprite.tscn @@ -0,0 +1,16 @@ +[gd_scene format=2] + +[node name="SaveSprite" type="FileDialog"] +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +margin_left = -512.0 +margin_top = -300.0 +margin_right = 3.0 +margin_bottom = 48.0 +resizable = true +access = 2 +filters = PoolStringArray( "*.pxo ; Pixelorama Project" ) +current_dir = "C:/Users" +current_path = "C:/Users/" From 2190c21d9db59da00116434dead2b2beba0a88f6 Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Thu, 21 May 2020 02:50:57 +0300 Subject: [PATCH 07/14] Separated PalettePanelContainer from Main.tscn, made it its own scene And put all 3 palette dialogs there instead of Main --- src/Main.tscn | 177 +-------------------- src/Palette/PaletteImportFileDialog.tscn | 2 +- src/Palette/PalettePanelContainer.tscn | 191 +++++++++++++++++++++++ 3 files changed, 195 insertions(+), 175 deletions(-) create mode 100644 src/Palette/PalettePanelContainer.tscn diff --git a/src/Main.tscn b/src/Main.tscn index 9b5b7677b..db1ce2592 100644 --- a/src/Main.tscn +++ b/src/Main.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=47 format=2] +[gd_scene load_steps=41 format=2] [ext_resource path="res://assets/themes/dark/theme.tres" type="Theme" id=1] [ext_resource path="res://src/Main.gd" type="Script" id=2] @@ -20,22 +20,16 @@ [ext_resource path="res://src/SelectionRectangle.gd" type="Script" id=18] [ext_resource path="res://src/UI/SecondViewport.gd" type="Script" id=19] [ext_resource path="res://src/UI/Timeline/AnimationTimeline.tscn" type="PackedScene" id=20] -[ext_resource path="res://assets/graphics/dark_themes/palette/edit_palette.png" type="Texture" id=21] -[ext_resource path="res://assets/graphics/dark_themes/palette/add_palette.png" type="Texture" id=22] +[ext_resource path="res://src/Palette/PalettePanelContainer.tscn" type="PackedScene" id=21] [ext_resource path="res://assets/graphics/dark_themes/tools/zoom.png" type="Texture" id=23] -[ext_resource path="res://src/Palette/PaletteContainer.gd" type="Script" id=25] [ext_resource path="res://src/UI/BrushButton.tscn" type="PackedScene" id=26] [ext_resource path="res://src/UI/Dialogs/SplashDialog.tscn" type="PackedScene" id=27] [ext_resource path="res://src/UI/Dialogs/CreateNewImage.tscn" type="PackedScene" id=28] [ext_resource path="res://src/UI/Dialogs/ImportSprites.tscn" type="PackedScene" id=29] -[ext_resource path="res://assets/graphics/dark_themes/palette/remove_palette.png" type="Texture" id=30] [ext_resource path="res://src/UI/Dialogs/ScaleImage.tscn" type="PackedScene" id=31] [ext_resource path="res://src/UI/Dialogs/PreferencesDialog.tscn" type="PackedScene" id=32] [ext_resource path="res://src/UI/Dialogs/OutlineDialog.tscn" type="PackedScene" id=33] [ext_resource path="res://src/UI/Dialogs/AboutDialog.tscn" type="PackedScene" id=34] -[ext_resource path="res://src/Palette/EditPalettePopup.tscn" type="PackedScene" id=35] -[ext_resource path="res://src/Palette/NewPaletteDialog.tscn" type="PackedScene" id=36] -[ext_resource path="res://src/Palette/PaletteImportFileDialog.tscn" type="PackedScene" id=37] [ext_resource path="res://src/UI/Dialogs/RotateImage.tscn" type="PackedScene" id=38] [ext_resource path="res://src/UI/Dialogs/ExportDialog.tscn" type="PackedScene" id=39] [ext_resource path="res://src/Shaders/TransparentChecker.shader" type="Shader" id=42] @@ -540,157 +534,7 @@ custom_constants/autohide = 0 [node name="ColorAndToolOptions" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit" instance=ExtResource( 10 )] -[node name="PanelContainer" type="PanelContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit"] -margin_left = 15.0 -margin_top = 261.0 -margin_right = 315.0 -margin_bottom = 516.0 -rect_min_size = Vector2( 300, 0 ) -size_flags_horizontal = 4 -size_flags_vertical = 3 - -[node name="PaletteVBoxContainer" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer"] -margin_left = 4.5 -margin_top = 3.0 -margin_right = 295.5 -margin_bottom = 252.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 - -[node name="PalettesLabel" type="Label" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer"] -margin_right = 291.0 -margin_bottom = 15.0 -size_flags_horizontal = 3 -size_flags_vertical = 0 -text = "Palettes" -align = 1 - -[node name="CenterContainer" type="CenterContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer"] -margin_top = 19.0 -margin_right = 291.0 -margin_bottom = 51.0 - -[node name="PaletteButtons" type="HBoxContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer"] -margin_left = 40.0 -margin_right = 251.0 -margin_bottom = 32.0 - -[node name="AddPalette" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons" groups=[ -"UIButtons", -]] -margin_right = 32.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 32, 32 ) -hint_tooltip = "Add a new palette" -focus_mode = 0 -mouse_default_cursor_shape = 2 - -[node name="PopupMenu" type="PopupMenu" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/AddPalette"] -margin_right = 115.0 -margin_bottom = 54.0 -items = [ "New Empty Palette", null, 0, false, false, 0, 0, null, "", false, "Import Palette", null, 0, false, false, 1, 0, null, "", false ] -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="TextureRect" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/AddPalette"] -anchor_left = 0.5 -anchor_top = 0.5 -anchor_right = 0.5 -anchor_bottom = 0.5 -margin_left = -12.0 -margin_top = -12.0 -margin_right = 12.0 -margin_bottom = 12.0 -size_flags_horizontal = 0 -size_flags_vertical = 0 -texture = ExtResource( 22 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="EditPalette" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons" groups=[ -"UIButtons", -]] -margin_left = 36.0 -margin_right = 68.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 32, 32 ) -hint_tooltip = "Edit currently selected palette" -focus_mode = 0 -mouse_default_cursor_shape = 2 - -[node name="TextureRect" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/EditPalette"] -anchor_left = 0.5 -anchor_top = 0.5 -anchor_right = 0.5 -anchor_bottom = 0.5 -margin_left = -12.0 -margin_top = -12.0 -margin_right = 12.0 -margin_bottom = 12.0 -size_flags_horizontal = 0 -size_flags_vertical = 0 -texture = ExtResource( 21 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="RemovePalette" type="Button" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons" groups=[ -"UIButtons", -]] -margin_left = 72.0 -margin_right = 104.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 32, 32 ) -hint_tooltip = "Remove currently selected palette" -mouse_default_cursor_shape = 2 - -[node name="TextureRect" type="TextureRect" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/RemovePalette"] -anchor_left = 0.5 -anchor_top = 0.5 -anchor_right = 0.5 -anchor_bottom = 0.5 -margin_left = -12.0 -margin_top = -12.0 -margin_right = 12.0 -margin_bottom = 12.0 -size_flags_horizontal = 0 -size_flags_vertical = 0 -texture = ExtResource( 30 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="PaletteOptionButton" type="OptionButton" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons"] -margin_left = 108.0 -margin_right = 211.0 -margin_bottom = 32.0 -grow_horizontal = 0 -rect_min_size = Vector2( 103, 0 ) -hint_tooltip = "Choose a palette" -focus_mode = 0 -mouse_default_cursor_shape = 2 -clip_text = true - -[node name="ScrollPalette" type="ScrollContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer"] -margin_top = 55.0 -margin_right = 291.0 -margin_bottom = 249.0 -rect_min_size = Vector2( 0, 100 ) -size_flags_horizontal = 3 -size_flags_vertical = 3 - -[node name="CenterPalette" type="CenterContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette"] -margin_right = 291.0 -size_flags_horizontal = 3 - -[node name="PaletteContainer" type="GridContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette"] -margin_left = 145.0 -margin_right = 145.0 -size_flags_horizontal = 3 -columns = 10 -script = ExtResource( 25 ) +[node name="PalettePanelContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit" instance=ExtResource( 21 )] [node name="BrushesPopup" type="Popup" parent="."] margin_right = 226.0 @@ -828,13 +672,6 @@ margin_bottom = 60.0 window_title = "Error!" dialog_text = "This is an error message!" -[node name="EditPalettePopup" parent="." instance=ExtResource( 35 )] - -[node name="NewPaletteDialog" parent="." instance=ExtResource( 36 )] - -[node name="PaletteImportFileDialog" parent="." instance=ExtResource( 37 )] -filters = PoolStringArray( "*.json ; JavaScript Object Notation", "*.gpl ; Gimp Palette Library", "*.png; Portable Network Graphics" ) - [node name="HSVDialog" parent="." instance=ExtResource( 44 )] [node name="BackupConfirmation" type="ConfirmationDialog" parent="."] @@ -859,10 +696,6 @@ visible = false [connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" to="." method="_on_ViewportContainer_mouse_exited"] [connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_entered"] [connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_exited"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/AddPalette" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_AddPalette_pressed"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/EditPalette" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_edit_palette"] -[connection signal="pressed" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/RemovePalette" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_RemovePalette_pressed"] -[connection signal="item_selected" from="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/CenterContainer/PaletteButtons/PaletteOptionButton" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_PaletteOptionButton_item_selected"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/PixelBrushButton" to="." method="_on_Brush_Selected"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton" to="." method="_on_Brush_Selected"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/FilledCircleBrushButton" to="." method="_on_Brush_Selected"] @@ -887,10 +720,6 @@ visible = false [connection signal="custom_action" from="QuitAndSaveDialog" to="." method="_on_QuitAndSaveDialog_custom_action"] [connection signal="popup_hide" from="QuitAndSaveDialog" to="." method="_can_draw_true"] [connection signal="popup_hide" from="ErrorDialog" to="." method="_can_draw_true"] -[connection signal="confirmed" from="NewPaletteDialog" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_new_palette_confirmed"] -[connection signal="popup_hide" from="NewPaletteDialog" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_NewPaletteDialog_popup_hide"] -[connection signal="file_selected" from="PaletteImportFileDialog" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_palette_import_file_selected"] -[connection signal="popup_hide" from="PaletteImportFileDialog" to="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit/PanelContainer/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_NewPaletteDialog_popup_hide"] [connection signal="popup_hide" from="HSVDialog" to="." method="_can_draw_true"] [connection signal="popup_hide" from="BackupConfirmation" to="." method="_can_draw_true"] diff --git a/src/Palette/PaletteImportFileDialog.tscn b/src/Palette/PaletteImportFileDialog.tscn index 584c9c7e8..dadc2743b 100644 --- a/src/Palette/PaletteImportFileDialog.tscn +++ b/src/Palette/PaletteImportFileDialog.tscn @@ -10,6 +10,6 @@ window_title = "Open a File" resizable = true mode = 0 access = 2 -filters = PoolStringArray( "*.json ; JavaScript Object Notation" ) +filters = PoolStringArray( "*.json ; JavaScript Object Notation", "*.gpl ; Gimp Palette Library", "*.png; Portable Network Graphics" ) current_dir = "C:/Users" current_path = "C:/Users/" diff --git a/src/Palette/PalettePanelContainer.tscn b/src/Palette/PalettePanelContainer.tscn new file mode 100644 index 000000000..66f9b8b07 --- /dev/null +++ b/src/Palette/PalettePanelContainer.tscn @@ -0,0 +1,191 @@ +[gd_scene load_steps=8 format=2] + +[ext_resource path="res://src/Palette/PaletteContainer.gd" type="Script" id=1] +[ext_resource path="res://assets/graphics/dark_themes/palette/edit_palette.png" type="Texture" id=2] +[ext_resource path="res://assets/graphics/dark_themes/palette/add_palette.png" type="Texture" id=3] +[ext_resource path="res://assets/graphics/dark_themes/palette/remove_palette.png" type="Texture" id=4] +[ext_resource path="res://src/Palette/PaletteImportFileDialog.tscn" type="PackedScene" id=5] +[ext_resource path="res://src/Palette/NewPaletteDialog.tscn" type="PackedScene" id=6] +[ext_resource path="res://src/Palette/EditPalettePopup.tscn" type="PackedScene" id=7] + +[node name="PalettePanelContainer" type="PanelContainer"] +margin_left = 15.0 +margin_top = 261.0 +margin_right = 315.0 +margin_bottom = 516.0 +rect_min_size = Vector2( 300, 0 ) +size_flags_horizontal = 4 +size_flags_vertical = 3 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="PaletteVBoxContainer" type="VBoxContainer" parent="."] +margin_left = 7.0 +margin_top = 7.0 +margin_right = 293.0 +margin_bottom = 248.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 + +[node name="PalettesLabel" type="Label" parent="PaletteVBoxContainer"] +margin_right = 286.0 +margin_bottom = 14.0 +size_flags_horizontal = 3 +size_flags_vertical = 0 +text = "Palettes" +align = 1 + +[node name="CenterContainer" type="CenterContainer" parent="PaletteVBoxContainer"] +margin_top = 18.0 +margin_right = 286.0 +margin_bottom = 50.0 + +[node name="PaletteButtons" type="HBoxContainer" parent="PaletteVBoxContainer/CenterContainer"] +margin_left = 37.0 +margin_right = 248.0 +margin_bottom = 32.0 + +[node name="AddPalette" type="Button" parent="PaletteVBoxContainer/CenterContainer/PaletteButtons" groups=[ +"UIButtons", +]] +margin_right = 32.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 32, 32 ) +hint_tooltip = "Add a new palette" +mouse_default_cursor_shape = 2 + +[node name="PopupMenu" type="PopupMenu" parent="PaletteVBoxContainer/CenterContainer/PaletteButtons/AddPalette"] +margin_right = 115.0 +margin_bottom = 54.0 +items = [ "New Empty Palette", null, 0, false, false, 0, 0, null, "", false, "Import Palette", null, 0, false, false, 1, 0, null, "", false ] +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="TextureRect" type="TextureRect" parent="PaletteVBoxContainer/CenterContainer/PaletteButtons/AddPalette"] +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +margin_left = -12.0 +margin_top = -12.0 +margin_right = 12.0 +margin_bottom = 12.0 +size_flags_horizontal = 0 +size_flags_vertical = 0 +texture = ExtResource( 3 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="EditPalette" type="Button" parent="PaletteVBoxContainer/CenterContainer/PaletteButtons" groups=[ +"UIButtons", +]] +margin_left = 36.0 +margin_right = 68.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 32, 32 ) +hint_tooltip = "Edit currently selected palette" +mouse_default_cursor_shape = 2 + +[node name="TextureRect" type="TextureRect" parent="PaletteVBoxContainer/CenterContainer/PaletteButtons/EditPalette"] +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +margin_left = -12.0 +margin_top = -12.0 +margin_right = 12.0 +margin_bottom = 12.0 +size_flags_horizontal = 0 +size_flags_vertical = 0 +texture = ExtResource( 2 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="RemovePalette" type="Button" parent="PaletteVBoxContainer/CenterContainer/PaletteButtons" groups=[ +"UIButtons", +]] +margin_left = 72.0 +margin_right = 104.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 32, 32 ) +hint_tooltip = "Remove currently selected palette" +mouse_default_cursor_shape = 2 + +[node name="TextureRect" type="TextureRect" parent="PaletteVBoxContainer/CenterContainer/PaletteButtons/RemovePalette"] +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +margin_left = -12.0 +margin_top = -12.0 +margin_right = 12.0 +margin_bottom = 12.0 +size_flags_horizontal = 0 +size_flags_vertical = 0 +texture = ExtResource( 4 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="PaletteOptionButton" type="OptionButton" parent="PaletteVBoxContainer/CenterContainer/PaletteButtons"] +margin_left = 108.0 +margin_right = 211.0 +margin_bottom = 32.0 +grow_horizontal = 0 +rect_min_size = Vector2( 103, 0 ) +hint_tooltip = "Choose a palette" +mouse_default_cursor_shape = 2 +clip_text = true + +[node name="ScrollPalette" type="ScrollContainer" parent="PaletteVBoxContainer"] +margin_top = 54.0 +margin_right = 286.0 +margin_bottom = 241.0 +rect_min_size = Vector2( 0, 100 ) +size_flags_horizontal = 3 +size_flags_vertical = 3 + +[node name="CenterPalette" type="CenterContainer" parent="PaletteVBoxContainer/ScrollPalette"] +margin_right = 286.0 +size_flags_horizontal = 3 + +[node name="PaletteContainer" type="GridContainer" parent="PaletteVBoxContainer/ScrollPalette/CenterPalette"] +margin_left = 143.0 +margin_right = 143.0 +size_flags_horizontal = 3 +columns = 10 +script = ExtResource( 1 ) + +[node name="NewPaletteDialog" parent="." instance=ExtResource( 6 )] +margin_left = 7.0 +margin_top = 7.0 +margin_right = 380.0 +margin_bottom = 77.0 +size_flags_horizontal = 0 +size_flags_vertical = 0 + +[node name="PaletteImportFileDialog" parent="." instance=ExtResource( 5 )] +anchor_right = 0.0 +anchor_bottom = 0.0 +margin_left = 7.0 +margin_top = 7.0 +margin_right = 507.0 +margin_bottom = 307.0 + +[node name="EditPalettePopup" parent="." instance=ExtResource( 7 )] +margin_left = 7.0 +margin_top = 7.0 +margin_right = 607.0 +margin_bottom = 577.0 +[connection signal="pressed" from="PaletteVBoxContainer/CenterContainer/PaletteButtons/AddPalette" to="PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_AddPalette_pressed"] +[connection signal="pressed" from="PaletteVBoxContainer/CenterContainer/PaletteButtons/EditPalette" to="PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_edit_palette"] +[connection signal="pressed" from="PaletteVBoxContainer/CenterContainer/PaletteButtons/RemovePalette" to="PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_RemovePalette_pressed"] +[connection signal="item_selected" from="PaletteVBoxContainer/CenterContainer/PaletteButtons/PaletteOptionButton" to="PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_PaletteOptionButton_item_selected"] +[connection signal="confirmed" from="NewPaletteDialog" to="PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_new_palette_confirmed"] +[connection signal="popup_hide" from="NewPaletteDialog" to="PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_NewPaletteDialog_popup_hide"] +[connection signal="file_selected" from="PaletteImportFileDialog" to="PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_palette_import_file_selected"] +[connection signal="popup_hide" from="PaletteImportFileDialog" to="PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_NewPaletteDialog_popup_hide"] From 55527501d0102ee5d93d9eb703d937e8ba4561e4 Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Thu, 21 May 2020 20:13:19 +0300 Subject: [PATCH 08/14] Created TopMenuContainer.tscn and ViewportContainer.gd --- src/Canvas.tscn | 1 - src/Main.gd | 8 --- src/Main.tscn | 118 +++-------------------------------- src/UI/TopMenuContainer.tscn | 109 ++++++++++++++++++++++++++++++++ src/UI/ViewportContainer.gd | 9 +++ 5 files changed, 128 insertions(+), 117 deletions(-) create mode 100644 src/UI/TopMenuContainer.tscn create mode 100644 src/UI/ViewportContainer.gd diff --git a/src/Canvas.tscn b/src/Canvas.tscn index 6dcf80ea7..4ccfc33ef 100644 --- a/src/Canvas.tscn +++ b/src/Canvas.tscn @@ -2,6 +2,5 @@ [ext_resource path="res://src/Canvas.gd" type="Script" id=1] - [node name="Canvas" type="Node2D"] script = ExtResource( 1 ) diff --git a/src/Main.gd b/src/Main.gd index 64282f6ac..8c668af86 100644 --- a/src/Main.gd +++ b/src/Main.gd @@ -522,14 +522,6 @@ func _on_ImportSprites_popup_hide() -> void: _can_draw_true() -func _on_ViewportContainer_mouse_entered() -> void: - Global.has_focus = true - - -func _on_ViewportContainer_mouse_exited() -> void: - Global.has_focus = false - - func _can_draw_true() -> void: Global.dialog_open(false) diff --git a/src/Main.tscn b/src/Main.tscn index db1ce2592..fdec6b9e2 100644 --- a/src/Main.tscn +++ b/src/Main.tscn @@ -1,8 +1,8 @@ -[gd_scene load_steps=41 format=2] +[gd_scene load_steps=42 format=2] [ext_resource path="res://assets/themes/dark/theme.tres" type="Theme" id=1] [ext_resource path="res://src/Main.gd" type="Script" id=2] -[ext_resource path="res://assets/themes/dark/top_menu_style.tres" type="StyleBox" id=3] +[ext_resource path="res://src/UI/TopMenuContainer.tscn" type="PackedScene" id=3] [ext_resource path="res://assets/graphics/dark_themes/tools/rectselect.png" type="Texture" id=4] [ext_resource path="res://assets/graphics/dark_themes/tools/eraser_r.png" type="Texture" id=5] [ext_resource path="res://assets/graphics/dark_themes/tools/pencil_l.png" type="Texture" id=6] @@ -21,6 +21,7 @@ [ext_resource path="res://src/UI/SecondViewport.gd" type="Script" id=19] [ext_resource path="res://src/UI/Timeline/AnimationTimeline.tscn" type="PackedScene" id=20] [ext_resource path="res://src/Palette/PalettePanelContainer.tscn" type="PackedScene" id=21] +[ext_resource path="res://src/UI/ViewportContainer.gd" type="Script" id=22] [ext_resource path="res://assets/graphics/dark_themes/tools/zoom.png" type="Texture" id=23] [ext_resource path="res://src/UI/BrushButton.tscn" type="PackedScene" id=26] [ext_resource path="res://src/UI/Dialogs/SplashDialog.tscn" type="PackedScene" id=27] @@ -91,108 +92,7 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="TopMenuContainer" type="Panel" parent="MenuAndUI"] -margin_right = 1280.0 -margin_bottom = 28.0 -rect_min_size = Vector2( 0, 28 ) -custom_styles/panel = ExtResource( 3 ) - -[node name="MenuItems" type="HBoxContainer" parent="MenuAndUI/TopMenuContainer"] -margin_left = 2.0 -margin_top = 4.0 -margin_right = 1010.0 - -[node name="FileMenu" type="MenuButton" parent="MenuAndUI/TopMenuContainer/MenuItems"] -margin_right = 29.0 -margin_bottom = 21.0 -mouse_default_cursor_shape = 2 -text = "File" -switch_on_hover = true - -[node name="EditMenu" type="MenuButton" parent="MenuAndUI/TopMenuContainer/MenuItems"] -margin_left = 33.0 -margin_right = 64.0 -margin_bottom = 21.0 -mouse_default_cursor_shape = 2 -text = "Edit" -switch_on_hover = true - -[node name="ViewMenu" type="MenuButton" parent="MenuAndUI/TopMenuContainer/MenuItems"] -margin_left = 68.0 -margin_right = 104.0 -margin_bottom = 21.0 -mouse_default_cursor_shape = 2 -text = "View" -switch_on_hover = true - -[node name="ImageMenu" type="MenuButton" parent="MenuAndUI/TopMenuContainer/MenuItems"] -margin_left = 108.0 -margin_right = 152.0 -margin_bottom = 21.0 -mouse_default_cursor_shape = 2 -text = "Image" -switch_on_hover = true - -[node name="HelpMenu" type="MenuButton" parent="MenuAndUI/TopMenuContainer/MenuItems"] -margin_left = 156.0 -margin_right = 191.0 -margin_bottom = 21.0 -mouse_default_cursor_shape = 2 -text = "Help" -switch_on_hover = true - -[node name="TopLabels" type="HBoxContainer" parent="MenuAndUI/TopMenuContainer"] -anchor_left = 0.5 -anchor_right = 0.5 -anchor_bottom = 1.0 -margin_left = -65.5 -margin_right = 65.5 -custom_constants/separation = 20 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="ZoomLevel" type="Label" parent="MenuAndUI/TopMenuContainer/TopLabels"] -margin_top = 6.0 -margin_right = 60.0 -margin_bottom = 21.0 -rect_min_size = Vector2( 60, 0 ) -text = "781 %" -align = 2 - -[node name="CursorPosition" type="Label" parent="MenuAndUI/TopMenuContainer/TopLabels"] -margin_left = 80.0 -margin_top = 6.0 -margin_right = 120.0 -margin_bottom = 21.0 -text = "[64×64]" -align = 2 - -[node name="HBoxContainer" type="HBoxContainer" parent="MenuAndUI/TopMenuContainer"] -anchor_left = 1.0 -anchor_top = 0.5 -anchor_right = 1.0 -anchor_bottom = 0.5 -margin_left = -330.0 -margin_top = -14.0 -margin_bottom = 14.0 -grow_horizontal = 2 -size_flags_vertical = 0 -alignment = 1 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="CurrentFrame" type="Label" parent="MenuAndUI/TopMenuContainer/HBoxContainer"] -margin_left = 113.0 -margin_top = 6.0 -margin_right = 216.0 -margin_bottom = 21.0 -text = "Current Frame: 1/1" -valign = 1 -__meta__ = { -"_edit_use_anchors_": false -} +[node name="TopMenuContainer" parent="MenuAndUI" instance=ExtResource( 3 )] [node name="UI" type="HBoxContainer" parent="MenuAndUI"] margin_top = 28.0 @@ -431,6 +331,7 @@ focus_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 3 stretch = true +script = ExtResource( 22 ) [node name="Viewport" type="Viewport" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer"] size = Vector2( 880, 470 ) @@ -467,6 +368,7 @@ margin_right = 902.0 margin_bottom = 470.0 size_flags_vertical = 3 stretch = true +script = ExtResource( 22 ) [node name="Viewport" type="Viewport" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2"] size = Vector2( 0, 470 ) @@ -692,10 +594,10 @@ visible = false [connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" method="_on_HorizontalRuler_mouse_entered"] [connection signal="pressed" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" method="_on_HorizontalRuler_pressed"] [connection signal="pressed" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/VerticalRuler" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/VerticalRuler" method="_on_VerticalRuler_pressed"] -[connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" to="." method="_on_ViewportContainer_mouse_entered"] -[connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" to="." method="_on_ViewportContainer_mouse_exited"] -[connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_entered"] -[connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="." method="_on_ViewportContainer_mouse_exited"] +[connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" method="_on_ViewportContainer_mouse_entered"] +[connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" method="_on_ViewportContainer_mouse_exited"] +[connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" method="_on_ViewportContainer_mouse_entered"] +[connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" method="_on_ViewportContainer_mouse_exited"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/PixelBrushButton" to="." method="_on_Brush_Selected"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton" to="." method="_on_Brush_Selected"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/FilledCircleBrushButton" to="." method="_on_Brush_Selected"] diff --git a/src/UI/TopMenuContainer.tscn b/src/UI/TopMenuContainer.tscn new file mode 100644 index 000000000..63b7f8b31 --- /dev/null +++ b/src/UI/TopMenuContainer.tscn @@ -0,0 +1,109 @@ +[gd_scene load_steps=2 format=2] + +[ext_resource path="res://assets/themes/dark/top_menu_style.tres" type="StyleBox" id=1] + +[node name="TopMenuContainer" type="Panel"] +margin_right = 1280.0 +margin_bottom = 28.0 +rect_min_size = Vector2( 0, 28 ) +custom_styles/panel = ExtResource( 1 ) + +[node name="MenuItems" type="HBoxContainer" parent="."] +margin_left = 2.0 +margin_top = 4.0 +margin_right = 1010.0 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="FileMenu" type="MenuButton" parent="MenuItems"] +margin_right = 29.0 +margin_bottom = 21.0 +mouse_default_cursor_shape = 2 +text = "File" +switch_on_hover = true + +[node name="EditMenu" type="MenuButton" parent="MenuItems"] +margin_left = 33.0 +margin_right = 64.0 +margin_bottom = 21.0 +mouse_default_cursor_shape = 2 +text = "Edit" +switch_on_hover = true + +[node name="ViewMenu" type="MenuButton" parent="MenuItems"] +margin_left = 68.0 +margin_right = 104.0 +margin_bottom = 21.0 +mouse_default_cursor_shape = 2 +text = "View" +switch_on_hover = true + +[node name="ImageMenu" type="MenuButton" parent="MenuItems"] +margin_left = 108.0 +margin_right = 152.0 +margin_bottom = 21.0 +mouse_default_cursor_shape = 2 +text = "Image" +switch_on_hover = true + +[node name="HelpMenu" type="MenuButton" parent="MenuItems"] +margin_left = 156.0 +margin_right = 191.0 +margin_bottom = 21.0 +mouse_default_cursor_shape = 2 +text = "Help" +switch_on_hover = true + +[node name="TopLabels" type="HBoxContainer" parent="."] +anchor_left = 0.5 +anchor_right = 0.5 +anchor_bottom = 1.0 +margin_left = -65.5 +margin_right = 65.5 +custom_constants/separation = 20 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="ZoomLevel" type="Label" parent="TopLabels"] +margin_top = 6.0 +margin_right = 60.0 +margin_bottom = 21.0 +rect_min_size = Vector2( 60, 0 ) +text = "781 %" +align = 2 + +[node name="CursorPosition" type="Label" parent="TopLabels"] +margin_left = 80.0 +margin_top = 6.0 +margin_right = 120.0 +margin_bottom = 21.0 +text = "[64×64]" +align = 2 + +[node name="HBoxContainer" type="HBoxContainer" parent="."] +anchor_left = 1.0 +anchor_top = 0.5 +anchor_right = 1.0 +anchor_bottom = 0.5 +margin_left = -330.0 +margin_top = -14.0 +margin_bottom = 14.0 +grow_horizontal = 2 +size_flags_vertical = 0 +alignment = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="CurrentFrame" type="Label" parent="HBoxContainer"] +margin_left = 113.0 +margin_top = 6.0 +margin_right = 216.0 +margin_bottom = 21.0 +text = "Current Frame: 1/1" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} diff --git a/src/UI/ViewportContainer.gd b/src/UI/ViewportContainer.gd new file mode 100644 index 000000000..ab92d48fc --- /dev/null +++ b/src/UI/ViewportContainer.gd @@ -0,0 +1,9 @@ +extends ViewportContainer + + +func _on_ViewportContainer_mouse_entered() -> void: + Global.has_focus = true + + +func _on_ViewportContainer_mouse_exited() -> void: + Global.has_focus = false From 0629449bdf238fab5d9aa02b21b87c25e7a40aed Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Thu, 21 May 2020 20:21:01 +0300 Subject: [PATCH 09/14] Created UI.tscn All of the main UI elements are now in UI.tscn instead of Main.tscn --- src/Main.tscn | 380 +-------------------------------------------- src/UI/UI.tscn | 406 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 409 insertions(+), 377 deletions(-) create mode 100644 src/UI/UI.tscn diff --git a/src/Main.tscn b/src/Main.tscn index fdec6b9e2..2179776a8 100644 --- a/src/Main.tscn +++ b/src/Main.tscn @@ -1,28 +1,11 @@ -[gd_scene load_steps=42 format=2] +[gd_scene load_steps=22 format=2] [ext_resource path="res://assets/themes/dark/theme.tres" type="Theme" id=1] [ext_resource path="res://src/Main.gd" type="Script" id=2] [ext_resource path="res://src/UI/TopMenuContainer.tscn" type="PackedScene" id=3] -[ext_resource path="res://assets/graphics/dark_themes/tools/rectselect.png" type="Texture" id=4] -[ext_resource path="res://assets/graphics/dark_themes/tools/eraser_r.png" type="Texture" id=5] -[ext_resource path="res://assets/graphics/dark_themes/tools/pencil_l.png" type="Texture" id=6] -[ext_resource path="res://assets/graphics/dark_themes/tools/lightendarken.png" type="Texture" id=7] -[ext_resource path="res://assets/graphics/dark_themes/tools/colorpicker.png" type="Texture" id=8] -[ext_resource path="res://assets/graphics/dark_themes/tools/bucket.png" type="Texture" id=9] -[ext_resource path="res://src/UI/ColorAndToolOptions.tscn" type="PackedScene" id=10] +[ext_resource path="res://src/UI/UI.tscn" type="PackedScene" id=4] [ext_resource path="res://src/UI/Dialogs/SaveSprite.tscn" type="PackedScene" id=11] [ext_resource path="res://src/UI/Dialogs/OpenSprite.tscn" type="PackedScene" id=12] -[ext_resource path="res://assets/themes/dark/ruler_style.tres" type="StyleBox" id=13] -[ext_resource path="res://src/UI/Rulers/HorizontalRuler.gd" type="Script" id=14] -[ext_resource path="res://src/UI/Rulers/VerticalRuler.gd" type="Script" id=15] -[ext_resource path="res://src/Canvas.tscn" type="PackedScene" id=16] -[ext_resource path="res://src/CameraMovement.gd" type="Script" id=17] -[ext_resource path="res://src/SelectionRectangle.gd" type="Script" id=18] -[ext_resource path="res://src/UI/SecondViewport.gd" type="Script" id=19] -[ext_resource path="res://src/UI/Timeline/AnimationTimeline.tscn" type="PackedScene" id=20] -[ext_resource path="res://src/Palette/PalettePanelContainer.tscn" type="PackedScene" id=21] -[ext_resource path="res://src/UI/ViewportContainer.gd" type="Script" id=22] -[ext_resource path="res://assets/graphics/dark_themes/tools/zoom.png" type="Texture" id=23] [ext_resource path="res://src/UI/BrushButton.tscn" type="PackedScene" id=26] [ext_resource path="res://src/UI/Dialogs/SplashDialog.tscn" type="PackedScene" id=27] [ext_resource path="res://src/UI/Dialogs/CreateNewImage.tscn" type="PackedScene" id=28] @@ -33,15 +16,7 @@ [ext_resource path="res://src/UI/Dialogs/AboutDialog.tscn" type="PackedScene" id=34] [ext_resource path="res://src/UI/Dialogs/RotateImage.tscn" type="PackedScene" id=38] [ext_resource path="res://src/UI/Dialogs/ExportDialog.tscn" type="PackedScene" id=39] -[ext_resource path="res://src/Shaders/TransparentChecker.shader" type="Shader" id=42] [ext_resource path="res://src/UI/Dialogs/HSVDialog.tscn" type="PackedScene" id=44] -[ext_resource path="res://src/UI/TransparentChecker.gd" type="Script" id=45] - -[sub_resource type="ShaderMaterial" id=1] -shader = ExtResource( 42 ) -shader_param/size = 10.0 -shader_param/color1 = Color( 0.7, 0.7, 0.7, 1 ) -shader_param/color2 = Color( 1, 1, 1, 1 ) [sub_resource type="Image" id=6] data = { @@ -94,349 +69,7 @@ __meta__ = { [node name="TopMenuContainer" parent="MenuAndUI" instance=ExtResource( 3 )] -[node name="UI" type="HBoxContainer" parent="MenuAndUI"] -margin_top = 28.0 -margin_right = 1280.0 -margin_bottom = 720.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 -custom_constants/separation = 0 - -[node name="ToolPanel" type="Panel" parent="MenuAndUI/UI"] -margin_right = 48.0 -margin_bottom = 692.0 -rect_min_size = Vector2( 48, 0 ) -size_flags_vertical = 3 - -[node name="PanelContainer" type="PanelContainer" parent="MenuAndUI/UI/ToolPanel"] -anchor_left = 0.5 -anchor_right = 0.5 -margin_left = -20.5 -margin_right = 20.5 -margin_bottom = 254.0 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Tools" type="VBoxContainer" parent="MenuAndUI/UI/ToolPanel/PanelContainer"] -margin_left = 4.5 -margin_top = 3.0 -margin_right = 36.5 -margin_bottom = 251.0 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="RectSelect" type="Button" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools" groups=[ -"UIButtons", -]] -margin_right = 32.0 -margin_bottom = 32.0 -rect_min_size = Vector2( 32, 32 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -button_mask = 3 - -[node name="TextureRect" type="TextureRect" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools/RectSelect"] -margin_right = 32.0 -margin_bottom = 32.0 -texture = ExtResource( 4 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Zoom" type="Button" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools" groups=[ -"UIButtons", -]] -margin_top = 36.0 -margin_right = 32.0 -margin_bottom = 68.0 -rect_min_size = Vector2( 32, 32 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -button_mask = 3 - -[node name="TextureRect" type="TextureRect" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools/Zoom"] -margin_right = 32.0 -margin_bottom = 32.0 -texture = ExtResource( 23 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="ColorPicker" type="Button" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools" groups=[ -"UIButtons", -]] -margin_top = 72.0 -margin_right = 32.0 -margin_bottom = 104.0 -rect_min_size = Vector2( 32, 32 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -button_mask = 3 - -[node name="TextureRect" type="TextureRect" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools/ColorPicker"] -margin_right = 32.0 -margin_bottom = 32.0 -texture = ExtResource( 8 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Pencil" type="Button" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools" groups=[ -"UIButtons", -]] -margin_top = 108.0 -margin_right = 32.0 -margin_bottom = 140.0 -rect_min_size = Vector2( 32, 32 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -button_mask = 3 - -[node name="TextureRect" type="TextureRect" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools/Pencil"] -margin_right = 32.0 -margin_bottom = 32.0 -texture = ExtResource( 6 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Eraser" type="Button" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools" groups=[ -"UIButtons", -]] -margin_top = 144.0 -margin_right = 32.0 -margin_bottom = 176.0 -rect_min_size = Vector2( 32, 32 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -button_mask = 3 - -[node name="TextureRect" type="TextureRect" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools/Eraser"] -margin_right = 32.0 -margin_bottom = 32.0 -texture = ExtResource( 5 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Bucket" type="Button" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools" groups=[ -"UIButtons", -]] -margin_top = 180.0 -margin_right = 32.0 -margin_bottom = 212.0 -rect_min_size = Vector2( 32, 32 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -button_mask = 3 - -[node name="TextureRect" type="TextureRect" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools/Bucket"] -margin_right = 32.0 -margin_bottom = 32.0 -texture = ExtResource( 9 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="LightenDarken" type="Button" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools" groups=[ -"UIButtons", -]] -margin_top = 216.0 -margin_right = 32.0 -margin_bottom = 248.0 -rect_min_size = Vector2( 32, 32 ) -focus_mode = 0 -mouse_default_cursor_shape = 2 -button_mask = 3 - -[node name="TextureRect" type="TextureRect" parent="MenuAndUI/UI/ToolPanel/PanelContainer/Tools/LightenDarken"] -margin_right = 32.0 -margin_bottom = 32.0 -texture = ExtResource( 7 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="CanvasAndTimeline" type="VSplitContainer" parent="MenuAndUI/UI"] -margin_left = 48.0 -margin_right = 950.0 -margin_bottom = 692.0 -size_flags_horizontal = 3 -custom_constants/autohide = 0 - -[node name="HViewportContainer" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline"] -margin_right = 902.0 -margin_bottom = 486.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 - -[node name="ViewportAndRulers" type="VBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer"] -margin_right = 902.0 -margin_bottom = 486.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 -custom_constants/separation = 0 - -[node name="HorizontalRuler" type="Button" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers"] -margin_right = 902.0 -margin_bottom = 16.0 -rect_min_size = Vector2( 0, 16 ) -focus_mode = 0 -mouse_default_cursor_shape = 14 -custom_styles/hover = ExtResource( 13 ) -custom_styles/pressed = ExtResource( 13 ) -custom_styles/focus = ExtResource( 13 ) -custom_styles/normal = ExtResource( 13 ) -action_mode = 0 -enabled_focus_mode = 0 -script = ExtResource( 14 ) - -[node name="HSplitContainer" type="HSplitContainer" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers"] -margin_top = 16.0 -margin_right = 902.0 -margin_bottom = 486.0 -size_flags_vertical = 3 -custom_constants/autohide = 0 - -[node name="ViewportandVerticalRuler" type="HBoxContainer" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer"] -margin_right = 896.0 -margin_bottom = 470.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 -custom_constants/separation = 0 - -[node name="VerticalRuler" type="Button" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler"] -margin_right = 16.0 -margin_bottom = 470.0 -rect_min_size = Vector2( 16, 0 ) -focus_mode = 0 -mouse_default_cursor_shape = 15 -size_flags_horizontal = 0 -size_flags_vertical = 3 -custom_styles/hover = ExtResource( 13 ) -custom_styles/pressed = ExtResource( 13 ) -custom_styles/focus = ExtResource( 13 ) -custom_styles/normal = ExtResource( 13 ) -action_mode = 0 -enabled_focus_mode = 0 -script = ExtResource( 15 ) - -[node name="ViewportContainer" type="ViewportContainer" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler"] -margin_left = 16.0 -margin_right = 896.0 -margin_bottom = 470.0 -focus_mode = 2 -size_flags_horizontal = 3 -size_flags_vertical = 3 -stretch = true -script = ExtResource( 22 ) - -[node name="Viewport" type="Viewport" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer"] -size = Vector2( 880, 470 ) -handle_input_locally = false -usage = 0 -render_target_update_mode = 3 - -[node name="TransparentChecker" type="ColorRect" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer/Viewport"] -material = SubResource( 1 ) -margin_right = 40.0 -margin_bottom = 40.0 -mouse_filter = 2 -script = ExtResource( 45 ) - -[node name="Canvas" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer/Viewport" instance=ExtResource( 16 )] - -[node name="Camera2D" type="Camera2D" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer/Viewport"] -current = true -zoom = Vector2( 0.15, 0.15 ) -script = ExtResource( 17 ) - -[node name="SelectionRectangle" type="Polygon2D" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer/Viewport"] -visible = false -z_index = 1 -color = Color( 0.0823529, 0.694118, 0.623529, 0.592157 ) -invert_enable = true -invert_border = 0.5 -polygon = PoolVector2Array( 0, 0, 0, 0, 0, 0, 0, 0 ) -script = ExtResource( 18 ) - -[node name="ViewportContainer2" type="ViewportContainer" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer"] -margin_left = 902.0 -margin_right = 902.0 -margin_bottom = 470.0 -size_flags_vertical = 3 -stretch = true -script = ExtResource( 22 ) - -[node name="Viewport" type="Viewport" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2"] -size = Vector2( 0, 470 ) -handle_input_locally = false -render_target_update_mode = 3 -script = ExtResource( 19 ) - -[node name="Camera2D2" type="Camera2D" parent="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2/Viewport"] -current = true -zoom = Vector2( 0.15, 0.15 ) -script = ExtResource( 17 ) - -[node name="AnimationTimeline" parent="MenuAndUI/UI/CanvasAndTimeline" instance=ExtResource( 20 )] -margin_top = 492.0 -margin_bottom = 692.0 - -[node name="RightPanel" type="Panel" parent="MenuAndUI/UI"] -margin_left = 950.0 -margin_right = 1280.0 -margin_bottom = 692.0 -rect_min_size = Vector2( 330, 0 ) - -[node name="PreviewAndPalettes" type="VBoxContainer" parent="MenuAndUI/UI/RightPanel"] -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_top = 16.0 -margin_right = 3.05176e-05 -margin_bottom = 6.10352e-05 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="PanelContainer" type="PanelContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes"] -margin_left = 10.0 -margin_right = 319.0 -margin_bottom = 156.0 -size_flags_horizontal = 4 - -[node name="CanvasPreview" type="ViewportContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/PanelContainer"] -margin_left = 4.5 -margin_top = 3.0 -margin_right = 304.5 -margin_bottom = 153.0 -rect_min_size = Vector2( 0, 150 ) - -[node name="Viewport" type="Viewport" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/PanelContainer/CanvasPreview"] -size = Vector2( 300, 150 ) -transparent_bg = true -handle_input_locally = false -render_target_update_mode = 3 -script = ExtResource( 19 ) - -[node name="CameraPreview" type="Camera2D" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/PanelContainer/CanvasPreview/Viewport"] -offset = Vector2( 32, 32 ) -current = true -zoom = Vector2( 0.15, 0.15 ) -script = ExtResource( 17 ) - -[node name="ToolAndPaletteVSplit" type="VSplitContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes"] -margin_top = 160.0 -margin_right = 330.0 -margin_bottom = 676.0 -size_flags_vertical = 3 -custom_constants/autohide = 0 - -[node name="ColorAndToolOptions" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit" instance=ExtResource( 10 )] - -[node name="PalettePanelContainer" parent="MenuAndUI/UI/RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit" instance=ExtResource( 21 )] +[node name="UI" parent="MenuAndUI" instance=ExtResource( 4 )] [node name="BrushesPopup" type="Popup" parent="."] margin_right = 226.0 @@ -591,13 +224,6 @@ visible = false visible = false [node name="ModulateTween" type="Tween" parent="."] -[connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" method="_on_HorizontalRuler_mouse_entered"] -[connection signal="pressed" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" method="_on_HorizontalRuler_pressed"] -[connection signal="pressed" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/VerticalRuler" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/VerticalRuler" method="_on_VerticalRuler_pressed"] -[connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" method="_on_ViewportContainer_mouse_entered"] -[connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" method="_on_ViewportContainer_mouse_exited"] -[connection signal="mouse_entered" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" method="_on_ViewportContainer_mouse_entered"] -[connection signal="mouse_exited" from="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="MenuAndUI/UI/CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" method="_on_ViewportContainer_mouse_exited"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/PixelBrushButton" to="." method="_on_Brush_Selected"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton" to="." method="_on_Brush_Selected"] [connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/FilledCircleBrushButton" to="." method="_on_Brush_Selected"] diff --git a/src/UI/UI.tscn b/src/UI/UI.tscn new file mode 100644 index 000000000..8786abd48 --- /dev/null +++ b/src/UI/UI.tscn @@ -0,0 +1,406 @@ +[gd_scene load_steps=26 format=2] + +[ext_resource path="res://src/Canvas.gd" type="Script" id=1] +[ext_resource path="res://src/UI/SecondViewport.gd" type="Script" id=2] +[ext_resource path="res://src/UI/Timeline/AnimationTimeline.gd" type="Script" id=3] +[ext_resource path="res://src/UI/Rulers/VerticalRuler.gd" type="Script" id=4] +[ext_resource path="res://src/UI/ColorAndToolOptions.gd" type="Script" id=5] +[ext_resource path="res://src/UI/Rulers/HorizontalRuler.gd" type="Script" id=6] +[ext_resource path="res://src/CameraMovement.gd" type="Script" id=7] +[ext_resource path="res://src/SelectionRectangle.gd" type="Script" id=8] +[ext_resource path="res://assets/themes/dark/ruler_style.tres" type="StyleBox" id=9] +[ext_resource path="res://assets/graphics/dark_themes/tools/bucket.png" type="Texture" id=10] +[ext_resource path="res://assets/graphics/dark_themes/tools/colorpicker.png" type="Texture" id=11] +[ext_resource path="res://assets/graphics/dark_themes/tools/rectselect.png" type="Texture" id=12] +[ext_resource path="res://assets/graphics/dark_themes/tools/eraser_r.png" type="Texture" id=13] +[ext_resource path="res://assets/graphics/dark_themes/tools/pencil_l.png" type="Texture" id=14] +[ext_resource path="res://assets/graphics/dark_themes/tools/lightendarken.png" type="Texture" id=15] +[ext_resource path="res://src/Shaders/TransparentChecker.shader" type="Shader" id=16] +[ext_resource path="res://src/UI/ColorAndToolOptions.tscn" type="PackedScene" id=17] +[ext_resource path="res://src/UI/Timeline/AnimationTimeline.tscn" type="PackedScene" id=18] +[ext_resource path="res://src/Canvas.tscn" type="PackedScene" id=19] +[ext_resource path="res://src/Palette/PalettePanelContainer.tscn" type="PackedScene" id=20] +[ext_resource path="res://assets/graphics/dark_themes/tools/zoom.png" type="Texture" id=21] +[ext_resource path="res://src/UI/TransparentChecker.gd" type="Script" id=22] +[ext_resource path="res://src/UI/ViewportContainer.gd" type="Script" id=23] + +[sub_resource type="ShaderMaterial" id=1] +shader = ExtResource( 16 ) +shader_param/size = 10.0 +shader_param/color1 = Color( 0.7, 0.7, 0.7, 1 ) +shader_param/color2 = Color( 1, 1, 1, 1 ) + +[sub_resource type="StyleBoxFlat" id=2] +bg_color = Color( 0.0627451, 0.0627451, 0.0627451, 1 ) +expand_margin_top = 6.0 + +[node name="UI" type="HBoxContainer"] +margin_top = 28.0 +margin_right = 1280.0 +margin_bottom = 720.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 +custom_constants/separation = 0 + +[node name="ToolPanel" type="Panel" parent="."] +margin_right = 48.0 +margin_bottom = 692.0 +rect_min_size = Vector2( 48, 0 ) +size_flags_vertical = 3 + +[node name="PanelContainer" type="PanelContainer" parent="ToolPanel"] +anchor_left = 0.5 +anchor_right = 0.5 +margin_left = -20.5 +margin_right = 20.5 +margin_bottom = 254.0 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="Tools" type="VBoxContainer" parent="ToolPanel/PanelContainer"] +margin_left = 4.5 +margin_top = 3.0 +margin_right = 36.5 +margin_bottom = 251.0 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="RectSelect" type="Button" parent="ToolPanel/PanelContainer/Tools" groups=[ +"UIButtons", +]] +margin_right = 32.0 +margin_bottom = 32.0 +rect_min_size = Vector2( 32, 32 ) +mouse_default_cursor_shape = 2 +button_mask = 3 + +[node name="TextureRect" type="TextureRect" parent="ToolPanel/PanelContainer/Tools/RectSelect"] +margin_right = 32.0 +margin_bottom = 32.0 +texture = ExtResource( 12 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="Zoom" type="Button" parent="ToolPanel/PanelContainer/Tools" groups=[ +"UIButtons", +]] +margin_top = 36.0 +margin_right = 32.0 +margin_bottom = 68.0 +rect_min_size = Vector2( 32, 32 ) +mouse_default_cursor_shape = 2 +button_mask = 3 + +[node name="TextureRect" type="TextureRect" parent="ToolPanel/PanelContainer/Tools/Zoom"] +margin_right = 32.0 +margin_bottom = 32.0 +texture = ExtResource( 21 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="ColorPicker" type="Button" parent="ToolPanel/PanelContainer/Tools" groups=[ +"UIButtons", +]] +margin_top = 72.0 +margin_right = 32.0 +margin_bottom = 104.0 +rect_min_size = Vector2( 32, 32 ) +mouse_default_cursor_shape = 2 +button_mask = 3 + +[node name="TextureRect" type="TextureRect" parent="ToolPanel/PanelContainer/Tools/ColorPicker"] +margin_right = 32.0 +margin_bottom = 32.0 +texture = ExtResource( 11 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="Pencil" type="Button" parent="ToolPanel/PanelContainer/Tools" groups=[ +"UIButtons", +]] +margin_top = 108.0 +margin_right = 32.0 +margin_bottom = 140.0 +rect_min_size = Vector2( 32, 32 ) +mouse_default_cursor_shape = 2 +button_mask = 3 + +[node name="TextureRect" type="TextureRect" parent="ToolPanel/PanelContainer/Tools/Pencil"] +margin_right = 32.0 +margin_bottom = 32.0 +texture = ExtResource( 14 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="Eraser" type="Button" parent="ToolPanel/PanelContainer/Tools" groups=[ +"UIButtons", +]] +margin_top = 144.0 +margin_right = 32.0 +margin_bottom = 176.0 +rect_min_size = Vector2( 32, 32 ) +mouse_default_cursor_shape = 2 +button_mask = 3 + +[node name="TextureRect" type="TextureRect" parent="ToolPanel/PanelContainer/Tools/Eraser"] +margin_right = 32.0 +margin_bottom = 32.0 +texture = ExtResource( 13 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="Bucket" type="Button" parent="ToolPanel/PanelContainer/Tools" groups=[ +"UIButtons", +]] +margin_top = 180.0 +margin_right = 32.0 +margin_bottom = 212.0 +rect_min_size = Vector2( 32, 32 ) +mouse_default_cursor_shape = 2 +button_mask = 3 + +[node name="TextureRect" type="TextureRect" parent="ToolPanel/PanelContainer/Tools/Bucket"] +margin_right = 32.0 +margin_bottom = 32.0 +texture = ExtResource( 10 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="LightenDarken" type="Button" parent="ToolPanel/PanelContainer/Tools" groups=[ +"UIButtons", +]] +margin_top = 216.0 +margin_right = 32.0 +margin_bottom = 248.0 +rect_min_size = Vector2( 32, 32 ) +mouse_default_cursor_shape = 2 +button_mask = 3 + +[node name="TextureRect" type="TextureRect" parent="ToolPanel/PanelContainer/Tools/LightenDarken"] +margin_right = 32.0 +margin_bottom = 32.0 +texture = ExtResource( 15 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="CanvasAndTimeline" type="VSplitContainer" parent="."] +margin_left = 48.0 +margin_right = 950.0 +margin_bottom = 692.0 +size_flags_horizontal = 3 +custom_constants/autohide = 0 + +[node name="HViewportContainer" type="HBoxContainer" parent="CanvasAndTimeline"] +margin_right = 902.0 +margin_bottom = 486.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 + +[node name="ViewportAndRulers" type="VBoxContainer" parent="CanvasAndTimeline/HViewportContainer"] +margin_right = 902.0 +margin_bottom = 486.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 +custom_constants/separation = 0 + +[node name="HorizontalRuler" type="Button" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers"] +margin_right = 902.0 +margin_bottom = 16.0 +rect_min_size = Vector2( 0, 16 ) +focus_mode = 0 +mouse_default_cursor_shape = 14 +custom_styles/hover = ExtResource( 9 ) +custom_styles/pressed = ExtResource( 9 ) +custom_styles/focus = ExtResource( 9 ) +custom_styles/normal = ExtResource( 9 ) +action_mode = 0 +enabled_focus_mode = 0 +script = ExtResource( 6 ) + +[node name="HSplitContainer" type="HSplitContainer" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers"] +margin_top = 16.0 +margin_right = 902.0 +margin_bottom = 486.0 +size_flags_vertical = 3 +custom_constants/autohide = 0 + +[node name="ViewportandVerticalRuler" type="HBoxContainer" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer"] +margin_right = 896.0 +margin_bottom = 470.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 +custom_constants/separation = 0 + +[node name="VerticalRuler" type="Button" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler"] +margin_right = 16.0 +margin_bottom = 470.0 +rect_min_size = Vector2( 16, 0 ) +focus_mode = 0 +mouse_default_cursor_shape = 15 +size_flags_horizontal = 0 +size_flags_vertical = 3 +custom_styles/hover = ExtResource( 9 ) +custom_styles/pressed = ExtResource( 9 ) +custom_styles/focus = ExtResource( 9 ) +custom_styles/normal = ExtResource( 9 ) +action_mode = 0 +enabled_focus_mode = 0 +script = ExtResource( 4 ) + +[node name="ViewportContainer" type="ViewportContainer" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler"] +margin_left = 16.0 +margin_right = 896.0 +margin_bottom = 470.0 +focus_mode = 2 +size_flags_horizontal = 3 +size_flags_vertical = 3 +stretch = true +script = ExtResource( 23 ) + +[node name="Viewport" type="Viewport" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer"] +size = Vector2( 880, 470 ) +handle_input_locally = false +usage = 0 +render_target_update_mode = 3 + +[node name="TransparentChecker" type="ColorRect" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer/Viewport"] +material = SubResource( 1 ) +margin_right = 40.0 +margin_bottom = 40.0 +mouse_filter = 2 +script = ExtResource( 22 ) + +[node name="Canvas" type="Node2D" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer/Viewport" instance=ExtResource( 19 )] +script = ExtResource( 1 ) + +[node name="Camera2D" type="Camera2D" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer/Viewport"] +current = true +zoom = Vector2( 0.15, 0.15 ) +script = ExtResource( 7 ) + +[node name="SelectionRectangle" type="Polygon2D" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer/Viewport"] +visible = false +z_index = 1 +color = Color( 0.0823529, 0.694118, 0.623529, 0.592157 ) +invert_enable = true +invert_border = 0.5 +polygon = PoolVector2Array( 0, 0, 0, 0, 0, 0, 0, 0 ) +script = ExtResource( 8 ) + +[node name="ViewportContainer2" type="ViewportContainer" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer"] +margin_left = 902.0 +margin_right = 902.0 +margin_bottom = 470.0 +size_flags_vertical = 3 +stretch = true +script = ExtResource( 23 ) + +[node name="Viewport" type="Viewport" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2"] +size = Vector2( 0, 470 ) +handle_input_locally = false +render_target_update_mode = 3 +script = ExtResource( 2 ) + +[node name="Camera2D2" type="Camera2D" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2/Viewport"] +current = true +zoom = Vector2( 0.15, 0.15 ) +script = ExtResource( 7 ) + +[node name="AnimationTimeline" type="Panel" parent="CanvasAndTimeline" instance=ExtResource( 18 )] +margin_top = 492.0 +margin_right = 902.0 +margin_bottom = 692.0 +rect_min_size = Vector2( 0, 200 ) +size_flags_horizontal = 3 +custom_styles/panel = SubResource( 2 ) +script = ExtResource( 3 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="RightPanel" type="Panel" parent="."] +margin_left = 950.0 +margin_right = 1280.0 +margin_bottom = 692.0 +rect_min_size = Vector2( 330, 0 ) + +[node name="PreviewAndPalettes" type="VBoxContainer" parent="RightPanel"] +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_top = 16.0 +margin_right = 3.05176e-05 +margin_bottom = 6.10352e-05 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="PanelContainer" type="PanelContainer" parent="RightPanel/PreviewAndPalettes"] +margin_left = 10.0 +margin_right = 319.0 +margin_bottom = 156.0 +size_flags_horizontal = 4 + +[node name="CanvasPreview" type="ViewportContainer" parent="RightPanel/PreviewAndPalettes/PanelContainer"] +margin_left = 4.5 +margin_top = 3.0 +margin_right = 304.5 +margin_bottom = 153.0 +rect_min_size = Vector2( 0, 150 ) + +[node name="Viewport" type="Viewport" parent="RightPanel/PreviewAndPalettes/PanelContainer/CanvasPreview"] +size = Vector2( 300, 150 ) +transparent_bg = true +handle_input_locally = false +render_target_update_mode = 3 +script = ExtResource( 2 ) + +[node name="CameraPreview" type="Camera2D" parent="RightPanel/PreviewAndPalettes/PanelContainer/CanvasPreview/Viewport"] +offset = Vector2( 32, 32 ) +current = true +zoom = Vector2( 0.15, 0.15 ) +script = ExtResource( 7 ) + +[node name="ToolAndPaletteVSplit" type="VSplitContainer" parent="RightPanel/PreviewAndPalettes"] +margin_top = 160.0 +margin_right = 330.0 +margin_bottom = 676.0 +size_flags_vertical = 3 +custom_constants/autohide = 0 + +[node name="ColorAndToolOptions" type="VBoxContainer" parent="RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit" instance=ExtResource( 17 )] +margin_right = 330.0 +margin_bottom = 255.0 +size_flags_vertical = 3 +custom_constants/separation = 8 +script = ExtResource( 5 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="PalettePanelContainer" type="PanelContainer" parent="RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit" instance=ExtResource( 20 )] +margin_left = 15.0 +margin_top = 261.0 +margin_right = 315.0 +margin_bottom = 516.0 +rect_min_size = Vector2( 300, 0 ) +size_flags_horizontal = 4 +size_flags_vertical = 3 +__meta__ = { +"_edit_use_anchors_": false +} +[connection signal="mouse_entered" from="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" to="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" method="_on_HorizontalRuler_mouse_entered"] +[connection signal="pressed" from="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" to="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" method="_on_HorizontalRuler_pressed"] +[connection signal="pressed" from="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/VerticalRuler" to="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/VerticalRuler" method="_on_VerticalRuler_pressed"] +[connection signal="mouse_entered" from="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" to="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" method="_on_ViewportContainer_mouse_entered"] +[connection signal="mouse_exited" from="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" to="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer" method="_on_ViewportContainer_mouse_exited"] +[connection signal="mouse_entered" from="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" method="_on_ViewportContainer_mouse_entered"] +[connection signal="mouse_exited" from="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" to="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2" method="_on_ViewportContainer_mouse_exited"] From d2539f44f009a24178a948923fc46a29aef974f7 Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Thu, 21 May 2020 20:33:00 +0300 Subject: [PATCH 10/14] Removed brush_selected signal --- src/Autoload/Global.gd | 1 - src/Main.gd | 4 -- src/Main.tscn | 3 -- src/UI/BrushButton.gd | 6 +-- src/UI/BrushButton.tscn | 5 --- src/UI/UI.tscn | 91 +++++++++++++++-------------------------- 6 files changed, 36 insertions(+), 74 deletions(-) diff --git a/src/Autoload/Global.gd b/src/Autoload/Global.gd index 74882a671..ae0274cd8 100644 --- a/src/Autoload/Global.gd +++ b/src/Autoload/Global.gd @@ -856,7 +856,6 @@ func create_brush_button(brush_img : Image, brush_type := Brush_Types.CUSTOM, hi brush_button.get_child(0).texture = brush_tex brush_button.hint_tooltip = hint_tooltip brush_button.mouse_default_cursor_shape = Control.CURSOR_POINTING_HAND - brush_button.connect("brush_selected",control,"_on_Brush_Selected") if brush_type == Brush_Types.RANDOM_FILE: brush_button.random_brushes.append(brush_img) brush_container.add_child(brush_button) diff --git a/src/Main.gd b/src/Main.gd index 8c668af86..1fcf2d25f 100644 --- a/src/Main.gd +++ b/src/Main.gd @@ -616,10 +616,6 @@ func _on_Tool_pressed(tool_pressed : BaseButton, mouse_press := true, key_for_le Global.right_cursor_tool_texture.create_from_image(load("res://assets/graphics/cursor_icons/%s_cursor.png" % Global.current_right_tool.to_lower()), 0) -func _on_Brush_Selected() -> void: - $BrushesPopup.hide() - - func show_quit_dialog() -> void: if !$QuitDialog.visible: if !Global.project_has_changed: diff --git a/src/Main.tscn b/src/Main.tscn index 2179776a8..abeacaca9 100644 --- a/src/Main.tscn +++ b/src/Main.tscn @@ -224,9 +224,6 @@ visible = false visible = false [node name="ModulateTween" type="Tween" parent="."] -[connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/PixelBrushButton" to="." method="_on_Brush_Selected"] -[connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton" to="." method="_on_Brush_Selected"] -[connection signal="brush_selected" from="BrushesPopup/TabContainer/File/FileBrushContainer/FilledCircleBrushButton" to="." method="_on_Brush_Selected"] [connection signal="popup_hide" from="SplashDialog" to="." method="_can_draw_true"] [connection signal="popup_hide" from="CreateNewImage" to="." method="_can_draw_true"] [connection signal="file_selected" from="OpenSprite" to="." method="_on_OpenSprite_file_selected"] diff --git a/src/UI/BrushButton.gd b/src/UI/BrushButton.gd index edddc7532..15617621e 100644 --- a/src/UI/BrushButton.gd +++ b/src/UI/BrushButton.gd @@ -1,8 +1,6 @@ extends BaseButton -signal brush_selected - export var brush_type = 0 # Global.Brush_Types.PIXEL export var custom_brush_index := -3 var random_brushes := [] @@ -36,7 +34,7 @@ func _on_BrushButton_pressed() -> void: # Global.left_brush_type_label.text = tr("Brush: Filled Circle") Global.update_left_custom_brush() - emit_signal("brush_selected") + Global.brushes_popup.hide() else: # Change right brush Global.current_right_brush_type = brush_type @@ -59,7 +57,7 @@ func _on_BrushButton_pressed() -> void: # Global.right_brush_type_label.text = tr("Brush: Filled Circle") Global.update_right_custom_brush() - emit_signal("brush_selected") + Global.brushes_popup.hide() func _on_DeleteButton_pressed() -> void: diff --git a/src/UI/BrushButton.tscn b/src/UI/BrushButton.tscn index 5a5ea80a3..96f5b4234 100644 --- a/src/UI/BrushButton.tscn +++ b/src/UI/BrushButton.tscn @@ -3,11 +3,6 @@ [ext_resource path="res://assets/graphics/brush_button.png" type="Texture" id=1] [ext_resource path="res://src/UI/BrushButton.gd" type="Script" id=2] - - - - - [sub_resource type="Image" id=3] 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 ), diff --git a/src/UI/UI.tscn b/src/UI/UI.tscn index 8786abd48..b2d289046 100644 --- a/src/UI/UI.tscn +++ b/src/UI/UI.tscn @@ -1,10 +1,7 @@ -[gd_scene load_steps=26 format=2] +[gd_scene load_steps=23 format=2] -[ext_resource path="res://src/Canvas.gd" type="Script" id=1] [ext_resource path="res://src/UI/SecondViewport.gd" type="Script" id=2] -[ext_resource path="res://src/UI/Timeline/AnimationTimeline.gd" type="Script" id=3] [ext_resource path="res://src/UI/Rulers/VerticalRuler.gd" type="Script" id=4] -[ext_resource path="res://src/UI/ColorAndToolOptions.gd" type="Script" id=5] [ext_resource path="res://src/UI/Rulers/HorizontalRuler.gd" type="Script" id=6] [ext_resource path="res://src/CameraMovement.gd" type="Script" id=7] [ext_resource path="res://src/SelectionRectangle.gd" type="Script" id=8] @@ -41,6 +38,9 @@ margin_bottom = 720.0 size_flags_horizontal = 3 size_flags_vertical = 3 custom_constants/separation = 0 +__meta__ = { +"_edit_use_anchors_": false +} [node name="ToolPanel" type="Panel" parent="."] margin_right = 48.0 @@ -59,10 +59,10 @@ __meta__ = { } [node name="Tools" type="VBoxContainer" parent="ToolPanel/PanelContainer"] -margin_left = 4.5 -margin_top = 3.0 -margin_right = 36.5 -margin_bottom = 251.0 +margin_left = 7.0 +margin_top = 7.0 +margin_right = 39.0 +margin_bottom = 255.0 __meta__ = { "_edit_use_anchors_": false } @@ -201,13 +201,13 @@ custom_constants/autohide = 0 [node name="HViewportContainer" type="HBoxContainer" parent="CanvasAndTimeline"] margin_right = 902.0 -margin_bottom = 486.0 +margin_bottom = 480.0 size_flags_horizontal = 3 size_flags_vertical = 3 [node name="ViewportAndRulers" type="VBoxContainer" parent="CanvasAndTimeline/HViewportContainer"] margin_right = 902.0 -margin_bottom = 486.0 +margin_bottom = 480.0 size_flags_horizontal = 3 size_flags_vertical = 3 custom_constants/separation = 0 @@ -229,20 +229,20 @@ script = ExtResource( 6 ) [node name="HSplitContainer" type="HSplitContainer" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers"] margin_top = 16.0 margin_right = 902.0 -margin_bottom = 486.0 +margin_bottom = 480.0 size_flags_vertical = 3 custom_constants/autohide = 0 [node name="ViewportandVerticalRuler" type="HBoxContainer" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer"] -margin_right = 896.0 -margin_bottom = 470.0 +margin_right = 890.0 +margin_bottom = 464.0 size_flags_horizontal = 3 size_flags_vertical = 3 custom_constants/separation = 0 [node name="VerticalRuler" type="Button" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler"] margin_right = 16.0 -margin_bottom = 470.0 +margin_bottom = 464.0 rect_min_size = Vector2( 16, 0 ) focus_mode = 0 mouse_default_cursor_shape = 15 @@ -258,8 +258,8 @@ script = ExtResource( 4 ) [node name="ViewportContainer" type="ViewportContainer" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler"] margin_left = 16.0 -margin_right = 896.0 -margin_bottom = 470.0 +margin_right = 890.0 +margin_bottom = 464.0 focus_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 3 @@ -267,7 +267,7 @@ stretch = true script = ExtResource( 23 ) [node name="Viewport" type="Viewport" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer"] -size = Vector2( 880, 470 ) +size = Vector2( 874, 464 ) handle_input_locally = false usage = 0 render_target_update_mode = 3 @@ -279,8 +279,7 @@ margin_bottom = 40.0 mouse_filter = 2 script = ExtResource( 22 ) -[node name="Canvas" type="Node2D" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer/Viewport" instance=ExtResource( 19 )] -script = ExtResource( 1 ) +[node name="Canvas" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer/Viewport" instance=ExtResource( 19 )] [node name="Camera2D" type="Camera2D" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/ViewportContainer/Viewport"] current = true @@ -299,13 +298,13 @@ script = ExtResource( 8 ) [node name="ViewportContainer2" type="ViewportContainer" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer"] margin_left = 902.0 margin_right = 902.0 -margin_bottom = 470.0 +margin_bottom = 464.0 size_flags_vertical = 3 stretch = true script = ExtResource( 23 ) [node name="Viewport" type="Viewport" parent="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportContainer2"] -size = Vector2( 0, 470 ) +size = Vector2( 0, 464 ) handle_input_locally = false render_target_update_mode = 3 script = ExtResource( 2 ) @@ -315,17 +314,10 @@ current = true zoom = Vector2( 0.15, 0.15 ) script = ExtResource( 7 ) -[node name="AnimationTimeline" type="Panel" parent="CanvasAndTimeline" instance=ExtResource( 18 )] +[node name="AnimationTimeline" parent="CanvasAndTimeline" instance=ExtResource( 18 )] margin_top = 492.0 -margin_right = 902.0 margin_bottom = 692.0 -rect_min_size = Vector2( 0, 200 ) -size_flags_horizontal = 3 custom_styles/panel = SubResource( 2 ) -script = ExtResource( 3 ) -__meta__ = { -"_edit_use_anchors_": false -} [node name="RightPanel" type="Panel" parent="."] margin_left = 950.0 @@ -344,16 +336,16 @@ __meta__ = { } [node name="PanelContainer" type="PanelContainer" parent="RightPanel/PreviewAndPalettes"] -margin_left = 10.0 -margin_right = 319.0 -margin_bottom = 156.0 +margin_left = 8.0 +margin_right = 322.0 +margin_bottom = 164.0 size_flags_horizontal = 4 [node name="CanvasPreview" type="ViewportContainer" parent="RightPanel/PreviewAndPalettes/PanelContainer"] -margin_left = 4.5 -margin_top = 3.0 -margin_right = 304.5 -margin_bottom = 153.0 +margin_left = 7.0 +margin_top = 7.0 +margin_right = 307.0 +margin_bottom = 157.0 rect_min_size = Vector2( 0, 150 ) [node name="Viewport" type="Viewport" parent="RightPanel/PreviewAndPalettes/PanelContainer/CanvasPreview"] @@ -370,33 +362,18 @@ zoom = Vector2( 0.15, 0.15 ) script = ExtResource( 7 ) [node name="ToolAndPaletteVSplit" type="VSplitContainer" parent="RightPanel/PreviewAndPalettes"] -margin_top = 160.0 +margin_top = 168.0 margin_right = 330.0 margin_bottom = 676.0 size_flags_vertical = 3 custom_constants/autohide = 0 -[node name="ColorAndToolOptions" type="VBoxContainer" parent="RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit" instance=ExtResource( 17 )] -margin_right = 330.0 -margin_bottom = 255.0 -size_flags_vertical = 3 -custom_constants/separation = 8 -script = ExtResource( 5 ) -__meta__ = { -"_edit_use_anchors_": false -} +[node name="ColorAndToolOptions" parent="RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit" instance=ExtResource( 17 )] +margin_bottom = 248.0 -[node name="PalettePanelContainer" type="PanelContainer" parent="RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit" instance=ExtResource( 20 )] -margin_left = 15.0 -margin_top = 261.0 -margin_right = 315.0 -margin_bottom = 516.0 -rect_min_size = Vector2( 300, 0 ) -size_flags_horizontal = 4 -size_flags_vertical = 3 -__meta__ = { -"_edit_use_anchors_": false -} +[node name="PalettePanelContainer" parent="RightPanel/PreviewAndPalettes/ToolAndPaletteVSplit" instance=ExtResource( 20 )] +margin_top = 260.0 +margin_bottom = 508.0 [connection signal="mouse_entered" from="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" to="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" method="_on_HorizontalRuler_mouse_entered"] [connection signal="pressed" from="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" to="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HorizontalRuler" method="_on_HorizontalRuler_pressed"] [connection signal="pressed" from="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/VerticalRuler" to="CanvasAndTimeline/HViewportContainer/ViewportAndRulers/HSplitContainer/ViewportandVerticalRuler/VerticalRuler" method="_on_VerticalRuler_pressed"] From 5f9c1976d2ebb6bde956929d4b64773700b7150f Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Thu, 21 May 2020 20:37:20 +0300 Subject: [PATCH 11/14] Made BrushesPopup and PatternsPopup their own scenes --- src/Main.tscn | 124 ++------------------------------------ src/UI/BrushesPopup.tscn | 65 ++++++++++++++++++++ src/UI/PatternsPopup.tscn | 22 +++++++ 3 files changed, 92 insertions(+), 119 deletions(-) create mode 100644 src/UI/BrushesPopup.tscn create mode 100644 src/UI/PatternsPopup.tscn diff --git a/src/Main.tscn b/src/Main.tscn index abeacaca9..042fddb03 100644 --- a/src/Main.tscn +++ b/src/Main.tscn @@ -1,12 +1,13 @@ -[gd_scene load_steps=22 format=2] +[gd_scene load_steps=19 format=2] [ext_resource path="res://assets/themes/dark/theme.tres" type="Theme" id=1] [ext_resource path="res://src/Main.gd" type="Script" id=2] [ext_resource path="res://src/UI/TopMenuContainer.tscn" type="PackedScene" id=3] [ext_resource path="res://src/UI/UI.tscn" type="PackedScene" id=4] +[ext_resource path="res://src/UI/PatternsPopup.tscn" type="PackedScene" id=5] +[ext_resource path="res://src/UI/BrushesPopup.tscn" type="PackedScene" id=6] [ext_resource path="res://src/UI/Dialogs/SaveSprite.tscn" type="PackedScene" id=11] [ext_resource path="res://src/UI/Dialogs/OpenSprite.tscn" type="PackedScene" id=12] -[ext_resource path="res://src/UI/BrushButton.tscn" type="PackedScene" id=26] [ext_resource path="res://src/UI/Dialogs/SplashDialog.tscn" type="PackedScene" id=27] [ext_resource path="res://src/UI/Dialogs/CreateNewImage.tscn" type="PackedScene" id=28] [ext_resource path="res://src/UI/Dialogs/ImportSprites.tscn" type="PackedScene" id=29] @@ -18,36 +19,6 @@ [ext_resource path="res://src/UI/Dialogs/ExportDialog.tscn" type="PackedScene" id=39] [ext_resource path="res://src/UI/Dialogs/HSVDialog.tscn" type="PackedScene" id=44] -[sub_resource type="Image" id=6] -data = { -"data": PoolByteArray( 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 255, 0, 0, 0, 0, 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, 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, 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, 255, 0, 0, 0, 0, 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, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ), -"format": "RGBA8", -"height": 9, -"mipmaps": false, -"width": 9 -} - -[sub_resource type="ImageTexture" id=3] -flags = 3 -flags = 3 -image = SubResource( 6 ) -size = Vector2( 9, 9 ) - -[sub_resource type="Image" id=7] -data = { -"data": PoolByteArray( 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, 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, 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, 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, 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, 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, 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, 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, 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, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ), -"format": "RGBA8", -"height": 9, -"mipmaps": false, -"width": 9 -} - -[sub_resource type="ImageTexture" id=5] -flags = 3 -flags = 3 -image = SubResource( 7 ) -size = Vector2( 9, 9 ) - [node name="Control" type="Control"] anchor_right = 1.0 anchor_bottom = 1.0 @@ -71,90 +42,9 @@ __meta__ = { [node name="UI" parent="MenuAndUI" instance=ExtResource( 4 )] -[node name="BrushesPopup" type="Popup" parent="."] -margin_right = 226.0 -margin_bottom = 144.0 -rect_min_size = Vector2( 0, 144 ) +[node name="BrushesPopup" parent="." instance=ExtResource( 6 )] -[node name="TabContainer" type="TabContainer" parent="BrushesPopup"] -anchor_right = 1.0 -anchor_bottom = 1.0 -size_flags_vertical = 3 -drag_to_rearrange_enabled = true - -[node name="File" type="ScrollContainer" parent="BrushesPopup/TabContainer"] -anchor_right = 1.0 -anchor_bottom = 1.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 - -[node name="FileBrushContainer" type="GridContainer" parent="BrushesPopup/TabContainer/File"] -margin_right = 102.0 -margin_bottom = 32.0 -columns = 6 - -[node name="PixelBrushButton" parent="BrushesPopup/TabContainer/File/FileBrushContainer" instance=ExtResource( 26 )] -hint_tooltip = "Pixel brush" -mouse_default_cursor_shape = 2 - -[node name="CircleBrushButton" parent="BrushesPopup/TabContainer/File/FileBrushContainer" instance=ExtResource( 26 )] -margin_left = 35.0 -margin_right = 67.0 -hint_tooltip = "Filled circle brush" -mouse_default_cursor_shape = 2 -brush_type = 1 -custom_brush_index = -2 - -[node name="BrushTexture" parent="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton" index="0"] -texture = SubResource( 3 ) - -[node name="FilledCircleBrushButton" parent="BrushesPopup/TabContainer/File/FileBrushContainer" instance=ExtResource( 26 )] -margin_left = 70.0 -margin_right = 102.0 -hint_tooltip = "Circle brush" -mouse_default_cursor_shape = 2 -brush_type = 2 -custom_brush_index = -1 - -[node name="BrushTexture" parent="BrushesPopup/TabContainer/File/FileBrushContainer/FilledCircleBrushButton" index="0"] -texture = SubResource( 5 ) - -[node name="Project" type="ScrollContainer" parent="BrushesPopup/TabContainer"] -visible = false -anchor_right = 1.0 -anchor_bottom = 1.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 - -[node name="ProjectBrushContainer" type="GridContainer" parent="BrushesPopup/TabContainer/Project"] -columns = 5 - -[node name="PatternsPopup" type="PopupPanel" parent="."] -margin_right = 226.0 -margin_bottom = 104.0 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="ScrollContainer" type="ScrollContainer" parent="PatternsPopup"] -anchor_right = 1.0 -anchor_bottom = 1.0 -rect_min_size = Vector2( 0, 36 ) -size_flags_horizontal = 3 -scroll_horizontal_enabled = false - -[node name="PatternContainer" type="GridContainer" parent="PatternsPopup/ScrollContainer"] -columns = 6 +[node name="PatternsPopup" parent="." instance=ExtResource( 5 )] [node name="SplashDialog" parent="." instance=ExtResource( 27 )] @@ -247,7 +137,3 @@ visible = false [connection signal="popup_hide" from="ErrorDialog" to="." method="_can_draw_true"] [connection signal="popup_hide" from="HSVDialog" to="." method="_can_draw_true"] [connection signal="popup_hide" from="BackupConfirmation" to="." method="_can_draw_true"] - -[editable path="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton"] - -[editable path="BrushesPopup/TabContainer/File/FileBrushContainer/FilledCircleBrushButton"] diff --git a/src/UI/BrushesPopup.tscn b/src/UI/BrushesPopup.tscn new file mode 100644 index 000000000..7217e687d --- /dev/null +++ b/src/UI/BrushesPopup.tscn @@ -0,0 +1,65 @@ +[gd_scene load_steps=2 format=2] + +[ext_resource path="res://src/UI/BrushButton.tscn" type="PackedScene" id=2] + +[node name="BrushesPopup" type="Popup"] +margin_right = 226.0 +margin_bottom = 144.0 +rect_min_size = Vector2( 0, 144 ) + +[node name="TabContainer" type="TabContainer" parent="."] +anchor_right = 1.0 +anchor_bottom = 1.0 +size_flags_vertical = 3 +drag_to_rearrange_enabled = true + +[node name="File" type="ScrollContainer" parent="TabContainer"] +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_left = 4.0 +margin_top = 32.0 +margin_right = -4.0 +margin_bottom = -4.0 +rect_min_size = Vector2( 0, 36 ) +size_flags_horizontal = 3 +scroll_horizontal_enabled = false + +[node name="FileBrushContainer" type="GridContainer" parent="TabContainer/File"] +margin_right = 104.0 +margin_bottom = 32.0 +columns = 6 + +[node name="PixelBrushButton" parent="TabContainer/File/FileBrushContainer" instance=ExtResource( 2 )] +hint_tooltip = "Pixel brush" +mouse_default_cursor_shape = 2 + +[node name="CircleBrushButton" parent="TabContainer/File/FileBrushContainer" instance=ExtResource( 2 )] +margin_left = 35.0 +margin_right = 67.0 +hint_tooltip = "Filled circle brush" +mouse_default_cursor_shape = 2 +brush_type = 1 +custom_brush_index = -2 + +[node name="FilledCircleBrushButton" parent="TabContainer/File/FileBrushContainer" instance=ExtResource( 2 )] +margin_left = 70.0 +margin_right = 102.0 +hint_tooltip = "Circle brush" +mouse_default_cursor_shape = 2 +brush_type = 2 +custom_brush_index = -1 + +[node name="Project" type="ScrollContainer" parent="TabContainer"] +visible = false +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_left = 4.0 +margin_top = 32.0 +margin_right = -4.0 +margin_bottom = -4.0 +rect_min_size = Vector2( 0, 36 ) +size_flags_horizontal = 3 +scroll_horizontal_enabled = false + +[node name="ProjectBrushContainer" type="GridContainer" parent="TabContainer/Project"] +columns = 5 diff --git a/src/UI/PatternsPopup.tscn b/src/UI/PatternsPopup.tscn new file mode 100644 index 000000000..4484b2d16 --- /dev/null +++ b/src/UI/PatternsPopup.tscn @@ -0,0 +1,22 @@ +[gd_scene format=2] + +[node name="PatternsPopup" type="PopupPanel"] +margin_right = 226.0 +margin_bottom = 104.0 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="ScrollContainer" type="ScrollContainer" parent="."] +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_left = 4.0 +margin_top = 4.0 +margin_right = -4.0 +margin_bottom = -4.0 +rect_min_size = Vector2( 0, 36 ) +size_flags_horizontal = 3 +scroll_horizontal_enabled = false + +[node name="PatternContainer" type="GridContainer" parent="ScrollContainer"] +columns = 6 From 12c6118763b04f4d39d08436fd9f19449aef0bf3 Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Thu, 21 May 2020 21:30:40 +0300 Subject: [PATCH 12/14] Created ToolButtons.gd, moved code from Main.gd there --- src/Main.gd | 115 --------------------------------------- src/UI/ToolButtons.gd | 121 ++++++++++++++++++++++++++++++++++++++++++ src/UI/UI.tscn | 4 +- 3 files changed, 124 insertions(+), 116 deletions(-) create mode 100644 src/UI/ToolButtons.gd diff --git a/src/Main.gd b/src/Main.gd index 1fcf2d25f..d28860afa 100644 --- a/src/Main.gd +++ b/src/Main.gd @@ -3,7 +3,6 @@ extends Control var opensprite_file_selected := false var file_menu : PopupMenu var view_menu : PopupMenu -var tools := [] var redone := false var unsaved_canvas_state := 0 var is_quitting_on_save := false @@ -132,21 +131,6 @@ func _ready() -> void: image_menu.connect("id_pressed", self, "image_menu_id_pressed") help_menu.connect("id_pressed", self, "help_menu_id_pressed") - var root = get_tree().get_root() - # Node, left mouse shortcut, right mouse shortcut - tools.append([Global.find_node_by_name(root, "Pencil"), "left_pencil_tool", "right_pencil_tool"]) - tools.append([Global.find_node_by_name(root, "Eraser"), "left_eraser_tool", "right_eraser_tool"]) - tools.append([Global.find_node_by_name(root, "Bucket"), "left_fill_tool", "right_fill_tool"]) - tools.append([Global.find_node_by_name(root, "LightenDarken"), "left_lightdark_tool", "right_lightdark_tool"]) - tools.append([Global.find_node_by_name(root, "RectSelect"), "left_rectangle_select_tool", "right_rectangle_select_tool"]) - tools.append([Global.find_node_by_name(root, "ColorPicker"), "left_colorpicker_tool", "right_colorpicker_tool"]) - tools.append([Global.find_node_by_name(root, "Zoom"), "left_zoom_tool", "right_zoom_tool"]) - - for t in tools: - t[0].connect("pressed", self, "_on_Tool_pressed", [t[0]]) - - Global.update_hint_tooltips() - # Checks to see if it's 3.1.x if Engine.get_version_info().major == 3 and Engine.get_version_info().minor < 2: Global.left_color_picker.get_picker().move_child(Global.left_color_picker.get_picker().get_child(0), 1) @@ -229,15 +213,6 @@ func _input(event : InputEvent) -> void: Global.undo_redo.redo() redone = false - if Global.has_focus: - if event.is_action_pressed("undo") or event.is_action_pressed("redo") or event.is_action_pressed("redo_secondary"): - return - for t in tools: # Handle tool shortcuts - if event.is_action_pressed(t[2]): # Shortcut for right button (with Alt) - _on_Tool_pressed(t[0], false, false) - elif event.is_action_pressed(t[1]): # Shortcut for left button - _on_Tool_pressed(t[0], false, true) - func _notification(what : int) -> void: if what == MainLoop.NOTIFICATION_WM_QUIT_REQUEST: # Handle exit @@ -526,96 +501,6 @@ func _can_draw_true() -> void: Global.dialog_open(false) -func _on_Tool_pressed(tool_pressed : BaseButton, mouse_press := true, key_for_left := true) -> void: - var current_action := tool_pressed.name - if (mouse_press and Input.is_action_just_released("left_mouse")) or (!mouse_press and key_for_left): - Global.current_left_tool = current_action - - # Start from 1, so the label won't get invisible - for i in range(1, Global.left_tool_options_container.get_child_count()): - Global.left_tool_options_container.get_child(i).visible = false - - Global.left_tool_options_container.get_node("EmptySpacer").visible = true - - # Tool options visible depending on the selected tool - if current_action == "Pencil": - Global.left_brush_type_container.visible = true - Global.left_brush_size_slider.visible = true - Global.left_pixel_perfect_container.visible = true - Global.left_mirror_container.visible = true - if Global.current_left_brush_type == Global.Brush_Types.FILE or Global.current_left_brush_type == Global.Brush_Types.CUSTOM or Global.current_left_brush_type == Global.Brush_Types.RANDOM_FILE: - Global.left_color_interpolation_container.visible = true - elif current_action == "Eraser": - Global.left_brush_type_container.visible = true - Global.left_brush_size_slider.visible = true - Global.left_pixel_perfect_container.visible = true - Global.left_mirror_container.visible = true - elif current_action == "Bucket": - Global.left_fill_area_container.visible = true - Global.left_mirror_container.visible = true - elif current_action == "LightenDarken": - Global.left_brush_type_container.visible = true - Global.left_brush_size_slider.visible = true - Global.left_pixel_perfect_container.visible = true - Global.left_ld_container.visible = true - Global.left_mirror_container.visible = true - elif current_action == "ColorPicker": - Global.left_colorpicker_container.visible = true - elif current_action == "Zoom": - Global.left_zoom_container.visible = true - - elif (mouse_press and Input.is_action_just_released("right_mouse")) or (!mouse_press and !key_for_left): - Global.current_right_tool = current_action - # Start from 1, so the label won't get invisible - for i in range(1, Global.right_tool_options_container.get_child_count()): - Global.right_tool_options_container.get_child(i).visible = false - - Global.right_tool_options_container.get_node("EmptySpacer").visible = true - - # Tool options visible depending on the selected tool - if current_action == "Pencil": - Global.right_brush_type_container.visible = true - Global.right_brush_size_slider.visible = true - Global.right_pixel_perfect_container.visible = true - Global.right_mirror_container.visible = true - if Global.current_right_brush_type == Global.Brush_Types.FILE or Global.current_right_brush_type == Global.Brush_Types.CUSTOM or Global.current_right_brush_type == Global.Brush_Types.RANDOM_FILE: - Global.right_color_interpolation_container.visible = true - elif current_action == "Eraser": - Global.right_brush_type_container.visible = true - Global.right_brush_size_slider.visible = true - Global.right_pixel_perfect_container.visible = true - Global.right_mirror_container.visible = true - elif current_action == "Bucket": - Global.right_fill_area_container.visible = true - Global.right_mirror_container.visible = true - elif current_action == "LightenDarken": - Global.right_brush_type_container.visible = true - Global.right_brush_size_slider.visible = true - Global.right_pixel_perfect_container.visible = true - Global.right_ld_container.visible = true - Global.right_mirror_container.visible = true - elif current_action == "ColorPicker": - Global.right_colorpicker_container.visible = true - elif current_action == "Zoom": - Global.right_zoom_container.visible = true - - for t in tools: - var tool_name : String = t[0].name - var texture_button : TextureRect = t[0].get_child(0) - - if tool_name == Global.current_left_tool and tool_name == Global.current_right_tool: - Global.change_button_texturerect(texture_button, "%s_l_r.png" % tool_name.to_lower()) - elif tool_name == Global.current_left_tool: - Global.change_button_texturerect(texture_button, "%s_l.png" % tool_name.to_lower()) - elif tool_name == Global.current_right_tool: - Global.change_button_texturerect(texture_button, "%s_r.png" % tool_name.to_lower()) - else: - Global.change_button_texturerect(texture_button, "%s.png" % tool_name.to_lower()) - - Global.left_cursor_tool_texture.create_from_image(load("res://assets/graphics/cursor_icons/%s_cursor.png" % Global.current_left_tool.to_lower()), 0) - Global.right_cursor_tool_texture.create_from_image(load("res://assets/graphics/cursor_icons/%s_cursor.png" % Global.current_right_tool.to_lower()), 0) - - func show_quit_dialog() -> void: if !$QuitDialog.visible: if !Global.project_has_changed: diff --git a/src/UI/ToolButtons.gd b/src/UI/ToolButtons.gd new file mode 100644 index 000000000..ff3ce5e88 --- /dev/null +++ b/src/UI/ToolButtons.gd @@ -0,0 +1,121 @@ +extends VBoxContainer + + +var tools := [] + + +func _ready() -> void: + # Node, left mouse shortcut, right mouse shortcut + tools.append([Global.find_node_by_name(self, "Pencil"), "left_pencil_tool", "right_pencil_tool"]) + tools.append([Global.find_node_by_name(self, "Eraser"), "left_eraser_tool", "right_eraser_tool"]) + tools.append([Global.find_node_by_name(self, "Bucket"), "left_fill_tool", "right_fill_tool"]) + tools.append([Global.find_node_by_name(self, "LightenDarken"), "left_lightdark_tool", "right_lightdark_tool"]) + tools.append([Global.find_node_by_name(self, "RectSelect"), "left_rectangle_select_tool", "right_rectangle_select_tool"]) + tools.append([Global.find_node_by_name(self, "ColorPicker"), "left_colorpicker_tool", "right_colorpicker_tool"]) + tools.append([Global.find_node_by_name(self, "Zoom"), "left_zoom_tool", "right_zoom_tool"]) + + for t in tools: + t[0].connect("pressed", self, "_on_Tool_pressed", [t[0]]) + + Global.update_hint_tooltips() + + +func _input(event : InputEvent) -> void: + if Global.has_focus: + if event.is_action_pressed("undo") or event.is_action_pressed("redo") or event.is_action_pressed("redo_secondary"): + return + for t in tools: # Handle tool shortcuts + if event.is_action_pressed(t[2]): # Shortcut for right button (with Alt) + _on_Tool_pressed(t[0], false, false) + elif event.is_action_pressed(t[1]): # Shortcut for left button + _on_Tool_pressed(t[0], false, true) + + +func _on_Tool_pressed(tool_pressed : BaseButton, mouse_press := true, key_for_left := true) -> void: + var current_action := tool_pressed.name + if (mouse_press and Input.is_action_just_released("left_mouse")) or (!mouse_press and key_for_left): + Global.current_left_tool = current_action + + # Start from 1, so the label won't get invisible + for i in range(1, Global.left_tool_options_container.get_child_count()): + Global.left_tool_options_container.get_child(i).visible = false + + Global.left_tool_options_container.get_node("EmptySpacer").visible = true + + # Tool options visible depending on the selected tool + if current_action == "Pencil": + Global.left_brush_type_container.visible = true + Global.left_brush_size_slider.visible = true + Global.left_pixel_perfect_container.visible = true + Global.left_mirror_container.visible = true + if Global.current_left_brush_type == Global.Brush_Types.FILE or Global.current_left_brush_type == Global.Brush_Types.CUSTOM or Global.current_left_brush_type == Global.Brush_Types.RANDOM_FILE: + Global.left_color_interpolation_container.visible = true + elif current_action == "Eraser": + Global.left_brush_type_container.visible = true + Global.left_brush_size_slider.visible = true + Global.left_pixel_perfect_container.visible = true + Global.left_mirror_container.visible = true + elif current_action == "Bucket": + Global.left_fill_area_container.visible = true + Global.left_mirror_container.visible = true + elif current_action == "LightenDarken": + Global.left_brush_type_container.visible = true + Global.left_brush_size_slider.visible = true + Global.left_pixel_perfect_container.visible = true + Global.left_ld_container.visible = true + Global.left_mirror_container.visible = true + elif current_action == "ColorPicker": + Global.left_colorpicker_container.visible = true + elif current_action == "Zoom": + Global.left_zoom_container.visible = true + + elif (mouse_press and Input.is_action_just_released("right_mouse")) or (!mouse_press and !key_for_left): + Global.current_right_tool = current_action + # Start from 1, so the label won't get invisible + for i in range(1, Global.right_tool_options_container.get_child_count()): + Global.right_tool_options_container.get_child(i).visible = false + + Global.right_tool_options_container.get_node("EmptySpacer").visible = true + + # Tool options visible depending on the selected tool + if current_action == "Pencil": + Global.right_brush_type_container.visible = true + Global.right_brush_size_slider.visible = true + Global.right_pixel_perfect_container.visible = true + Global.right_mirror_container.visible = true + if Global.current_right_brush_type == Global.Brush_Types.FILE or Global.current_right_brush_type == Global.Brush_Types.CUSTOM or Global.current_right_brush_type == Global.Brush_Types.RANDOM_FILE: + Global.right_color_interpolation_container.visible = true + elif current_action == "Eraser": + Global.right_brush_type_container.visible = true + Global.right_brush_size_slider.visible = true + Global.right_pixel_perfect_container.visible = true + Global.right_mirror_container.visible = true + elif current_action == "Bucket": + Global.right_fill_area_container.visible = true + Global.right_mirror_container.visible = true + elif current_action == "LightenDarken": + Global.right_brush_type_container.visible = true + Global.right_brush_size_slider.visible = true + Global.right_pixel_perfect_container.visible = true + Global.right_ld_container.visible = true + Global.right_mirror_container.visible = true + elif current_action == "ColorPicker": + Global.right_colorpicker_container.visible = true + elif current_action == "Zoom": + Global.right_zoom_container.visible = true + + for t in tools: + var tool_name : String = t[0].name + var texture_button : TextureRect = t[0].get_child(0) + + if tool_name == Global.current_left_tool and tool_name == Global.current_right_tool: + Global.change_button_texturerect(texture_button, "%s_l_r.png" % tool_name.to_lower()) + elif tool_name == Global.current_left_tool: + Global.change_button_texturerect(texture_button, "%s_l.png" % tool_name.to_lower()) + elif tool_name == Global.current_right_tool: + Global.change_button_texturerect(texture_button, "%s_r.png" % tool_name.to_lower()) + else: + Global.change_button_texturerect(texture_button, "%s.png" % tool_name.to_lower()) + + Global.left_cursor_tool_texture.create_from_image(load("res://assets/graphics/cursor_icons/%s_cursor.png" % Global.current_left_tool.to_lower()), 0) + Global.right_cursor_tool_texture.create_from_image(load("res://assets/graphics/cursor_icons/%s_cursor.png" % Global.current_right_tool.to_lower()), 0) diff --git a/src/UI/UI.tscn b/src/UI/UI.tscn index b2d289046..054e09fc2 100644 --- a/src/UI/UI.tscn +++ b/src/UI/UI.tscn @@ -1,5 +1,6 @@ -[gd_scene load_steps=23 format=2] +[gd_scene load_steps=24 format=2] +[ext_resource path="res://src/UI/ToolButtons.gd" type="Script" id=1] [ext_resource path="res://src/UI/SecondViewport.gd" type="Script" id=2] [ext_resource path="res://src/UI/Rulers/VerticalRuler.gd" type="Script" id=4] [ext_resource path="res://src/UI/Rulers/HorizontalRuler.gd" type="Script" id=6] @@ -63,6 +64,7 @@ margin_left = 7.0 margin_top = 7.0 margin_right = 39.0 margin_bottom = 255.0 +script = ExtResource( 1 ) __meta__ = { "_edit_use_anchors_": false } From 4cf6daf948673b82f3d5f4501bb0788f237f0b40 Mon Sep 17 00:00:00 2001 From: "imgbot[bot]" <31301654+imgbot[bot]@users.noreply.github.com> Date: Thu, 21 May 2020 23:18:09 +0300 Subject: [PATCH 13/14] [ImgBot] Optimize images (#241) *Total -- 89.49kb -> 57.70kb (35.52%) /assets/graphics/icons/icon.png -- 1.00kb -> 0.44kb (55.7%) /pixelorama/Brushes/Star/%star2.png -- 0.50kb -> 0.23kb (52.66%) /pixelorama/Brushes/Star/%star4.png -- 0.50kb -> 0.24kb (52.16%) /pixelorama/Brushes/Star/%star3.png -- 0.50kb -> 0.24kb (52.15%) /pixelorama/Brushes/Star/%star1.png -- 0.50kb -> 0.24kb (52.05%) /pixelorama/Brushes/Star/%star6.png -- 0.50kb -> 0.24kb (51.65%) /pixelorama/Brushes/Star/%star5.png -- 0.50kb -> 0.24kb (51.55%) /assets/graphics/brush_button.png -- 0.53kb -> 0.27kb (49.08%) /assets/graphics/splash_screen/github_32px.png -- 1.53kb -> 0.78kb (48.95%) /assets/graphics/dark_themes/misc/color_defaults.png -- 0.52kb -> 0.27kb (48.87%) /assets/graphics/light_themes/misc/color_defaults.png -- 0.52kb -> 0.27kb (48.87%) /assets/graphics/cursor_icons/rectselect_cursor.png -- 0.53kb -> 0.27kb (48.35%) /assets/graphics/cursor_icons/cursor.png -- 0.53kb -> 0.28kb (47.53%) /assets/graphics/light_themes/misc/color_switch.png -- 0.52kb -> 0.28kb (46.72%) /assets/graphics/dark_themes/misc/color_switch.png -- 0.52kb -> 0.28kb (46.53%) /assets/graphics/cursor_icons/eraser_cursor.png -- 0.55kb -> 0.31kb (44.52%) /assets/graphics/cursor_icons/pencil_cursor.png -- 0.55kb -> 0.31kb (44.17%) /pixelorama/Patterns/Light_Blue_Texture.png -- 7.77kb -> 4.41kb (43.25%) /assets/graphics/cursor_icons/colorpicker_cursor.png -- 0.57kb -> 0.33kb (42.69%) /assets/graphics/cursor_icons/lightendarken_cursor.png -- 0.57kb -> 0.33kb (42.37%) /assets/graphics/cursor_icons/bucket_cursor.png -- 0.59kb -> 0.34kb (42.26%) /pixelorama/Patterns/Ground_leaves.png -- 8.25kb -> 4.82kb (41.55%) /pixelorama/Patterns/Purple_Texture.png -- 8.25kb -> 4.82kb (41.55%) /pixelorama/Patterns/small_stonebricks.png -- 1.00kb -> 0.63kb (37.1%) /assets/graphics/splash_screen/splash_screen_image_v0.7.png -- 31.99kb -> 21.32kb (33.36%) /pixelorama/Patterns/wooden_planks_2.png -- 7.24kb -> 5.01kb (30.78%) /pixelorama/Patterns/Brick.png -- 0.89kb -> 0.64kb (28.62%) /pixelorama/Patterns/Wooden_planks_1.png -- 6.08kb -> 4.43kb (27.09%) /pixelorama/Patterns/White_Marble.png -- 0.78kb -> 0.62kb (20.75%) /assets/graphics/splash_screen/orama_64x64.png -- 0.75kb -> 0.60kb (20.05%) /pixelorama/Patterns/Metro_tile.png -- 2.22kb -> 2.11kb (5.14%) /pixelorama/Patterns/Yellow_Marble.png -- 2.22kb -> 2.11kb (5.14%) Signed-off-by: ImgBotApp Co-authored-by: ImgBotApp --- assets/graphics/brush_button.png | Bin 546 -> 278 bytes .../graphics/cursor_icons/bucket_cursor.png | Bin 601 -> 347 bytes .../cursor_icons/colorpicker_cursor.png | Bin 581 -> 333 bytes assets/graphics/cursor_icons/cursor.png | Bin 547 -> 287 bytes .../graphics/cursor_icons/eraser_cursor.png | Bin 566 -> 314 bytes .../cursor_icons/lightendarken_cursor.png | Bin 583 -> 336 bytes .../graphics/cursor_icons/pencil_cursor.png | Bin 566 -> 316 bytes .../cursor_icons/rectselect_cursor.png | Bin 544 -> 281 bytes .../dark_themes/misc/color_defaults.png | Bin 532 -> 272 bytes .../dark_themes/misc/color_switch.png | Bin 533 -> 285 bytes assets/graphics/icons/icon.png | Bin 1027 -> 455 bytes .../light_themes/misc/color_defaults.png | Bin 532 -> 272 bytes .../light_themes/misc/color_switch.png | Bin 533 -> 284 bytes assets/graphics/splash_screen/github_32px.png | Bin 1571 -> 802 bytes assets/graphics/splash_screen/orama_64x64.png | Bin 773 -> 618 bytes .../splash_screen_image_v0.7.png | Bin 32756 -> 21828 bytes pixelorama/Brushes/Star/%star1.png | Bin 511 -> 245 bytes pixelorama/Brushes/Star/%star2.png | Bin 507 -> 240 bytes pixelorama/Brushes/Star/%star3.png | Bin 512 -> 245 bytes pixelorama/Brushes/Star/%star4.png | Bin 510 -> 244 bytes pixelorama/Brushes/Star/%star5.png | Bin 516 -> 250 bytes pixelorama/Brushes/Star/%star6.png | Bin 515 -> 249 bytes pixelorama/Patterns/Brick.png | Bin 912 -> 651 bytes pixelorama/Patterns/Ground_leaves.png | Bin 8450 -> 4939 bytes pixelorama/Patterns/Light_Blue_Texture.png | Bin 7956 -> 4515 bytes pixelorama/Patterns/Metro_tile.png | Bin 2275 -> 2158 bytes pixelorama/Patterns/Purple_Texture.png | Bin 8450 -> 4939 bytes pixelorama/Patterns/White_Marble.png | Bin 795 -> 630 bytes pixelorama/Patterns/Wooden_planks_1.png | Bin 6223 -> 4537 bytes pixelorama/Patterns/Yellow_Marble.png | Bin 2275 -> 2158 bytes pixelorama/Patterns/small_stonebricks.png | Bin 1019 -> 641 bytes pixelorama/Patterns/wooden_planks_2.png | Bin 7417 -> 5134 bytes 32 files changed, 0 insertions(+), 0 deletions(-) diff --git a/assets/graphics/brush_button.png b/assets/graphics/brush_button.png index ca05d24919cbda7b7ba6fa957bf9e1f07aeaf446..d47f260def1a95dcde32a637634a2449d4591392 100644 GIT binary patch literal 278 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE0wix1Z>k4UEa{HEjtmSN`?>!lvI6-`N#5=* z3=FG!m5qQr&H|6fVg?31We{epSZZGe6l5>)^mS!_!YV4l!?xkRRSi(c)YHW=#N&8! zLPOJk6(+Wn5A%H-7MAT06p{Kc-^n2BzzW92Y&}vy#s{N>2ia;`A?v1uzGp~Uv}4uP zbP0l+XkKa@S5X delta 501 zcmV0-^+vBYy#gX+uL$Nkc;*aB^>EX>4Tx04R}tkv&MmKpe$iTeYGU5eteq zWT;LSL`4J_sbUcqmRwB1b$s2! z!`Hho&vHNa=jf5M1_L|-@f_21lX!!8dehW6?-K`EL6nKliN|!hAn_yDC5PWQ=WX`# z%%Gl1%o7KRg?tN3EzAnKLOewrk`)TBM&at9cE(nMXfB_B<1 zE(g4y(Kls){#&4H&FQVNkJASrMO`i500)P_Xr8jyT@&8j+1lH`XBz$e0IBJ6y~VAOz70|vZiqP%jYxOxWwVxqXJ>#`QQ00000NkvXXu0mjf!lvAb diff --git a/assets/graphics/cursor_icons/bucket_cursor.png b/assets/graphics/cursor_icons/bucket_cursor.png index 473c61f88eb493190f34cef9d0cb3d4dcef50afc..5b2b33e30b7593cb07e373ad63385bb487278477 100644 GIT binary patch delta 302 zcmcb~a+_&_vJ3-Dx}&cn1H;CC?mvmF3=9lRN#5=*4FB8v&+MPPkx`V$Ck=O0hm|Ux$9zU|@M5fD=SOJbm z1BtVVChYx*g3TV;``%gdFe^Wljo5aAus=yN2i46zIC^<{N!>~-|Xd`+#PF= zO?q+Gc}n}L^tYLZ{kMG3m$GoKpIdBVtMb#g@>lhSZOYY**NVcQo2B<^0G**);u=ws zl30>zm0Xkxq!^40j0|)QOm&S6LyQcp3=M%u+rYrez~JrPiRmaBa`RI%(<*UmnDapM RHc$hDrz@ME%Q~loCIA*_ZPNe% delta 557 zcmV+|0@D540@(zRBYy#eX+uL$Nkc;*aB^>EX>4Tx04R}tkv&MmKpe$iQ$;Nm5j#k6 z$WWauh>AE$6^me@v=v%)FuC*#nlvOSE{=k0!NHHks)LKOt`4q(Aou~|;_9U6A|?JW zDYS_3;J6>}?mh0_0Yam~RI_UWP&La)#baVNw<`9$B8UJ6(SL`q#7sSrUd+IAeBHyx z*Sjds@;>+H=vVS41AHR!9McVpc!PLm)6zNb6NgwyQi#uq#|^q5@gvt|m)|%S9Ts?I z$jGGTi9^I4l)$$E+a0rYQDSO@H-4VT=z5RQp)!z?5y>gSe1nwx2 zKNx=kVoOIv0RM-N%)bBt0BuP`K~#9!jLHE91TYK*(H^OX-23#1-3UfA*7|=C;;kRM zRk(Yqgo87FbKD3lZaVN07yVQ(HWxKEhZ^r{a8Y4#)6=*w^yP!@#?bzXL%TI-1%?-; vKNOx(ct+t7g$I;{6rR)X2xKf0vMd1Ba#s=O^Kj`600000NkvXXu0mjf|HT1f diff --git a/assets/graphics/cursor_icons/colorpicker_cursor.png b/assets/graphics/cursor_icons/colorpicker_cursor.png index 2a5fffc2212195a04932b149770dfb1ad22248e6..ee53efc7fe37c420f6f46f4bf7f46baf985085a2 100644 GIT binary patch delta 287 zcmX@ga+Ya=vJ3-Dx}&cn1H;CC?mvmF3=9lRN#5=*4FB8v&+MPPkx`2(vXXy^KWK~~t2c43QcZeRN4*Ch`{*H$c8_nPVJ=bkSw zXX>7H34htNTGf65pSFFk@#%_k#%m6;o}#ut&4CuHmbgZgq$HN4S|t~y0x1R~10w@n z15;fi!w@3_D?>vd(l#)#GB9|%cVaq_2b BWHkT) delta 536 zcmV+z0_XkB0>uQ7BYy#eX+uL$Nkc;*aB^>EX>4Tx04R}tkv&MmKpe$iQ$;Nm5j#k6 z$WWauh>AE$6^me@v=v%)FuC*#nlvOSE{=k0!NHHks)LKOt`4q(Aou~|;_9U6A|?JW zDYS_3;J6>}?mh0_0Yam~RI_UWP&La)#baVNw<`9$B8UJ6(SL`q#7sSrUd+IAeBHyx z*Sjds@;>+H=vVS41AHR!9McVpc!PLm)6zNb6NgwyQi#uq#|^q5@gvt|m)|%S9Ts?I z$jGGTi9^I4l)$$E+a0rYQDSO@H-4VT=z5RQp)!z?5y>gSe1nwx2 zKNx%hVoOIv0RM-N%)bBt09i>yK~#9!rOMG2Ku{3G&@D-k`q3d+0U&sjzd1K_UB(2~ znR1|WsB+FXm>a4%3#D7G_{^O)T^!&&&B7q`%!LX+(IjA})9z_SfXhJ&sbHvMr(mbx aC0!5JKpjbF9zt#a0000G%%- diff --git a/assets/graphics/cursor_icons/cursor.png b/assets/graphics/cursor_icons/cursor.png index 88c5f10e7b0ffcb23c2671d1f7846521129d585c..be21a0e31f555ea7deaf77bfdfbec0394e14ca47 100644 GIT binary patch delta 241 zcmZ3?GM{OJvJ3-Dx}&cn1H;CC?mvmF3=9lRN#5=*3=FG!m5nBEWR$39FY)wsWq-md zD#F8l{07%6pb|Sz7sn8b)5!@3xc~i6SCIen|NMvfOw4Xu`+eSuEZe2X@GqG`=*r*! z=NlL|N;U+`x^Clt9U-av+HEWUwoQBt*H<34JuJDj322gPiEBhjN@7W>RdP`(kYX@0 zFf!0JFx53O3^6jWGBmXEG&IyUFt9Q(c)NFEI*N|m{FKbJN=zLv4Rao7-Ue!5@O1Ta JS?83{1OSLzPaOaN delta 502 zcmVEX>4Tx04R}tkv&MmKpe$iQ>9WW3U&~2 z$WWauh>AE$D;B{*X)CnqU~=gfG-*guTpR`0f`cE6RRyJ6ykH@34<<3{K$3L&@IM1rTE|~&0&}0FH#%D62pHG~F0MP8ya!zF0K-qZWJr$WrzsSR z!220}Qyv()1%hjCZ|!}YJ^)$jYWW5@I0VK^l)dip?h(H3-u^w)?(YXr)pD8KS*Zt+ zKNwm9VoOIv0063uBQgL005?fQK~#9!W55so|HmgwP%{wyAJsmpopb|+HTaJKNKgkP s&>^M)IMq>R`_KkMuB;o?K3diR0N1I*Jxi3;R{#J207*qoM6N<$g0uqOI{*Lx diff --git a/assets/graphics/cursor_icons/eraser_cursor.png b/assets/graphics/cursor_icons/eraser_cursor.png index 004cb8ac435cdc03b67bde05de776abb12e5f0cd..acb382f8d082a979fe5b31113bb81d7f4e9918e8 100644 GIT binary patch delta 268 zcmdnSvWsbgvJ3-Dx}&cn1H;CC?mvmF3=9lRN#5=*4FB8v&+MPPkx`!Xu@Ou%v8&>NTR_w^_(zg*xfI(_=pJ2gIqcUzm{-$kocT)sD@u40?zx6d^U zl{eA_yzN!ZfR?D1xJHzuB&L+4S|t~yCYGc!7#SED=o*;n8X1Nd8CV$_0+F_Xft7*5 k+r1Oh5jubxa`RI%(<*UmnDapMHc$hDr>mdKI;Vst0N{UHjsO4v delta 521 zcmV+k0`~p70=5K@BYy#eX+uL$Nkc;*aB^>EX>4Tx04R}tkv&MmKpe$iQ$;Nm5j#k6 z$WWauh>AE$6^me@v=v%)FuC*#nlvOSE{=k0!NHHks)LKOt`4q(Aou~|;_9U6A|?JW zDYS_3;J6>}?mh0_0Yam~RI_UWP&La)#baVNw<`9$B8UJ6(SL`q#7sSrUd+IAeBHyx z*Sjds@;>+H=vVS41AHR!9McVpc!PLm)6zNb6NgwyQi#uq#|^q5@gvt|m)|%S9Ts?I z$jGGTi9^I4l)$$E+a0rYQDSO@H-4VT=z5RQp)!z?5y>gSe1nwx2 zKNxKSVoOIv0RM-N%)bBt07^+jK~#9!)ylCE03ZkiL5jB@N<`=59dhr|t+mMrwCB9d zNzF~oP0dBYO^r>BzosQ<+T^C-puymz!Qi04;il%G;HKuL=6R(TdDv$VHv1tc00000 LNkvXXu0mjfFzEOl diff --git a/assets/graphics/cursor_icons/lightendarken_cursor.png b/assets/graphics/cursor_icons/lightendarken_cursor.png index 96046c64ad62fb68b3f6a1c0b57168f8783829e0..657408de05786c28cd21b7bc8576537b2ec7b5e1 100644 GIT binary patch delta 290 zcmX@ka)D`rvJ3-Dx}&cn1H;CC?mvmF3=9lRN#5=*4FB8v&+MPPkx`d|1HK!{q-XDel7q2UGQ0?LC3#T;u=Sn!IZ}z^5KP z{qf)PRuM%T(`9`st7NzNFWgtP=Z{Oicig0ZKh&3=1lp}y;u=wsl30>zm0Xkxq!^40 zj0|)QOm&S6LyQcp3=M%u+rYrez~JrPiRmaBa`RI%(<*UmnDapMHc$hDr>mdKI;Vst E00ezzT>t<8 delta 538 zcmV+#0_FYC0>=c9BYy#eX+uL$Nkc;*aB^>EX>4Tx04R}tkv&MmKpe$iQ$;Nm5j#k6 z$WWauh>AE$6^me@v=v%)FuC*#nlvOSE{=k0!NHHks)LKOt`4q(Aou~|;_9U6A|?JW zDYS_3;J6>}?mh0_0Yam~RI_UWP&La)#baVNw<`9$B8UJ6(SL`q#7sSrUd+IAeBHyx z*Sjds@;>+H=vVS41AHR!9McVpc!PLm)6zNb6NgwyQi#uq#|^q5@gvt|m)|%S9Ts?I z$jGGTi9^I4l)$$E+a0rYQDSO@H-4VT=z5RQp)!z?5y>gSe1nwx2 zKNx-jVoOIv0RM-N%)bBt09#2!K~#9!rPHwufG`Y1(Tv1WY{K3Uxp^2d{zV*mgE07*qoM6N<$g4mqk diff --git a/assets/graphics/cursor_icons/pencil_cursor.png b/assets/graphics/cursor_icons/pencil_cursor.png index 447802d23834878b90ccbee37fd64ab91ae624f5..929078af43177c0f3d586cb244808f119bb3d2c4 100644 GIT binary patch delta 270 zcmdnSvWIDcvJ3-Dx}&cn1H;CC?mvmF3=9lRN#5=*4FB8v&+MPPkx`r%H#R-voRFg;&(Z35 zS#kOOFEzpECDo4bsGFB$?32>npypCi=UsZaw9wsL?l%kj*I3n8ZDLy&{D0s&@t)*Q zN4pa&&v$#RcA5mVMzzE>q9iRPu_VKYk_7#Ua@8Um5Ffq|8Q l!P~tP(_uQm8glbfGSez?Ynbyu^EOZegQu&X%Q~loCIC4fTEX>4Tx04R}tkv&MmKpe$iQ$;Nm5j#k6 z$WWauh>AE$6^me@v=v%)FuC*#nlvOSE{=k0!NHHks)LKOt`4q(Aou~|;_9U6A|?JW zDYS_3;J6>}?mh0_0Yam~RI_UWP&La)#baVNw<`9$B8UJ6(SL`q#7sSrUd+IAeBHyx z*Sjds@;>+H=vVS41AHR!9McVpc!PLm)6zNb6NgwyQi#uq#|^q5@gvt|m)|%S9Ts?I z$jGGTi9^I4l)$$E+a0rYQDSO@H-4VT=z5RQp)!z?5y>gSe1nwx2 zKNxKSVoOIv0RM-N%)bBt07^+jK~#9!<;+1105A;0z(N|x@+rhFk_mY4#otp(Y?It} zQXC35RPvo9Fchw67~Ii@TRPv;(i9>n7^bOs4L&b40Ye2A5Nsg3$OPxR4{M()00000 LNkvXXu0mjfgD~u# diff --git a/assets/graphics/cursor_icons/rectselect_cursor.png b/assets/graphics/cursor_icons/rectselect_cursor.png index a49801a5dd18cee26ecf2a0dde27719fde8cbcbd..52f5a607ae237f0ecebb5079dc38719913c01ab4 100644 GIT binary patch delta 235 zcmZ3$GLvb7vJ3-Dx}&cn1H;CC?mvmF3=9lRN#5=*4FB8v&+MPPkx`EX>4Tx04R}tkv&MmKpe$iQ$;Nm5j#k6 z$WWauh>AE$6^me@v=v%)FuC*#nlvOSE{=k0!NHHks)LKOt`4q(Aou~|;_9U6A|?JW zDYS_3;J6>}?mh0_0Yam~RI_UWP&La)#baVNw<`9$B8UJ6(SL`q#7sSrUd+IAeBHyx z*Sjds@;>+H=vVS41AHR!9McVpc!PLm)6zNb6NgwyQi#uq#|^q5@gvt|m)|%S9Ts?I z$jGGTi9^I4l)$$E+a0rYQDSO@H-4VT=z5RQp)!z?5y>gSe1nwx2 zKNwd6VoOIv0RM-N%)bBt05nNNK~#9!V_^7CJOnCU4}?UJP{qWU2~!M)1OUPrL@8cR ps$$BWG3ty_XONWm$;ej3Lja(o2Dr*_j$Z%(002ovPDHLkV1k|SpHKbX`SIQWB3@xH}TjF!Q%;D zCjVyZJlj7%W;4Hv1QR32b)Z(&64!{5l*E!$tK_0oAjM#0U}T_cV5)0m7-D2#WoQUQ r+6D$z1_p2UPD}@CutMm_%}>cptHiBi&I8TcKphO8u6{1-oD!MEX>4Tx04R}tkv&MmKpe$iQ>7vmL5qku zWT;LSM2k2|6^me@v=v%)FuC*#nlvOSE{=k0!NHHks)LKOt`4q(Aou~|;_9U6A|?JW zDYS_3;J6>}?mh0_0Yam~RI_UmP&La)#baVNw<-o+5yTJ%5PwEgVy2!*FJ|C5zV6}U z>s^Frd7t}p^eK6h0X~st?f%Ws^E4huXp zWMoqF#35p_*uioKvy!0_M~TCVs!_g>by?xO#aXS?SnHnrg~7bGlIA+iQN*!?1duoK31oUqM7uRh~-UBXofZ-=yG9*Xx(-aB? z;QfrgDF+PR0=;W)Z>@ctJ^&f&YWW5@I0VLvl)dip?h&5O-u^w)>hA~Td2-bci+`?> zKNw2_VoOIv0I%%iol5`!04PaBK~#9!V*r8m|A~bR5CCLgLZCDj0MP^_@M^)-G-$Pu d;e9d!833~nBpAc{#xDQ>002ovPDHLkV1kTD;RFBx diff --git a/assets/graphics/dark_themes/misc/color_switch.png b/assets/graphics/dark_themes/misc/color_switch.png index e7b5f021f87db7a696af9be55d0145f5aedf9966..c6e11492c710dd32237add2a8be38c6046a03665 100644 GIT binary patch literal 285 zcmeAS@N?(olHy`uVBq!ia0vp^l0eMP0VEi1#O(|LQY`6?zK#qG8~eHcB(eheOeH~n z!3+##lh0a!cuC&wE)476Jelha4nJ@ErzW#^d=bQh`z!lMR?dY z+_$O$3h8;eIEHXsPfh@Xi2d^z*(S{3;dy<1@reVLudgScSQF2mp1@e~<-un5_S+2m zE*ZWM+rn`cs8hAXHKHUXu_VKYk_7#Ua@8Um5Ffq|8Q!P~tP f(@`|!=BH$)RpQn#=Yi&Jpaup{S3j3^P6$1yloQn<%JTqiuQuD+iVzJo4atE`Lp%O=l!-}d=zL0fU;k?CJt<+fSp8SQuytb0& zI?YkUv4jMY5Pu<~hB7L!5TR8g#YBqsV;=qy$DbsZOs+B*ITlcb3d!+<|H1EW&BFAQ zn-q)z-7mKNF$M&7fo9#dzmILZc>?&Kfh(=;uQq_$PtxmcEqny@Zvz+CZB5<-E_Z<8 zCtWfmNAlAY3I*W(jJ_!c4Bi60Yi@6?eVjf38R}~J1{*jy1jdV$z3%bup3dI>J=5y% z2jzKk)enn*u8~a`Oafv{M??Ux?BtzG0000fNkl~ oAU-V!2o)d|l4uK=ejy{o0D2>OpQf5%-~a#s07*qoM6N<$g7nPc9RL6T diff --git a/assets/graphics/icons/icon.png b/assets/graphics/icons/icon.png index f1101072de663f5aaf52292a3708bc9c09ca5937..fe3b22841851bde72e61f2c5d20125ddd11ffc6e 100644 GIT binary patch literal 455 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K58CaNs)Vi3hp+Jfy-O<;Pfnj4m_n$;oAYUQb zBgmJ5p-PQ`p`nF=;TKS-;RORjsR0ASs{{rHs~HRo;stYd1=;{5L<4+6Tx~Q0LMJ`2 zm=^sYG4A`5>nc)u|NsAA|FRpXfq^l}+uemNF>OaJki%Z$>Fdh=gjH08hyC~su2(>z z^`0({Ar-gY-Zm6GU?9Nk7|hWcV9*-CQLpv#>WVKnZoW3%&r-+ZIZ4HH(vnM}cb7_n z+>Zp_u%Br5*ZjVj1xXCZ++e@pEt<-6%qh9^6Ht{k{AJ*MaugI62=Jhu0c>4K-TOxf zQ7~&7v)%oFVq1@XO|b^@RZCnWN>UO_QmvAUQh^kMk%5tcu7Rnpkzt6Dft8^l5NR72 lSQ!|+-8(TIMMG|WN@iLmZVhuDXx;|d=;`X`vd$@?2>|1GcPan? literal 1027 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K5893O0R7}x|G!U;i$lZxy-8q?;3=GVBJzX3_ zD(1YswlH@#qlnwZ9X~xiGoSG8aZ)+l5`8p`{R3NANQl5I$yH4Y)+J7m^>Px*5_-}1 z@qlf5hAn+pQ@~P?YED2 z`@Z}qgMtsuP|nu7Z`Ms_U&Furjn@7ue7Uv6tBDkAgXNjRx`zEu1t%x|i8~et-P_`U_`f`ToAezvb=c1HDT7puOzw6D9Ar_;>#4 z%P;AnQ4_=fw^GA)4!kcf3YQW@G~4@ dp&9zetT#h>L3gY3bYQM#@O1TaS?83{1OPcG3RwUE diff --git a/assets/graphics/light_themes/misc/color_defaults.png b/assets/graphics/light_themes/misc/color_defaults.png index a69973dddbf38abd225359c906a41e0231033a7e..4905e8e92f74528e495baf7c47fd221f931ad95a 100644 GIT binary patch delta 226 zcmbQjGJ$D=vJ3-Dx}&cn1H;CC?mvmF3=9lRN#5=*4C~)Knd?1yBcnt;dx@v7EBg~x zQ4t=F@O1HNpb~vg7sn8Z%gG5qVDQ6VC#8X*`9Dv@f`j!r2Oik_@$T62=YRf(`VU!( zhkq|&H)41-l`Uk)nbNmFt*Rxi5hW>!C8<`)MX5lF!N|bKK-a)j*T^u$$iT|b5Qwx5 q46F delta 487 zcmVEX>4Tx0C=2zkv&MmKpe$iQ>7vmL5qku zWT;LSM2k2|6^me@v=v%)FuC*#nlvOSE{=k0!NHHks)LKOt`4q(Aou~|;_9U6A|?JW zDYS_3;J6>}?mh0_0Yam~RI_UmP&La)#baVNw<-o+5yTJ%5PwEgVy2!*FJ|C5zV6}U z>s^Frd7t}p^eK6h0X~st?f%Ws^E4huXp zWMoqF#35p_*uioKvy!0_M~TCVs!_g>by?xO#aXS?SnHnrg~7bGlIA+iQN*!?1duoK31oUqM7uRh~-UBXofZ-=yG9*Xx(-aB? z;QfrgDF+PR0=;W)Z>@ctJ^&f&YWW5@I0VLvl)dip?h&5O-u^w)>hA~Td2-dUe3j#o zKNw2_VoOIv0I%%iol5`!04PaBK~#9!V*mkz|HMKD2mmrLAy66%fM@~|c(q_^8njx- d@ID!V3;^nt22{tZNbCRr002ovPDHLkV1f@=;7$Ml diff --git a/assets/graphics/light_themes/misc/color_switch.png b/assets/graphics/light_themes/misc/color_switch.png index e8bf366dc5a225d1c2ad35de44212ecacd78d261..132251da32b22436f82ec1ce7308fb4a5580f3a0 100644 GIT binary patch literal 284 zcmeAS@N?(olHy`uVBq!ia0vp^l0eMP0VEi1#O(|LQY`6?zK#qG8~eHcB(eheOeH~n z!3+##lh0a!cuC&wE)476Jelha4nJ@ErzW#^d=bQh`z!lMR+*E z)5WWSLb{$Vjv*Y^lM}$ez#yT4QALfpxskDpXHIfLgJN<5LwW*Z#g_-0+1qb3+-u_9 z*xzBX38+!E#5JNMC9x#cD!C{XNHG{07#ZjqnCcoCh8P)G85#nSwt<0_fx+9o6Vp*N cp8x;= delta 498 zcmV$1yloQn<%JTqiuQuD+iVzJo4atE`Lp%O=l!-}d=zL0fU;k?CJt<+fSp8SQuytb0& zI?YkUv4jMY5Pu<~hB7L!5TR8g#YBqsV;=qy$DbsZOs+B*ITlcb3d!+<|H1EW&BFAQ zn-q)z-7mKNF$M&7fo9#dzmILZc>?&Kfh(=;uQq_$PtxmcEqny@Zvz+CZB5<-E_Z<8 zCtWfmNAlAY3I*W(jJ_!c4Bi60Yi@6?eVjf38R}~J1{*jy1jdV$z3%bup3dI>J=5y% z2jzKk)vm8NKghL oh))XwLIp^LB-%ozU&shC046t9Xo28W?EnA(07*qoM6N<$g09cuZvX%Q diff --git a/assets/graphics/splash_screen/github_32px.png b/assets/graphics/splash_screen/github_32px.png index 628da97c70890c73e59204f5b140c4e67671e92d..13027ee42bf88fe78eeab50754cd4be5061960ed 100644 GIT binary patch delta 754 zcmZ3?vxseiWIYQ51H;YYP4z&ECEd~2k%3`jKlh(RRv=#?*(1o8fuTx`fuW&=f#DZW zsNn?zL#Y7+!>a@a2CEqi4B`cIb_Lo1C76=D-CY>|xA&jf59G0zc>21sKVcOW;o%5R z7q14&vwFHXhIkyGI(5IdvZKiH_&o=rG&&ts>&;G;ZoA0AwJ4$Rf3t$tyUy#e4`n-A z>l=EPwq~RXA5Bo7HqWdqYvQ4fN3qJ~W`Q9WCY%?&d1hbl@6$8Wp1=M6`{vC`<9wEn zFX!IKDL$yo&>yp**LV5+Z?zikjpl!DNwXF`Y!H#Y!jWxi=E2HX6eGMm_I2fsZ=703 zaz)i*K4qDz(Sy{!hR zTcUX#;%bu*JXt(nY_py2m)Tq8176k0281kByx+U@_k}-$i|JGUN7{Q(}wXlxy!zsScPkt_0W_!rIYmeF0_OHJ(-#leqv9aUm zN~=sxW{(Z;gX7{})uWO zSCZKro6ddvBe$XErP}Y%?UNvvx`NlIc# zs#S7PDv)9@GB7gGH89mRG7K>?urf3RB5eZ$D+7bKdncxYb-*;_=BH$)RpQn#=Yi(! SiHhn#Ydl^3T-G@yGywqP`ZqoR literal 1571 zcmaJ>c~BE~6izDPQq)#Nu*KOf(n^(VHY9;fiINM65``pc+9*v(mL$bwfCjbc%v9V{8r9iX|O%>Nr%pLD2qT{mty}c=LVleeamv znz3SOSm@kP8jThvOOq(56Yzh*fz(booe!uZij=BJC6+_lbvQ~B8nA2>kXdv_RDtRY z`5QXWWEySCe6vbTs^#f?J!WC*{1~RgVx!nJTJjQyO{dRANgx|FnymtGbD9%JmCh9^y)##j7{Dcqfn*1ta$rG89pJF6w-S7Z037$rr|y0;1Onp_ zGFJdT6Q!1C0AdVB0WOmpuV=AgAQ550Tn+-mivTtYPJmz*#75#_n9oV%!#rSOfmAfy zki%C~=fTp1{O#BLpJ|0jj#m6#|LRWit-vq3PE1z9ZqyvET4sX$-Icqy7t z<=aq5ff86AuBZBu6EjJsYWM0uejufWFTwPA7Su}0Bm$7KFb!q{Um_8~A{LUG#1l(l zSehUda@kU8LIRg9fkk2tZ;~ss5~R+mM<==F7hLHpxqLB>>PQS%Vc7b~?q!%T5+h8Q z4G=4Nzyi5WZ?^gkasJ{?Xhm`JC#WG6$1K2jb@=9&D3EgD#3UhGh#*21rJjulVXjCF zvp76q62jt0zzMG5C7DlfMgPl%C^3+~wf|}Lq=}jz|MmIcQjh1Ok6NjD$Em^Iv26D> z8tt_TnM9~^Tt8mflRGPOrrX|HtT3gG4LEuuk{g2Rn}QgJIa?gZo))!!=o_l9bvD%A zZ`aHajl8#~u?!4f7F#*b*->A=R2L)6!>saz?h>#wTXT-I(XmQ zx{84skS>k=i~i`(6k4C7;Zpfx%dCPVjPayMf8pugtGM=~s=Id1l#8MZJ1-73wV#Q3 zR3>v3%}jbQs1f_Z0xo;%=LILlA+nTpKI4ha%xWW}uqHrNao~&T4AY6m`P$_n-6h*g zhoX+e4n%~gl_lhe#s+AMb7d{5WzvYTa%6Q~si@@4{;s(0zU|H&P3fE+t{7X`S#Cj@ zC#vd}^4pcBD*77Ny5=j$h8EL2_t$O38$SQiJ6fPjJMimypr~MB2(&P0aI|h}$64<0 z>_~duqNjaT=DM^6+N{&B_lED;F2wrl?!4Lk*2((x!fmrcsw+=cI^qttuZ9C}-m~5E z-ryYVpL%^xR#&(0YI5hz<(}F7-p)?FPcyJO-zVO>%9ZDXJH8pnY;GJYFDQ>vd#j_* zRrd}L(r=!g+1#nQwsO?kpS`Qq8`NxE+Zy{gf7*_7J*U2V_|NpLo{iasj7VCg_V9&| ShohtYzipXxh2)4xTkNS%G|oWRD45bDP46hOx7_4S6Fo+k-*%fF5ln@Q@32_C|GBPqVXU>fD zo$ci0l$)FT|NsAKH~N);5{xB5e!&b5&u*lFI7!~_E^LWuJ8FR(_7YEDSN12Yq9Q!( z$8T`G0!q7jx;Tb-9KSpDVCi869*47R7dALN(tD7>6eRYd`t85fCX6a73nkQ#ze;=k zn>$%Y_jI=4yNC1BVh_xCnyb|DVfXoHzPa)pitD>tHuxtrdUt+~SaR>jj)aWX;7XMx z4bP=CVNYu&;Q3vZaTKuafK@#aO1+gj>o_-*N6cBt>{o$LNhiZ{ZP z;lEJDKK}l>J?6#g#<`_u%$ZNfa#*JSHMKAHW7=_Cob%OJh9~#M?3oHu1;q~Vz12IA z<)I+U_~LvQo5TNQ%B>7R?-iB^I81Q3;E*JHY+)1gBK}29jF~yjfef4cce#}~n7^)) z<&?N(TlRa_e>1mJIdNyy&();q3Lk9Tsmb~O+M8|5|I6bP0l+XkKq+H!5 delta 761 zcmVr~F00PWOL_t(|ob8)EZsRZzg`bV>_5js({7J0WN*vDnIFv+51TI{w z+8qwV@J^lMoU4{s(T+G~xhe&vNKi}Tp{zle1uJPfCJPuQ0DoGT_tHX8HEwA)3)qA>l0`V*uUp1 zRkGG`hhcbERY2*79eP767diXsrc6>jYYB0ibDYu^O|GCXe&`fYig#X0rhR zjN|y>Sgl84Aig}F18_JT005`cDH_i?w-UV%@ImK5^dg@lSF8#E{#8M!aU82uL2C44 zrcRh|jXJm?I zZ{mzTusjF+58$g*fh5n1tN_)gvEHjdn%@TioF9vNg}})x^fy}ppAkZCKB{X#FA%tS z%nfW50QX13)(|x20iptWhoChN7~TeJL$K8-Q#}%S6qM^Dkm%u00000NkvXXu0mjf4`y3B diff --git a/assets/graphics/splash_screen/splash_screen_image_v0.7.png b/assets/graphics/splash_screen/splash_screen_image_v0.7.png index 5351c1c9c7d0d12df17ee2ce61ac4013490334bf..96ba86bdb3fde555b0bed93b11b35041bd19c3ea 100644 GIT binary patch literal 21828 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 delta 466 zcmV;@0WJRZ0sjM#BYy#fX+uL$Nkc;*aB^>EX>4Tx0C=2zkv&MmKpe$iQ>7vm2Rn#5 zWT*~eLHxo|s#pXIrLEAagUO{|(4-+rad8w}3l4rPRvlcNb#-tR1i=pw7gr}m7b)?7 zNufoI2gm(*ckglc4iM^PrkWk&fT~$WG8Ppx*;O&{iXa9dV1F8;5;OI9YB3GZ@pTU$ zU+*G3%lq7)qesb^4DgA>b4)iZ;tk@NO-tvzPaI-JNg+Nb9y92I#E)E;U4G+Sa9H4( zAtRlfCk_#dg*KMkm=z6`c#1fzs2b%98J88#Tb$K$l{N3lUl`13D=Dti96}6Bh$8_J zGO8${3=0ujHGfh}BxyhD;U94P33AEgDuIz>0Trl_96$IU{O;DwPfoZ=!6?xAV%s0X zKwuYW)NK3v*tQ!dfd3h|(pvsX9hm(jz1GsgM?mj3aBw3au9k0rgF|4XK-uda?-K56@9p0+&HjD>+l6w`22e~! zkv|wU0%A)?L;(MXkIcUS000t6L_t(|+GC&`{KpW$E=VZ=08?fI{jOJiR{#J207*qo IM6N<$g6G}Mng9R* diff --git a/pixelorama/Brushes/Star/%star2.png b/pixelorama/Brushes/Star/%star2.png index 4a25fccff68be1e7e138b81ee4f68ee5844a900a..5ec50b8fe5a0bbba6b2974a3d6b05ba75df4c66e 100644 GIT binary patch literal 240 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>0wld=oSO}#SkfJR9T^xl_H+M9WCik>lDyqr z82-2SpV<#mTHp~`%)p?h48n{ROYO^mg6t)pzOL*~SVcv6*pJ`fdIc2X_jGX#;kcfh zuz>Z4KesbuXc!|yl+KqqKq=J{*NBpo#FA92o1c=IR*74~oClh>ff^V*UHx3vIVCg!0Ge7n^#A|> delta 462 zcmV;<0WtpY0s8}xBYy#fX+uL$Nkc;*aB^>EX>4Tx0C=2zkv&MmKpe$iQ>7vm2Rn#5 zWT*~eLHxo|s#pXIrLEAagUO{|(4-+rad8w}3l4rPRvlcNb#-tR1i=pw7gr}m7b)?7 zNufoI2gm(*ckglc4iM^PrkWk&fT~$WG8Ppx*;O&{iXa9dV1F8;5;OI9YB3GZ@pTU$ zU+*G3%lq7)qesb^4DgA>b4)iZ;tk@NO-tvzPaI-JNg+Nb9y92I#E)E;U4G+Sa9H4( zAtRlfCk_#dg*KMkm=z6`c#1fzs2b%98J88#Tb$K$l{N3lUl`13D=Dti96}6Bh$8_J zGO8${3=0ujHGfh}BxyhD;U94P33AEgDuIz>0Trl_96$IU{O;DwPfoZ=!6?xAV%s0X zKwuYW)NK3v*tQ!dfd3h|(pvsX9hm(jz1GsgM?mj3aBw3au9k0rgF|4XK-uda?-K56@9p0+&HjD>+l6w`22e~! zkv|wQ0%A)?L;(MXkIcUS000h2L_t(|+GC&z_)iN%0aaE30CB|K5C8xG07*qoM6N<$ Ef`;zP761SM diff --git a/pixelorama/Brushes/Star/%star3.png b/pixelorama/Brushes/Star/%star3.png index 9d850b59149eb266d9d35119b04354cd55609bc1..a17868441b23ad28f63590649fe81a77f9a8dff2 100644 GIT binary patch literal 245 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>0wld=oSO}#SkfJR9T^xl_H+M9WCik>lDyqr z82-2SpV<#mTHp~`%)p?h48n{ROYO^mg6t)pzOL*~SVcv+4c(PFw*ZAiJY5_^IIbrr zERgtfT;xZ;?*yP_D+F2od{^)j1j?(HxJHzuB$lLFB^RXvDF!10BLiInQ(Ys&5F-OC sLqj0aHZZU<~-264b;Hk>FVdQ&MBb@03mQcE&u=k delta 467 zcmV;^0WALY0e}RMBYy#fX+uL$Nkc;*aB^>EX>4Tx0C=2zkv&MmKpe$iQ>7vm2Rn#5 zWT*~eLHxo|s#pXIrLEAagUO{|(4-+rad8w}3l4rPRvlcNb#-tR1i=pw7gr}m7b)?7 zNufoI2gm(*ckglc4iM^PrkWk&fT~$WG8Ppx*;O&{iXa9dV1F8;5;OI9YB3GZ@pTU$ zU+*G3%lq7)qesb^4DgA>b4)iZ;tk@NO-tvzPaI-JNg+Nb9y92I#E)E;U4G+Sa9H4( zAtRlfCk_#dg*KMkm=z6`c#1fzs2b%98J88#Tb$K$l{N3lUl`13D=Dti96}6Bh$8_J zGO8${3=0ujHGfh}BxyhD;U94P33AEgDuIz>0Trl_96$IU{O;DwPfoZ=!6?xAV%s0X zKwuYW)NK3v*tQ!dfd3h|(pvsX9hm(jz1GsgM?mj3aBw3au9k0rgF|4XK-uda?-K56@9p0+&HjD>+l6w`22e~! zkv|wV0%A)?L;(MXkIcUS000w7L_t(|+GC&`{Kpjdk4=zL005{F1pGh*L%;w4002ov JPDHLkV1nZ6&F26B diff --git a/pixelorama/Brushes/Star/%star4.png b/pixelorama/Brushes/Star/%star4.png index 5b2175e37cb0f29dd4736b7eaf14e0566c46c4ba..ec67ec863b05c20efebafa1f677ea996b7cccffb 100644 GIT binary patch literal 244 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>0wld=oSO}#SkfJR9T^xl_H+M9WCik>lDyqr z82-2SpV<#mTHp~`%)p?h48n{ROYO^mg6t)pzOL*~SVcv6ST(O@9|H;rd%8G=a9mGL zSit(@{D=7*ib9MGniH7+F3p`{1(a4Tag8WRNi0dVN-jzTQVd20Mh3bDrn*LkAw~vP shK4|-ZD3$!VDNVD#B>x5x%nxXX_dG&%z2=B8>oT7)78&qol`;+04<$AX8-^I delta 465 zcmV;?0WSXZ0saG!BYy#fX+uL$Nkc;*aB^>EX>4Tx0C=2zkv&MmKpe$iQ>7vm2Rn#5 zWT*~eLHxo|s#pXIrLEAagUO{|(4-+rad8w}3l4rPRvlcNb#-tR1i=pw7gr}m7b)?7 zNufoI2gm(*ckglc4iM^PrkWk&fT~$WG8Ppx*;O&{iXa9dV1F8;5;OI9YB3GZ@pTU$ zU+*G3%lq7)qesb^4DgA>b4)iZ;tk@NO-tvzPaI-JNg+Nb9y92I#E)E;U4G+Sa9H4( zAtRlfCk_#dg*KMkm=z6`c#1fzs2b%98J88#Tb$K$l{N3lUl`13D=Dti96}6Bh$8_J zGO8${3=0ujHGfh}BxyhD;U94P33AEgDuIz>0Trl_96$IU{O;DwPfoZ=!6?xAV%s0X zKwuYW)NK3v*tQ!dfd3h|(pvsX9hm(jz1GsgM?mj3aBw3au9k0rgF|4XK-uda?-K56@9p0+&HjD>+l6w`22e~! zkv|wT0%A)?L;(MXkIcUS000q5L_t(|+GC&z_z#3wgeU_5DUbvGn`B?000000NkvXX Hu0mjf3)9UA diff --git a/pixelorama/Brushes/Star/%star5.png b/pixelorama/Brushes/Star/%star5.png index 137ced5377e7127af9765de4b9768d8963339cc8..88fe788bb52eca3bef8e8added1ba843ab54a096 100644 GIT binary patch literal 250 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>0wld=oSO}#SkfJR9T^xl_H+M9WCik>lDyqr z82-2SpV<#mTHp~`%)p?h48n{ROYO^mg6t)pzOL*~SVcv6*f!j^ssRc~db&7EX>4Tx0C=2zkv&MmKpe$iQ>7vm2Rn#5 zWT*~eLHxo|s#pXIrLEAagUO{|(4-+rad8w}3l4rPRvlcNb#-tR1i=pw7gr}m7b)?7 zNufoI2gm(*ckglc4iM^PrkWk&fT~$WG8Ppx*;O&{iXa9dV1F8;5;OI9YB3GZ@pTU$ zU+*G3%lq7)qesb^4DgA>b4)iZ;tk@NO-tvzPaI-JNg+Nb9y92I#E)E;U4G+Sa9H4( zAtRlfCk_#dg*KMkm=z6`c#1fzs2b%98J88#Tb$K$l{N3lUl`13D=Dti96}6Bh$8_J zGO8${3=0ujHGfh}BxyhD;U94P33AEgDuIz>0Trl_96$IU{O;DwPfoZ=!6?xAV%s0X zKwuYW)NK3v*tQ!dfd3h|(pvsX9hm(jz1GsgM?mj3aBw3au9k0rgF|4XK-uda?-K56@9p0+&HjD>+l6w`22e~! zkv|wZ0%A)?L;(MXkIcUS000+BL_t(|+GC&`{0Bl*0SLq+gb*YF004Vh3-#qp(P#hw N002ovPDHLkV1oRq&FlaG diff --git a/pixelorama/Brushes/Star/%star6.png b/pixelorama/Brushes/Star/%star6.png index 0cc593a394c4e396b1fbc624286a0767ef3ecba5..4e8950ea74132fdf34d4fbaaeded5144f46f228d 100644 GIT binary patch literal 249 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>0wld=oSO}#SkfJR9T^xl_H+M9WCik>lDyqr z82-2SpV<#mTHp~`%)p?h48n{ROYO^mg6t)pzOL*~SVcv6*pJ`fdIc1c@N{tu;kcfh zut4IEy2h9J5AElucq#)e=G)2sQ*r9Pr9d^RC9V-ADTyViR>?)FK#IZ0z{o(?z*N`B xFvQ5f%Fqyqv<(cb3=H1xotTcIAvZrIGp!Q0hB*&3Zv!EX>4Tx0C=2zkv&MmKpe$iQ>7vm2Rn#5 zWT*~eLHxo|s#pXIrLEAagUO{|(4-+rad8w}3l4rPRvlcNb#-tR1i=pw7gr}m7b)?7 zNufoI2gm(*ckglc4iM^PrkWk&fT~$WG8Ppx*;O&{iXa9dV1F8;5;OI9YB3GZ@pTU$ zU+*G3%lq7)qesb^4DgA>b4)iZ;tk@NO-tvzPaI-JNg+Nb9y92I#E)E;U4G+Sa9H4( zAtRlfCk_#dg*KMkm=z6`c#1fzs2b%98J88#Tb$K$l{N3lUl`13D=Dti96}6Bh$8_J zGO8${3=0ujHGfh}BxyhD;U94P33AEgDuIz>0Trl_96$IU{O;DwPfoZ=!6?xAV%s0X zKwuYW)NK3v*tQ!dfd3h|(pvsX9hm(jz1GsgM?mj3aBw3au9k0rgF|4XK-uda?-K56@9p0+&HjD>+l6w`22e~! zkv|wY0%A)?L;(MXkIcUS000(AL_t(|+GC&`{3j^%9|$2NVU4%}01mka`O;m3q5uE@ M07*qoM6N<$f=Xk~)Bpeg diff --git a/pixelorama/Patterns/Brick.png b/pixelorama/Patterns/Brick.png index d16085a1cb95cd4f7c44c2905b4f7c23a3019a9c..32b073d5ade0ea05d145c23edbae605e2d4674f6 100644 GIT binary patch delta 602 zcmbQh-px8eqMn7Bfq|hhB>gy$Vo7)Ob!1@J*w6hZkrl{SNcITwWnidMV_;}#VPNwY5|NsAIRa}+;Dq~FYc6Z@uyEnB8$l)yTsE;gWV9-+rVaAH3_GLg(_7YEDSN12Y zq9QzO8}3`x05utVx;TbtoVT4|IH^TJz;(9t2~mOK6}ofg6c%Z$I$q*qk}AC8-@mYQ zU1^gS_t(n{PP}H3vB2?U<{VQ)$>e|{;oa)Rvn&=oS+>`%%3b#B#c#jfEt%rBSnbQ{ z)%6)0y*FJ;TT&sMyJ+JEdCL@)AL`RxvfuAtu}iMDTA5Si#TAc>O^wGbk`D^>Zg-n; z;G@=@V+Z~{vskkG+}|75>WUbeSRB7y0{BTpK~z}7tyi&b+b|G)0tiipGzBr>!9%{F-;})pvK0A%qEiZVZswr* zfqX%n-GDP0Fyz62TnSKW70~Do)R9N(NXtRFNYqi3bno4}r{w+$M+jq^x%2q}(Xq|k zHGJ;J__gHtOTR$503M%#+poZ%zd%0G3(a`}eE+F`5g{vb|GXO;`y&T>qlV3>34Q@eTVU8nQ;LC4pX#@pcBbAvMZ z*0{X5xU_pDqyrMRV>H2!#rPu)Q3nP!EY!IZ^Dy^gF`W^0AQ!OmHv{AtrQNT6&Kn+A zrY2Jx9>z*xM0LOLJo6+AAjH5`!A%rP_Ro5Z!Bmmb#v zsdwBw0g7WD8hOn$zZUf0;}PkJ`O-q}8S?|62y;FN*KKAo2XrkHrkkcusfQ`W+tlTR z-!lvZpFiRF5$w-h%k`i0$8w;@^!m=#Y=e7Ywf|I|$Na+eoy(zHF}RIzYl<<28gDJ3gwVf(v{&-}faAdPd)goJ zi2tKED0&!S%CY7BJXGVxPeeRm?7u;AZ65eHPrHr(>yL!#TKJDN|Amr{u<;KRbTmf& T8J5OQ00000NkvXXu0mjfR==eQ diff --git a/pixelorama/Patterns/Ground_leaves.png b/pixelorama/Patterns/Ground_leaves.png index 5a2869758eba20a1c766a4869083d98bdb6c4661..d26dfee1099bb34fd5344e9cbbec8820b296c748 100644 GIT binary patch literal 4939 zcmbVP3sh5A*1iD(B!UB&3>v@&m68y}BqV{vS5?Am6bT6lU>FS$NaPX70~A|VK~ao? zR!QpvRDvJ~qy)hMoX+^fnrWj^kcW0ED1wNtww78uv&PvssK5Q|tTq3ClXLI6=j?sX z`S$+yKKJa7i;Z;0lkfqNt0OrZ;#mBb zFJD%;%{&2JnAAT+hCA(33<}@{mlu_!L6G42Xu)i*TTuXwF52j|e3u7UBEbzyy`9wq zO57(31+Sp-|9^j%TL7ex=j#cgQYlVCnBghp!Y-u46A? zFo?gauZ|$K0cQHy06%}- z>hsI@kuEv(%5e4O75B~?KU;K}@%65y;~Nhb&Mvh*uleHgW>)OTk01Qw$gqEhOA|79 z@Nbh*8%hxQq|Z-xhfW}i)Y?Y8=WycCzPUHlANgKAn=pk_V8?eLpI#G|Dpa!jWzU6<%`;BKI{FZ)pSY}56@Snk_28G&p%o`oD|{}ojxEJ~6sm9Woa$IK zPLEBAzf!ietaokEozBIn7lbp~A5oqk{TXweOWp2K^5?t2su+1^SLc(C}^2ea=^QvACbqdI%-7_DBr}5<^k62!q%*iY zdMJ;{Au~dGj1XQ39b|VNa6#sP#yu!+U%wq2P`^TnPVpKsT7QjrBh(#Vp>c-6oZqSw z-$IFTm`0O<>b|N!m@z&3G_sciFYh59F%i)bFcAs~ZZGd3s}WacXBTIztBZ>Z4(Ez@ zBe=WGnBg|ZYu4`wex`jLEn$qRx5$@3P@_w}WOQWw%0EEem%K<=_I=F;F0784x= zgTvw6X1L9Ecc0Dl_w{G~pRbqa5l>fiO^%p(h=V7_(G&CXGV&g*6N|B5uMLTDaCE{t zySU=;GeDrj1GSW+gOei`>*NH|A3;Cjuk>8~@|xx5 zt=_)d{R4wT!z1?}j6NJ2e>Cy^56^y_`sw-4FMdIBp*UY()5!i8E>FPa;N;}!2)Cd1NaewzuW?$)#6yPdt(@i>DnSie`94uHgzt-5U zX!+={Z;y_6U9wt88BpFGYcTE9e>gIVAEULKI0x&t)jl*23Zyxl)0$C2g7v2UepXux zF06a}ah0+2mibI%q;!f?yQtNk%{<^YZ0NV5$6}NSYexLO*q5ezUO%-~YQ?p{QmY*p|{>LhAY|*(O z8t-&`>jC^2weQC5kYd4paXCS3E8m?v=9A*CsT6xPZYymVKs(D*0t;X6RZ;PgHP{3D2SMv!H zZq0R}!c+;!YZAQ?XNLc?P^)ju>RMBPW;rsVWRwuJ<-WpDGrnsC~{fB#Vhxr7t+;@~XBv?1_ zVo%k`qu!w)|K;&@KGk)^YJScW*HP}oWYeBg0^BoP6P7Tf^EghA;rOKZ5ya7nwpJ6k zVPxXYgZJ-VYN|069py)6;ayROD)#1bCSe3c--oFK;Ma38RGwslJ%5ksW@q=4AjK4} z6kS4dty*ZVPG9ATNjw$Hz@JuZ#ery;Ql8RqyFyp za^tz6`$_~zbCq7+ z%Y?J<)=z3#f@D@isPkmLb|OcsBaCKM#EdOVF#s6V9O=$xf`A`aa;Cv(t~4c!S&HU~ zF>3eOaeSZ>TqeztqHuwanS!JqF|`S31SkdZoYs-2JTTUlRB3j;Rs!;sjdvPj zBzTIc$i(P8+A7SdHK~m!KbKued_vK7VoNou(q_8}&({5<; z^p1R;&BoURq=_%;L8YlOI|htSYd0RP+jin4L9EkM@?M$6Dv69A`)Wxd4ZPVk(J*U% z8yJmN+o*XMbQ=$`GIsjjnhFb;v_8J`W~;b7Q^Jj2S6R@B($Z9Mq-k5pXscvdiaQ}f z>}&!zrMP>Q7cZ%rDiBG0lJ^&g1mJR-JFRL;%aU*tt@4OKC0L<6XO8sKW=KX#Y0jGA zuh=v!aZn(Rl6a^1X$;rnCFYX}C3;9(4V$jKUtqXmOR3BH=Q^6_cZd5RAxfu2*!eX^ z{TPiinH;HvQZI1j`+c$wTR$u&^O|LOR@EqB0;aKuiuX_ScndYQ<~G{dNg}#Sz?=^Y!k{Zg7~s;j+T90B9FVDe<}@i zsFq!MPn1ryN|gNds7>=bZrJ$Ln0tl_G*2|uG(H%enNxfoStbBo12ewaUQ8ZYHRM-sq5(-+46|e$bfv6f?4zSD=e01AaUJw238CBi5ZM(n> znGeD(V(GnaDuU0&plM$=GhS*ULJUh&W*w(c?gBscL2_C-&36hGEs#*|Rzl!NxO~ks zQX&N`z+Lqa(horFk%Vlzx>`C~V5m-t#nwagkhvD1$#L^DZ*EUN^bnb^Cr$BF^r347 z=VeNkNgUD%5E6|Ei*NYOEINw1jTo?%NR&ak@ZoFclolkw1Z(8^9cgW*;BFp``ugZbj2|axW2!a#?f;Mtmk9SLTc-Ss(8kXothObF9Fte@iPb(=E^|zYZ zPK9Y^d8hFp&*~3ZuCVjaFbg7eMOTd$REl+q&&~w=B@OcNWE0O6Z>CCZ#?B#X*<=H3 zV*qqitJ{8@QP)g>r3)*w7d+KKCYDY~S-TvP2<)*7XK%)d#T6w)KajRUQfKO=n{4f4? zuoVpkqVU7>?bG3%2;sfasGn>svl_t+ZI#){g|Oe9%;d%z^*236=f!slvtZ{ta{8wr z9@f4?CPkg(LC$C}?T&b;901#NO^hqof{Vu3(PZ-Lw&CG#0eY^C`NigD-E*9{BoPX@0w4 zO(d{JtGh1tt-A6ok=AD7oC~_Uou{WXyQ4g*%kMZj{MD)gJou*F13Y(Iml@YkszE;! zJaE47jbIf>9}U=QYg;qQ(C3IXMSC2d`G;d6plf6;G6E~99gD3T&_t|!@*yv%KfbwJkoCl{AxtI${KlYrdEN3 zFxQS=4TWy6UymqJrrUeRFy=VuwHw-wP^ik#7RuCe)-Ds_%bi-fSl26h&rC(_0LtPetQeuvgHvrvx3DL2crk&xm3uaiMm`$jfFBUir; z3Hn0vJO7-}g=7YU1vfflA(?A`pB RY&}nk-qzEY=a(m%$)AS(*)lF=J+|St1mbUDhZmOQ)12!bHiI zkV7VeN|v%lDy8IoM*Ys|yzhC>?>(Q-`}^-;%-q-gy}sA=e4p#OpZlH!YfBSe9uXc8 z2*isrHM9ZV!R!~;HsC)kEbKi9wEbn6ofF*#6AY$M$(}?%0+=33A%F=XL{AVXgmojE z_^VVIZ~Quq=Rh=Cu^rRJ^`g0bMG}1d-h!~zxt4F`4Hp!5$38bIdc4ZiIk3$4O~1O; zuv7YJhGNw1wi!`!qIMKX=dkF?^0(y`g(K_K(eQhVt~`zL%eRY9LJh`0JLk+JFYcg~F4IV&H!XFb-}>?fvp*Yv+_FD?vT&~aUlt{&o!XyR%*m~o^c zDr~fKrT#PbblZIUBe@8NZY@>*%F`J~VS=d@xeXe;4+BmzO)^z>zvkofGKF>g}D0jQ4-<{bV%`aLbItA38L`OfE<-gUnY^j@g zMwhE?>#kd!TLU_W<`|tlsU4ej&p(Mcb8pMpJxl4}h#jViC+wP8Bk7~!Gp&VPLI-tC zO}Ft2W*$1;D!VAtzWH=6M}kC}lzFN=B(9jpTuvr%;DSMtGxZTN%ax`qo#9kmoMtXp zQ$6F`9B{R$-Nom|joaS1skYJcn{EWYFi3U_o4K3ienRy5IoPX|RAX_%K;N}OOwo9b zX8~bw=)y5;Vym>mjmAgi*R`$Zxvjz{P*#zTY`go9l)5>sFMfhr)Ap%0rT!ZI`ILww zEwY5-BU6+eot?b1xk}2aP}cIhI=&!}iHEW8 z*Y9_OV%MXbvpk1={mxQnXHGq|GGX%Y z+VjSi%4aT#8e!4R*YqtT!+b24FKYI2-EdGhe&sKmjDH#jP50}*{Y)wI!br6im%HDw zp%w9Ao`gAbcgQaTqrZd&=N?qGX{4(P`>qykIk7@w`RGqSuF))8VmyB0#&@*E)A?H7 zuhJ7EzG6aShtp8G6{p^R5@a41fY&<;o>{)HH=r`?WKp*4neALxGdCaL(Xp3>59GL< zyvM?XVF2#4z=T&kTIg zLe6VFX%cuZp3C59pFsc0G|DGu9~bj|SkNWP)6Wi=SRvk7M$O_Y=?|NiXN*1_7vrYv zm8#t9fHn>fAM3xL&y5bYcjBx9ojH7n3lj&LZ(K<5F)=<^?O72w4))oo2b6{9HG|D=+CP zat57TdKqc@Rn{5n<=1=s_aKU@uRdWM#mw1@9@>V+M1Gw+mz63ps5yQ?&fMxN+;)zo zF&CH^=`mP`<~4#RoB~;Tj$a8f7ihA9E2n9QYI(f+T>murLJ?L$r*;g~u`eoTM zRQ93kVv<9NgvlQGSwt9d9%U>VR8&>9Y!K2T6muFO7e^_O5gUyb^fl>%t32)Be&s3WV58OoBinV2d@x0$9c1bf@O1^>wRvf z$a_b~?>=m>tIM#vxo6_OjJD8#ENo?QZ%%ofJpcZWm4;idZ=E@AMIPvXaJYkCWECub zASD^MP`yiz!C}Z)pzjKV8E;zhjT;|gx*fVWX%^||Z}eG7cW>awYwlUKUa4;2AjUuv zNA_&?rlPCJ5RhH5?15mx%kfyV6HU_%yv)!WrEAYp1dRtx6)Gibt`Xd$E;CN5agWvJ zJ(pFB<@3uq;y4@Ne&$n%D)K7%{t`;;v3LWA@__|#1NdI-1VJgUlFuZ+UV?>swwW+x zd#(OL8P-mwg0feFcQv-+8pF;q*kr{h24ZURpaDG;s~T-X@3;aBkKSq@a_`krQ&4!S zk9CoLkd`!OIe5!JdAD0h`d$9vgKL5D_s-wH6SBJ~W_y+@lxQipx2f{}x%%e2WOtW7 z<$Xt88xAU~DkvZCQ0VI3Bx-WhafGf4Nr*>JW*O+Z)wPwBH)SSA`3x0z9G#rLBGm9y z_wDW)otn}fSHiRrsrijgxf(t;vyK z7`_7)933TbTr`AOHPjmJ38&qp!7J3$8hk-b3ZKe!%bk*ro)B*8C#e`*=zb#NERHiB= z<^wT(N8>q5Y3iLFhS;oy&Gt>yr*FLlZiw4i>RjVa;ll{HS9OBj1uVL(2bsJtPdwGc z4pCE?lZLpX(&4BWxOF9Q>oJYVuk;V*1RnEV_rdvNMa(u+%NoXcX}5NzNA8f8k(W6Q zkqCM>`U_{BR{U~C<>z_)@-!YpX#H;B`S=r8b!&_0mz@`b0& z=^=D1Ny#eM;?aBP084>mV13v>vy@fW*vXLB+S@xQ6Ifzl0n}p+kV7@1F%;1G-j7p7qi(Su5t*CNS&0AAQ z3QMk|1AFN{GQrwO-;0BPJt4ok+nPIm^lgArZ*6a;`reoez-W1CKBw_Rd)70vM1_XMt`bZrbY13)!MbeZ#Nsg2s?Z9Io-vv z*|1f`z@7WtM-m-cetqHd!of&Fu?oX#I6@42bm?qJ|3ZU~ms7>?D)9r$CTG-kzJ;*% z-d^!+AgZ$=BBK05!)GSV*aloBY9IOj(0ksejW;@(d+ZbMz*qL?->;4z6*)gY0ryMR z+1@bnz(0*4qX`@4{LtSqw@ApM%qO{6$Uh&IM>nDMlC6x8p)3!Bwc_4i58&o{abD-I zw)S@Ft5%Tg%_im+Uk`o~={#%38i|xeTin)qqbpaXPK{FTTNPd51B-kP0>4c3?a6)~ zw2Mb1xXnYyCt$A7WkFFV()g}EYbI!aUM6)~Q2rk25cIVg|2-Lj92U-?^=8BzGB4@V z>eDham5YHpLSupuGh3$W<=fLJ1NVg=Jg4a$jxZcxRXkw@Nex`7dIy*PHsoLtn#Vs` zQ}cAx1AJ#GU~eIzp#R>-%J#_WRAcLQ)wigjykS`W$$efe0D_OWZ{Ii(8Q5RN*FvDOHc|SQGhf+AT6B` z3I^v(po6glFQUJ;#M_1@2`~|_E#at&hM_421aG2g7?offW@(2D^Ti?Y5;{kCv_doi z0uq6a0f&(M{ArpY+7cVQn!sna87cwZfY5!lC7jUKU;{Fh09H{_QG!8?LWn^Ki6cB< zEh^qq)5g&F2L&+Fmhh(2DVk7daB#3vu(A@F>IH=(kw_>E0YxAn00Ke_^`~P(ApSH- zHpO=iLjny)1+*iQ{lRQb43->7*Org~=D|P6*~%J)0LC8y*y9a)8XXTs0Rt7_dH?_v z0fT8kU-9_jrHmL9+u6cu*Sx zjT}hD5sZQe{&dNogHrqgX+Osdq!HMrjlBKvo=_mEjmSUyn4r+szxl9b^dgcd8y;-* z&qzG(HykC9>bHTxx3uLpP47DZL325TU zI3iwix@uvIY|7iNL7hRXx>yqC)x8=oo(-flURF zD-i)6HB|%*3sb{GFv=P@hzf$B3_+^ER3M&kg0d=3T?4L6_?g0rN(4$9_G5ET^_PY6;?!xI8z0Yl)_FgSp4BOA7`ntIkKZ3%=D?01W`ABOHp zrjmeuA^PLV!L;9}?1&_SEgi#_4X&!D0#}8pz+ph1s;cV0gB%D{8c?@vRya%vu`z+i zX&M8R7@&NJB#ajUO7ZvFm;jR2G@ueNbTZYBO!m{3U?&A;du}uXSnEfbYg&+T76!mW|>c8Q%zSpHG;7g{4{uJMq5b%BUeJSxHZb$_NZ?vx_2FF%WTY`oO zBH%Y}0ifgeDV#UP--`gOlRui|Uv}c3)T;^trlx{Zg+VX~BpxU-3LP9uBLgE3Tso)^$Xz$4NM*geRe};UQ<);S-kn?vN@L&R- zbI{)&bU&(u-AMnzpC8rtAB+G{{}beI>HCjd|H$>X6!=@{e+&Fib^X7| z#q;}7ncxrX`+|Xk@U}~v27yELHmtdcA!wcbdx=q!4p_J;rp`1FNJ*0Y+7xnCCkQZd z(otw5&T&qWoxI{1O>G8%NtkZrL^mLl*oP(1kKH;rm`L{qv$yt+(L48nKpeMFhI)2R zErE`={l|@WMYtSp>#J|cNjY_DI!1z~D>AMHM8>T-vK!q7h!ka+wTo)n zF*ydhG}AbFxlxQS)zTD^vmE&G@hPO`&0n%=Uk?g{j;BNWxH+GZm}k<vH%TVTI2`3f`(NS`E0+g^_n<+*-$LSeH6}+66Q+@b(ts|+-yrPKJo;0^Y+J_ zo?Y=NSrhe^8X9kOQ%eB3UDQm*`4hFCVzF(k2@rGF(dk%JnDmgGx_KWr3nI0gX>9!b zF`$}k-%EF4v-D!40_<*HKCX`Q84ms2%(o6ZQ{S0IBjQY{Z?a{2u53XhX=Q{1v}OUR z>S=G{829c-_6P6gRruIFpryS(D8*4EMg7=g>`S71Vv->wB)23z@M)T?8i{Yy$u_di z`nSdWf!rs#ly{!jGP+z2lHDAyWe#zgPN|cu_E>8^td{zWFOO#&5v&sG3$YtZReYJbEo<`Llg$1j2=>CF( z7`&^yS^ind6Ra`5>gHy2DrlB}Q>VoP<2qEwuVC=9lf2YC$Gn3Pr8HZy^CIO^Xdsoq zXbfCa0`5VNqG<4naJ~Yk*M;*;=#jB^ulApHK1Y5LRdMzSR&e}5^We7 zzW4Bu$17G-*`;RvpwNJ%(V+9dU#nspV6~f499HDv9?Mc!%sjO?y&@&@U~_@~a;dOQ zm~^t#7wI(lxev)<+TuNE#9=Ns74gea3A@+q62RW_gXm2o}LQ_cDjL z^1{mwdQ}{sS8n_Oe8a5K4g{c$3oI-sbIc3A!k4#H4&O|D>`1w}e`M5)m7|eU^a-Y| za<$UG%iWzP!4>DATBVO5UA<9XV3YZ%Z)===k7D~o^o}iY#v;lJm#6ccGhCaFP3npT z%xI~Po0+72HjDDwIuCT~meWbg=WOMq>|hBTgpW_wuSm2!j>YMn^)jA^Lc9DQVPTJ}wFbcS`+ zFM}VbdJSyBDxdm*C!O5KBjpxrMeDxRaY}*^l+F zz4yQNTKnv?Giz;HfNz*Df*=8s^i&y?3^IGT!*h$g>@*Y}Wht2{2-5wI-%n~PDJ)Kx zWg>`SF@kKaN00~5wRsXjUgIIiR3U;S??aG~>edgj7eO#DYmFT3xIWV{{*RBpoB8AP z%;CwIp2?Y`w`M@tyE%mg1*Iq>E!8Vnz2j?W_*AFoZa|ROMP#PDZe39eonCrLChB#a zN~igIogVd_g0468XpUZ{-pHt~Sy!s9&@l9ysx=I4wZ0hfC7-^G*(4J93KK;FQIe>H zCxYLT#4q6&^8~^K=tvX_gghZ%m;}#6$O*HOVvrO)k_d!xLV>TK%uE{#eSh06Jm{luiw-t)8nZL-NZ|xt9sP6R%ahwV=eR$-HTG56q+tCW zCl<{2J~{O1Z`U6B`6R!g>zh{`1*d;FSajh`=-@c9UjDrJxNmCsQ1bUbNZl$GmtL8= zyZO$85o-_86~5aLMByj_*}=~S`3FD<$~sB56Q zaoLZ5TfF&R=Jbi5e)GzY(>_&sU;o$ga}VCg*I%vD=Dqih>93)4dsh#C>5B0GCOyjV z)tfgyyj^`Gyz;xt+j|NE54ue?hko6=7NuODI2)TQR3)`-ox6GXPv;MhujoaE&fEMy zeT5)?<(eExsYJp-ykWn=Ln$5z1!@e)l&9)$6nBL5)&|JWQQVLqDBp%0MxoB){}bxr zkLm}Y&H_9+4ynTjyg!tkkOfeuLHQwM?e>RrU4T02-`=yo)ioNmUQ@!@sMVJ<(j=K# z2USdUAxlOc%Z^I`>vfX7ct<|QWc5*PwrGGCA!Cje|ilNS;S8do4coqjzwuztjn zoZ>NKvi_KHA=KR;vGIh#JfEu5pJGXId&s7g)O}Q^kRcE0A+wp$nJdT~saPV0iAYND znE4V}jd*){dU;a4y}Z19e7t@AX#xIze*U3BbDyV0ge`a>B5eMAMpWz)Mr6#Q`SV!` z>=+(jBoZxHlJrud;Kf*>NI(uk@$vET_w%0@5HL@$aQ;HU|2fSJAc5ZGn%pUoh+81V zJ&-c<39uG{5dp_`9w5t0!T{iq}l(49#&c`=6WL{_(bMX=unukx?%_r9qPT4&i3fU67xF!WQZO&|`ni#UE#9SA52m0B zN8DZo%c|h?=XWd~NlDWq0(i14>7%H>h+umK|aE)2l`mZ@A zw>f$~3cQUUz{l7dw$<5X_|#k8RhXsO*iB{T+I4xS3yC;`#lEXcpkfj7w(zZLrH*q* z@j0(I*2Q77PsInEbxE6yi^AQ5J6*cnd-INW$z&ICios|_(-^mzTqZZCt{vAM$!4VX zU~=7}a1)naYwTQ~!)fG7GGntYH#xA3%xLdp7;fms&Z;kWpj`U*1|44OvQS;A_V3>hL(lqRMLoPnZudwK^He0ZKqBgtuQ-R}rA*fEKe-&IvWh_KXR^}99#uRUU_@G(7t?<$%`WiHMRN8>h{Oi>pz z;*_>4YIaBG^xp0wD^{RF_>530J z3rE>nwyr*(kehni!rg<6tOL|3s|0188W^-RHSY`2nU}ZOja_^|O(#hQb`UC7`|nw8 zN?6ZZb9#N*EXN#YtpjhlP*DzQ^!Muy;X0$WQ@xFDuw8n))9oUrw3*tYjLrzy)=llp zsF(#THbBD^*==#=60Xvn{^XGKn#Lh?szae`Or7(E!6ARGw&CdNnhrrb zZs_^s6MMPMc3F*r6Nr^=(%n{vsI@&flDJ#s7!DMW4iL7_(bzO%=F*Nf(8VCWG!ZC1 zgmaFqEi~dxRB0a?odYeoc4er+c5xV=H>xD#2Yfkvmke)dlPp)?;^te7JEd3lNR8}h zEW}30&GWbRfq`uT^b|Cg z7+F%yv`t!CRx-IX69p!7jlEO<#x~i(5&gCH#oT;wx{2_H<0zBM^M%txD(i}D%msQi zeYYTzR2JgZeep}>xXMU#n`k*C!&ZIfJvFFsh|&YO3LBxy>vc<(s=DQ0)f?}EucWqB zqb<$0VadS8rFa-e6*S?-QE>+2Z$J%SVG+5U&%7-&p9bFJH88&(p( z4ZMvxTq+~e7OXQ%6xtBWF6uyd}~M78;QD<62!wrzj1j*S1>KQQ%c#@8Ek;g#hC*ki z$0qnSVc3XCBsdSj5W$-CKY}W3H(Asnmc>G(Qyo3HuKE7fqVp&=ylN$i(wy(t8IQ^B zVx?ytjK$H|hD$AA=rtPfgYphdcvGF#W;^g%2+^3KcvW;?tgsl3b_Up_#CNI zPVDX52kz04xok5yf*lLZi-$ldw_lGK;pRY#=bF(bIDxhIQ0#NqVg zcJazwiya?(Pdu;>j%!sFrH0cFr5$$iF+=FEIZRd2J2NC1Yy5g3_;;sVmiEhu>A43-YI!JIY6P|Wf!L?N@lvb(xlZ0twpUoC3nGU-K2ad>Zt$@hk;ZU6o@_2uSvIL)&~ z-fa+GaqGPrPq2y=P>UEWsnkqf=t2?Q3%X1+BVv?W|xC$p1&)$gP zsw?1ed2w6;Urt_i`S6eC@sfGG>Ha-szfh=LSE4Q5^sg0Kudu%ag)njk&Fk9Icu$bWbB|HUW6<6EF(nzFb~*F3jp`Z=^3=zJJ+~tpKv7SI(3ihfSyZLgRy^AvjPUPC z{QPI&VKb|1G#fUMOycirs+E9y;TgE6ISAt7v#NRI2U5hpLO!Gez#X0s$gd{WGl0@8 zG)+>a*VGi3tE8G4$sAiR~)32-4 z=xemav$Fziy?S;BwBWbo3|ER_1fr?N-0+PtCII=b?1U%WF04fPW$e@{yF`&LRt zDTE=}v&#~a?;iE`c)suXp7(o><9q*m<~U~NzOL(c{?7CMUFUh-*EJJnVx-HHOxHWt&tQlrlFEEuxA(Gq(V1^Hs048{oh#-)6XWlLM z=r5(bL2F+GRRX>m?!T0hncWS3*4zr7IPdKBpg5~OzX)Osp?KGXShb$Ve+q)?LjZk?Br7{1E5^KFH? zTl@W+bA9d$J`5<6ty+=F_gh_-Yhpf|+q}eotg7mppYR$7$(e1nJG4qO^IX*$qkFjb zDYGC-gj_Xl|H5lntp8l3*bzUI*4~vP6X)9($f*HMgUa(~8ZN-5tR9YM)t1f17Nk3l zF?~=Ax2H$^@u;cMGXCnX%L8I+-^OCk8>_)!!MmzqK~T-PR#*q<-X#)Ms$x}Cwpy)v z|ED0nYj38D8@e7bAH`J`&Gg3wViFtbudIzue1Dy~XsO}jS4_z*lnafpJ}^-373(Y# z`gM_A(e9$!RBu&~D|?L_maMFtZzl&@OIW20T;9UKI}M$cDlBNWxwsvx{!~~@{iEy= z;;C!=gD4G&v?jBZxa&wm+`t+s%^7iHXU5r{3}9`gyMjWiAEULQ|1N7ff*v+nNO& zXwkuYLW2j`%DLIZPIA_cpFWZX9tisIezVQB%{oN?FWv{X1dx`ZPOUXeq6Y4V53U8q zZ4RAYJNlaINtJ)M*qIf?yF_fTyoiRrCdd3`d~aON9$K$Yk*55ap@EswD~E^nb74j8 zgZs!zPlMoPhMd0SN1?@~y-ypnUTf`{3`@m+2KyqYHJ_BKs`B1<9p3$**xTu(cVkbO zG<3|Nr{G4|@u3SNj?tq0Ls4Hu=F{Tyco+$*)+2Ad#qLH8=MIV-wb|9(GZ`0fOBY&} zdD$zx0Vjoe78iD^d{Uq-&?dR8MXJ=HxjvuW!ToM^?#Cua{XJSr_c=7jh4*`ETZQCZ zZSS*nEm zUFd00qaJ-T??Y{MJxNrRIXd!86IL#ETdJr!@U*~bu6S;a16?LAyc$bS&I`fQmig>_ zE?hy}LM%z&+clEBHK1%oXU`aA#GYtiT{jsbc;HzaUF>5R@s8-@>FbkSt$Zy=+YaMu z5?oN^jJhZ@`=MOCJNrP7q*xhV^?+o^jtGKGs%LmXmBU@*p-DquP1VHFkY$cjyK{<+ z^^cCPgiMUpzduV;Yp3Y&z^rOqpuGJ)`%kz8)}D**2G??|x)}2WmD=sKZoKlP_BWXx z46`E4dt4+{vfh?GFfex&e2TW!$BCYMa7#=?IFTW7Dnx9XgSh$Jnd$Ph1XOO>YPbX5 zol!Pxj-qXMXlFldtCr}xzjJY~(49b$J$dd$^IB;m?*(^2;4813UnU9f=!|Q*Z&W8P zfBk5Q895*B|9k-fzoXlbSm$J1Uay_fDtWb-Ru^#B@gA4qAwSR0R#xG034Kvld*Vhp z{7)i+Rvz5El<{DkUF6k-YpRU7%{H##oCR0CRT0y3Wz8<&em#mrArNM7z_Yo4-QXGQWjXJL$HkH0#euY@rdETF6?t$20nvi@b$Xsz1^rV4K^N`!uC3%1yMK_mH*1&0KeOUnd2S!0ldtn~c|36!o7aBmnL zK+Ps5?DrF=?kJwvH>^qrM@%w4z8hxo##VkbggEg<$P4o*M~6%>HV#u zD@+uEz%jwm7l3Ko%9)nx$*YgZwvEbnEV}0POy#B<<#@!9&g&DLF}p`vf>#fsze~!A z%#CFr^sL@$xY)s_pO{5--pR1a`os^-sK3~% z*`eqs_Sh19s-^G#!KY`HW3Qx;nr`G9rha%)n$V|Id|0^&?HOuU{K$^RVV@~_rob>x zk<)5vL^+i0iBR$^*VWOm)NyJMMf!SVeOFWyC zV)BwZAeH33Io(>nStW;3P#Z zJDAWt+w#=>-3--e&!#~1TKsjm5On-~Ktoi9K#;5RMO⪚>&#MS52*6w7OEkDo(X} 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 AmH+?% diff --git a/pixelorama/Patterns/Metro_tile.png b/pixelorama/Patterns/Metro_tile.png index b44bf5bc0a9f7846876786cc2bf40016b57ab4c6..4d103060a386bf209235cfe3ce91a339056f1ae5 100644 GIT binary patch delta 2075 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 RcpR7?iRQC`8VQwiDdu) literal 8450 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 delta 722 zcmV;@0xkXa1e*qs85#xv0047(dh`GQ00v@9M??U|0LB2ucrz<=k!v0b;{g#9FC@9X z8&i|x0VjU~gGod|R9M5MS3!=0FbteVNGO+xSMr2%=pVWDA0ZcuOR|T`)EFnE+DNOV z4z^=wJT@q$lx^FJwYF_L?dj)vp38sMJkMoFDdGKo0|3Tx#J=ym!?6{y){&Kvb4HBua{vuG9g#HDDmAMDG)Ttn5OA_0GY;LszDN2&tU-^IEXP~U>>-uVSOzOqLh+(bu}tyDkh>2 z73;JyL2#-pMw3xk;M5tg^iE|cPwKsga}LfqGb%R11~dkU2t-t^tVXur^TKwdfclLI_ybwRs&HH#z6y8lB~+w*^nrbY!Xao&=w)FviEx4J{_@ zJ;>b{*E-{tVe9!P&q z&B#K0?JDHKLI}6-w`RlJZdhx-n&qrvq}HS)ISoDYpM`QxA(x@m2_=PFllBP%Euh>@ z%oa&myuytt=luOLy8D>WX_GA0%9b8hrTl^cefL)CYVFj*fbO1BmxmE^DCO@qi^sLR zHjqewa?1HYESEt%p3i5AF<#nnt$iNK*4o>SYrg^D59&1ukkd%3!vFvP07*qoM6N<$ Ef`yGt$^ZZW diff --git a/pixelorama/Patterns/Wooden_planks_1.png b/pixelorama/Patterns/Wooden_planks_1.png index a15a664ca002bddf26a14107720922ec6c46f23e..79aa8d7678a1df3b6c8d4bf4885b39c6911b9064 100644 GIT binary patch literal 4537 zcmd5<3sh4_8lFJHBY+hIABY;1H;6Yk36JQPFmf_yCKKT3=P$UG|?Fh=9S>J!j9^N#@@F&V2uW z=lkdXXYLe5%?-2TI&%?1cGB?BXt?umWt+pbAU5qJ+}LR$ks%1xd~EZZf`dDi;n9%@ z<$EBsay3FPp=sqEgmMUkx)vcME<=kk8s1u$0f@4`Z@3ja}(4-eMr@B}SF{u6LzEvuNG3yqevG*V)D zi{s>I%kjRn_#0?iK}+K4Xhj}Rt;tSREunbyay7+Msc9wR;wzWO6d}nK1PMuDurP%X z!p~UvDSRbC3Id@aNI(h*0bdXd*B~r0Jxb_FW?K2sMhf^`GNt#CAhMaDwZq--R@$$(hHgwOsN=~t za%OxRd~|GmRjU2IP*=h}ZeC$@d-*hAWy$WE8@) zi*5DZaU+lP=M(-UA_;!5m#mVLQL`jTe!&*jRKA9Q2UnGZ3F8bmiQIDjIrFy zcoE3vJ!~w%m_;AisSit*nSo6z*6oom;Ix5aVAg%5`#KsLFd3wM>|^^8{1J1!`^co<2-Kc7-tt3o}0fXZ@k|G7ZutJJzF(qZGt0xQRv#XD<`Sx*o|KXgjgv~Y*J3ESO& z#?%;QZ%1s^f5ps5>=m!8$kv<%lV@&^rlV8(!@9&rS@~OoGJNax>(^{_);&nqw<`h7s8%FAUD?aj;2INiA@Q{SG_p?i|yRj1jZmE?;Y7X;4> z);BuuiK&ZkudMFS`411u@T%@8a04~1WW<=hw!P}&@7$@*+FJ80iCO@XMmM#ztdG#u zm@JDM8Sk%d?JBvQ^L^`~IdeDaI=%KamVPQ1i+#86J=6&JOZtQ92YAAvraxF z=4|?b+4}Wsy*ot!teD%b+*}p+eG7Qj4jkLp4#V?&`god_2TQ1XN1E$fS{B@PTrr90 zFD$IMcjS0StNMSQ*hrt!ws+WG(!uILGle32c)`AJ5F2~N2U&ET?IT_t^~YG`?aWQ2_i z_V$cT2Gbi~xg+VL*vfYbjytUy$H)v{58cVO7h4v~z-Rv~Evsg@kNxhn|C@xIq#Ca( z@L5pC(}+h64>GQLc!o)|TjnQycY3ceER4c-(L$KJOD6`2XJgF2mPj~kDj|c|#iv?* zAUbaLMvo>Z0_WAMbm>v8zHIQ2lOa-Y@Gd;#vFc5OGmg@ffYYGdhI7{05E@?=72()& zg30#j#DrxKQg0_fl<6vuAJZ1<8;9??RO<0+-f+(N88Us)x$TeXVb?zoE<*B|g&TZ1 z*+tY31B3oyqH>VbXw5&NXJU45t8eq&`n~C8j3*LSOd{Vd7;xS(0rRd=@iwbQ?|L{O zHek&d&8~*!)YOu|teW6Ulbwcj@h#Sifl1!Gru;AbD|I&aL2H|z!Nm9R>d zG;Mjj&9|khWOBc4=vDTZUYN`E^$m$9+m@GTL2CATmZaz-R6Q+{#3~lmH_5ByC6~4H zTljeQ&>tLR+kuU!`aHJKvx5i{Vbj@t@5tBM@^`bu4dWH$Hs4 zlf*}RqFD=6}DgZz6J`;_zl!DRjPQViq=L^ znixf~%2 zTFfNi1*Mh)ZmbDhUk;=wAWBW(Bj1?8kOn#cTxanTp98&203)I#VbUy`(kRmvS!vYl zY)z(uMgmdLmBKuH0-N-0|WVK*AjPvs*efPsPt?)JCmX{Dkbw)piL{784Pf6 z(m8_`&xDpCvT%$=sg_Yokf8nYnMANKmk-x3nEy*7YD%mkyJ7_w0h>ERsRO!&ecf( literal 6223 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 diff --git a/pixelorama/Patterns/Yellow_Marble.png b/pixelorama/Patterns/Yellow_Marble.png index b44bf5bc0a9f7846876786cc2bf40016b57ab4c6..4d103060a386bf209235cfe3ce91a339056f1ae5 100644 GIT binary patch delta 2075 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 WMY)#c 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 Date: Fri, 22 May 2020 01:37:46 +0300 Subject: [PATCH 14/14] Update CHANGELOG & CONTRIBUTING --- CHANGELOG.md | 9 +++++++++ CONTRIBUTING.md | 2 ++ 2 files changed, 11 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a46db32e2..5572e796b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,15 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). All the dates are in YYYY-MM-DD format.

+## [v0.7.1] - Unreleased +This update has been brought to you by the contributions of: + +Igor Santarek (jegor377) + +### Added +- Ability to remove the current palette +

+ ## [v0.7] - 2020-05-16 This update has been brought to you by the contributions of: diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6a8c7f933..6ad45f153 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -29,6 +29,7 @@ If you want to add new features or fix bugs, please make sure that: - If your PR is closing an issue, make sure to let us know. - If you're making visual changes, it's a good idea to include screenshots in your PR. It's an easy way to let others know of the changes you made. - If you are adding new UI elements with text, please include the new strings in the `Translations.pot` file. Do not include them in the other `*.po` files. Please make sure to group similar elements together (like element names and their tooltips) by placing them close to each other. +- If you want to make changes to UI elements that are PackedScenes, please edit them in their own scene files (open their scenes in the editor) instead of Main.tscn, or their parent scene in general. - If you are making changes to popup (and as an extension, dialog) nodes as different scenes, please don't forget to turn off their visibility. - When you're creating a new script, Godot will place some comments and methods for you. If you're not using them, please remove them. They're taking unnecessary space. - Avoid using the "pass" keyword. It has no actual usage, besides being used as a placeholder for temporarily empty methods and empty cases. Make sure you don't include empty methods and cases in the code of your PR. @@ -36,6 +37,7 @@ If you want to add new features or fix bugs, please make sure that: - If you are adding new scripts and/or scenes, please put them somewhere inside the `src/` directory, and make sure to use PascalCase for your file and folder names. [Read this guide for more information.](https://www.gdquest.com/docs/guidelines/best-practices/godot-gdscript/) - If you are adding images or any type of asset, please put them somewhere inside the `assets/` directory, and make sure to use snake_case for your file and folder names. - Do **NOT** use the `l10n_master` branch for development. Do not base your work from it, and do not open Pull Requests targeted at it. It's used specifically by Crowdin for translation handling. +- If you want to add an error dialog, use the existing ErrorDialog, change its text and pop it up, instead of making a new one. Please create different pull requests for each feature you'd like to implement, or each bug you'd like to fix. Make sure your pull request only handles one specific topic, and not multiple. If you want to make multiple changes, make a pull request for each of them. For this reason, it's recommended you create new branches in your forked repository, instead of using your fork's master branch. This [Git style guide](https://github.com/agis-/git-style-guide) has some good practices to have in mind.