[Ace] How to make evented transition effect

TheoAllen

Self-proclaimed jack of all trades
Veteran
Joined
Mar 16, 2012
Messages
5,134
Reaction score
5,744
First Language
Indonesian
Primarily Uses
RMVXA
Background :
This started from my project I'm working on. I wanted to create a seamless map change. But I don't want to go fadeout and fadein effect and change map in between. Then I was thinking, why not implement transition effect like how the transition implemented on map to menu screen and vice versa, but applied it on map? Then this idea come up. As a disclaimer, I'm not sure if this tutorial had been written somewhere else, so I hope it's not a duplicate tutorial.

Basically, we're going to do this :

Now, how?
While I said "evented", you obviously still gonna need two script calls, so it's not really a pure "evented", but hey at least you don't need external script to do this.

What you need to do is to put the event with this template.
Screenshot_198.png
Two script calls you will need.
Put this first
Code:
Graphics.freeze
And this
Code:
Graphics.transition(duration)
Duration is based on frame. So the smaller number is, the faster the transition will be.

Note that you will have to put the wait command right before the transition or else the transition will not happen.

For example on the gif inside the spoiler, I use this
Screenshot_199.png

You can also put a transition image. For example, I will use a default battle start from RTP file. The code will be like this
Code:
Graphics.transition(60, "Graphics/System/BattleStart")
And the transition will be like this

Ok, so what can you do with this?
You can do other things as well, not always transfer map. Something like changing the thing on map. For example, change event graphics and/or rearrange the event position while the screen is being frozen, then perform transition after that. Or maybe you can do it while doing tile swap, and make a transition between in between.

Another implementation would be like this.
Screenshot_200.png
This does not transfer the map id, but it DOES change the map (or I'd say, something on game screen)

What you can't do with this?
The transition completely freeze the screen. So while perform transition, you can't walk, and everything else like event (parallel, autorun) will stop for a moment until the transition is finished.

Closing
Hope this little tutorial helps for people who use VXAce. I don't know if the equivalent function is present in MV. So you better ask people who expert in MV. If you have feedback, questions, or suggestions, feel free to leave a comment.
 

cabfe

Cool Cat
Veteran
Joined
Jun 13, 2013
Messages
2,335
Reaction score
2,483
First Language
French
Primarily Uses
RMVXA
Thanks!
I had been looking into it but didn't think of freezing the Graphics first...
No wonder it didn't work.
I used a workaround but this system looks better. Time to rewrite my transition system :)
 

BCj

Veteran
Veteran
Joined
Jun 19, 2014
Messages
1,549
Reaction score
768
First Language
Dutch
Primarily Uses
N/A
This looks awesome, going to do some tests with it :D
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

Hi, there.
I'm Creta Park, as Software engineer and Indie game developer.

Profile : creft.me/cretapark
GitHub : github.com/creta5164
Blog : creta5164.tumblr.com


My stuff

Who shares/sells their scripts/plugins on itch.io? Can I pick your brain?
If you ever need fantasy names and you're bored, make a fictional alphabet. Switch around the letters and see what you get :p
I JUST GOT PROMOTED TO 9TH GRADE BOIS!

Forum statistics

Threads
98,168
Messages
949,912
Members
129,453
Latest member
tanzx
Top