Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[1.5.0] Add animation system for maps #4045

Draft
wants to merge 121 commits into
base: ui-redesign
Choose a base branch
from

Conversation

WilliamQiufeng
Copy link
Contributor

@WilliamQiufeng WilliamQiufeng commented Apr 12, 2024

Requires Quaver/Quaver.API#164

Allow using lua scripts to run an animation.

It currently has several ways of doing animations:

  • Segments and Triggers: A segment contains a function that is called repeatedly between a range of time. Triggers fire only once at a specific time.
    • A Tween Segment is added for smooth change in attributes of anything
    • An IntervalTrigger is used to fire a set number of times with a set interval
    • It supports dynamic adding and destroying, so you can use it with event triggers and other components
  • State Machines (Untested but added): A basic state machine that updates only the function of the current state. There can be multiple state machines at the same time.
  • Event trigger: You can set a lua callback for events like player hitting a note, or a new note entering the playfield.

It requires a Quaver.API change which I'll open a pr later.

quaver-lua-sprite-loading.mp4
quaver-lua-storyboard.mp4
quaver-spinning-notes.mp4
quaver-spinning-notes-endless.mp4

I'll add more previews some time. These are the ones I recorded several weeks ago.

@AiAe AiAe changed the title Add animation system for maps [1.4.0] Add animation system for maps May 2, 2024
@AiAe AiAe changed the title [1.4.0] Add animation system for maps [1.5.0] Add animation system for maps Jun 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants