PKHeX/PKHeX.Core/Saves/Substructures/Gen7
Kurt 3e7775fc44
Track a PKM's Box,Slot,StorageFlags,Identifier metadata separately (#3222)
* Track a PKM's Box,Slot,StorageFlags,Identifier metadata separately

Don't store within the object, track the slot origin data separately.

Batch editing now pre-filters if using Box/Slot/Identifier logic; split up mods/filters as they're starting to get pretty hefty.

- Requesting a Box Data report now shows all slots in the save file (party, misc)
- Can now exclude backup saves from database search via toggle (separate from settings preventing load entirely)
- Replace some linq usages with direct code

* Remove WasLink virtual in PKM

Inline any logic, since we now have encounter objects to indicate matching, rather than the proto-legality logic checking properties of a PKM.

* Use Fateful to directly check gen5 mysterygift origins

No other encounter types in gen5 apply Fateful

* Simplify double ball comparison

Used to be separate for deferral cases, now no longer needed to be separate.

* Grab move/relearn reference and update locally

Fix relearn move identifier

* Inline defog HM transfer preference check

HasMove is faster than getting moves & checking contains. Skips allocation by setting values directly.

* Extract more met location metadata checks: WasBredEgg

* Replace Console.Write* with Debug.Write*

There's no console output UI, so don't include them in release builds.

* Inline WasGiftEgg, WasEvent, and WasEventEgg logic

Adios legality tags that aren't entirely correct for the specific format. Just put the computations in EncounterFinder.
2021-06-22 20:23:48 -07:00
..
BattleTree7.cs seal hunting 2020-09-07 13:51:13 -07:00
BelugaBlockIndex.cs Add CaptureRecord block interaction 2020-10-08 15:28:25 -07:00
BoxLayout7.cs Minor clean 2021-05-29 15:31:47 -07:00
CaptureRecords.cs Minor tweaks 2021-06-03 12:04:19 -07:00
ConfigSave6.cs Add configsave to accessor 2020-04-26 15:17:58 -07:00
ConfigSave7.cs Add configsave to accessor 2020-04-26 15:17:58 -07:00
ConfigSave7b.cs Add configsave to accessor 2020-04-26 15:17:58 -07:00
Daycare7.cs Revert implicit casting 2021-03-29 00:14:44 -07:00
EventVarType.cs Minor refactoring 2020-09-06 10:53:13 -07:00
EventWork7b.cs Use more expression return style 2021-01-01 17:08:49 -08:00
FashionBlock7.cs Handle more messages 2019-10-27 20:39:15 -07:00
FestaFacility.cs Revert implicit casting 2021-03-29 00:14:44 -07:00
FieldMenu7.cs Add RotomAffection and rotoloto1/2 flag editing to GUI 2020-12-29 11:39:19 -08:00
FieldMoveModelSave7.cs PKHeX.Core Nullable cleanup (#2401) 2019-10-16 18:47:31 -07:00
GameTime7.cs Fix SecondsTo* read offset 2019-07-07 08:43:04 -07:00
GoParkStorage.cs Change signatures to use readonly if possible 2020-12-05 06:09:33 -08:00
GP1.cs Rework EncounterCriteria to be ability indexed rather than direct ability (#3179) 2021-03-23 17:05:15 -07:00
HallOfFame7.cs Extract Gen7 HoF class, extend event flag count 2021-04-07 00:20:02 -07:00
IEventWork.cs Add misc setup objects 2018-11-13 19:16:14 -08:00
JoinFesta7.cs Minor tweaks 2021-06-03 12:04:19 -07:00
Misc7.cs PKHeX.Core Nullable cleanup (#2401) 2019-10-16 18:47:31 -07:00
Misc7b.cs PKHeX.Core Nullable cleanup (#2401) 2019-10-16 18:47:31 -07:00
MyItem.cs Change signatures to use readonly if possible 2020-12-05 06:09:33 -08:00
MyItem7b.cs Change signatures to use readonly if possible 2020-12-05 06:09:33 -08:00
MyItem7SM.cs Change signatures to use readonly if possible 2020-12-05 06:09:33 -08:00
MyItem7USUM.cs Change signatures to use readonly if possible 2020-12-05 06:09:33 -08:00
MyStatus7.cs Keep festaID separate from nex ID bytes 2021-05-09 23:38:14 -07:00
MyStatus7b.cs Use range/index 2021-05-14 15:30:55 -07:00
MysteryBlock7.cs Extract metadata/state tracking from SaveFile obj 2020-12-05 05:36:23 -08:00
PlayerBattleStyle7.cs Minor tweaks 2020-09-09 12:47:24 -07:00
PlayerSkinColor7.cs Minor tweaks 2020-09-09 12:47:24 -07:00
PlayTime7b.cs Minor tweaks 2021-06-03 12:04:19 -07:00
PokeFinder7.cs PKHeX.Core Nullable cleanup (#2401) 2019-10-16 18:47:31 -07:00
PokeListHeader.cs Track a PKM's Box,Slot,StorageFlags,Identifier metadata separately (#3222) 2021-06-22 20:23:48 -07:00
PouchSize7b.cs Add misc setup objects 2018-11-13 19:16:14 -08:00
QR7.cs Convert checksum operations to span-based 2021-05-14 12:30:40 -07:00
ResortSave7.cs Track a PKM's Box,Slot,StorageFlags,Identifier metadata separately (#3222) 2021-06-22 20:23:48 -07:00
SAV7BlockIndex.cs Move files to their correct location 2020-05-24 17:11:39 -07:00
SaveBlock.cs Minor clean 2020-12-21 17:48:08 -08:00
Situation7.cs Simplify block property names 2019-10-18 20:42:03 -07:00
Stamp7.cs Add missing stamp 2019-03-29 09:40:31 -07:00
WB7Records.cs Minor clean 2020-11-11 21:01:41 -08:00
WormholeInfoReader.cs Revert implicit casting 2021-03-29 00:14:44 -07:00
WR7GiftType.cs Split up WR7 to separate files 2018-12-29 22:09:27 -08:00