I looked at the code and found the fix for this. You have to essentially copy the original skills exactly
once. You can do this by adding the following function to the top of the script:
copy_Original_Skills_Once = function()
{
_root.character.current_Skill_Cost = _root.battle.attacker.ptrMC.actions[14].intMana;
_root.character.current_Skill_name = _root.battle.attacker.ptrMC.actions[14].strName;
if(_root.character.prev_Skill_name == null)
{
_root.character.prev_Skill_name = _root.character.current_Skill_name;
}
if(_root.character.prev_Skill_name != _root.character.current_Skill_name)
{
_root.character.prev_Skill_Cost = _root.character.current_Skill_Cost;
_root.character.prev_Skill_name = _root.character.current_Skill_name;
}
if(_root.character.prev_Skill_Cost == null)
{
_root.character.prev_Skill_Cost = _root.character.current_Skill_Cost;
}
if(_root.character.prev_Skill_Cost == _root.character.current_Skill_Cost)
{
_root.character.Original_Skill_0 = _root.battle.attacker.ptrMC.actions[0].strScript;
_root.character.Original_Skill_1 = _root.battle.attacker.ptrMC.actions[1].strScript;
_root.character.Original_Skill_2 = _root.battle.attacker.ptrMC.actions[2].strScript;
_root.character.Original_Skill_3 = _root.battle.attacker.ptrMC.actions[3].strScript;
_root.character.Original_Skill_4 = _root.battle.attacker.ptrMC.actions[4].strScript;
_root.character.Original_Skill_5 = _root.battle.attacker.ptrMC.actions[5].strScript;
_root.character.Original_Skill_6 = _root.battle.attacker.ptrMC.actions[6].strScript;
_root.character.Original_Skill_7 = _root.battle.attacker.ptrMC.actions[7].strScript;
_root.character.Original_Skill_8 = _root.battle.attacker.ptrMC.actions[8].strScript;
_root.character.Original_Skill_9 = _root.battle.attacker.ptrMC.actions[9].strScript;
_root.character.Original_Skill_10 = _root.battle.attacker.ptrMC.actions[10].strScript;
_root.character.Original_Skill_11 = _root.battle.attacker.ptrMC.actions[11].strScript;
_root.character.Original_Skill_12 = _root.battle.attacker.ptrMC.actions[12].strScript;
_root.character.Original_Skill_13 = _root.battle.attacker.ptrMC.actions[13].strScript;
_root.character.Original_Skill_14 = _root.battle.attacker.ptrMC.actions[14].strScript;
_root.battle.attacker.ptrMC.actions[14].intMana += 1;
}
};
-----------------------------------------
You have to then replace, any occurence of
OrigSkillX (where X is a number from 0 to 14), with the following:
copy_Original_Skills_Once();
OrigSkillX = _root.character.Original_Skill_X;
-----------------------------------------
The only disadvantage of this method is that it increments the mana cost of the 14th skill by one, but that's not too much of a problem. For now this fixes the problem of the trainer crashing every time you add a new effect to a skill that previously had an effect added to it. I've attached the fixed file in this post.
EDIT: Updated the trainer so that 'Activate Weapon Special' script works properly