diff --git a/PKHeX.Core/Editing/Bulk/BatchEditor.cs b/PKHeX.Core/Editing/Bulk/BatchEditor.cs index ff93514bc..389ea0ea6 100644 --- a/PKHeX.Core/Editing/Bulk/BatchEditor.cs +++ b/PKHeX.Core/Editing/Bulk/BatchEditor.cs @@ -9,7 +9,7 @@ namespace PKHeX.Core /// /// Carries out a batch edit and contains information summarizing the results. /// - public class BatchEditor + public sealed class BatchEditor { private int Modified { get; set; } private int Iterated { get; set; } diff --git a/PKHeX.Core/Editing/Bulk/StringInstruction.cs b/PKHeX.Core/Editing/Bulk/StringInstruction.cs index e32f44c4b..108c02077 100644 --- a/PKHeX.Core/Editing/Bulk/StringInstruction.cs +++ b/PKHeX.Core/Editing/Bulk/StringInstruction.cs @@ -14,7 +14,7 @@ namespace PKHeX.Core /// /// /// - public class StringInstruction + public sealed class StringInstruction { public string PropertyName { get; private set; } public string PropertyValue { get; private set; } diff --git a/PKHeX.Core/Editing/Bulk/StringInstructionSet.cs b/PKHeX.Core/Editing/Bulk/StringInstructionSet.cs index da59593ee..2f07b0ec1 100644 --- a/PKHeX.Core/Editing/Bulk/StringInstructionSet.cs +++ b/PKHeX.Core/Editing/Bulk/StringInstructionSet.cs @@ -6,7 +6,7 @@ namespace PKHeX.Core /// /// Processes input of strings into a list of valid Filters and Instructions. /// - public class StringInstructionSet + public sealed class StringInstructionSet { public IList Filters { get; private set; } public IList Instructions { get; private set; } diff --git a/PKHeX.Core/Editing/PKM/LegalMoveSource.cs b/PKHeX.Core/Editing/PKM/LegalMoveSource.cs index 9ec5dd37c..575532975 100644 --- a/PKHeX.Core/Editing/PKM/LegalMoveSource.cs +++ b/PKHeX.Core/Editing/PKM/LegalMoveSource.cs @@ -7,7 +7,7 @@ namespace PKHeX.Core /// /// Legal Move information for a single , for indicating if a move is legal or not. /// - public class LegalMoveSource + public sealed class LegalMoveSource { public readonly IList IsMoveBoxOrdered = new bool[4]; public IReadOnlyList DataSource => (ComboItem[])MoveDataAllowed.Clone(); diff --git a/PKHeX.Core/Editing/PKM/PKMSummary.cs b/PKHeX.Core/Editing/PKM/PKMSummary.cs index 1d24b7f76..25868aa3a 100644 --- a/PKHeX.Core/Editing/PKM/PKMSummary.cs +++ b/PKHeX.Core/Editing/PKM/PKMSummary.cs @@ -5,7 +5,7 @@ namespace PKHeX.Core /// /// Bindable summary object that can fetch strings that summarize a . /// - public class PKMSummary + public class PKMSummary // do NOT seal, allow inheritance { private static readonly IReadOnlyList GenderSymbols = GameInfo.GenderSymbolASCII; diff --git a/PKHeX.Core/Editing/Saves/Editors/EventWork/EventFlag.cs b/PKHeX.Core/Editing/Saves/Editors/EventWork/EventFlag.cs index 5309ef5a5..5c5526963 100644 --- a/PKHeX.Core/Editing/Saves/Editors/EventWork/EventFlag.cs +++ b/PKHeX.Core/Editing/Saves/Editors/EventWork/EventFlag.cs @@ -5,7 +5,7 @@ namespace PKHeX.Core /// /// Event Flag that toggles certain features / entities on and off. /// - public class EventFlag : EventVar + public sealed class EventFlag : EventVar { public bool Flag; diff --git a/PKHeX.Core/Editing/Saves/Editors/EventWork/EventVar.cs b/PKHeX.Core/Editing/Saves/Editors/EventWork/EventVar.cs index a3f685915..9dca35bf5 100644 --- a/PKHeX.Core/Editing/Saves/Editors/EventWork/EventVar.cs +++ b/PKHeX.Core/Editing/Saves/Editors/EventWork/EventVar.cs @@ -3,7 +3,7 @@ namespace PKHeX.Core /// /// Event variable used to determine game events. /// - public class EventVar + public abstract class EventVar { /// /// Name of event variable diff --git a/PKHeX.Core/Editing/Saves/Editors/EventWork/EventWork.cs b/PKHeX.Core/Editing/Saves/Editors/EventWork/EventWork.cs index ae3cce17a..0a2cbe978 100644 --- a/PKHeX.Core/Editing/Saves/Editors/EventWork/EventWork.cs +++ b/PKHeX.Core/Editing/Saves/Editors/EventWork/EventWork.cs @@ -7,7 +7,7 @@ namespace PKHeX.Core /// Event number storage for more complex logic events. /// /// - public class EventWork : EventVar + public sealed class EventWork : EventVar { public T Value; public readonly IList Options = new List { new EventWorkVal() }; diff --git a/PKHeX.Core/Editing/Saves/Editors/EventWork/EventWorkVal.cs b/PKHeX.Core/Editing/Saves/Editors/EventWork/EventWorkVal.cs index 1f8ee7bb2..8683e223a 100644 --- a/PKHeX.Core/Editing/Saves/Editors/EventWork/EventWorkVal.cs +++ b/PKHeX.Core/Editing/Saves/Editors/EventWork/EventWorkVal.cs @@ -3,7 +3,7 @@ /// /// Represents a known value for a of type . /// - public class EventWorkVal + public sealed class EventWorkVal { public readonly bool Custom; public readonly string Text; diff --git a/PKHeX.Core/Editing/Saves/Editors/EventWork/SplitEventEditor.cs b/PKHeX.Core/Editing/Saves/Editors/EventWork/SplitEventEditor.cs index 155c5c172..2dd12d6d9 100644 --- a/PKHeX.Core/Editing/Saves/Editors/EventWork/SplitEventEditor.cs +++ b/PKHeX.Core/Editing/Saves/Editors/EventWork/SplitEventEditor.cs @@ -7,7 +7,7 @@ namespace PKHeX.Core /// Editor object that unpacks into flags & work groups, and handles value get/set operations. /// /// - public class SplitEventEditor + public sealed class SplitEventEditor { public readonly IList Work; public readonly IList Flag; diff --git a/PKHeX.Core/Editing/Saves/Editors/SaveDataEditor.cs b/PKHeX.Core/Editing/Saves/Editors/SaveDataEditor.cs index 8e4bed841..0c4b465b8 100644 --- a/PKHeX.Core/Editing/Saves/Editors/SaveDataEditor.cs +++ b/PKHeX.Core/Editing/Saves/Editors/SaveDataEditor.cs @@ -4,7 +4,7 @@ /// Environment for editing a /// /// - public class SaveDataEditor + public sealed class SaveDataEditor { public readonly SaveFile SAV; public readonly SlotEditor Slots; diff --git a/PKHeX.Core/Editing/Saves/Slots/BoxEdit.cs b/PKHeX.Core/Editing/Saves/Slots/BoxEdit.cs index 3a6a69d6e..b8d19971a 100644 --- a/PKHeX.Core/Editing/Saves/Slots/BoxEdit.cs +++ b/PKHeX.Core/Editing/Saves/Slots/BoxEdit.cs @@ -5,7 +5,7 @@ namespace PKHeX.Core /// /// Represents a Box Editor that loads the contents for easy manipulation. /// - public class BoxEdit + public sealed class BoxEdit { private readonly SaveFile SAV; private readonly PKM[] CurrentContents; diff --git a/PKHeX.Core/Editing/Saves/Slots/SlotChangelog.cs b/PKHeX.Core/Editing/Saves/Slots/SlotChangelog.cs index 7127c29d1..61510cd21 100644 --- a/PKHeX.Core/Editing/Saves/Slots/SlotChangelog.cs +++ b/PKHeX.Core/Editing/Saves/Slots/SlotChangelog.cs @@ -5,7 +5,7 @@ namespace PKHeX.Core /// /// Tracks slot changes and provides the ability to revert a change. /// - public class SlotChangelog + public sealed class SlotChangelog { private readonly SaveFile SAV; private readonly Stack UndoStack = new Stack(); diff --git a/PKHeX.Core/Editing/Saves/Slots/SlotViewInfo.cs b/PKHeX.Core/Editing/Saves/Slots/SlotViewInfo.cs index b75ccda13..b4abde962 100644 --- a/PKHeX.Core/Editing/Saves/Slots/SlotViewInfo.cs +++ b/PKHeX.Core/Editing/Saves/Slots/SlotViewInfo.cs @@ -4,7 +4,7 @@ namespace PKHeX.Core /// Tuple containing data for a and the originating /// /// - public class SlotViewInfo + public sealed class SlotViewInfo { public ISlotInfo Slot; public ISlotViewer View; diff --git a/PKHeX.Core/Editing/ShowdownSet.cs b/PKHeX.Core/Editing/ShowdownSet.cs index a1edccbc5..17e2e0b9d 100644 --- a/PKHeX.Core/Editing/ShowdownSet.cs +++ b/PKHeX.Core/Editing/ShowdownSet.cs @@ -7,7 +7,7 @@ namespace PKHeX.Core /// /// Logic for exporting and importing data in Pokémon Showdown's text format. /// - public class ShowdownSet + public sealed class ShowdownSet { private static readonly string[] genders = {"M", "F", ""}; private static readonly string[] genderForms = {"", "F", ""}; diff --git a/PKHeX.Core/Game/GameStrings/FilteredGameDataSource.cs b/PKHeX.Core/Game/GameStrings/FilteredGameDataSource.cs index 5ae6c45cc..1ccd17ec9 100644 --- a/PKHeX.Core/Game/GameStrings/FilteredGameDataSource.cs +++ b/PKHeX.Core/Game/GameStrings/FilteredGameDataSource.cs @@ -7,7 +7,7 @@ namespace PKHeX.Core /// /// sensitive provider for data sources. /// - public class FilteredGameDataSource + public sealed class FilteredGameDataSource { public FilteredGameDataSource(SaveFile sav, GameDataSource source, bool HaX = false) { diff --git a/PKHeX.Core/Game/GameStrings/GameDataSource.cs b/PKHeX.Core/Game/GameStrings/GameDataSource.cs index 3dd188fb9..03dfe425c 100644 --- a/PKHeX.Core/Game/GameStrings/GameDataSource.cs +++ b/PKHeX.Core/Game/GameStrings/GameDataSource.cs @@ -7,7 +7,7 @@ namespace PKHeX.Core /// /// Bundles raw string inputs into lists that can be used in data binding. /// - public class GameDataSource + public sealed class GameDataSource { public static readonly IReadOnlyList Regions = Util.GetCSVUnsortedCBList("regions3ds"); public static readonly IReadOnlyList LanguageList = Util.GetCSVUnsortedCBList("languages"); diff --git a/PKHeX.Core/Game/GameStrings/GameStrings.cs b/PKHeX.Core/Game/GameStrings/GameStrings.cs index c0cba136d..a01187c02 100644 --- a/PKHeX.Core/Game/GameStrings/GameStrings.cs +++ b/PKHeX.Core/Game/GameStrings/GameStrings.cs @@ -7,7 +7,7 @@ namespace PKHeX.Core /// /// Repository of localized game strings for a given . /// - public class GameStrings : IBasicStrings + public sealed class GameStrings : IBasicStrings { // PKM Info public readonly string[] specieslist, movelist, itemlist, abilitylist, types, natures, forms, diff --git a/PKHeX.Core/Game/GameStrings/MemoryStrings.cs b/PKHeX.Core/Game/GameStrings/MemoryStrings.cs index 55497b147..92e1c744e 100644 --- a/PKHeX.Core/Game/GameStrings/MemoryStrings.cs +++ b/PKHeX.Core/Game/GameStrings/MemoryStrings.cs @@ -4,7 +4,7 @@ namespace PKHeX.Core { - public class MemoryStrings + public sealed class MemoryStrings { private readonly GameStrings s; diff --git a/PKHeX.Core/Legality/BulkAnalysis.cs b/PKHeX.Core/Legality/BulkAnalysis.cs index 0d22112c9..dc80b8619 100644 --- a/PKHeX.Core/Legality/BulkAnalysis.cs +++ b/PKHeX.Core/Legality/BulkAnalysis.cs @@ -8,7 +8,7 @@ namespace PKHeX.Core { - public class BulkAnalysis + public sealed class BulkAnalysis { public readonly IReadOnlyList AllData; public readonly IReadOnlyList AllAnalysis; diff --git a/PKHeX.Core/Legality/Encounters/Generator/EncounterCriteria.cs b/PKHeX.Core/Legality/Encounters/Generator/EncounterCriteria.cs index df60f97b7..6136248d8 100644 --- a/PKHeX.Core/Legality/Encounters/Generator/EncounterCriteria.cs +++ b/PKHeX.Core/Legality/Encounters/Generator/EncounterCriteria.cs @@ -3,7 +3,7 @@ /// /// Object that can be fed to a converter to ensure that the resulting meets rough specifications. /// - public class EncounterCriteria + public sealed class EncounterCriteria { public static readonly EncounterCriteria Unrestricted = new EncounterCriteria(); diff --git a/PKHeX.Core/Legality/Encounters/Generator/PeekEnumerator.cs b/PKHeX.Core/Legality/Encounters/Generator/PeekEnumerator.cs index 2a4d5f716..96ce5a7da 100644 --- a/PKHeX.Core/Legality/Encounters/Generator/PeekEnumerator.cs +++ b/PKHeX.Core/Legality/Encounters/Generator/PeekEnumerator.cs @@ -8,7 +8,7 @@ namespace PKHeX.Core /// Iterates a generic collection with the ability to peek into the collection to see if the next element exists. /// /// Generic Collection Element Type - public class PeekEnumerator : IEnumerator + public sealed class PeekEnumerator : IEnumerator { private readonly IEnumerator Enumerator; private T peek; diff --git a/PKHeX.Core/Legality/Encounters/Information/ValidEncounterMoves.cs b/PKHeX.Core/Legality/Encounters/Information/ValidEncounterMoves.cs index e739c670e..f80115be9 100644 --- a/PKHeX.Core/Legality/Encounters/Information/ValidEncounterMoves.cs +++ b/PKHeX.Core/Legality/Encounters/Information/ValidEncounterMoves.cs @@ -7,7 +7,7 @@ namespace PKHeX.Core /// /// Object which stores information useful for analyzing a moveset relative to the encounter data. /// - public class ValidEncounterMoves + public sealed class ValidEncounterMoves { public List[] LevelUpMoves { get; } = Empty; public List[] TMHMMoves { get; } = Empty; @@ -30,7 +30,7 @@ public ValidEncounterMoves(List[] levelup) } } - public class LevelUpRestriction + public sealed class LevelUpRestriction { public readonly IReadOnlyList[] EvolutionChains; public readonly int MinimumLevelGen1; diff --git a/PKHeX.Core/Legality/Moves/LearnLookup.cs b/PKHeX.Core/Legality/Moves/LearnLookup.cs index 30e3d860d..2f8bb1788 100644 --- a/PKHeX.Core/Legality/Moves/LearnLookup.cs +++ b/PKHeX.Core/Legality/Moves/LearnLookup.cs @@ -8,7 +8,7 @@ namespace PKHeX.Core /// /// LevelUp Lookup object /// - public class LearnLookup + public sealed class LearnLookup { private readonly GameVersion Version; private readonly PersonalTable Table; diff --git a/PKHeX.Core/Legality/RNG/Frame/Frame.cs b/PKHeX.Core/Legality/RNG/Frame/Frame.cs index 73df02ea1..b39a1d7c3 100644 --- a/PKHeX.Core/Legality/RNG/Frame/Frame.cs +++ b/PKHeX.Core/Legality/RNG/Frame/Frame.cs @@ -1,6 +1,6 @@ namespace PKHeX.Core { - public class Frame + public sealed class Frame { /// /// Ending seed value for the frame (prior to nature call). diff --git a/PKHeX.Core/Legality/RNG/Frame/FrameCache.cs b/PKHeX.Core/Legality/RNG/Frame/FrameCache.cs index 534c8d245..aa8c83c57 100644 --- a/PKHeX.Core/Legality/RNG/Frame/FrameCache.cs +++ b/PKHeX.Core/Legality/RNG/Frame/FrameCache.cs @@ -7,7 +7,7 @@ namespace PKHeX.Core /// /// Frame List used to cache results. /// - public class FrameCache + public sealed class FrameCache { private const int DefaultSize = 32; private readonly List Seeds = new List(DefaultSize); diff --git a/PKHeX.Core/Legality/RNG/Frame/FrameGenerator.cs b/PKHeX.Core/Legality/RNG/Frame/FrameGenerator.cs index f4e16cf0b..12f4a79b8 100644 --- a/PKHeX.Core/Legality/RNG/Frame/FrameGenerator.cs +++ b/PKHeX.Core/Legality/RNG/Frame/FrameGenerator.cs @@ -1,6 +1,6 @@ namespace PKHeX.Core { - public class FrameGenerator + public sealed class FrameGenerator { public uint Nature; public readonly bool Gendered; diff --git a/PKHeX.Core/Legality/RNG/Locks/TeamLock.cs b/PKHeX.Core/Legality/RNG/Locks/TeamLock.cs index d6246dc53..4484eb645 100644 --- a/PKHeX.Core/Legality/RNG/Locks/TeamLock.cs +++ b/PKHeX.Core/Legality/RNG/Locks/TeamLock.cs @@ -1,6 +1,6 @@ namespace PKHeX.Core { - public class TeamLock + public sealed class TeamLock { public int Species; public string Comment; diff --git a/PKHeX.Core/Legality/RNG/PIDIV.cs b/PKHeX.Core/Legality/RNG/PIDIV.cs index 11063262d..d773e0fde 100644 --- a/PKHeX.Core/Legality/RNG/PIDIV.cs +++ b/PKHeX.Core/Legality/RNG/PIDIV.cs @@ -16,7 +16,7 @@ public class PIDIV public PIDType Type; } - public class PIDIVTSV : PIDIV + public sealed class PIDIVTSV : PIDIV { public int TSV1 { get; internal set; } = -1; public int TSV2 { get; internal set; } = -1; diff --git a/PKHeX.Core/Legality/Structures/CheckMoveResult.cs b/PKHeX.Core/Legality/Structures/CheckMoveResult.cs index 021ab5ca2..e0c1d4c78 100644 --- a/PKHeX.Core/Legality/Structures/CheckMoveResult.cs +++ b/PKHeX.Core/Legality/Structures/CheckMoveResult.cs @@ -23,7 +23,7 @@ public enum MoveSource /// /// Move specific to contain in which Generation it was learned & source. /// - public class CheckMoveResult : CheckResult + public sealed class CheckMoveResult : CheckResult { public readonly MoveSource Source; public readonly int Generation; diff --git a/PKHeX.Core/Legality/Structures/SimpleTrainerInfo.cs b/PKHeX.Core/Legality/Structures/SimpleTrainerInfo.cs index a67a4b688..a8ab0e17d 100644 --- a/PKHeX.Core/Legality/Structures/SimpleTrainerInfo.cs +++ b/PKHeX.Core/Legality/Structures/SimpleTrainerInfo.cs @@ -1,6 +1,6 @@ namespace PKHeX.Core { - public class SimpleTrainerInfo : ITrainerInfo + public sealed class SimpleTrainerInfo : ITrainerInfo { public string OT { get; set; } = "PKHeX"; public int TID { get; set; } = 12345; diff --git a/PKHeX.Core/MysteryGifts/PL6.cs b/PKHeX.Core/MysteryGifts/PL6.cs index df968f30f..b023d02ef 100644 --- a/PKHeX.Core/MysteryGifts/PL6.cs +++ b/PKHeX.Core/MysteryGifts/PL6.cs @@ -11,7 +11,7 @@ namespace PKHeX.Core /// This Template object is very similar to the structure in that it stores more data than just the gift. /// This template object is only present in Generation 6 save files. /// - public class PL6 + public sealed class PL6 { public const int Size = 0xA47; public const string Filter = "Pokémon Link Data|*.pl6|All Files (*.*)|*.*"; @@ -131,7 +131,7 @@ public int[] Quantities /// This Template object is very similar to the structure and similar objects, in that the structure offsets are ordered the same. /// This template object is only present in Generation 6 save files. /// - public class PL6_PKM : IRibbonSetEvent3, IRibbonSetEvent4 + public sealed class PL6_PKM : IRibbonSetEvent3, IRibbonSetEvent4 { internal const int Size = 0xA0; diff --git a/PKHeX.Core/MysteryGifts/WC3.cs b/PKHeX.Core/MysteryGifts/WC3.cs index 58113908e..8fce2723a 100644 --- a/PKHeX.Core/MysteryGifts/WC3.cs +++ b/PKHeX.Core/MysteryGifts/WC3.cs @@ -10,7 +10,7 @@ namespace PKHeX.Core /// This is fabricated data built to emulate the future generation Mystery Gift objects. /// Data here is not stored in any save file and cannot be naturally exported. /// - public class WC3 : MysteryGift, IRibbonSetEvent3, IVersion + public sealed class WC3 : MysteryGift, IRibbonSetEvent3, IVersion { /// /// Matched Type diff --git a/PKHeX.Core/MysteryGifts/WR7.cs b/PKHeX.Core/MysteryGifts/WR7.cs index 6b3001b73..91129fbe6 100644 --- a/PKHeX.Core/MysteryGifts/WR7.cs +++ b/PKHeX.Core/MysteryGifts/WR7.cs @@ -11,7 +11,7 @@ namespace PKHeX.Core /// A full is not stored in the structure, as it is immediately converted to upon receiving from server. /// The save file just stores a summary of the received data for the user to look back at. /// - public class WR7 : MysteryGift + public sealed class WR7 : MysteryGift { public const int Size = 0x140; diff --git a/PKHeX.Core/PKM/Searching/SearchSettings.cs b/PKHeX.Core/PKM/Searching/SearchSettings.cs index d11d07ab6..1e470f2b1 100644 --- a/PKHeX.Core/PKM/Searching/SearchSettings.cs +++ b/PKHeX.Core/PKM/Searching/SearchSettings.cs @@ -7,7 +7,7 @@ namespace PKHeX.Core.Searching /// /// search settings & searcher /// - public class SearchSettings + public sealed class SearchSettings { public int Format { private get; set; } public int Generation { private get; set; } diff --git a/PKHeX.Core/PKM/Shared/QRPK7.cs b/PKHeX.Core/PKM/Shared/QRPK7.cs index b0675ca28..4b9aaaa80 100644 --- a/PKHeX.Core/PKM/Shared/QRPK7.cs +++ b/PKHeX.Core/PKM/Shared/QRPK7.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class QRPK7 + public sealed class QRPK7 { private readonly byte[] Data; diff --git a/PKHeX.Core/PersonalInfo/PersonalInfoB2W2.cs b/PKHeX.Core/PersonalInfo/PersonalInfoB2W2.cs index 0f2a988c0..48fb25d5e 100644 --- a/PKHeX.Core/PersonalInfo/PersonalInfoB2W2.cs +++ b/PKHeX.Core/PersonalInfo/PersonalInfoB2W2.cs @@ -3,7 +3,7 @@ /// /// class with values from the Black 2 & White 2 games. /// - public class PersonalInfoB2W2 : PersonalInfoBW + public sealed class PersonalInfoB2W2 : PersonalInfoBW { public new const int SIZE = 0x4C; diff --git a/PKHeX.Core/PersonalInfo/PersonalInfoG1.cs b/PKHeX.Core/PersonalInfo/PersonalInfoG1.cs index f02dc52ef..0e2a85dd1 100644 --- a/PKHeX.Core/PersonalInfo/PersonalInfoG1.cs +++ b/PKHeX.Core/PersonalInfo/PersonalInfoG1.cs @@ -3,9 +3,8 @@ /// /// class with values from Generation 1 games. /// - public class PersonalInfoG1 : PersonalInfo + public sealed class PersonalInfoG1 : PersonalInfo { - protected PersonalInfoG1() { } public const int SIZE = 0x1C; public PersonalInfoG1(byte[] data) diff --git a/PKHeX.Core/PersonalInfo/PersonalInfoG2.cs b/PKHeX.Core/PersonalInfo/PersonalInfoG2.cs index 28ecba78e..0630682df 100644 --- a/PKHeX.Core/PersonalInfo/PersonalInfoG2.cs +++ b/PKHeX.Core/PersonalInfo/PersonalInfoG2.cs @@ -3,9 +3,8 @@ /// /// class with values from Generation 2 games. /// - public class PersonalInfoG2 : PersonalInfo + public sealed class PersonalInfoG2 : PersonalInfo { - protected PersonalInfoG2() { } public const int SIZE = 0x20; public PersonalInfoG2(byte[] data) diff --git a/PKHeX.Core/PersonalInfo/PersonalInfoG4.cs b/PKHeX.Core/PersonalInfo/PersonalInfoG4.cs index 0fbae100b..00f472bec 100644 --- a/PKHeX.Core/PersonalInfo/PersonalInfoG4.cs +++ b/PKHeX.Core/PersonalInfo/PersonalInfoG4.cs @@ -5,7 +5,7 @@ namespace PKHeX.Core /// /// class with values from Generation 4 games. /// - public class PersonalInfoG4 : PersonalInfoG3 + public sealed class PersonalInfoG4 : PersonalInfoG3 { public new const int SIZE = 0x2C; diff --git a/PKHeX.Core/PersonalInfo/PersonalInfoORAS.cs b/PKHeX.Core/PersonalInfo/PersonalInfoORAS.cs index 58f532a5e..f07119b37 100644 --- a/PKHeX.Core/PersonalInfo/PersonalInfoORAS.cs +++ b/PKHeX.Core/PersonalInfo/PersonalInfoORAS.cs @@ -3,7 +3,7 @@ /// /// class with values from the OR & AS games. /// - public class PersonalInfoORAS : PersonalInfoXY + public sealed class PersonalInfoORAS : PersonalInfoXY { public new const int SIZE = 0x50; diff --git a/PKHeX.Core/PersonalInfo/PersonalInfoSWSH.cs b/PKHeX.Core/PersonalInfo/PersonalInfoSWSH.cs index 25a3a9899..421b8aa11 100644 --- a/PKHeX.Core/PersonalInfo/PersonalInfoSWSH.cs +++ b/PKHeX.Core/PersonalInfo/PersonalInfoSWSH.cs @@ -5,7 +5,7 @@ namespace PKHeX.Core /// /// class with values from the games. /// - public class PersonalInfoSWSH : PersonalInfoSM + public sealed class PersonalInfoSWSH : PersonalInfoSM { public new const int SIZE = PersonalInfoSM.SIZE; diff --git a/PKHeX.Core/Saves/SAV3.cs b/PKHeX.Core/Saves/SAV3.cs index bfffc0475..741d975ec 100644 --- a/PKHeX.Core/Saves/SAV3.cs +++ b/PKHeX.Core/Saves/SAV3.cs @@ -898,7 +898,7 @@ private void LoadEReaderBerryData() #endregion // RTC - public class RTC3 + public sealed class RTC3 { public readonly byte[] Data; private const int Size = 8; diff --git a/PKHeX.Core/Saves/SAV5B2W2.cs b/PKHeX.Core/Saves/SAV5B2W2.cs index 87b6cff34..ee3915c16 100644 --- a/PKHeX.Core/Saves/SAV5B2W2.cs +++ b/PKHeX.Core/Saves/SAV5B2W2.cs @@ -1,6 +1,6 @@ namespace PKHeX.Core { - public class SAV5B2W2 : SAV5 + public sealed class SAV5B2W2 : SAV5 { public SAV5B2W2() : base(SaveUtil.SIZE_G5RAW) => Initialize(); public SAV5B2W2(byte[] data) : base(data) => Initialize(); diff --git a/PKHeX.Core/Saves/SAV5BW.cs b/PKHeX.Core/Saves/SAV5BW.cs index 18a29e9af..e3dc91f1f 100644 --- a/PKHeX.Core/Saves/SAV5BW.cs +++ b/PKHeX.Core/Saves/SAV5BW.cs @@ -1,6 +1,6 @@ namespace PKHeX.Core { - public class SAV5BW : SAV5 + public sealed class SAV5BW : SAV5 { public SAV5BW() : base(SaveUtil.SIZE_G5RAW) => Initialize(); public SAV5BW(byte[] data) : base(data) => Initialize(); diff --git a/PKHeX.Core/Saves/SAV7SM.cs b/PKHeX.Core/Saves/SAV7SM.cs index 98ec94980..91e630518 100644 --- a/PKHeX.Core/Saves/SAV7SM.cs +++ b/PKHeX.Core/Saves/SAV7SM.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class SAV7SM : SAV7 + public sealed class SAV7SM : SAV7 { public SAV7SM(byte[] data) : base(data, BlocksSM, boSM) => Initialize(); public SAV7SM() : base(SaveUtil.SIZE_G7SM, BlocksSM, boSM) => Initialize(); diff --git a/PKHeX.Core/Saves/SAV7USUM.cs b/PKHeX.Core/Saves/SAV7USUM.cs index c6117b2f8..28c48dbe9 100644 --- a/PKHeX.Core/Saves/SAV7USUM.cs +++ b/PKHeX.Core/Saves/SAV7USUM.cs @@ -1,6 +1,6 @@ namespace PKHeX.Core { - public class SAV7USUM : SAV7 + public sealed class SAV7USUM : SAV7 { public SAV7USUM(byte[] data) : base(data, BlocksUSUM, boUU) { diff --git a/PKHeX.Core/Saves/SAV8SWSH.cs b/PKHeX.Core/Saves/SAV8SWSH.cs index c02b4a080..e210a46d3 100644 --- a/PKHeX.Core/Saves/SAV8SWSH.cs +++ b/PKHeX.Core/Saves/SAV8SWSH.cs @@ -3,7 +3,7 @@ /// /// Generation 8 object for games. /// - public class SAV8SWSH : SAV8 + public sealed class SAV8SWSH : SAV8 { public SAV8SWSH(byte[] data) : base(data, BlocksSWSH, boSWSH) => Initialize(); public SAV8SWSH() : base(SaveUtil.SIZE_G8SWSH, BlocksSWSH, boSWSH) => Initialize(); diff --git a/PKHeX.Core/Saves/Substructures/Battle Videos/BV6.cs b/PKHeX.Core/Saves/Substructures/Battle Videos/BV6.cs index c1d168ada..8fa0b16cf 100644 --- a/PKHeX.Core/Saves/Substructures/Battle Videos/BV6.cs +++ b/PKHeX.Core/Saves/Substructures/Battle Videos/BV6.cs @@ -4,7 +4,7 @@ namespace PKHeX.Core { - public class BV6 : BattleVideo + public sealed class BV6 : BattleVideo { internal const int SIZE = 0x2E60; diff --git a/PKHeX.Core/Saves/Substructures/Battle Videos/BV7.cs b/PKHeX.Core/Saves/Substructures/Battle Videos/BV7.cs index da02d0e89..57987cf89 100644 --- a/PKHeX.Core/Saves/Substructures/Battle Videos/BV7.cs +++ b/PKHeX.Core/Saves/Substructures/Battle Videos/BV7.cs @@ -4,7 +4,7 @@ namespace PKHeX.Core { - public class BV7 : BattleVideo + public sealed class BV7 : BattleVideo { internal const int SIZE = 0x2BC0; diff --git a/PKHeX.Core/Saves/Substructures/Gen12/G1OverworldSpawner.cs b/PKHeX.Core/Saves/Substructures/Gen12/G1OverworldSpawner.cs index e73573d61..4ed5fce7c 100644 --- a/PKHeX.Core/Saves/Substructures/Gen12/G1OverworldSpawner.cs +++ b/PKHeX.Core/Saves/Substructures/Gen12/G1OverworldSpawner.cs @@ -3,7 +3,7 @@ namespace PKHeX.Core { - public class G1OverworldSpawner + public sealed class G1OverworldSpawner { private readonly SAV1 SAV; private readonly bool[] EventFlags; @@ -73,7 +73,7 @@ public G1OverworldSpawner(SAV1 sav) private FlagPair FlagSquirtle { get; } private FlagPair FlagCharmander { get; } - public class FlagPair + public sealed class FlagPair { public string Name { get; internal set; } diff --git a/PKHeX.Core/Saves/Substructures/Gen3/HallFame3.cs b/PKHeX.Core/Saves/Substructures/Gen3/HallFame3.cs index a7b0056e3..4fc2fe352 100644 --- a/PKHeX.Core/Saves/Substructures/Gen3/HallFame3.cs +++ b/PKHeX.Core/Saves/Substructures/Gen3/HallFame3.cs @@ -3,7 +3,7 @@ namespace PKHeX.Core { - public class HallFame3Entry + public sealed class HallFame3Entry { private readonly byte[] Parent; private readonly bool Japanese; @@ -64,7 +64,7 @@ public static void SetEntries(SAV3 sav, HallFame3Entry[] entries) } } - public class HallFame3PKM + public sealed class HallFame3PKM { public const int SIZE = 20; diff --git a/PKHeX.Core/Saves/Substructures/Gen3/PokeBlock3.cs b/PKHeX.Core/Saves/Substructures/Gen3/PokeBlock3.cs index 5425823eb..a8650b2ae 100644 --- a/PKHeX.Core/Saves/Substructures/Gen3/PokeBlock3.cs +++ b/PKHeX.Core/Saves/Substructures/Gen3/PokeBlock3.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class PokeBlock3 + public sealed class PokeBlock3 { public const int SIZE = 7; private readonly byte[] Data; diff --git a/PKHeX.Core/Saves/Substructures/Gen3/PokeBlock3Case.cs b/PKHeX.Core/Saves/Substructures/Gen3/PokeBlock3Case.cs index d5ca3fe2f..a3a269999 100644 --- a/PKHeX.Core/Saves/Substructures/Gen3/PokeBlock3Case.cs +++ b/PKHeX.Core/Saves/Substructures/Gen3/PokeBlock3Case.cs @@ -1,6 +1,6 @@ namespace PKHeX.Core { - public class PokeBlock3Case + public sealed class PokeBlock3Case { private const int Count = 40; public readonly PokeBlock3[] Blocks; diff --git a/PKHeX.Core/Saves/Substructures/Gen3/Roamer3.cs b/PKHeX.Core/Saves/Substructures/Gen3/Roamer3.cs index bafbbad73..19b1445fb 100644 --- a/PKHeX.Core/Saves/Substructures/Gen3/Roamer3.cs +++ b/PKHeX.Core/Saves/Substructures/Gen3/Roamer3.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class Roamer3 : IContestStats + public sealed class Roamer3 : IContestStats { private readonly SaveFile SAV; private readonly int Offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen3/SecretBase3.cs b/PKHeX.Core/Saves/Substructures/Gen3/SecretBase3.cs index 85de122db..396473eae 100644 --- a/PKHeX.Core/Saves/Substructures/Gen3/SecretBase3.cs +++ b/PKHeX.Core/Saves/Substructures/Gen3/SecretBase3.cs @@ -1,9 +1,8 @@ using System; -using System.Linq; namespace PKHeX.Core { - public class SecretBase3 + public sealed class SecretBase3 { private readonly byte[] Data; private readonly int Offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen3/SecretBase3PKM.cs b/PKHeX.Core/Saves/Substructures/Gen3/SecretBase3PKM.cs index 54f44f4d0..af829ccd7 100644 --- a/PKHeX.Core/Saves/Substructures/Gen3/SecretBase3PKM.cs +++ b/PKHeX.Core/Saves/Substructures/Gen3/SecretBase3PKM.cs @@ -3,7 +3,7 @@ namespace PKHeX.Core { - public class SecretBase3PKM + public sealed class SecretBase3PKM { public uint PID { get; set; } public int Move1 { get; set; } diff --git a/PKHeX.Core/Saves/Substructures/Gen3/SecretBase3Team.cs b/PKHeX.Core/Saves/Substructures/Gen3/SecretBase3Team.cs index 43ae532d1..75591765c 100644 --- a/PKHeX.Core/Saves/Substructures/Gen3/SecretBase3Team.cs +++ b/PKHeX.Core/Saves/Substructures/Gen3/SecretBase3Team.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class SecretBase3Team + public sealed class SecretBase3Team { private const int O_PID = 0; private const int O_Moves = 0x18; diff --git a/PKHeX.Core/Saves/Substructures/Gen3/ShadowInfo.cs b/PKHeX.Core/Saves/Substructures/Gen3/ShadowInfo.cs index 74c92a5af..a586cfa22 100644 --- a/PKHeX.Core/Saves/Substructures/Gen3/ShadowInfo.cs +++ b/PKHeX.Core/Saves/Substructures/Gen3/ShadowInfo.cs @@ -4,7 +4,7 @@ namespace PKHeX.Core { - public class ShadowInfoTableXD + public sealed class ShadowInfoTableXD { private readonly List Entries; private readonly int MaxLength; @@ -56,7 +56,7 @@ public void SetEntry(ShadowInfoEntryXD Entry) public int Count => Entries.Count; } - public class ShadowInfoEntryXD + public sealed class ShadowInfoEntryXD { public readonly byte[] Data; internal const int SIZE_ENTRY = 72; @@ -74,7 +74,7 @@ public class ShadowInfoEntryXD public bool IsEmpty => Species == 0; } - public class ShadowInfoEntryColo + public sealed class ShadowInfoEntryColo { public readonly byte[] Data; private const int SIZE_ENTRY = 12; diff --git a/PKHeX.Core/Saves/Substructures/Gen3/StrategyMemo.cs b/PKHeX.Core/Saves/Substructures/Gen3/StrategyMemo.cs index eef60cd67..2ac38f4bb 100644 --- a/PKHeX.Core/Saves/Substructures/Gen3/StrategyMemo.cs +++ b/PKHeX.Core/Saves/Substructures/Gen3/StrategyMemo.cs @@ -4,7 +4,7 @@ namespace PKHeX.Core { - public class StrategyMemo + public sealed class StrategyMemo { private readonly bool XD; private const int SIZE_ENTRY = 12; @@ -51,7 +51,7 @@ public void SetEntry(StrategyMemoEntry entry) Entries.Add(entry); } - public class StrategyMemoEntry + public sealed class StrategyMemoEntry { public readonly byte[] Data; private readonly bool XD; diff --git a/PKHeX.Core/Saves/Substructures/Gen4/HoneyTree.cs b/PKHeX.Core/Saves/Substructures/Gen4/HoneyTree.cs index d3aa63d69..c60b10b81 100644 --- a/PKHeX.Core/Saves/Substructures/Gen4/HoneyTree.cs +++ b/PKHeX.Core/Saves/Substructures/Gen4/HoneyTree.cs @@ -5,7 +5,7 @@ namespace PKHeX.Core /// /// Honey Tree in Sinnoh (Gen4) /// - public class HoneyTree + public sealed class HoneyTree { public const int Size = 8; diff --git a/PKHeX.Core/Saves/Substructures/Gen4/Poffin4.cs b/PKHeX.Core/Saves/Substructures/Gen4/Poffin4.cs index a91160b84..75178e860 100644 --- a/PKHeX.Core/Saves/Substructures/Gen4/Poffin4.cs +++ b/PKHeX.Core/Saves/Substructures/Gen4/Poffin4.cs @@ -3,7 +3,7 @@ namespace PKHeX.Core { - public class Poffin4 + public sealed class Poffin4 { public const int SIZE = 8; public readonly byte[] Data; diff --git a/PKHeX.Core/Saves/Substructures/Gen4/PoffinCase4.cs b/PKHeX.Core/Saves/Substructures/Gen4/PoffinCase4.cs index e852d0a5c..dceb21a9a 100644 --- a/PKHeX.Core/Saves/Substructures/Gen4/PoffinCase4.cs +++ b/PKHeX.Core/Saves/Substructures/Gen4/PoffinCase4.cs @@ -6,7 +6,7 @@ namespace PKHeX.Core /// /// Storage for all the trainer has. /// - public class PoffinCase4 + public sealed class PoffinCase4 { private readonly SAV4Sinnoh SAV; private readonly int Offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen5/BattleSubway5.cs b/PKHeX.Core/Saves/Substructures/Gen5/BattleSubway5.cs index 098913356..8985d51e8 100644 --- a/PKHeX.Core/Saves/Substructures/Gen5/BattleSubway5.cs +++ b/PKHeX.Core/Saves/Substructures/Gen5/BattleSubway5.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class BattleSubway5 : SaveBlock + public sealed class BattleSubway5 : SaveBlock { public BattleSubway5(SAV5 sav, int offset) : base(sav) => Offset = offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen5/CGearBackground.cs b/PKHeX.Core/Saves/Substructures/Gen5/CGearBackground.cs index 5cdd77ed2..0b6042ccc 100644 --- a/PKHeX.Core/Saves/Substructures/Gen5/CGearBackground.cs +++ b/PKHeX.Core/Saves/Substructures/Gen5/CGearBackground.cs @@ -4,7 +4,10 @@ namespace PKHeX.Core { - public class CGearBackground + /// + /// Generation 5 C-Gear Background Image + /// + public sealed class CGearBackground { public const string Extension = "cgb"; public const string Filter = "C-Gear Background|*.cgb"; diff --git a/PKHeX.Core/Saves/Substructures/Gen5/Daycare5.cs b/PKHeX.Core/Saves/Substructures/Gen5/Daycare5.cs index 22fd0a5a1..db0e7e019 100644 --- a/PKHeX.Core/Saves/Substructures/Gen5/Daycare5.cs +++ b/PKHeX.Core/Saves/Substructures/Gen5/Daycare5.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class Daycare5 : SaveBlock + public sealed class Daycare5 : SaveBlock { // struct daycareSlot // bool32 occupied diff --git a/PKHeX.Core/Saves/Substructures/Gen5/EntreeForest.cs b/PKHeX.Core/Saves/Substructures/Gen5/EntreeForest.cs index ac483cca7..bf88aec99 100644 --- a/PKHeX.Core/Saves/Substructures/Gen5/EntreeForest.cs +++ b/PKHeX.Core/Saves/Substructures/Gen5/EntreeForest.cs @@ -2,7 +2,10 @@ namespace PKHeX.Core { - public class EntreeForest + /// + /// Generation 5 Entree Forest + /// + public sealed class EntreeForest { /// /// Areas 1 thru 8 have 20 slots. diff --git a/PKHeX.Core/Saves/Substructures/Gen5/EntreeSlot.cs b/PKHeX.Core/Saves/Substructures/Gen5/EntreeSlot.cs index 2b2720088..b2d901efd 100644 --- a/PKHeX.Core/Saves/Substructures/Gen5/EntreeSlot.cs +++ b/PKHeX.Core/Saves/Substructures/Gen5/EntreeSlot.cs @@ -2,7 +2,10 @@ namespace PKHeX.Core { - public class EntreeSlot + /// + /// Generation 5 slot + /// + public sealed class EntreeSlot { /// /// index diff --git a/PKHeX.Core/Saves/Substructures/Gen5/MysteryBlock5.cs b/PKHeX.Core/Saves/Substructures/Gen5/MysteryBlock5.cs index 5757b6828..cbfe81b3c 100644 --- a/PKHeX.Core/Saves/Substructures/Gen5/MysteryBlock5.cs +++ b/PKHeX.Core/Saves/Substructures/Gen5/MysteryBlock5.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class MysteryBlock5 : SaveBlock + public sealed class MysteryBlock5 : SaveBlock { private const int FlagStart = 0; private const int MaxReceivedFlag = 2048; diff --git a/PKHeX.Core/Saves/Substructures/Gen5/PWTBlock5.cs b/PKHeX.Core/Saves/Substructures/Gen5/PWTBlock5.cs index c9435f69b..922caeb61 100644 --- a/PKHeX.Core/Saves/Substructures/Gen5/PWTBlock5.cs +++ b/PKHeX.Core/Saves/Substructures/Gen5/PWTBlock5.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class PWTBlock5 : SaveBlock + public sealed class PWTBlock5 : SaveBlock { public PWTBlock5(SAV5B2W2 sav, int offset) : base(sav) => Offset = offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen5/PlayerData5.cs b/PKHeX.Core/Saves/Substructures/Gen5/PlayerData5.cs index 00bb4e7bf..ea1868319 100644 --- a/PKHeX.Core/Saves/Substructures/Gen5/PlayerData5.cs +++ b/PKHeX.Core/Saves/Substructures/Gen5/PlayerData5.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class PlayerData5 : SaveBlock + public sealed class PlayerData5 : SaveBlock { public PlayerData5(SAV5 sav, int offset) : base(sav) => Offset = offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen6/BoxLayout6.cs b/PKHeX.Core/Saves/Substructures/Gen6/BoxLayout6.cs index 17baf001b..0ac4f4c41 100644 --- a/PKHeX.Core/Saves/Substructures/Gen6/BoxLayout6.cs +++ b/PKHeX.Core/Saves/Substructures/Gen6/BoxLayout6.cs @@ -1,6 +1,6 @@ namespace PKHeX.Core { - public class BoxLayout6 : SaveBlock + public sealed class BoxLayout6 : SaveBlock { // gfstr5[31] boxNames; // byte[31] wallpapers; diff --git a/PKHeX.Core/Saves/Substructures/Gen6/MysteryBlock6.cs b/PKHeX.Core/Saves/Substructures/Gen6/MysteryBlock6.cs index 315f4fd90..f7aeacd86 100644 --- a/PKHeX.Core/Saves/Substructures/Gen6/MysteryBlock6.cs +++ b/PKHeX.Core/Saves/Substructures/Gen6/MysteryBlock6.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class MysteryBlock6 : SaveBlock + public sealed class MysteryBlock6 : SaveBlock { private const int FlagStart = 0; private const int MaxReceivedFlag = 2048; diff --git a/PKHeX.Core/Saves/Substructures/Gen6/Puff6.cs b/PKHeX.Core/Saves/Substructures/Gen6/Puff6.cs index 63c4b5669..30ceaa20d 100644 --- a/PKHeX.Core/Saves/Substructures/Gen6/Puff6.cs +++ b/PKHeX.Core/Saves/Substructures/Gen6/Puff6.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class Puff6 : SaveBlock + public sealed class Puff6 : SaveBlock { private const int MaxPuffID = 26; // Supreme Winter Poké Puff private const int PuffSlots = 100; @@ -58,7 +58,7 @@ public void Sort(bool reverse = false) } - public class BattleBox6 : SaveBlock + public sealed class BattleBox6 : SaveBlock { public BattleBox6(SaveFile SAV, int offset) : base(SAV) => Offset = offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen6/Record6.cs b/PKHeX.Core/Saves/Substructures/Gen6/Record6.cs index e04705234..b8fd51baa 100644 --- a/PKHeX.Core/Saves/Substructures/Gen6/Record6.cs +++ b/PKHeX.Core/Saves/Substructures/Gen6/Record6.cs @@ -4,7 +4,7 @@ namespace PKHeX.Core { - public class Record6 : RecordBlock + public sealed class Record6 : RecordBlock { public const int RecordCount = 200; protected override IReadOnlyList RecordMax { get; } diff --git a/PKHeX.Core/Saves/Substructures/Gen6/SangoInfoBlock.cs b/PKHeX.Core/Saves/Substructures/Gen6/SangoInfoBlock.cs index 50663d20b..2d5a8f744 100644 --- a/PKHeX.Core/Saves/Substructures/Gen6/SangoInfoBlock.cs +++ b/PKHeX.Core/Saves/Substructures/Gen6/SangoInfoBlock.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class SangoInfoBlock : SaveBlock + public sealed class SangoInfoBlock : SaveBlock { public SangoInfoBlock(SaveFile SAV, int offset) : base(SAV) => Offset = offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen6/Situation6.cs b/PKHeX.Core/Saves/Substructures/Gen6/Situation6.cs index b6fdd8427..ed9650471 100644 --- a/PKHeX.Core/Saves/Substructures/Gen6/Situation6.cs +++ b/PKHeX.Core/Saves/Substructures/Gen6/Situation6.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class Situation6 : SaveBlock + public sealed class Situation6 : SaveBlock { public Situation6(SaveFile SAV, int offset) : base(SAV) => Offset = offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen6/TrainerFashion6.cs b/PKHeX.Core/Saves/Substructures/Gen6/TrainerFashion6.cs index d408f3d35..c61647b67 100644 --- a/PKHeX.Core/Saves/Substructures/Gen6/TrainerFashion6.cs +++ b/PKHeX.Core/Saves/Substructures/Gen6/TrainerFashion6.cs @@ -69,7 +69,7 @@ public enum F6Skin } } - public class Fashion6Male : TrainerFashion6 + public sealed class Fashion6Male : TrainerFashion6 { public Fashion6Male(byte[] data, int offset) : base(data, offset) { } @@ -269,7 +269,7 @@ public enum F6HairStyleFront } } - public class Fashion6Female : TrainerFashion6 + public sealed class Fashion6Female : TrainerFashion6 { public Fashion6Female(byte[] data, int offset) : base(data, offset) { } diff --git a/PKHeX.Core/Saves/Substructures/Gen7/BattleTree7.cs b/PKHeX.Core/Saves/Substructures/Gen7/BattleTree7.cs index d56e42cd0..26755ee12 100644 --- a/PKHeX.Core/Saves/Substructures/Gen7/BattleTree7.cs +++ b/PKHeX.Core/Saves/Substructures/Gen7/BattleTree7.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class BattleTree7 : SaveBlock + public sealed class BattleTree7 : SaveBlock { public BattleTree7(SAV7 sav, int offset) : base(sav) => Offset = offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen7/Daycare7.cs b/PKHeX.Core/Saves/Substructures/Gen7/Daycare7.cs index a1c3b9e3a..a8b43c02c 100644 --- a/PKHeX.Core/Saves/Substructures/Gen7/Daycare7.cs +++ b/PKHeX.Core/Saves/Substructures/Gen7/Daycare7.cs @@ -1,6 +1,6 @@ namespace PKHeX.Core { - public class Daycare7 : SaveBlock + public sealed class Daycare7 : SaveBlock { public const int DaycareSeedSize = 32; // 128 bits diff --git a/PKHeX.Core/Saves/Substructures/Gen7/FieldMoveModelSave7.cs b/PKHeX.Core/Saves/Substructures/Gen7/FieldMoveModelSave7.cs index 7604adcf6..6a4b14251 100644 --- a/PKHeX.Core/Saves/Substructures/Gen7/FieldMoveModelSave7.cs +++ b/PKHeX.Core/Saves/Substructures/Gen7/FieldMoveModelSave7.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class FieldMoveModelSave7 : SaveBlock + public sealed class FieldMoveModelSave7 : SaveBlock { public FieldMoveModelSave7(SAV7 sav, int offset) : base(sav) => Offset = offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen7/GP1.cs b/PKHeX.Core/Saves/Substructures/Gen7/GP1.cs index d1e1497ba..6f6c38f46 100644 --- a/PKHeX.Core/Saves/Substructures/Gen7/GP1.cs +++ b/PKHeX.Core/Saves/Substructures/Gen7/GP1.cs @@ -7,7 +7,7 @@ namespace PKHeX.Core /// /// Go Park Entity transferred from to . /// - public class GP1 + public sealed class GP1 { public const int SIZE = 0x1B0; public byte[] Data { get; } diff --git a/PKHeX.Core/Saves/Substructures/Gen7/MyStatus7.cs b/PKHeX.Core/Saves/Substructures/Gen7/MyStatus7.cs index 632190250..98bdd4d65 100644 --- a/PKHeX.Core/Saves/Substructures/Gen7/MyStatus7.cs +++ b/PKHeX.Core/Saves/Substructures/Gen7/MyStatus7.cs @@ -3,7 +3,7 @@ namespace PKHeX.Core { - public class MyStatus7 : SaveBlock + public sealed class MyStatus7 : SaveBlock { public const int GameSyncIDSize = 16; // 64 bits public const int NexUniqueIDSize = 32; // 128 bits diff --git a/PKHeX.Core/Saves/Substructures/Gen7/PokeFinder7.cs b/PKHeX.Core/Saves/Substructures/Gen7/PokeFinder7.cs index c078bd9c6..68cdab9e8 100644 --- a/PKHeX.Core/Saves/Substructures/Gen7/PokeFinder7.cs +++ b/PKHeX.Core/Saves/Substructures/Gen7/PokeFinder7.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class PokeFinder7 : SaveBlock + public sealed class PokeFinder7 : SaveBlock { public PokeFinder7(SAV7 sav, int offset) : base(sav) => Offset = offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen7/WB7Records.cs b/PKHeX.Core/Saves/Substructures/Gen7/WB7Records.cs index 884363c70..61c70bd74 100644 --- a/PKHeX.Core/Saves/Substructures/Gen7/WB7Records.cs +++ b/PKHeX.Core/Saves/Substructures/Gen7/WB7Records.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class WB7Records : SaveBlock + public sealed class WB7Records : SaveBlock { public WB7Records(SaveFile sav) : base(sav) { diff --git a/PKHeX.Core/Saves/Substructures/Gen7/WormholeInfoReader.cs b/PKHeX.Core/Saves/Substructures/Gen7/WormholeInfoReader.cs index 61bb3d010..7894ffb8a 100644 --- a/PKHeX.Core/Saves/Substructures/Gen7/WormholeInfoReader.cs +++ b/PKHeX.Core/Saves/Substructures/Gen7/WormholeInfoReader.cs @@ -1,6 +1,6 @@ namespace PKHeX.Core { - public class WormholeInfoReader + public sealed class WormholeInfoReader { public readonly SAV7 SAV; public WormholeInfoReader(SAV7 sav) => SAV = sav; diff --git a/PKHeX.Core/Saves/Substructures/Gen8/FieldMoveModelSave8.cs b/PKHeX.Core/Saves/Substructures/Gen8/FieldMoveModelSave8.cs index c3871a912..412d3cdc9 100644 --- a/PKHeX.Core/Saves/Substructures/Gen8/FieldMoveModelSave8.cs +++ b/PKHeX.Core/Saves/Substructures/Gen8/FieldMoveModelSave8.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class FieldMoveModelSave8 : SaveBlock + public sealed class FieldMoveModelSave8 : SaveBlock { public FieldMoveModelSave8(SAV8 sav, int offset) : base(sav) => Offset = offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen8/MyStatus8.cs b/PKHeX.Core/Saves/Substructures/Gen8/MyStatus8.cs index e4c427afe..2471d55cc 100644 --- a/PKHeX.Core/Saves/Substructures/Gen8/MyStatus8.cs +++ b/PKHeX.Core/Saves/Substructures/Gen8/MyStatus8.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class MyStatus8 : SaveBlock + public sealed class MyStatus8 : SaveBlock { public MyStatus8(SAV8 sav, int offset) : base(sav) => Offset = offset; diff --git a/PKHeX.Core/Saves/Substructures/Gen8/Record6.cs b/PKHeX.Core/Saves/Substructures/Gen8/Record6.cs index b8c976548..5a54805f4 100644 --- a/PKHeX.Core/Saves/Substructures/Gen8/Record6.cs +++ b/PKHeX.Core/Saves/Substructures/Gen8/Record6.cs @@ -4,7 +4,7 @@ namespace PKHeX.Core { - public class Record8 : RecordBlock + public sealed class Record8 : RecordBlock { public const int RecordCount = 200; protected override IReadOnlyList RecordMax { get; } diff --git a/PKHeX.Core/Saves/Substructures/Inventory/BeanPouch.cs b/PKHeX.Core/Saves/Substructures/Inventory/BeanPouch.cs index 033b66fb5..4dec90036 100644 --- a/PKHeX.Core/Saves/Substructures/Inventory/BeanPouch.cs +++ b/PKHeX.Core/Saves/Substructures/Inventory/BeanPouch.cs @@ -7,7 +7,7 @@ namespace PKHeX.Core /// /// Reads the bean pouch data from a . /// - public class BeanPouch + public sealed class BeanPouch { public const int Count = 15; public static readonly string[] BeanIndexNames = GetBeanList(); diff --git a/PKHeX.Core/Saves/Substructures/Inventory/InventoryItem.cs b/PKHeX.Core/Saves/Substructures/Inventory/InventoryItem.cs index bea6783ce..50e95fa89 100644 --- a/PKHeX.Core/Saves/Substructures/Inventory/InventoryItem.cs +++ b/PKHeX.Core/Saves/Substructures/Inventory/InventoryItem.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class InventoryItem + public sealed class InventoryItem { public bool New; public bool FreeSpace; diff --git a/PKHeX.Core/Saves/Substructures/Mail/Mail2.cs b/PKHeX.Core/Saves/Substructures/Mail/Mail2.cs index 40da66017..044891d94 100644 --- a/PKHeX.Core/Saves/Substructures/Mail/Mail2.cs +++ b/PKHeX.Core/Saves/Substructures/Mail/Mail2.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class Mail2 : Mail + public sealed class Mail2 : Mail { private readonly bool US; diff --git a/PKHeX.Core/Saves/Substructures/Mail/Mail3.cs b/PKHeX.Core/Saves/Substructures/Mail/Mail3.cs index 610cb0774..f8148ba91 100644 --- a/PKHeX.Core/Saves/Substructures/Mail/Mail3.cs +++ b/PKHeX.Core/Saves/Substructures/Mail/Mail3.cs @@ -3,7 +3,7 @@ namespace PKHeX.Core { - public class Mail3 : Mail + public sealed class Mail3 : Mail { private const int SIZE = 0x24; private readonly bool JP; diff --git a/PKHeX.Core/Saves/Substructures/Mail/Mail4.cs b/PKHeX.Core/Saves/Substructures/Mail/Mail4.cs index 6c7def217..f6479c225 100644 --- a/PKHeX.Core/Saves/Substructures/Mail/Mail4.cs +++ b/PKHeX.Core/Saves/Substructures/Mail/Mail4.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class Mail4 : Mail + public sealed class Mail4 : Mail { private const int SIZE = 0x38; diff --git a/PKHeX.Core/Saves/Substructures/Mail/Mail5.cs b/PKHeX.Core/Saves/Substructures/Mail/Mail5.cs index 507709a12..337773ccc 100644 --- a/PKHeX.Core/Saves/Substructures/Mail/Mail5.cs +++ b/PKHeX.Core/Saves/Substructures/Mail/Mail5.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class Mail5 : Mail + public sealed class Mail5 : Mail { private const int SIZE = 0x38; diff --git a/PKHeX.Core/Saves/Substructures/Misc/FestaFacility.cs b/PKHeX.Core/Saves/Substructures/Misc/FestaFacility.cs index 6ddb06ef4..70c39cedb 100644 --- a/PKHeX.Core/Saves/Substructures/Misc/FestaFacility.cs +++ b/PKHeX.Core/Saves/Substructures/Misc/FestaFacility.cs @@ -1,9 +1,8 @@ using System; -using System.Linq; namespace PKHeX.Core { - public class FestaFacility + public sealed class FestaFacility { private const int SIZE = 0x48; private readonly byte[] Data; diff --git a/PKHeX.Core/Saves/Substructures/MysteryGiftAlbum.cs b/PKHeX.Core/Saves/Substructures/MysteryGiftAlbum.cs index 945f2e7a6..64711f035 100644 --- a/PKHeX.Core/Saves/Substructures/MysteryGiftAlbum.cs +++ b/PKHeX.Core/Saves/Substructures/MysteryGiftAlbum.cs @@ -3,7 +3,7 @@ /// /// Structure containing the Mystery Gift Data /// - public class MysteryGiftAlbum + public sealed class MysteryGiftAlbum { /// /// Mystery Gift data received diff --git a/PKHeX.Core/Saves/Substructures/OPower/OPower6.cs b/PKHeX.Core/Saves/Substructures/OPower/OPower6.cs index bb8a4836c..466dbd848 100644 --- a/PKHeX.Core/Saves/Substructures/OPower/OPower6.cs +++ b/PKHeX.Core/Saves/Substructures/OPower/OPower6.cs @@ -3,7 +3,7 @@ namespace PKHeX.Core { - public class OPower6 : SaveBlock + public sealed class OPower6 : SaveBlock { private static readonly OPowerFlagSet[] Mapping = { diff --git a/PKHeX.Core/Saves/Substructures/PokeDex/Zukan5.cs b/PKHeX.Core/Saves/Substructures/PokeDex/Zukan5.cs index 0add558e4..9baa96935 100644 --- a/PKHeX.Core/Saves/Substructures/PokeDex/Zukan5.cs +++ b/PKHeX.Core/Saves/Substructures/PokeDex/Zukan5.cs @@ -2,7 +2,7 @@ namespace PKHeX.Core { - public class Zukan5 : Zukan + public sealed class Zukan5 : Zukan { protected override int OFS_SEEN => OFS_CAUGHT + BitSeenSize; protected override int OFS_CAUGHT => 0x8; diff --git a/PKHeX.Core/Saves/Substructures/PokeDex/Zukan6.cs b/PKHeX.Core/Saves/Substructures/PokeDex/Zukan6.cs index 4dcea22a0..c1e67f915 100644 --- a/PKHeX.Core/Saves/Substructures/PokeDex/Zukan6.cs +++ b/PKHeX.Core/Saves/Substructures/PokeDex/Zukan6.cs @@ -168,7 +168,7 @@ private bool[] GetBlankLanguageBits(bool value) } } - public class Zukan6AO : Zukan6 + public sealed class Zukan6AO : Zukan6 { public Zukan6AO(SaveFile sav, int dex, int langflag) : base(sav, dex, langflag) { @@ -197,7 +197,7 @@ public void SetEncounterCount(int index, ushort value) } } - public class Zukan6XY : Zukan6 + public sealed class Zukan6XY : Zukan6 { public Zukan6XY(SaveFile sav, int dex, int langflag) : base(sav, dex, langflag) { diff --git a/PKHeX.Drawing/Sprites/SpriteBuilder.cs b/PKHeX.Drawing/Sprites/SpriteBuilder.cs index c7fbeaff1..b416579cf 100644 --- a/PKHeX.Drawing/Sprites/SpriteBuilder.cs +++ b/PKHeX.Drawing/Sprites/SpriteBuilder.cs @@ -4,7 +4,7 @@ namespace PKHeX.Drawing { - public class SpriteBuilder : ISpriteBuilder + public sealed class SpriteBuilder : ISpriteBuilder { public static bool ShowEggSpriteAsItem { get; set; } = true; diff --git a/PKHeX.WinForms/Controls/Slots/CryPlayer.cs b/PKHeX.WinForms/Controls/Slots/CryPlayer.cs index a91dcd2cf..19f39f9fd 100644 --- a/PKHeX.WinForms/Controls/Slots/CryPlayer.cs +++ b/PKHeX.WinForms/Controls/Slots/CryPlayer.cs @@ -5,7 +5,7 @@ namespace PKHeX.WinForms.Controls { - public class CryPlayer + public sealed class CryPlayer { private readonly SoundPlayer Sounds = new SoundPlayer(); diff --git a/PKHeX.WinForms/Controls/Slots/DragManager.cs b/PKHeX.WinForms/Controls/Slots/DragManager.cs index 125842efb..c2bcaee0b 100644 --- a/PKHeX.WinForms/Controls/Slots/DragManager.cs +++ b/PKHeX.WinForms/Controls/Slots/DragManager.cs @@ -3,7 +3,7 @@ namespace PKHeX.WinForms.Controls { - public class DragManager + public sealed class DragManager { public SlotChangeInfo Info { get; private set; } public event DragEventHandler RequestExternalDragDrop; diff --git a/PKHeX.WinForms/Controls/Slots/SlotChangeInfo.cs b/PKHeX.WinForms/Controls/Slots/SlotChangeInfo.cs index 9678d5505..fe8be732c 100644 --- a/PKHeX.WinForms/Controls/Slots/SlotChangeInfo.cs +++ b/PKHeX.WinForms/Controls/Slots/SlotChangeInfo.cs @@ -2,7 +2,7 @@ namespace PKHeX.WinForms.Controls { - public class SlotChangeInfo + public sealed class SlotChangeInfo { public bool LeftMouseIsDown { get; set; } public bool DragDropInProgress { get; set; } diff --git a/PKHeX.WinForms/Controls/Slots/SlotHoverHandler.cs b/PKHeX.WinForms/Controls/Slots/SlotHoverHandler.cs index 9137b1dbf..4ddb455b0 100644 --- a/PKHeX.WinForms/Controls/Slots/SlotHoverHandler.cs +++ b/PKHeX.WinForms/Controls/Slots/SlotHoverHandler.cs @@ -10,7 +10,7 @@ namespace PKHeX.WinForms.Controls /// /// Handles Hovering operations for an editor, where only one (1) slot can be animated at a given time when hovering over it. /// - public class SlotHoverHandler : IDisposable + public sealed class SlotHoverHandler : IDisposable { public DrawConfig Draw { private get; set; } public bool GlowHover { private get; set; } = true; diff --git a/PKHeX.WinForms/Controls/Slots/SlotTrackerImage.cs b/PKHeX.WinForms/Controls/Slots/SlotTrackerImage.cs index ea110b908..e6143e65d 100644 --- a/PKHeX.WinForms/Controls/Slots/SlotTrackerImage.cs +++ b/PKHeX.WinForms/Controls/Slots/SlotTrackerImage.cs @@ -2,7 +2,7 @@ namespace PKHeX.WinForms.Controls { - public class SlotTrackerImage + public sealed class SlotTrackerImage { public Image OriginalBackground { get; set; } public Image CurrentBackground { get; set; } diff --git a/PKHeX.WinForms/Controls/Slots/SummaryPreviewer.cs b/PKHeX.WinForms/Controls/Slots/SummaryPreviewer.cs index d25a50267..b74a941d2 100644 --- a/PKHeX.WinForms/Controls/Slots/SummaryPreviewer.cs +++ b/PKHeX.WinForms/Controls/Slots/SummaryPreviewer.cs @@ -4,7 +4,7 @@ namespace PKHeX.WinForms.Controls { - public class SummaryPreviewer + public sealed class SummaryPreviewer { private readonly ToolTip ShowSet = new ToolTip { InitialDelay = 200, IsBalloon = false }; diff --git a/PKHeX.WinForms/Subforms/Misc/PropertyComparer.cs b/PKHeX.WinForms/Subforms/Misc/PropertyComparer.cs index df244f96a..b3c3ee722 100644 --- a/PKHeX.WinForms/Subforms/Misc/PropertyComparer.cs +++ b/PKHeX.WinForms/Subforms/Misc/PropertyComparer.cs @@ -6,7 +6,7 @@ namespace PKHeX.WinForms { - public class PropertyComparer : IComparer + public sealed class PropertyComparer : IComparer { private readonly IComparer comparer; private PropertyDescriptor propertyDescriptor; diff --git a/PKHeX.WinForms/Subforms/Misc/SortableBindingList.cs b/PKHeX.WinForms/Subforms/Misc/SortableBindingList.cs index 6edd935fb..dd8e726d3 100644 --- a/PKHeX.WinForms/Subforms/Misc/SortableBindingList.cs +++ b/PKHeX.WinForms/Subforms/Misc/SortableBindingList.cs @@ -4,7 +4,7 @@ namespace PKHeX.WinForms { - public class SortableBindingList : BindingList + public abstract class SortableBindingList : BindingList { private readonly Dictionary> comparers; private bool isSorted; diff --git a/PKHeX.WinForms/Subforms/Save Editors/Gen6/SAV_SecretBase.cs b/PKHeX.WinForms/Subforms/Save Editors/Gen6/SAV_SecretBase.cs index 34a40bd66..327cb217a 100644 --- a/PKHeX.WinForms/Subforms/Save Editors/Gen6/SAV_SecretBase.cs +++ b/PKHeX.WinForms/Subforms/Save Editors/Gen6/SAV_SecretBase.cs @@ -555,7 +555,7 @@ private void B_Export_Click(object sender, EventArgs e) } - public class SecretBase6 + public sealed class SecretBase6 { private readonly byte[] Data; private readonly int Offset; diff --git a/PKHeX.WinForms/Util/WinFormsTranslator.cs b/PKHeX.WinForms/Util/WinFormsTranslator.cs index f383beb10..524b24be2 100644 --- a/PKHeX.WinForms/Util/WinFormsTranslator.cs +++ b/PKHeX.WinForms/Util/WinFormsTranslator.cs @@ -199,7 +199,7 @@ public static void RemoveAll(string defaultLanguage, params string[] banlist) } } - public class TranslationContext + public sealed class TranslationContext { public bool AddNew { private get; set; } public bool RemoveUsedKeys { private get; set; }