Open golddotasksquestions opened 4 years ago
Here's one workaround for consideration:
extends Sprite2D
@export var target : Sprite2D
func _process(delta: float) -> void:
if is_instance_valid(target):
frame = target.frame
This has the added benefit of working no matter the source of animation (ie. if you change the frames from code instead of AnimationPlayer).
Describe the project you are working on: 2D Action Adventure with stacked Sprites+spritesheet textures
Describe the problem or limitation you are having in your project: Composing multiple Sprites with different spritesheets into one character is an ancient technique. In order to do this I need to apply the same Sprite animation track to multiple sprite nodes.
Describe the feature / enhancement and how it helps to overcome the problem or limitation: A small plus icon that would allow me to add other existing nodes as track targets to my animation track, as long as they are of the same type.
Describe how your proposal will work, with code, pseudocode, mockups, and/or diagrams:
If this enhancement will not be used often, can it be worked around with a few lines of script?: There are a few workarounds (see here), but they all have massive caveats. I believe this would be an enhancement not only very useful for composite sprites, but also for all kinds of other applications.
Is there a reason why this should be core and not an add-on in the asset library?: It's an enhancement of an existing core feature.