Revise ORAS trainer class rand (#294)

This commit is contained in:
Matt
2018-02-21 19:53:59 -05:00
committed by Kurt
parent 0de1f9053e
commit 09eedfcf3a

View File

@@ -746,10 +746,8 @@ private static void RandomizeTrainerAIClass(trdata6 t, string[] trClass)
if (rOnlySingles)
t.AI &= 7;
if (rClass && rModelRestricted.Contains(t.Class)) // Classes selected to be randomized
if (rClass && rModelRestricted.Contains(t.Class)) // shuffle classes with 3D models
{
//if (rIgnoreClass.Any()) // ignored special classes
// return;
int randClass() => (int) (rnd32() % rModelRestricted.Length);
t.Class = rModelRestricted[randClass()];
}
@@ -767,10 +765,12 @@ private static void RandomizeTrainerAIClass(trdata6 t, string[] trClass)
while (rIgnoreClass.Contains(rv) || trClass[rv].StartsWith("[~")); // don't allow disallowed classes
t.Class = rv;
}
else if (Main.Config.ORAS) // don't allow XY-only classes
else if (rClass && Main.Config.ORAS) // special handling, can't allow XY classes
{
int randClass() => (int)(rnd32() % rTrainerClasses.Length);
t.Class = rTrainerClasses[randClass()];
int randClass() => (int)(rnd32() % rTrainerClasses.Length);
if (rOnlySingles && t.BattleType != 0) return; // only singles if specified
if (rIgnoreClass.Contains(t.Class) && rTrainerClasses.Contains(t.Class)) return; // don't change important trainers if specified
t.Class = rTrainerClasses[randClass()];
}
}
private static void RandomizeTrainerPrizeItem(trdata6 t)