Sure. ^^ I don't have an issue with it. But the lag problem is just on my laptop, which I'm pretty sure is just because it's tiny. One of those Asus eeePC's with like a 2GB hard drive.
@>Control Variables: [0096: Fire] = [Taria (Fire)]'s EXP]
@>Control Variables: [0097: Water] = [Taria (Water)]'s EXP
@>Control Variables: [0100: Difference] = Variable [0097: Water]
@>Control Variables: [0100: Difference] -= Variable [0096: Fire]
@>Control Variables: [0094: HP] = [Taria (Water)]'s HP
@>Control Variables: [0095: MP] = [Taria (Water)]'s SP
@>Change Party Member: Remove [Taria (Water)]
@>Change Party Member: Add [Taria (Fire)]
@>Change EXP: [Taria (Fire)], + Variable [0100: Difference]
@>Recover All: [Taria (Fire)]
@>Control Variables: [0094: HP] -= [Taria (Fire)]'s MaxHP
@>Control Variables: [0094: HP] *= -1
@>Conditional Branch: Variable [0094: HP] > 0
@>Change HP: [Taria (Fire)], - Variable [0094: HP]
@>
: Branch End
@>Control Variables: [0095: MP] -= [Taria (Fire)]'s MaxSP
@>Control Variables: [0095: MP] *= -1
@>Conditional Branch: Variable [0095: MP] > 0
@>Change SP: [Taria (Fire)], - Variable [0095: MP]
@>
: Branch End
For the basic synopsis, without having to figure out what I did from just reading the code, this lets you switch between two of the forms, this one being from water to fire. There are a total of 12 of these common events, each with no trigger, each of them called with an Ability.
Basically it stores the current form's EXP, and the form it's going /to/'s EXP. Then it subtracts the two in order to find the difference.
e.g. Water form has 192 EXP, Fire form has 150 EXP. The variables are stored and the difference is 42 EXP.Then I also store the HP and SP, so that each form can't just switch to fully heal itself. This process will be explained in a bit. Then we simply remove water, and add fire.
First thing it does is add the difference in EXP. From our previous example, the fire form now has 192 EXP, just like the Water. This ensures that, no matter which form switches to which, they will always have the max EXP for that form. Then I use the recover all command to bring the form back up to full HP and SP, which will be useful for the next part.
The HP and SP calculations find out the difference between the CurrentHp of the last form and the MaxHP of the new form, in order to make certain it's balanced.
e.g. Water form has 100 HP current when it switches to fire, which has a max of 175. The calculation takes the current, (100) and subtracts the new max (175) to net it -75, which is then multiplied by -1 and then subtracted from the new form's HP, if
it is over 0. This is to prevent switching to a form with lower HP and losing even more due to an oversight on the creator's part. >.>; I mean, it's not the prettiest thing ever. The code works, better than I'd thought, but it's not as crisp and clear as it could be. Also, I haven't really factored in status effects yet, with this. I'll probably have...something...that keeps track of those for the purposes of this character.