Reduce IAwakened from int->byte

This commit is contained in:
Kurt 2022-03-05 18:46:03 -08:00
parent b20566eb59
commit 3d9c7dc750
5 changed files with 26 additions and 26 deletions

View file

@ -12,7 +12,7 @@ namespace PKHeX.Core
internal const int MaxGameID_7b = (int)GameVersion.GE;
internal const int MaxAbilityID_7b = MaxAbilityID_7_USUM;
internal static readonly ushort[] HeldItems_GG = Array.Empty<ushort>();
public const int AwakeningMax = 200;
public const byte AwakeningMax = 200;
#region Met Locations

View file

@ -217,12 +217,12 @@ namespace PKHeX.Core
public int RelearnMove3 { get => ReadUInt16LittleEndian(Data.AsSpan(CardStart + 0xDC)); set => WriteUInt16LittleEndian(Data.AsSpan(CardStart + 0xDC), (ushort)value); }
public int RelearnMove4 { get => ReadUInt16LittleEndian(Data.AsSpan(CardStart + 0xDE)); set => WriteUInt16LittleEndian(Data.AsSpan(CardStart + 0xDE), (ushort)value); }
public int AV_HP { get => Data[CardStart + 0xE5]; set => Data[CardStart + 0xE5] = (byte)value; }
public int AV_ATK { get => Data[CardStart + 0xE6]; set => Data[CardStart + 0xE6] = (byte)value; }
public int AV_DEF { get => Data[CardStart + 0xE7]; set => Data[CardStart + 0xE7] = (byte)value; }
public int AV_SPE { get => Data[CardStart + 0xE8]; set => Data[CardStart + 0xE8] = (byte)value; }
public int AV_SPA { get => Data[CardStart + 0xE9]; set => Data[CardStart + 0xE9] = (byte)value; }
public int AV_SPD { get => Data[CardStart + 0xEA]; set => Data[CardStart + 0xEA] = (byte)value; }
public byte AV_HP { get => Data[CardStart + 0xE5]; set => Data[CardStart + 0xE5] = value; }
public byte AV_ATK { get => Data[CardStart + 0xE6]; set => Data[CardStart + 0xE6] = value; }
public byte AV_DEF { get => Data[CardStart + 0xE7]; set => Data[CardStart + 0xE7] = value; }
public byte AV_SPE { get => Data[CardStart + 0xE8]; set => Data[CardStart + 0xE8] = value; }
public byte AV_SPA { get => Data[CardStart + 0xE9]; set => Data[CardStart + 0xE9] = value; }
public byte AV_SPD { get => Data[CardStart + 0xEA]; set => Data[CardStart + 0xEA] = value; }
// Meta Accessible Properties
public override int[] IVs

View file

@ -113,12 +113,12 @@ namespace PKHeX.Core
public override int EV_SPE { get => Data[0x21]; set => Data[0x21] = (byte)value; }
public override int EV_SPA { get => Data[0x22]; set => Data[0x22] = (byte)value; }
public override int EV_SPD { get => Data[0x23]; set => Data[0x23] = (byte)value; }
public int AV_HP { get => Data[0x24]; set => Data[0x24] = (byte)value; }
public int AV_ATK { get => Data[0x25]; set => Data[0x25] = (byte)value; }
public int AV_DEF { get => Data[0x26]; set => Data[0x26] = (byte)value; }
public int AV_SPE { get => Data[0x27]; set => Data[0x27] = (byte)value; }
public int AV_SPA { get => Data[0x28]; set => Data[0x28] = (byte)value; }
public int AV_SPD { get => Data[0x29]; set => Data[0x29] = (byte)value; }
public byte AV_HP { get => Data[0x24]; set => Data[0x24] = value; }
public byte AV_ATK { get => Data[0x25]; set => Data[0x25] = value; }
public byte AV_DEF { get => Data[0x26]; set => Data[0x26] = value; }
public byte AV_SPE { get => Data[0x27]; set => Data[0x27] = value; }
public byte AV_SPA { get => Data[0x28]; set => Data[0x28] = value; }
public byte AV_SPD { get => Data[0x29]; set => Data[0x29] = value; }
// 0x2A Unused
private byte PKRS { get => Data[0x2B]; set => Data[0x2B] = value; }
public override int PKRS_Days { get => PKRS & 0xF; set => PKRS = (byte)((PKRS & ~0xF) | value); }

View file

@ -4,12 +4,12 @@ namespace PKHeX.Core
{
public interface IAwakened
{
int AV_HP { get; set; }
int AV_ATK { get; set; }
int AV_DEF { get; set; }
int AV_SPE { get; set; }
int AV_SPA { get; set; }
int AV_SPD { get; set; }
byte AV_HP { get; set; }
byte AV_ATK { get; set; }
byte AV_DEF { get; set; }
byte AV_SPE { get; set; }
byte AV_SPA { get; set; }
byte AV_SPD { get; set; }
}
public static partial class Extensions
@ -37,7 +37,7 @@ namespace PKHeX.Core
/// </summary>
/// <param name="pk">Data to set values for</param>
/// <param name="value">Value to set all to</param>
public static void AwakeningSetAllTo(this IAwakened pk, int value) => pk.AV_HP = pk.AV_ATK = pk.AV_DEF = pk.AV_SPE = pk.AV_SPA = pk.AV_SPD = value;
public static void AwakeningSetAllTo(this IAwakened pk, byte value) => pk.AV_HP = pk.AV_ATK = pk.AV_DEF = pk.AV_SPE = pk.AV_SPA = pk.AV_SPD = value;
/// <summary>
/// Sets all values to the specified value.
@ -45,12 +45,12 @@ namespace PKHeX.Core
/// <param name="pk">Data to set values for</param>
/// <param name="min">Minimum value to set</param>
/// <param name="max">Maximum value to set</param>
public static void AwakeningSetRandom(this IAwakened pk, int min = 0, int max = Legal.AwakeningMax)
public static void AwakeningSetRandom(this IAwakened pk, byte min = 0, int max = Legal.AwakeningMax)
{
var rnd = Util.Rand;
int randClamp = max + 1;
for (int index = 0; index < 6; index++)
pk.SetAV(index, rnd.Next(min, randClamp));
pk.SetAV(index, (byte)rnd.Next(min, randClamp));
}
/// <summary>
@ -80,7 +80,7 @@ namespace PKHeX.Core
/// <param name="pk">Pokémon to modify.</param>
/// <param name="index">Index to set to</param>
/// <param name="value">Value to set</param>
public static int SetAV(this IAwakened pk, int index, int value) => index switch
public static byte SetAV(this IAwakened pk, int index, byte value) => index switch
{
0 => pk.AV_HP = value,
1 => pk.AV_ATK = value,
@ -115,9 +115,9 @@ namespace PKHeX.Core
public static void SetSuggestedAwakenedValues(this IAwakened a, PKM pk)
{
a.AV_HP = Legal.AwakeningMax;
a.AV_ATK = pk.IV_ATK == 0 ? 0 : Legal.AwakeningMax;
a.AV_ATK = pk.IV_ATK == 0 ? (byte)0 : Legal.AwakeningMax;
a.AV_DEF = Legal.AwakeningMax;
a.AV_SPE = pk.IV_SPE == 0 ? 0 : Legal.AwakeningMax;
a.AV_SPE = pk.IV_SPE == 0 ? (byte)0 : Legal.AwakeningMax;
a.AV_SPA = Legal.AwakeningMax;
a.AV_SPD = Legal.AwakeningMax;
}

View file

@ -215,7 +215,7 @@ namespace PKHeX.WinForms.Controls
return;
if (sender is MaskedTextBox m)
{
int value = Util.ToInt32(m.Text);
var value = (byte)Math.Max(byte.MaxValue, Util.ToInt32(m.Text));
if (value > Legal.AwakeningMax)
{
m.Text = Legal.AwakeningMax.ToString();