1
0
Fork 0
mirror of https://github.com/Orama-Interactive/Pixelorama.git synced 2025-03-13 06:45:17 +00:00

Update to Godot 4.4

Everything seems to be working on my end, but further testing is required. I also added static typing to some dictionaries.
This commit is contained in:
Emmanouil Papadeas 2025-03-08 16:32:49 +02:00
parent f03338479f
commit 131f91e7af
392 changed files with 575 additions and 302 deletions

View file

@ -15,7 +15,7 @@ concurrency:
cancel-in-progress: true
env:
GODOT_VERSION: 4.3
GODOT_VERSION: 4.4
EXPORT_NAME: Pixelorama
jobs:
@ -23,14 +23,14 @@ jobs:
name: Windows Export 🗔
runs-on: ubuntu-latest
container:
image: docker://barichello/godot-ci:4.3
image: docker://barichello/godot-ci:4.4
steps:
- name: Setup WINE and rcedit 🍷
run: |
chown root:root -R ~
godot --headless --quit
echo 'export/windows/wine = "/usr/bin/wine64-stable"' >> ~/.config/godot/editor_settings-4.3.tres
echo 'export/windows/rcedit = "/opt/rcedit.exe"' >> ~/.config/godot/editor_settings-4.3.tres
echo 'export/windows/wine = "/usr/bin/wine64-stable"' >> ~/.config/godot/editor_settings-4.4.tres
echo 'export/windows/rcedit = "/opt/rcedit.exe"' >> ~/.config/godot/editor_settings-4.4.tres
- name: Checkout 🛎️
uses: actions/checkout@v4
with:
@ -59,7 +59,7 @@ jobs:
name: Linux Export 🐧
runs-on: ubuntu-latest
container:
image: docker://barichello/godot-ci:4.3
image: docker://barichello/godot-ci:4.4
steps:
- name: Checkout 🛎️
uses: actions/checkout@v4

View file

@ -9,7 +9,7 @@ concurrency:
cancel-in-progress: true
env:
GODOT_VERSION: 4.3
GODOT_VERSION: 4.4
EXPORT_NAME: Pixelorama
jobs:
@ -17,7 +17,7 @@ jobs:
name: Web Export 🌐
runs-on: ubuntu-latest
container:
image: docker://barichello/godot-ci:4.3
image: docker://barichello/godot-ci:4.4
steps:
- name: Checkout 🛎️
uses: actions/checkout@v4

View file

@ -5,7 +5,7 @@ on:
branches: [ release ]
env:
GODOT_VERSION: 4.3
GODOT_VERSION: 4.4
EXPORT_NAME: Pixelorama
TAG: v1.0.5
BUTLER_API_KEY: ${{ secrets.BUTLER_API_KEY }}
@ -15,14 +15,14 @@ jobs:
name: Windows Export 🗔
runs-on: ubuntu-latest
container:
image: docker://barichello/godot-ci:4.3
image: docker://barichello/godot-ci:4.4
steps:
- name: Setup WINE and rcedit 🍷
run: |
chown root:root -R ~
godot --headless --quit
echo 'export/windows/wine = "/usr/bin/wine64-stable"' >> ~/.config/godot/editor_settings-4.3.tres
echo 'export/windows/rcedit = "/opt/rcedit.exe"' >> ~/.config/godot/editor_settings-4.3.tres
echo 'export/windows/wine = "/usr/bin/wine64-stable"' >> ~/.config/godot/editor_settings-4.4.tres
echo 'export/windows/rcedit = "/opt/rcedit.exe"' >> ~/.config/godot/editor_settings-4.4.tres
- name: Checkout 🛎️
uses: actions/checkout@v4
with:
@ -74,7 +74,7 @@ jobs:
name: Linux Export 🐧
runs-on: ubuntu-latest
container:
image: docker://barichello/godot-ci:4.3
image: docker://barichello/godot-ci:4.4
steps:
- name: Checkout 🛎️
uses: actions/checkout@v4
@ -193,7 +193,7 @@ jobs:
name: Web Export 🌐
runs-on: ubuntu-latest
container:
image: docker://barichello/godot-ci:4.3
image: docker://barichello/godot-ci:4.4
steps:
- name: Checkout 🛎️
uses: actions/checkout@v4

View file

@ -54,7 +54,7 @@ You can find online Documentation for Pixelorama here: https://orama-interactive
It's still work in progress so there are some pages missing. If you want to contribute, you can do so in [Pixelorama-Docs' GitHub Repository](https://github.com/Orama-Interactive/Pixelorama-Docs).
## Cloning Instructions
Pixelorama uses Godot 4.3, so you will need to have it in order to run the project. Older versions will not work.
Pixelorama uses Godot 4.4, so you will need to have it in order to run the project. Older versions will not work.
As of right now, most of the code is written using GDScript, so the mono version of Godot is not required, but Pixelorama should also work with it.
## Features:

View file

@ -0,0 +1 @@
uid://b4bomkpkff35q

View file

@ -1,8 +1,8 @@
[gd_resource type="Resource" load_steps=2 format=2]
[gd_resource type="Resource" script_class="AImgIOCRC32" load_steps=2 format=3 uid="uid://byrkfj6hsea5l"]
[ext_resource path="res://addons/aimg_io/crc32.gd" type="Script" id=1]
[ext_resource type="Script" uid="uid://bdrwi3rt1gvr6" path="res://addons/aimg_io/crc32.gd" id="1"]
[resource]
script = ExtResource( 1 )
script = ExtResource("1")
reversed_polynomial = 3988292384
mask = 4294967295

View file

@ -0,0 +1 @@
uid://go3lteln7x3p

View file

@ -0,0 +1 @@
uid://b3yov4wi6hi5a

View file

@ -0,0 +1 @@
uid://bon05d4xjsyqj

View file

@ -0,0 +1 @@
uid://dtwi848n6h7ff

View file

@ -0,0 +1 @@
uid://bdwn6srcjn2rk

View file

@ -0,0 +1 @@
uid://bdrwi3rt1gvr6

View file

@ -0,0 +1 @@
uid://boneu1kl2wxj0

View file

@ -0,0 +1 @@
uid://cdkek8njpjk20

View file

@ -0,0 +1 @@
uid://bfi1mm158ge5l

View file

@ -0,0 +1 @@
uid://xhj756ypkcs6

View file

@ -0,0 +1 @@
uid://dyuyvpm04q46k

View file

@ -0,0 +1 @@
uid://bgys5wmhq4olg

View file

@ -0,0 +1 @@
uid://c6w6577okhdyc

View file

@ -0,0 +1 @@
uid://cobqhyqmpx0gj

View file

@ -0,0 +1 @@
uid://b5ryee5l6apq6

View file

@ -0,0 +1 @@
uid://icucbtatip66

View file

@ -0,0 +1 @@
uid://cjcli6rgqaqjo

View file

@ -0,0 +1 @@
uid://da67x3ua6ietw

View file

@ -0,0 +1 @@
uid://bvvbi3x82xnut

View file

@ -0,0 +1 @@
uid://dcbkpdpuf7lnj

View file

@ -0,0 +1 @@
uid://bfkod42iqrybd

View file

@ -1,10 +1,10 @@
[gd_scene load_steps=16 format=3 uid="uid://drlvhuchtk6if"]
[ext_resource type="Script" path="res://addons/dockable_container/dockable_container.gd" id="1"]
[ext_resource type="Script" path="res://addons/dockable_container/layout.gd" id="2"]
[ext_resource type="Script" path="res://addons/dockable_container/samples/TestScene.gd" id="4"]
[ext_resource type="Script" path="res://addons/dockable_container/layout_split.gd" id="4_yhgfb"]
[ext_resource type="Script" path="res://addons/dockable_container/layout_panel.gd" id="5"]
[ext_resource type="Script" uid="uid://bfi1mm158ge5l" path="res://addons/dockable_container/dockable_container.gd" id="1"]
[ext_resource type="Script" uid="uid://icucbtatip66" path="res://addons/dockable_container/layout.gd" id="2"]
[ext_resource type="Script" uid="uid://bfkod42iqrybd" path="res://addons/dockable_container/samples/TestScene.gd" id="4"]
[ext_resource type="Script" uid="uid://bvvbi3x82xnut" path="res://addons/dockable_container/layout_split.gd" id="4_yhgfb"]
[ext_resource type="Script" uid="uid://da67x3ua6ietw" path="res://addons/dockable_container/layout_panel.gd" id="5"]
[sub_resource type="Resource" id="Resource_8aoc2"]
resource_name = "Tabs"
@ -33,6 +33,7 @@ root = SubResource("Resource_hl8y1")
hidden_tabs = {}
windows = {}
save_on_change = false
layout_reset_path = ""
[sub_resource type="Resource" id="Resource_ntwfj"]
resource_name = "Tabs"
@ -75,6 +76,7 @@ root = SubResource("Resource_jhibs")
hidden_tabs = {}
windows = {}
save_on_change = false
layout_reset_path = ""
[node name="SampleScene" type="VBoxContainer"]
anchors_preset = 15

View file

@ -0,0 +1 @@
uid://cldhbvad7t45o

View file

@ -0,0 +1 @@
uid://c5kkdbcb85w8

View file

@ -0,0 +1 @@
uid://xuk3fvlfrkq5

View file

@ -0,0 +1 @@
uid://mwhs35vnqa23

View file

@ -0,0 +1 @@
uid://b1t8mm12gmwnn

View file

@ -0,0 +1 @@
uid://db3ceeoen4dv3

View file

@ -0,0 +1 @@
uid://ub03h706po7j

View file

@ -0,0 +1 @@
uid://ddcacjah2k3jp

View file

@ -0,0 +1 @@
uid://15gpp2i5y7ri

View file

@ -0,0 +1 @@
uid://c422vywy2m2eb

View file

@ -0,0 +1 @@
uid://blh2i68spu1n2

View file

@ -0,0 +1 @@
uid://dgiia2xg7fsud

View file

@ -0,0 +1 @@
uid://dpciapd2x2va6

View file

@ -1,6 +1,6 @@
[gd_scene load_steps=7 format=3 uid="uid://bq7ibhm0txl5p"]
[ext_resource type="Script" path="res://addons/keychain/ShortcutEdit.gd" id="1"]
[ext_resource type="Script" uid="uid://dpciapd2x2va6" path="res://addons/keychain/ShortcutEdit.gd" id="1"]
[ext_resource type="Texture2D" uid="uid://ca58ufal2ufd8" path="res://addons/keychain/assets/joy_button.svg" id="2"]
[ext_resource type="Texture2D" uid="uid://c2s5rm4nec5yh" path="res://addons/keychain/assets/keyboard.svg" id="3"]
[ext_resource type="Texture2D" uid="uid://bb6q6om3d08cm" path="res://addons/keychain/assets/joy_axis.svg" id="4"]

View file

@ -0,0 +1 @@
uid://bmtkqh6xvat7

View file

@ -0,0 +1 @@
uid://ji2g5biygmmd

View file

@ -1,6 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://bfjcafe2kvx7n"]
[ext_resource type="Script" path="res://addons/keychain/ShortcutSelectorDialog.gd" id="1"]
[ext_resource type="Script" uid="uid://ji2g5biygmmd" path="res://addons/keychain/ShortcutSelectorDialog.gd" id="1"]
[node name="ShortcutSelectorDialog" type="ConfirmationDialog"]
size = Vector2i(417, 169)

View file

@ -0,0 +1 @@
uid://b5i56iyq6ia2e

View file

@ -1,6 +1,6 @@
[gd_resource type="Resource" script_class="ShortcutProfile" load_steps=2 format=3 uid="uid://df04uev1epmmo"]
[ext_resource type="Script" path="res://addons/keychain/ShortcutProfile.gd" id="1"]
[ext_resource type="Script" uid="uid://bmtkqh6xvat7" path="res://addons/keychain/ShortcutProfile.gd" id="1"]
[resource]
script = ExtResource("1")

View file

@ -23,6 +23,7 @@ allow_system_fallback=true
force_autohinter=false
hinting=1
subpixel_positioning=1
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]

View file

@ -1,8 +1,8 @@
[gd_resource type="Resource" script_class="DockableLayout" load_steps=29 format=3 uid="uid://4xtpiowddm7p"]
[ext_resource type="Script" path="res://addons/dockable_container/layout_panel.gd" id="1_jxh43"]
[ext_resource type="Script" path="res://addons/dockable_container/layout_split.gd" id="2_lw52w"]
[ext_resource type="Script" path="res://addons/dockable_container/layout.gd" id="3_4h5wj"]
[ext_resource type="Script" uid="uid://da67x3ua6ietw" path="res://addons/dockable_container/layout_panel.gd" id="1_jxh43"]
[ext_resource type="Script" uid="uid://bvvbi3x82xnut" path="res://addons/dockable_container/layout_split.gd" id="2_lw52w"]
[ext_resource type="Script" uid="uid://icucbtatip66" path="res://addons/dockable_container/layout.gd" id="3_4h5wj"]
[sub_resource type="Resource" id="Resource_atmme"]
resource_name = "Tabs"

View file

@ -1,8 +1,8 @@
[gd_resource type="Resource" script_class="DockableLayout" load_steps=25 format=3 uid="uid://brcnmadkdaqok"]
[ext_resource type="Script" path="res://addons/dockable_container/layout_panel.gd" id="1_t44r1"]
[ext_resource type="Script" path="res://addons/dockable_container/layout_split.gd" id="2_rngtv"]
[ext_resource type="Script" path="res://addons/dockable_container/layout.gd" id="3_v86xb"]
[ext_resource type="Script" uid="uid://da67x3ua6ietw" path="res://addons/dockable_container/layout_panel.gd" id="1_t44r1"]
[ext_resource type="Script" uid="uid://bvvbi3x82xnut" path="res://addons/dockable_container/layout_split.gd" id="2_rngtv"]
[ext_resource type="Script" uid="uid://icucbtatip66" path="res://addons/dockable_container/layout.gd" id="3_v86xb"]
[sub_resource type="Resource" id="Resource_kn4x4"]
resource_name = "Tabs"

View file

@ -17,11 +17,11 @@ config/tags=PackedStringArray("pixelorama")
run/main_scene="res://src/Main.tscn"
config/use_custom_user_dir=true
config/custom_user_dir_name="pixelorama"
config/features=PackedStringArray("4.3")
config/features=PackedStringArray("4.4")
run/low_processor_mode=true
boot_splash/bg_color=Color(0.145098, 0.145098, 0.164706, 1)
boot_splash/image="res://assets/graphics/splash.png"
boot_splash/use_filter=false
boot_splash/image="res://assets/graphics/splash.png"
config/icon="res://assets/graphics/icons/icon.png"
config/macos_native_icon="res://assets/graphics/icons/icon.icns"
config/windows_native_icon="res://assets/graphics/icons/icon.ico"

View file

@ -0,0 +1 @@
uid://xx26ujdy2ow6

View file

@ -26,7 +26,7 @@ var ffmpeg_formats := [
FileFormat.MP4, FileFormat.AVI, FileFormat.OGV, FileFormat.MKV, FileFormat.WEBM
]
## A dictionary of [enum FileFormat] enums and their file extensions and short descriptions.
var file_format_dictionary := {
var file_format_dictionary: Dictionary[FileFormat, Array] = {
FileFormat.PNG: [".png", "PNG Image"],
FileFormat.WEBP: [".webp", "WebP Image"],
FileFormat.JPEG: [".jpg", "JPG Image"],
@ -46,9 +46,9 @@ var custom_exporter_generators := {}
var current_tab := ExportTab.IMAGE
## All frames and their layers processed/blended into images
var processed_images: Array[ProcessedImage] = []
## Dictionary of [Frame] and [Image] that contains all of the blended frames.
## A dictionary that contains all of the blended frames.
## Changes when [method cache_blended_frames] is called.
var blended_frames := {}
var blended_frames: Dictionary[Frame, Image] = {}
var export_json := false
var split_layers := false
var trim_images := false

View file

@ -0,0 +1 @@
uid://dwe6oxkf6xwgt

View file

@ -0,0 +1 @@
uid://nutpsm57qk45

View file

@ -0,0 +1 @@
uid://c61v16bx0rapv

View file

@ -0,0 +1 @@
uid://duc3un8okxooi

View file

@ -0,0 +1 @@
uid://ca8cd1hqh7cuv

View file

@ -0,0 +1 @@
uid://cc853sypyyen6

View file

@ -11,10 +11,10 @@ enum NewPalettePresetType {EMPTY, FROM_CURRENT_PALETTE, FROM_CURRENT_SPRITE, FRO
enum GetColorsFrom { CURRENT_FRAME, CURRENT_CEL, ALL_FRAMES }
const DEFAULT_PALETTE_NAME := "Default"
## Maximum allowed width of imported palettes.
const MAX_IMPORT_PAL_WIDTH = 1 << 14
const MAX_IMPORT_PAL_WIDTH := 1 << 14
var palettes_write_path := Global.home_data_directory.path_join("Palettes")
## All available palettes
var palettes := {}
var palettes: Dictionary[String, Palette] = {}
## Currently displayed palette
var current_palette: Palette = null

View file

@ -0,0 +1 @@
uid://doq8uff5if02l

View file

@ -0,0 +1 @@
uid://csvaorac4ie2q

View file

@ -42,7 +42,7 @@ var alpha_max := 1.0
var brush_size_min := 1
var brush_size_max := 4
var tools := {
var tools: Dictionary[String, Tool] = {
"RectSelect":
Tool.new(
"RectSelect",
@ -234,8 +234,8 @@ Hold %s to displace the shape's origin""",
}
var _tool_button_scene := preload("res://src/UI/ToolsPanel/ToolButton.tscn")
var _slots := {}
var _panels := {}
var _slots: Dictionary[MouseButton, Slot] = {}
var _panels: Dictionary[MouseButton, Control] = {}
var _curr_layer_type := Global.LayerTypes.PIXEL
var _left_tools_per_layer_type := {
Global.LayerTypes.PIXEL: "Pencil",

View file

@ -0,0 +1 @@
uid://dfb2qenp0c5d6

View file

@ -0,0 +1 @@
uid://71gveajmvnpc

View file

@ -0,0 +1 @@
uid://d234hj2s71hgh

View file

@ -0,0 +1 @@
uid://bm77r8chg2r4l

View file

@ -0,0 +1 @@
uid://ooft6ye4pllc

View file

@ -0,0 +1 @@
uid://8dwcqf3myvuo

View file

@ -0,0 +1 @@
uid://bwwqtiosx8ume

View file

@ -14,17 +14,16 @@ extends PixelCel
## The [TileSetCustom] that this cel uses, passed down from the cel's [LayerTileMap].
var tileset: TileSetCustom
var cells := {} ## Dictionary of Vector2i and Cell.
var cells: Dictionary[Vector2i, Cell] = {} ## Dictionary that contains the data of each cell.
var vertical_cell_min := 0 ## The minimum vertical cell.
var vertical_cell_max := 0 ## The maximum vertical cell.
var offset := Vector2i.ZERO ## The offset of the tilemap.
var prev_offset := offset ## Used for undo/redo purposes.
## Dictionary of [int] and [Array].
## The key is the index of the tile in the tileset,
## and the value is the coords of the tilemap tile that changed first, along with
## its image that is being changed when manual mode is enabled.
## Gets reset on [method update_tilemap].
var editing_images := {}
var editing_images: Dictionary[int, Array] = {}
## An internal class of [CelTIleMap], which contains data used by individual cells of the tilemap.
@ -294,7 +293,7 @@ func serialize_undo_data() -> Dictionary:
var dict := {}
var cell_data := {}
for cell_coords: Vector2i in cells:
var cell := cells[cell_coords] as Cell
var cell := cells[cell_coords]
cell_data[cell_coords] = cell.serialize()
dict["cell_data"] = cell_data
dict["tileset"] = tileset.serialize_undo_data()
@ -339,7 +338,7 @@ func deserialize_undo_data(dict: Dictionary, undo_redo: UndoRedo, undo: bool) ->
## each tile from the [member tileset] is being used.
func find_times_used_of_tiles() -> void:
for cell_coords in cells:
var cell := cells[cell_coords] as Cell
var cell := cells[cell_coords]
tileset.tiles[cell.index].times_used += 1
@ -355,7 +354,7 @@ func update_tilemap(
) -> void:
editing_images.clear()
var tileset_size_before_update := tileset.tiles.size()
for cell_coords: Vector2i in cells:
for cell_coords in cells:
var cell := get_cell_at(cell_coords)
var coords := cell_coords * tileset.tile_size + offset
var rect := Rect2i(coords, tileset.tile_size)
@ -400,8 +399,8 @@ func update_tilemap(
# Updates transparent cells that have indices higher than 0.
# This can happen when switching to another tileset which has less tiles
# than the previous one.
for cell_coords: Vector2i in cells:
var cell := cells[cell_coords] as Cell
for cell_coords in cells:
var cell := cells[cell_coords]
var coords := cell_coords * tileset.tile_size + offset
var rect := Rect2i(coords, tileset.tile_size)
var image_portion := source_image.get_region(rect)
@ -526,8 +525,8 @@ func _handle_auto_editing_mode(
## Re-indexes all [member cells] that are larger or equal to [param index],
## by reducing their value by one.
func _re_index_cells_after_index(index: int) -> void:
for cell_coords: Vector2i in cells:
var cell := cells[cell_coords] as Cell
for cell_coords in cells:
var cell := cells[cell_coords]
var tmp_index := cell.index
if tmp_index >= index:
cell.index -= 1
@ -553,16 +552,16 @@ func _update_cell(cell: Cell) -> void:
## Calls [method _update_cell] for all [member cells].
func update_cel_portions() -> void:
for cell_coords: Vector2i in cells:
var cell := cells[cell_coords] as Cell
for cell_coords in cells:
var cell := cells[cell_coords]
_update_cell(cell)
## Loops through all [member cells] of the tilemap and updates their indices,
## so they can remain mapped to the [member tileset]'s tiles.
func re_index_all_cells(set_invisible_to_zero := false) -> void:
for cell_coords: Vector2i in cells:
var cell := cells[cell_coords] as Cell
for cell_coords in cells:
var cell := cells[cell_coords]
var coords := cell_coords * tileset.tile_size + offset
var rect := Rect2i(coords, tileset.tile_size)
var image_portion := image.get_region(rect)
@ -597,7 +596,7 @@ func _resize_cells(new_size: Vector2i, reset_indices := true) -> void:
var cell_coords := Vector2i(x, y) - offset_in_tiles
if not cells.has(cell_coords):
cells[cell_coords] = Cell.new()
for cell_coords: Vector2i in cells:
for cell_coords in cells:
if cell_coords.y < vertical_cell_min:
vertical_cell_min = cell_coords.y
if cell_coords.y > vertical_cell_max:
@ -606,7 +605,7 @@ func _resize_cells(new_size: Vector2i, reset_indices := true) -> void:
horizontal_cells += 1
if not is_zero_approx(fposmod(offset.y, tileset.tile_size.y)):
vertical_cells += 1
for cell_coords: Vector2i in cells:
for cell_coords in cells:
if reset_indices:
cells[cell_coords] = Cell.new()
else:
@ -649,7 +648,7 @@ func _deserialize_cell_data(cell_data: Dictionary, resize: bool) -> void:
# Overridden Methods:
func set_content(content, texture: ImageTexture = null) -> void:
for cell_coords in cells:
var cell := cells[cell_coords] as Cell
var cell := cells[cell_coords]
if cell.index > 0:
tileset.tiles[cell.index].times_used -= 1
super.set_content(content, texture)
@ -670,8 +669,8 @@ func update_texture(undo := false) -> void:
editing_images.clear()
return
for cell_coords: Vector2i in cells:
var cell := cells[cell_coords] as Cell
for cell_coords in cells:
var cell := cells[cell_coords]
var coords := cell_coords * tileset.tile_size + offset
var index := cell.index
if index >= tileset.tiles.size():
@ -692,8 +691,8 @@ func update_texture(undo := false) -> void:
)
editing_images[index] = [cell_coords, transformed_image]
for cell_coords: Vector2i in cells:
var cell := cells[cell_coords] as Cell
for cell_coords in cells:
var cell := cells[cell_coords]
var coords := cell_coords * tileset.tile_size + offset
var index := cell.index
if index >= tileset.tiles.size():
@ -720,8 +719,8 @@ func update_texture(undo := false) -> void:
func serialize() -> Dictionary:
var dict := super.serialize()
var cell_data := {}
for cell_coords: Vector2i in cells:
var cell := cells[cell_coords] as Cell
for cell_coords in cells:
var cell := cells[cell_coords]
cell_data[cell_coords] = cell.serialize()
dict["cell_data"] = cell_data
dict["offset"] = offset

View file

@ -0,0 +1 @@
uid://qu538ibrkon1

View file

@ -0,0 +1 @@
uid://fimiscm4wdnv

View file

@ -0,0 +1 @@
uid://g4wn4q5n5ecp

View file

@ -0,0 +1 @@
uid://dwnsawu02ikab

1
src/Classes/Frame.gd.uid Normal file
View file

@ -0,0 +1 @@
uid://d1dgvksio3s6t

View file

@ -0,0 +1 @@
uid://cix6kinxmv8q2

View file

@ -0,0 +1 @@
uid://obalvssgqg01

View file

@ -0,0 +1 @@
uid://cram2krccwii3

View file

@ -0,0 +1 @@
uid://dysrj3m1c5at6

View file

@ -0,0 +1 @@
uid://bb3upnu804hk5

View file

@ -0,0 +1 @@
uid://1abhkm1o0nyn

View file

@ -0,0 +1 @@
uid://c6vbwslwgfphq

View file

@ -0,0 +1 @@
uid://cq77weuveyivr

View file

@ -0,0 +1 @@
uid://lso3tqe4yk8b

View file

@ -0,0 +1 @@
uid://tivy8vf4s177

View file

@ -0,0 +1 @@
uid://b0y8bmkoov1u1

View file

@ -0,0 +1 @@
uid://2wgdnu2slroe

View file

@ -0,0 +1 @@
uid://baid36rgwshrj

View file

@ -0,0 +1 @@
uid://ul0idgiy5rgo

View file

@ -43,9 +43,9 @@ static func create_ui_for_shader_uniforms(
var uniform_data: PackedStringArray = []
var description: String = ""
var description_began := false
# A Dictionary of [String] and [Control], used to group together nodes
# A Dictionary used to group together nodes
# under the same group_uniform. Currently only used for CurveTextures.
var group_nodes := {}
var group_nodes: Dictionary[String, Control] = {}
var color_button_hbox: HBoxContainer = null # Used for RGBA buttons, if they exist.
for line in code:
# Management of "end" tags

View file

@ -0,0 +1 @@
uid://cpqpf6fa53y3k

View file

@ -0,0 +1 @@
uid://clsjv6vcrcucm

View file

@ -0,0 +1 @@
uid://dkd2y552o12qq

1
src/Classes/Tiles.gd.uid Normal file
View file

@ -0,0 +1 @@
uid://c7e4fju2q2c6l

View file

@ -0,0 +1 @@
uid://dyififbas7e2t

1
src/Main.gd.uid Normal file
View file

@ -0,0 +1 @@
uid://dlxqc0hc51xu4

View file

@ -1,7 +1,7 @@
[gd_scene load_steps=19 format=3 uid="uid://dbylw5k04ulp8"]
[ext_resource type="Theme" uid="uid://bkb4syj8110el" path="res://assets/themes/dark/theme.tres" id="1"]
[ext_resource type="Script" path="res://src/Main.gd" id="2"]
[ext_resource type="Script" uid="uid://dlxqc0hc51xu4" path="res://src/Main.gd" id="2"]
[ext_resource type="PackedScene" uid="uid://bsgwar3l6qtgv" path="res://src/UI/TopMenuContainer/TopMenuContainer.tscn" id="3"]
[ext_resource type="PackedScene" uid="uid://c8dsi6ggkqa7a" path="res://src/UI/UI.tscn" id="4"]
[ext_resource type="PackedScene" uid="uid://d1jyt8wleg8ft" path="res://src/UI/Buttons/PatternsPopup.tscn" id="5"]
@ -13,9 +13,9 @@
[ext_resource type="PackedScene" uid="uid://d3dt1gdlf7hox" path="res://src/UI/Timeline/LayerProperties.tscn" id="13_4dhva"]
[ext_resource type="PackedScene" uid="uid://c0nuukjakmai2" path="res://src/UI/Dialogs/TileModeOffsetsDialog.tscn" id="14"]
[ext_resource type="PackedScene" uid="uid://c6fyrnyt3663o" path="res://src/UI/Timeline/TagProperties.tscn" id="14_fw6cf"]
[ext_resource type="Script" path="res://src/HandleExtensions.gd" id="15_v0k2h"]
[ext_resource type="Script" uid="uid://dyififbas7e2t" path="res://src/HandleExtensions.gd" id="15_v0k2h"]
[ext_resource type="PackedScene" uid="uid://clsp16gq4sng3" path="res://src/UI/Dialogs/ImportTagDialog.tscn" id="16_ohhks"]
[ext_resource type="Script" path="res://src/Classes/SteamManager.gd" id="17_k1xhp"]
[ext_resource type="Script" uid="uid://clsjv6vcrcucm" path="res://src/Classes/SteamManager.gd" id="17_k1xhp"]
[ext_resource type="PackedScene" uid="uid://clbjfkdupw52l" path="res://src/UI/Timeline/CelProperties.tscn" id="17_ucs64"]
[ext_resource type="PackedScene" uid="uid://clgu8wb5o6oup" path="res://src/UI/Dialogs/ExportDialog.tscn" id="39"]

View file

@ -0,0 +1 @@
uid://ddiwy0yrvpblt

View file

@ -1,6 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://68aakj2l6ee1"]
[ext_resource type="Script" path="res://src/Palette/CreatePaletteDialog.gd" id="1"]
[ext_resource type="Script" uid="uid://ddiwy0yrvpblt" path="res://src/Palette/CreatePaletteDialog.gd" id="1"]
[node name="CreatePaletteDialog" type="ConfirmationDialog"]
title = "Create a new palette"

Some files were not shown because too many files have changed in this diff Show more