Skip to content

Animation Manager

SteventheBeven edited this page Jul 13, 2026 · 2 revisions

System Summary

Descriptive summary of what the system is and what it does.

A global script that handles updating the currently placed entities' animations based on what is in the user's folder.


Connected Systems

List of connecting/parent/subsystems.

Connecting Systems:


Bugs

List of known bugs. Be descriptive but keep it brief!

  • When large animations are input, the project lags while updating the entities

Feature List / Breakdown of Features

List of features and descriptions within system.

Animation Swapping:

  • Updates entities to have their animations based on the animations within the user's assets folder

Animation Defaults:

  • If there is no animation in the user's folder, default images are used

AnimatedSprite Templates:

  • A template animated sprite is created for each entity type. This allows for faster sprite updating as it minimizes loading from files.

Important Variables

Name the most important variables, their type, and what their purpose is

  • allAnimatedSprites : Array[Array] = An array of references to arrays of references to each entity types' animated sprites within the project.
  • animatedSpriteTemplateSprite : AnimatedSprite2D = An animated sprite that holds all of the currently loaded frames and information for the sprites in the project. There is one created for each entity type, such as playerTemplateSprite.

Important Functions

Name of the most important functions, their parameters, and what they do.

  • func replace_animation_by_name(animatedSprite : AnimatedSprite2D, animationName : String) -> void: Replaces the animation frames of the specified animated sprite's animation with the specified name. The frames are replaced by those within the user's assets folder
  • func get_default_animation_by_name(animationName : String) -> Array[Image]: Retrieves the default animation with the specified name.
  • create_template_sprites() -> void: Creates all template sprites and adds the animations for each template.
  • get_all_sprites() -> void: Gets references for all sprites within the project.
  • update_template_sprites() -> void: Updates all template sprites to be accurate to the animations within the folders.
  • update_animation_fps(animationName : String, newFPS) -> void: Updates the given animation's FPS to a new given FPS.

Future Work / Risks

List and description of upcoming work/risks.

Future Work:

Risks:

  • The current method of updating animations can lead to long load times

Miscellaneous Notes

A place for miscellaneous notes pertaining to this system.

  • Note 1
    • Subnote 1
  • Note 2

Clone this wiki locally