Minor tweaks

For BigEndian we don't have to invert the array access if we just iterate backwards :)
Fix xmldoc for gen1 trades ampersand
Add xmldoc for enc trade classes

No functional change.
This commit is contained in:
Kurt
2021-09-15 18:13:17 -07:00
parent 25313ad58d
commit 63580a2835
11 changed files with 51 additions and 14 deletions

View File

@@ -7,7 +7,7 @@ namespace PKHeX.Core
/// </summary>
/// <remarks>
/// Generation 1 specific value used in detecting unmodified/un-traded Generation 1 Trade Encounter data.
/// Species & Minimum level (legal) possible to acquire at.
/// Species &amp; Minimum level (legal) possible to acquire at.
/// </remarks>
public sealed record EncounterTrade1 : EncounterTradeGB
{

View File

@@ -2,6 +2,10 @@
namespace PKHeX.Core
{
/// <summary>
/// Generation 2 Trade Encounter
/// </summary>
/// <inheritdoc cref="EncounterTradeGB"/>
public sealed record EncounterTrade2 : EncounterTradeGB
{
public override int Generation => 2;

View File

@@ -2,6 +2,10 @@
namespace PKHeX.Core
{
/// <summary>
/// Generation 3 Trade Encounter
/// </summary>
/// <inheritdoc cref="EncounterTrade"/>
public sealed record EncounterTrade3 : EncounterTrade, IContestStats
{
public override int Generation => 3;

View File

@@ -1,5 +1,9 @@
namespace PKHeX.Core
{
/// <summary>
/// Generation 4 Trade Encounter
/// </summary>
/// <inheritdoc cref="EncounterTradeGB"/>
public abstract record EncounterTrade4 : EncounterTrade
{
public sealed override int Generation => 4;
@@ -11,6 +15,10 @@ protected EncounterTrade4(GameVersion game) : base(game)
}
}
/// <summary>
/// Generation 4 Trade Encounter with a fixed PID value.
/// </summary>
/// <inheritdoc cref="EncounterTrade4"/>
public sealed record EncounterTrade4PID : EncounterTrade4, IContestStats
{
/// <summary>
@@ -99,6 +107,10 @@ protected override bool IsMatchNatureGenderShiny(PKM pkm)
}
}
/// <summary>
/// Generation 4 Trade Encounter with a fixed PID value, met location, and version.
/// </summary>
/// <inheritdoc cref="EncounterTradeGB"/>
public sealed record EncounterTrade4RanchGift : EncounterTrade4
{
/// <summary>
@@ -133,6 +145,10 @@ protected override void SetPINGA(PKM pk, EncounterCriteria criteria)
}
}
/// <summary>
/// Generation 4 Trade Encounter with a fixed location and version, as well as special details.
/// </summary>
/// <inheritdoc cref="EncounterTrade4"/>
public sealed record EncounterTrade4RanchSpecial : EncounterTrade4
{
public override int Location => 3000;

View File

@@ -1,5 +1,9 @@
namespace PKHeX.Core
{
/// <summary>
/// Generation 5 Trade Encounter
/// </summary>
/// <inheritdoc cref="EncounterTrade"/>
public sealed record EncounterTrade5 : EncounterTrade
{
public override int Generation => 5;

View File

@@ -1,5 +1,9 @@
namespace PKHeX.Core
{
/// <summary>
/// Generation 6 Trade Encounter
/// </summary>
/// <inheritdoc cref="EncounterTrade"/>
public sealed record EncounterTrade6 : EncounterTrade, IMemoryOT
{
public override int Generation => 6;

View File

@@ -2,6 +2,10 @@
namespace PKHeX.Core
{
/// <summary>
/// Generation 7 Trade Encounter
/// </summary>
/// <inheritdoc cref="EncounterTrade"/>
public sealed record EncounterTrade7 : EncounterTrade, IMemoryOT
{
public override int Generation => 7;

View File

@@ -1,5 +1,9 @@
namespace PKHeX.Core
{
/// <summary>
/// Generation 7 LGP/E Trade Encounter
/// </summary>
/// <inheritdoc cref="EncounterTrade"/>
public sealed record EncounterTrade7b : EncounterTrade
{
public override int Generation => 7;

View File

@@ -3,6 +3,10 @@
namespace PKHeX.Core
{
/// <summary>
/// Generation 8 Trade Encounter
/// </summary>
/// <inheritdoc cref="EncounterTrade"/>
public sealed record EncounterTrade8 : EncounterTrade, IDynamaxLevel, IRelearn, IMemoryOT
{
public override int Generation => 8;
@@ -51,4 +55,4 @@ protected override void ApplyDetails(ITrainerInfo sav, EncounterCriteria criteri
pk8.OT_Intensity = OT_Intensity;
}
}
}
}

View File

@@ -1,5 +1,6 @@
namespace PKHeX.Core
{
/// <inheritdoc cref="EncounterTrade"/>
public abstract record EncounterTradeGB : EncounterTrade
{
protected EncounterTradeGB(int species, int level, GameVersion game) : base(game)

View File

@@ -46,12 +46,8 @@ public static byte[] GetBytesBE(int value, int size)
public static void WriteBytesBE(Span<byte> data, int value)
{
for (int i = 0; i < data.Length; i++)
{
int p = value % 100;
value /= 100;
data[^(1+i)] = (byte) (p / 10 << 4 | p % 10);
}
for (int i = data.Length - 1; i >= 0; i--, value /= 100)
data[i] = (byte)((((value / 10) % 10) << 4) | (value % 10));
}
/// <inheritdoc cref="ToInt32BE(byte[],int,int)"/>
@@ -85,12 +81,8 @@ public static byte[] GetBytesLE(int value, int size)
/// </summary>
public static void WriteBytesLE(Span<byte> data, int value)
{
for (int i = 0; i < data.Length; i++)
{
int p = value % 100;
value /= 100;
data[i] = (byte) (p / 10 << 4 | p % 10);
}
for (int i = 0; i < data.Length; i++, value /= 100)
data[i] = (byte)((((value / 10) % 10) << 4) | (value % 10));
}
}
}