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

Mega evolution animation is a little smoother #4816

Merged
merged 3 commits into from
Sep 21, 2024

Conversation

kleenxfeu
Copy link

@kleenxfeu kleenxfeu commented Jun 16, 2024

Get rid of the transform/mozaic animation that serves no purpose
Applied it for primal reversions and ultra burst as well.
The function can be partly imitated to hide the sprite during the animation of other gimmicks so that it doesn't flicker/appear too early

See the difference here : https://discord.com/channels/419213663107416084/774393519569502268/1251840634264748074
EDIT by AsparagusEduardo:
For the sake of self-contained PR documentation, I'm posting the GIFs here (before and after):
notsmoothsmooth

@kleenxfeu kleenxfeu force-pushed the master branch 3 times, most recently from 8755657 to b2bf85e Compare June 16, 2024 11:13
Copy link
Collaborator

@DizzyEggg DizzyEggg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, the commit history is a bit ugly with the force pushes, could these be removed?

@@ -2325,6 +2325,88 @@ void AnimTask_SwallowDeformMon(u8 taskId)
}
}

void AnimTask_MegaSwapSprite(u8 taskId)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since it's used for Mega/Ultra/Primal, maybe change the name to sth like AnimTask_SmoothSpriteSwap

{
case 0:
gTasks[taskId].data[11] = gSprites[spriteId].x; // Save battler position
gSprites[spriteId].x = -64; // hide it from screen to avoid the blip/glitch effect when swapping the sprite
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tab

break;
}
}

void AnimTask_TransformMon(u8 taskId)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since it's similar to AnimTask_TransformMon I would create a helper function such as AnimSpriteChange (or a different name) which would be used for both of these with an argument such as bool32 isTransform to differentiate between the two

Copy link
Collaborator

@AlexOn1ine AlexOn1ine Aug 3, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@DizzyEggg, do you mean to combine AnimTask_TransformMon +AnimTask_HideSwapSprite' and isTransform will control if it should skip the steps that are not needed?

@kleenxfeu
Copy link
Author

Also, the commit history is a bit ugly with the force pushes, could these be removed?

Should be good now

@AlexOn1ine
Copy link
Collaborator

@kleenxfeu can you make a commit (either change something or just commit and revert some nonsense) just so that CI runs again?

@DizzyEggg
Copy link
Collaborator

@kleeenexfeu Why did you ignore my AnimTask_TransformMon suggestion 😢

@AlexOn1ine AlexOn1ine merged commit 16e8be1 into rh-hideout:master Sep 21, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: move animation Pertains to move animations
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants