This list is wonderful and helped me along real well. I managed to fix all the errors I had going from VX to MV in this script. Although this list doesn't mention _targetActorId, _classId or currentExp(), it does have the learn all, or forget all skills script which I had no clue how to fix.
x = $gameParty._targetActorId
c = $gameActors.actor(x)._classId
if (c !== 3) {
$gameVariables.setValue(1, $gameActors.actor(x).currentExp())
$dataSkills.forEach(function(skill){ if(skill) $gameActors.actor(x).forgetSkill(skill.id);});
$gameActors.actor(x).changeClass(3, false)
$gameActors.actor(x).learnSkill(9)
$gameActors.actor(x).gainExp($gameVariables.value(1))
}
Thanks a ton! Now I can change everyone's class with items or spells, reset their skills and put them back at the same exp they were, learning all the skills of new class upto their obtained level before hand, and won't keep giving them xp once they changed class since it doesn't reset xp again once class changed. Now just need to make it more dynamic so all the different items and spells change different classes, without copy pasting this script for every class.. this scripting sure saves alot of hassle creating conditions in MV itself, _targetActorId is a time saver.
For some reason x.currentLevelExp did work but returned 0, while $gameActors.actor(x).currentLevelExp returned the function, function () { return this.expForLevel(this._level); }
Same with currentExp.. without the () it returns the function code I guess..
Interesting to see how the function is written.