Creating alts for interactable objects using resources

Godot Version

godot-4

Question

I want to create a interactable object with many versions, for example, it looks like a seaweed pod on the beach; a button in a lab; and maybe a crystal in a cave.

All versions work in the same way, with a collision shape to be interacted with and an animated sprite 2D which should always display the same types of animation: idle, hit and break.

What I want to know is how I can create a resource (or if there is a better way please tell me) that can be swapped out to change the style from one to another. The properties that should be changeable are:

hitbox_offset,

hitbox_rotation,

hitbox_shape,

flipped_h,

flipped_v

texture (though each version needs to have the same animations somehow)

I’m pretty good at coding and can handle a coded solution, I’m just not sure about how to correctly use resources. Thanks in advance.

Why not just make a scene for each?

I thought that was inefficient, but if that’s how you’re supposed to do it then thank you for helping :slight_smile:

Inefficient in what way? If you have multiple different things then there’s nothing inefficient about making them one by one. Even if some common abstractions can be derived, you can start making them individually and then extract the commonalities at some later point when they become obvious.

Ok, thank you. I will consider this solved