warp effects are gonna be tricky. we are using a direct warp (aka pitwarp) to warp Link to the new dmap, and you can't set a warp effect. We could fake it...
import "stdExtra.zh" // handles actually changing the Time Period dmap (with warp effect) void TS_CheckandWarp(int wipetime){ int curDMap = Game->GetCurDMap(); for(int i=0; i<SizeOfArray(TS_DMaps); i++){ if(curDMap >= TS_DMaps[i] && curDMap < TS_DMaps[i]+TS_NUM_TIMEPERIODS){ if(TS_DMaps[i] + TS_CurrentState != curDMap){ if(wipetime>0) closingWipe(wipetime); Link->PitWarp(TS_DMaps[i] + TS_CurrentState, Game->GetCurDMapScreen()); if(wipetime>0) openingWipe(wipetime); return; } } } }
You'll need stdextra.zh which is available in the database. It has some functions for drawing opening/closing wipes. It looks like they'll be circle-wipes, if you wanted other types you'd have to figure out how to draw them.
Replace the TS_CheckandWarp function in my original script with this new version. And anywhere in the code you call TS_CheckandWarp(); you'll have to have a number, constant or variable inside the brackets.
- In the FFC_TS_WarpReturnCheck function, i'd put 0 inside the brackets because its just a utility warp because you're on the wrong dmap, so you probably don't want the wipe effect. But if you do, put a number greater than 0.
- At the end of the I_ACT_TS_TimeChange function, put a number greater than 0 inside the brackets. I haven't used those wipe functions, so I don't know what would look good. Experiment with different values until you find something you like.
Edited by justin, 21 January 2015 - 06:25 PM.