diff --git a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade1.cs b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade1.cs
index 2d57f541c..c1bcb7916 100644
--- a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade1.cs
+++ b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade1.cs
@@ -7,7 +7,7 @@ namespace PKHeX.Core
///
///
/// Generation 1 specific value used in detecting unmodified/un-traded Generation 1 Trade Encounter data.
- /// Species & Minimum level (legal) possible to acquire at.
+ /// Species & Minimum level (legal) possible to acquire at.
///
public sealed record EncounterTrade1 : EncounterTradeGB
{
diff --git a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade2.cs b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade2.cs
index 4310fd8f8..18d3c699c 100644
--- a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade2.cs
+++ b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade2.cs
@@ -2,6 +2,10 @@
namespace PKHeX.Core
{
+ ///
+ /// Generation 2 Trade Encounter
+ ///
+ ///
public sealed record EncounterTrade2 : EncounterTradeGB
{
public override int Generation => 2;
diff --git a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade3.cs b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade3.cs
index bbbc77915..a59c25ed8 100644
--- a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade3.cs
+++ b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade3.cs
@@ -2,6 +2,10 @@
namespace PKHeX.Core
{
+ ///
+ /// Generation 3 Trade Encounter
+ ///
+ ///
public sealed record EncounterTrade3 : EncounterTrade, IContestStats
{
public override int Generation => 3;
diff --git a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade4.cs b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade4.cs
index e29653127..0bfcbc080 100644
--- a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade4.cs
+++ b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade4.cs
@@ -1,5 +1,9 @@
namespace PKHeX.Core
{
+ ///
+ /// Generation 4 Trade Encounter
+ ///
+ ///
public abstract record EncounterTrade4 : EncounterTrade
{
public sealed override int Generation => 4;
@@ -11,6 +15,10 @@ protected EncounterTrade4(GameVersion game) : base(game)
}
}
+ ///
+ /// Generation 4 Trade Encounter with a fixed PID value.
+ ///
+ ///
public sealed record EncounterTrade4PID : EncounterTrade4, IContestStats
{
///
@@ -99,6 +107,10 @@ protected override bool IsMatchNatureGenderShiny(PKM pkm)
}
}
+ ///
+ /// Generation 4 Trade Encounter with a fixed PID value, met location, and version.
+ ///
+ ///
public sealed record EncounterTrade4RanchGift : EncounterTrade4
{
///
@@ -133,6 +145,10 @@ protected override void SetPINGA(PKM pk, EncounterCriteria criteria)
}
}
+ ///
+ /// Generation 4 Trade Encounter with a fixed location and version, as well as special details.
+ ///
+ ///
public sealed record EncounterTrade4RanchSpecial : EncounterTrade4
{
public override int Location => 3000;
diff --git a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade5.cs b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade5.cs
index 07d6150b0..c9a988eb6 100644
--- a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade5.cs
+++ b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade5.cs
@@ -1,5 +1,9 @@
namespace PKHeX.Core
{
+ ///
+ /// Generation 5 Trade Encounter
+ ///
+ ///
public sealed record EncounterTrade5 : EncounterTrade
{
public override int Generation => 5;
diff --git a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade6.cs b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade6.cs
index 3cadb5e3f..2b2d9412a 100644
--- a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade6.cs
+++ b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade6.cs
@@ -1,5 +1,9 @@
namespace PKHeX.Core
{
+ ///
+ /// Generation 6 Trade Encounter
+ ///
+ ///
public sealed record EncounterTrade6 : EncounterTrade, IMemoryOT
{
public override int Generation => 6;
diff --git a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade7.cs b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade7.cs
index 6b4811106..d5825be88 100644
--- a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade7.cs
+++ b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade7.cs
@@ -2,6 +2,10 @@
namespace PKHeX.Core
{
+ ///
+ /// Generation 7 Trade Encounter
+ ///
+ ///
public sealed record EncounterTrade7 : EncounterTrade, IMemoryOT
{
public override int Generation => 7;
diff --git a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade7b.cs b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade7b.cs
index 4035b4fa4..e125a9a67 100644
--- a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade7b.cs
+++ b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade7b.cs
@@ -1,5 +1,9 @@
namespace PKHeX.Core
{
+ ///
+ /// Generation 7 LGP/E Trade Encounter
+ ///
+ ///
public sealed record EncounterTrade7b : EncounterTrade
{
public override int Generation => 7;
diff --git a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade8.cs b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade8.cs
index eaf9e03d1..851b38e05 100644
--- a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade8.cs
+++ b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTrade8.cs
@@ -3,6 +3,10 @@
namespace PKHeX.Core
{
+ ///
+ /// Generation 8 Trade Encounter
+ ///
+ ///
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;
}
}
-}
\ No newline at end of file
+}
diff --git a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTradeGB.cs b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTradeGB.cs
index 5c61ffe1d..12e31e573 100644
--- a/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTradeGB.cs
+++ b/PKHeX.Core/Legality/Encounters/EncounterTrade/EncounterTradeGB.cs
@@ -1,5 +1,6 @@
namespace PKHeX.Core
{
+ ///
public abstract record EncounterTradeGB : EncounterTrade
{
protected EncounterTradeGB(int species, int level, GameVersion game) : base(game)
diff --git a/PKHeX.Core/Util/BinaryCodedDecimal.cs b/PKHeX.Core/Util/BinaryCodedDecimal.cs
index 99a82e026..2a370d8f4 100644
--- a/PKHeX.Core/Util/BinaryCodedDecimal.cs
+++ b/PKHeX.Core/Util/BinaryCodedDecimal.cs
@@ -46,12 +46,8 @@ public static byte[] GetBytesBE(int value, int size)
public static void WriteBytesBE(Span 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));
}
///
@@ -85,12 +81,8 @@ public static byte[] GetBytesLE(int value, int size)
///
public static void WriteBytesLE(Span 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));
}
}
}