class_name BaseCel extends Reference # Base class for cel properties. # The term "cel" comes from "celluloid" (https://en.wikipedia.org/wiki/Cel). var opacity: float var image_texture: ImageTexture # If the cel is linked a ref to the link set Dictionary this cel is in, or null if not linked: var link_set = null # { "cels": Array, "hue": float } or null # Methods to Override: # The content methods deal with the unique content of each cel type. For example, an Image for # PixelLayers, or a Dictionary of settings for a procedural layer type, and null for Groups. # Can be used fo linking/unlinking cels, copying, and deleting content func get_content(): return null func set_content(_content, _texture: ImageTexture = null) -> void: return # Can be used to delete the content of the cel with set_content # (using the old content from get_content as undo data) func create_empty_content(): return [] # Can be used for creating copy content for copying cels or unlinking cels func copy_content(): return [] # Returns the image var for image based cel types, or a render for procedural types. # It's meant for read-only usage of image data, such as copying selections or color picking. func get_image() -> Image: return null func update_texture() -> void: return func save_image_data_to_pxo(_file: File) -> void: return func load_image_data_from_pxo(_file: File, _project_size: Vector2) -> void: return func instantiate_cel_button() -> Node: return null