TheoAllen

Self-proclaimed jack of all trades
Veteran
Joined
Mar 16, 2012
Messages
6,812
Reaction score
9,113
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 :
UuJKkW6.gif

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
fV35HoZ.gif

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)
ZlGnYxz.gif

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,356
Reaction score
2,554
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,862
Reaction score
1,075
First Language
Dutch
Primarily Uses
N/A
This looks awesome, going to do some tests with it :D
 

Latest Threads

Latest Posts

Latest Profile Posts

Why won't you play above 10 fps game. you were working fine yesterday
pkJASCkjl;n
Nikita wrote on TSR's profile.
Hello, I'm talking about the TSR_MoveEvent plugin. I found a bug, if you enter and exit the pause menu while riding a ship, then the speed of the ship becomes the same as during a normal walk, on a clean client without other plugins, the same thing, how to fix it?
Joke of the day: "Today's the day I work hard and accomplish a lot."
I need to stop looking at kittens and get to work!
Creating something new to me.

Forum statistics

Threads
121,513
Messages
1,142,204
Members
159,674
Latest member
Abraxan
Top