PkmnLib.NET/PkmnLib.Dataloader/Models/SerializedSpecies.cs

68 lines
2.0 KiB
C#

using System.Collections.Generic;
using System.Text.Json;
using System.Text.Json.Nodes;
namespace PkmnLib.Dataloader.Models;
public class SerializedSpecies
{
public string Species { get; set; }
public ushort Id { get; set; }
public float GenderRatio { get; set; }
public string GrowthRate { get; set; }
public byte BaseHappiness { get; set; }
public byte CatchRate { get; set; }
public string Color { get; set; }
public bool GenderDifference { get; set; }
public string[] EggGroups { get; set; }
public int EggCycles { get; set; }
public string[] Flags { get; set; } = [];
public Dictionary<string, SerializedForm> Formes { get; set; }
public SerializedEvolution[] Evolutions { get; set; } = [];
}
public class SerializedForm
{
public string[] Abilities { get; set; }
public string[] HiddenAbilities { get; set; } = [];
public SerializedStats BaseStats { get; set; }
public SerializedStats EVReward { get; set; }
public string[] Types { get; set; }
public float Height { get; set; }
public float Weight { get; set; }
public uint BaseExp { get; set; }
public bool IsMega { get; set; }
public SerializedMoves Moves { get; set; }
public string[] Flags { get; set; } = [];
}
public class SerializedEvolution
{
public string Species { get; set; }
public string Method { get; set; }
public JsonNode Data { get; set; }
}
public class SerializedStats
{
public ushort Hp { get; set; }
public ushort Attack { get; set; }
public ushort Defense { get; set; }
public ushort SpecialAttack { get; set; }
public ushort SpecialDefense { get; set; }
public ushort Speed { get; set; }
}
public class SerializedLevelMove
{
public string Name { get; set; }
public uint Level { get; set; }
}
public class SerializedMoves
{
public SerializedLevelMove[] LevelMoves { get; set; }
public string[] EggMoves { get; set; }
public string[] TutorMoves { get; set; }
public string[] Machine { get; set; }
}