mirror of
https://github.com/kwsch/PKHeX.git
synced 2026-03-21 17:48:28 -05:00
497 lines
11 KiB
C#
497 lines
11 KiB
C#
namespace PKHeX.Core;
|
|
|
|
/// <summary>
|
|
/// Represents the specific type of legality result that was generated during a legality check.
|
|
/// </summary>
|
|
/// <remarks>
|
|
/// When a result is generated, instead of storing the string directly, an instance of this enum is stored instead.
|
|
/// The string is only fetched from <see cref="LegalityCheckLocalization"/> when needed for display.
|
|
/// </remarks>
|
|
public enum LegalityCheckResultCode : ushort
|
|
{
|
|
/// <summary>Originated from / Defer to an external validator.</summary>
|
|
External,
|
|
/// <summary>Default text for indicating validity.</summary>
|
|
Valid,
|
|
/// <summary>Default text for indicating an error has occurred.</summary>
|
|
Error,
|
|
|
|
// The order of the enum is important only for humanization; keep sorted by handling, with groups by category and functionality.
|
|
|
|
// Ability
|
|
AbilityCapsuleUsed,
|
|
AbilityPatchUsed,
|
|
AbilityPatchRevertUsed,
|
|
AbilityFlag,
|
|
AbilityHiddenFail,
|
|
AbilityHiddenUnavailable,
|
|
AbilityMismatch,
|
|
AbilityMismatch3,
|
|
AbilityMismatchFlag,
|
|
AbilityMismatchGift,
|
|
AbilityMismatchPID,
|
|
AbilityUnexpected,
|
|
|
|
// Awakened Values
|
|
AwakenedCap,
|
|
|
|
// Ball
|
|
BallAbility,
|
|
BallEggCherish,
|
|
BallEggMaster,
|
|
BallEnc,
|
|
BallEncMismatch,
|
|
BallHeavy,
|
|
BallSpecies,
|
|
BallSpeciesPass,
|
|
BallUnavailable,
|
|
BallG4Sinnoh,
|
|
BallG4Johto,
|
|
|
|
// Contest
|
|
ContestZero,
|
|
ContestZeroSheen,
|
|
|
|
// Date & Timestamps
|
|
DateCalendarInvalidMet,
|
|
DateCalendarInvalidEgg,
|
|
DateLocalInvalidDate,
|
|
DateLocalInvalidTime,
|
|
DateOutsideDistributionWindow,
|
|
|
|
// Egg
|
|
EggContest,
|
|
EggEXP,
|
|
EggHatchCycles,
|
|
EggLocation,
|
|
EggLocationInvalid,
|
|
EggLocationNone,
|
|
EggLocationPalPark,
|
|
EggLocationTrade,
|
|
EggLocationTradeFail,
|
|
EggMetLocationFail,
|
|
EggNature,
|
|
EggPP,
|
|
EggPPUp,
|
|
EggRelearnFlags,
|
|
EggShinyPokeStar,
|
|
EggSpecies,
|
|
EggUnhatched,
|
|
|
|
// Encounter
|
|
EncCondition,
|
|
EncConditionBadRNGFrame,
|
|
EncConditionBadSpecies,
|
|
EncGift,
|
|
EncGiftEggEvent,
|
|
EncGiftIVMismatch,
|
|
EncGiftNicknamed,
|
|
EncGiftNotFound,
|
|
EncGiftPIDMismatch,
|
|
EncGiftShinyMismatch,
|
|
EncGiftVersionNotDistributed,
|
|
EncGiftRegionNotDistributed,
|
|
EncInvalid,
|
|
EncMasteryInitial,
|
|
EncTradeChangedNickname,
|
|
EncTradeChangedOT,
|
|
EncTradeIndexBad,
|
|
EncTradeMatch,
|
|
EncTradeUnchanged,
|
|
EncStaticPIDShiny,
|
|
EncTypeMatch,
|
|
EncTypeMismatch,
|
|
EncUnreleased,
|
|
EncUnreleasedEMewJP,
|
|
|
|
// E-Reader
|
|
EReaderAmerica,
|
|
EReaderInvalid,
|
|
EReaderJapan,
|
|
|
|
// Effort Values
|
|
Effort2Remaining,
|
|
EffortAbove252,
|
|
EffortAbove510,
|
|
EffortAllEqual,
|
|
EffortCap100,
|
|
EffortEgg,
|
|
EffortShouldBeZero,
|
|
EffortEXPIncreased,
|
|
|
|
// Evolution
|
|
EvoInvalid,
|
|
EvoTradeRequired,
|
|
|
|
// Fateful
|
|
FatefulGiftMissing,
|
|
FatefulInvalid,
|
|
FatefulMissing,
|
|
FatefulMystery,
|
|
FatefulMysteryMissing,
|
|
|
|
// Favorite Marking
|
|
FavoriteMarkingUnavailable,
|
|
|
|
// Form
|
|
FormArgumentNotAllowed,
|
|
FormArgumentValid,
|
|
FormArgumentInvalid,
|
|
FormBattle,
|
|
FormEternal,
|
|
FormEternalInvalid,
|
|
FormInvalidGame,
|
|
FormInvalidNature,
|
|
FormItemMatches,
|
|
FormItemInvalid,
|
|
FormParty,
|
|
FormPikachuCosplay,
|
|
FormPikachuCosplayInvalid,
|
|
FormPikachuEventInvalid,
|
|
FormValid,
|
|
FormVivillon,
|
|
FormVivillonEventPre,
|
|
FormVivillonInvalid,
|
|
FormVivillonNonNative,
|
|
|
|
// Generation 1 & 2
|
|
G1CatchRateChain,
|
|
G1CatchRateEvo,
|
|
G1CatchRateItem,
|
|
G1CatchRateMatchPrevious,
|
|
G1CatchRateMatchTradeback,
|
|
G1CatchRateNone,
|
|
G1CharNick,
|
|
G1CharOT,
|
|
G1OTGender,
|
|
G1Stadium,
|
|
G1Type1Fail,
|
|
G1Type2Fail,
|
|
G1TypeMatch1,
|
|
G1TypeMatch2,
|
|
G1TypeMatchPorygon,
|
|
G1TypePorygonFail,
|
|
G1TypePorygonFail1,
|
|
G1TypePorygonFail2,
|
|
G2InvalidTileTreeNotFound,
|
|
G2TreeID,
|
|
G2OTGender,
|
|
|
|
// Generation 3+
|
|
G3EReader,
|
|
G3OTGender,
|
|
G4InvalidTileR45Surf,
|
|
G4PartnerMoodEgg,
|
|
G4PartnerMoodZero,
|
|
G4ShinyLeafBitsEgg,
|
|
G4ShinyLeafBitsInvalid,
|
|
G5IVAll30,
|
|
G5PIDShinyGrotto,
|
|
G5SparkleInvalid,
|
|
G5SparkleRequired,
|
|
G5PokeStarMustBeZero,
|
|
G5PokeStarImpossibleValue,
|
|
G7BSocialShouldBe100Spirit,
|
|
G7BSocialShouldBe100Mood,
|
|
|
|
// Gender
|
|
GenderInvalidNone,
|
|
|
|
// Geography
|
|
GeoBadOrder,
|
|
GeoHardwareInvalid,
|
|
GeoHardwareRange,
|
|
GeoHardwareValid,
|
|
GeoMemoryMissing,
|
|
GeoNoCountryHT,
|
|
GeoNoRegion,
|
|
|
|
// Hints
|
|
|
|
// Hyper Training
|
|
HyperPerfectAll,
|
|
HyperPerfectOne,
|
|
HyperPerfectUnavailable,
|
|
|
|
// Item
|
|
ItemEgg,
|
|
ItemUnreleased,
|
|
|
|
// IVs
|
|
IVNotCorrect,
|
|
|
|
// Level
|
|
LevelBoostNotZero,
|
|
LevelEXPThreshold,
|
|
LevelEXPTooHigh,
|
|
LevelMetBelow,
|
|
LevelMetGift,
|
|
LevelMetGiftFail,
|
|
LevelMetSane,
|
|
|
|
// Markings
|
|
MarkValueShouldBeZero,
|
|
MarkValueUnusedBitsPresent,
|
|
|
|
// Memory
|
|
MemoryArgBadHT,
|
|
MemoryHTFlagInvalid,
|
|
MemoryHTLanguage,
|
|
MemoryIndexArgHT,
|
|
MemoryIndexFeelHTLEQ9,
|
|
MemoryIndexIntensityHT1,
|
|
MemoryIndexLinkHT,
|
|
MemoryMissingHT,
|
|
MemoryMissingOT,
|
|
MemorySocialZero,
|
|
MemoryStatAffectionHT0,
|
|
MemoryStatAffectionOT0,
|
|
MemoryStatFriendshipHT0,
|
|
|
|
// Met Detail
|
|
MetDetailTimeOfDay,
|
|
|
|
// Moves - General
|
|
MoveKeldeoMismatch,
|
|
MovesShouldMatchRelearnMoves,
|
|
|
|
// Moves - Shop & Alpha
|
|
MoveShopAlphaMoveShouldBeOther,
|
|
MoveShopAlphaMoveShouldBeZero,
|
|
|
|
// Nickname
|
|
NickFlagEggNo,
|
|
NickFlagEggYes,
|
|
NickInvalidChar,
|
|
NickLengthLong,
|
|
NickLengthShort,
|
|
NickMatchLanguage,
|
|
NickMatchLanguageEgg,
|
|
NickMatchLanguageEggFail,
|
|
NickMatchLanguageFail,
|
|
NickMatchLanguageFlag,
|
|
NickMatchNoOthers,
|
|
NickMatchNoOthersFail,
|
|
|
|
// Original Trainer
|
|
OTLanguage,
|
|
OTLong,
|
|
OTShort,
|
|
OTSuspicious,
|
|
OT_IDEqual,
|
|
OT_IDs0,
|
|
OT_SID0,
|
|
OT_SID0Invalid,
|
|
OT_TID0,
|
|
OT_IDInvalid,
|
|
|
|
// PID & Encryption Constant
|
|
PIDEncryptWurmple,
|
|
PIDEncryptZero,
|
|
PIDEqualsEC,
|
|
PIDGenderMatch,
|
|
PIDGenderMismatch,
|
|
PIDNatureMatch,
|
|
PIDNatureMismatch,
|
|
PIDTypeMismatch,
|
|
PIDZero,
|
|
|
|
// Plus Moves
|
|
PlusMoveCountInvalid,
|
|
PlusMoveMultipleInvalid,
|
|
|
|
// Ribbons
|
|
RibbonAllValid,
|
|
RibbonEgg,
|
|
|
|
// Stats
|
|
StatDynamaxInvalid,
|
|
StatIncorrectHeight,
|
|
StatIncorrectWeight,
|
|
StatInvalidHeightWeight,
|
|
StatGigantamaxInvalid,
|
|
StatGigantamaxValid,
|
|
StatNatureInvalid,
|
|
StatBattleVersionInvalid,
|
|
StatNobleInvalid,
|
|
StatAlphaInvalid,
|
|
|
|
// Storage
|
|
StoredSourceEgg,
|
|
|
|
// Super Training
|
|
SuperComplete,
|
|
SuperDistro,
|
|
SuperEgg,
|
|
SuperNoComplete,
|
|
SuperNoUnlocked,
|
|
SuperUnavailable,
|
|
SuperUnused,
|
|
G6SuperTrainEggBag,
|
|
G6SuperTrainEggHits,
|
|
|
|
// Tera Type
|
|
TeraTypeIncorrect,
|
|
TeraTypeMismatch,
|
|
|
|
// Trading
|
|
TradeNotAvailable,
|
|
|
|
// Trainer IDs
|
|
TrainerIDNoSeed,
|
|
|
|
// Transfer
|
|
TransferBad,
|
|
TransferCurrentHandlerInvalid,
|
|
TransferEgg,
|
|
TransferEggLocationTransporter,
|
|
TransferEggMetLevel,
|
|
TransferEggVersion,
|
|
TransferFlagIllegal,
|
|
TransferHandlerFlagRequired,
|
|
TransferHandlerMismatchName,
|
|
TransferHandlerMismatchGender,
|
|
TransferHandlerMismatchLanguage,
|
|
TransferMet,
|
|
TransferNotPossible,
|
|
TransferMetLocation,
|
|
TransferNature,
|
|
TransferObedienceLevel,
|
|
TransferKoreanGen4,
|
|
TransferEncryptGen6BitFlip,
|
|
TransferEncryptGen6Equals,
|
|
TransferEncryptGen6Xor,
|
|
TransferTrackerMissing,
|
|
TransferTrackerShouldBeZero,
|
|
|
|
// Trash Bytes
|
|
TrashBytesExpected,
|
|
TrashBytesMismatchInitial,
|
|
TrashBytesMissingTerminatorFinal,
|
|
TrashBytesShouldBeEmpty,
|
|
TrashBytesResetViaTransfer,
|
|
|
|
// Bulk Cross-Comparison
|
|
BulkCloneDetectedDetails,
|
|
BulkCloneDetectedTracker,
|
|
BulkSharingEncryptionConstantGenerationSame,
|
|
BulkSharingEncryptionConstantGenerationDifferent,
|
|
BulkSharingEncryptionConstantEncounterType,
|
|
BulkSharingPIDGenerationDifferent,
|
|
BulkSharingPIDGenerationSame,
|
|
BulkSharingPIDEncounterType,
|
|
BulkDuplicateFusionSlot,
|
|
BulkDuplicateMysteryGiftEggReceived,
|
|
BulkFusionSourceInvalid,
|
|
BulkSharingTrainerIDs,
|
|
BulkSharingTrainerVersion,
|
|
|
|
// Formattable Argument Present: 1 Number
|
|
FirstWithArgument,
|
|
ContestSheenGEQ_0 = FirstWithArgument,
|
|
MemoryStatFriendshipOTBaseEvent_0,
|
|
ContestSheenLEQ_0,
|
|
EggFMetLevel_0,
|
|
EffortUntrainedCap_0,
|
|
EvoTradeReqOutsider_0,
|
|
FormArgumentLEQ_0,
|
|
FormArgumentGEQ_0,
|
|
FormInvalidExpect_0,
|
|
HyperTrainLevelGEQ_0, // level
|
|
IVAllEqual_0,
|
|
IVFlawlessCountGEQ_0, // count
|
|
MarkValueOutOfRange_0, // unknown value
|
|
MemoryStatSocialLEQ_0,
|
|
MemoryStatFullness_0,
|
|
MemoryStatFullnessLEQ_0,
|
|
MemoryStatEnjoyment_0,
|
|
StatIncorrectCP_0, // value
|
|
WordFilterTooManyNumbers_0, // count
|
|
PokerusDaysLEQ_0, // days
|
|
PokerusStrainUnobtainable_0, // strain
|
|
MemoryHTGender_0, // gender value
|
|
G6SuperTrainBagInvalid_0,
|
|
StatIncorrectHeightValue_0,
|
|
StatIncorrectWeightValue_0,
|
|
StatIncorrectScaleValue_0,
|
|
|
|
// Two Numbers
|
|
FirstWithTwoArguments,
|
|
MovePPTooHigh_01 = FirstWithTwoArguments, // move slot, value
|
|
MovePPUpsTooHigh_01, // move slot, value
|
|
MovePPExpectHealed_01, // move slot, value
|
|
|
|
// Single Argument: Move ID
|
|
FirstWithMove,
|
|
MoveTechRecordFlagMissing_0 = FirstWithMove, // move ID
|
|
MoveShopAlphaMoveShouldBeMastered_0, // move
|
|
MoveShopMasterInvalid_0, // move ID
|
|
MoveShopMasterNotLearned_0, // move ID
|
|
MoveShopPurchaseInvalid_0, // move ID
|
|
PlusMoveInvalid_0, // move ID
|
|
PlusMoveAlphaMissing_0, // move ID
|
|
PlusMoveSufficientLevelMissing_0, // move ID
|
|
|
|
// Single Argument: Item ID
|
|
FirstWithItem,
|
|
BulkHeldItemInventoryAssignedNoneHeld_0 = FirstWithItem, // item ID
|
|
BulkHeldItemInventoryMultipleSlots_0,
|
|
BulkHeldItemInventoryNotAcquired_0,
|
|
BulkHeldItemInventoryUnassigned_0,
|
|
|
|
// One Argument: Language
|
|
FirstWithLanguage,
|
|
OTLanguageShouldBe_0 = FirstWithLanguage, // language
|
|
OTLanguageShouldBeLeq_0, // language
|
|
EncGiftLanguageNotDistributed_0, // language
|
|
OTLanguageCannotPlayOnVersion_0, // language
|
|
|
|
// Multiple Arguments: Memories
|
|
FirstWithMemory,
|
|
MemoryValid_H = FirstWithMemory,
|
|
MemoryArgBadCatch_H,
|
|
MemoryArgBadHatch_H,
|
|
MemoryArgBadID_H,
|
|
MemoryArgBadLocation_H,
|
|
MemoryArgBadOTEgg_H,
|
|
MemoryArgSpecies_H,
|
|
MemoryCleared_H,
|
|
MemoryFeelInvalid_H,
|
|
FirstMemoryWithValue,
|
|
MemoryArgBadSpecies_H1 = FirstMemoryWithValue,
|
|
MemoryArgBadMove_H1,
|
|
MemoryArgBadItem_H1,
|
|
MemoryIndexID_H1,
|
|
MemoryIndexFeel_H1,
|
|
MemoryIndexIntensity_H1,
|
|
MemoryIndexIntensityMin_H1,
|
|
MemoryIndexVar_H1,
|
|
|
|
// One/Two Arguments: Special
|
|
FirstComplex,
|
|
RibbonsInvalid_0 = FirstComplex, // generated string
|
|
WordFilterFlaggedPattern_01, // filter, pattern
|
|
WordFilterInvalidCharacter_0, // filter, pattern
|
|
|
|
AwakenedStatGEQ_01,// value, statName
|
|
GanbaruStatLEQ_01, // value, statName
|
|
OTLanguageCannotTransferToConsoleRegion_0, // ConsoleRegion
|
|
EncTradeShouldHaveEvolvedToSpecies_0, // species
|
|
MoveEvoFCombination_0, // species
|
|
HintEvolvesToSpecies_0, // species
|
|
|
|
RibbonMarkingInvalid_0, // ribbon
|
|
RibbonMarkingMissing_0, // ribbon
|
|
RibbonMarkingAffixed_0, // ribbon
|
|
RibbonsMissing_0, // ribbon
|
|
|
|
StoredSlotSourceInvalid_0, // StorageSlotType
|
|
HintEvolvesToRareForm_0, // bool
|
|
FormInvalidRangeLEQ_0F,
|
|
|
|
OTLanguageShouldBe_0or1, // language,language
|
|
G6SuperTrainBagHitsInvalid_012,
|
|
|
|
MAX,
|
|
}
|