pkNX/pkNX.Game/Text/TextMapping.cs
2018-11-13 19:44:43 -08:00

131 lines
5.8 KiB
C#

using System.Collections.Generic;
using pkNX.Structures;
namespace pkNX.Game
{
public static class TextMapping
{
public static IReadOnlyCollection<TextReference> GetMapping(GameVersion game)
{
switch (game)
{
case GameVersion.XY: return XY;
case GameVersion.ORASDEMO:
case GameVersion.ORAS: return AO;
case GameVersion.SMDEMO: return SMDEMO;
case GameVersion.SN:
case GameVersion.MN: return SM;
case GameVersion.US:
case GameVersion.UM: return USUM;
case GameVersion.GG: return GG;
}
return null;
}
private static readonly TextReference[] XY =
{
new TextReference(005, TextName.Forms),
new TextReference(013, TextName.MoveNames),
new TextReference(015, TextName.MoveFlavor),
new TextReference(017, TextName.Types),
new TextReference(020, TextName.TrainerClasses),
new TextReference(021, TextName.TrainerNames),
new TextReference(022, TextName.TrainerText),
new TextReference(034, TextName.AbilityNames),
new TextReference(047, TextName.Natures),
new TextReference(072, TextName.metlist_000000),
new TextReference(080, TextName.SpeciesNames),
new TextReference(096, TextName.ItemNames),
new TextReference(099, TextName.ItemFlavor),
new TextReference(130, TextName.MaisonTrainerNames),
new TextReference(131, TextName.SuperTrainerNames),
new TextReference(141, TextName.OPowerFlavor),
};
private static readonly TextReference[] AO =
{
new TextReference(005, TextName.Forms),
new TextReference(014, TextName.MoveNames),
new TextReference(016, TextName.MoveFlavor),
new TextReference(018, TextName.Types),
new TextReference(021, TextName.TrainerClasses),
new TextReference(022, TextName.TrainerNames),
new TextReference(023, TextName.TrainerText),
new TextReference(037, TextName.AbilityNames),
new TextReference(051, TextName.Natures),
new TextReference(090, TextName.metlist_000000),
new TextReference(098, TextName.SpeciesNames),
new TextReference(114, TextName.ItemNames),
new TextReference(117, TextName.ItemFlavor),
new TextReference(153, TextName.MaisonTrainerNames),
new TextReference(154, TextName.SuperTrainerNames),
new TextReference(165, TextName.OPowerFlavor),
};
private static readonly TextReference[] SMDEMO =
{
new TextReference(020, TextName.ItemFlavor),
new TextReference(021, TextName.ItemNames),
new TextReference(026, TextName.SpeciesNames),
new TextReference(030, TextName.metlist_000000),
new TextReference(044, TextName.Forms),
new TextReference(044, TextName.Natures),
new TextReference(046, TextName.AbilityNames),
new TextReference(049, TextName.TrainerText),
new TextReference(050, TextName.TrainerNames),
new TextReference(051, TextName.TrainerClasses),
new TextReference(052, TextName.Types),
new TextReference(054, TextName.MoveFlavor),
new TextReference(055, TextName.MoveNames),
};
private static readonly TextReference[] SM =
{
new TextReference(035, TextName.ItemFlavor),
new TextReference(036, TextName.ItemNames),
new TextReference(055, TextName.SpeciesNames),
new TextReference(067, TextName.metlist_000000),
new TextReference(086, TextName.BattleRoyalNames),
new TextReference(087, TextName.Natures),
new TextReference(096, TextName.AbilityNames),
new TextReference(099, TextName.BattleTreeNames),
new TextReference(104, TextName.TrainerText),
new TextReference(105, TextName.TrainerNames),
new TextReference(106, TextName.TrainerClasses),
new TextReference(107, TextName.Types),
new TextReference(112, TextName.MoveFlavor),
new TextReference(113, TextName.MoveNames),
new TextReference(114, TextName.Forms),
new TextReference(116, TextName.SpeciesClassifications),
new TextReference(119, TextName.PokedexEntry1),
new TextReference(120, TextName.PokedexEntry2)
};
private static readonly TextReference[] USUM =
{
new TextReference(039, TextName.ItemFlavor),
new TextReference(040, TextName.ItemNames),
new TextReference(060, TextName.SpeciesNames),
new TextReference(072, TextName.metlist_000000),
new TextReference(091, TextName.BattleRoyalNames),
new TextReference(092, TextName.Natures),
new TextReference(101, TextName.AbilityNames),
new TextReference(104, TextName.BattleTreeNames),
new TextReference(109, TextName.TrainerText),
new TextReference(110, TextName.TrainerNames),
new TextReference(111, TextName.TrainerClasses),
new TextReference(112, TextName.Types),
new TextReference(117, TextName.MoveFlavor),
new TextReference(118, TextName.MoveNames),
new TextReference(119, TextName.Forms),
new TextReference(121, TextName.SpeciesClassifications),
new TextReference(124, TextName.PokedexEntry1),
new TextReference(125, TextName.PokedexEntry2)
};
private static readonly TextReference[] GG =
{
};
}
}