From 954b6111c2e50596990dfe93033d8b0dbd75e57a Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Fri, 17 Apr 2020 04:59:23 +0300 Subject: [PATCH] Cloned frames are now automatically part of the tag The tags don't work with UndoRedo yet, so this is not final behavior --- Scripts/AnimationTimeline.gd | 6 ++++++ Scripts/Canvas.gd | 7 +++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Scripts/AnimationTimeline.gd b/Scripts/AnimationTimeline.gd index 5615765b1..3a54c7f83 100644 --- a/Scripts/AnimationTimeline.gd +++ b/Scripts/AnimationTimeline.gd @@ -102,6 +102,12 @@ func _on_CopyFrame_pressed(frame := -1) -> void: tex.create_from_image(sprite, 0) new_canvas.layers.append([sprite, tex, layer[2]]) + # Loop through the tags to see if the frame is in one + for tag in Global.animation_tags: + if frame + 1 >= tag[2] && frame + 1 <= tag[3]: + tag[3] += 1 + Global.animation_tags = Global.animation_tags # To execute animation_tags_changed() + Global.undos += 1 Global.undo_redo.create_action("Add Frame") Global.undo_redo.add_do_method(Global, "redo", [new_canvas]) diff --git a/Scripts/Canvas.gd b/Scripts/Canvas.gd index c6900d06c..6340441b9 100644 --- a/Scripts/Canvas.gd +++ b/Scripts/Canvas.gd @@ -1013,14 +1013,13 @@ func blend_rect(bg : Image, brush : Image, src_rect : Rect2, dst : Vector2) -> v brush.unlock() func adjust_hsv(img: Image, id : int, delta : float) -> void: - var selection_only : bool = !Global.selected_pixels.empty() var layer : Image = img layer.lock() match id: 0: # Hue for i in range(west_limit, east_limit): for j in range(north_limit, south_limit): - var c: Color = layer.get_pixel(i,j) + var c : Color = layer.get_pixel(i,j) var hue = range_lerp(c.h,0,1,-180,180) hue = hue + delta @@ -1034,7 +1033,7 @@ func adjust_hsv(img: Image, id : int, delta : float) -> void: 1: # Saturation for i in range(west_limit, east_limit): for j in range(north_limit, south_limit): - var c: Color = layer.get_pixel(i,j) + var c : Color = layer.get_pixel(i,j) var sat = c.s if delta > 0: sat = range_lerp(delta,0,100,c.s,1) @@ -1046,7 +1045,7 @@ func adjust_hsv(img: Image, id : int, delta : float) -> void: 2: # Value for i in range(west_limit, east_limit): for j in range(north_limit, south_limit): - var c: Color = layer.get_pixel(i,j) + var c : Color = layer.get_pixel(i,j) var val = c.v if delta > 0: val = range_lerp(delta,0,100,c.v,1)