PKHeX/PKHeX.Core/Saves
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
..
Access Rewrite gen6ao secret base handling, i/o, GUI 2021-06-13 00:38:47 -07:00
Blocks Minor clean 2021-06-15 20:00:51 -07:00
Encryption Don't pass key byref 2021-06-04 14:19:07 -07:00
Storage Track a PKM's Box,Slot,StorageFlags,Identifier metadata separately (#3222) 2021-06-22 20:23:48 -07:00
Substructures Track a PKM's Box,Slot,StorageFlags,Identifier metadata separately (#3222) 2021-06-22 20:23:48 -07:00
Util Track a PKM's Box,Slot,StorageFlags,Identifier metadata separately (#3222) 2021-06-22 20:23:48 -07:00
SAV1.cs Fix incorrect GameVersion reference 2021-06-09 22:56:19 -07:00
SAV1Stadium.cs Minor clean 2021-05-29 15:31:47 -07:00
SAV1StadiumJ.cs Minor clean 2021-05-29 15:31:47 -07:00
SAV2.cs Update gen2/3 setdex's too 2021-06-04 17:29:55 -07:00
SAV2Stadium.cs Convert checksum operations to span-based 2021-05-14 12:30:40 -07:00
SAV3.cs Update gen2/3 setdex's too 2021-06-04 17:29:55 -07:00
SAV3Colosseum.cs Update gen2/3 setdex's too 2021-06-04 17:29:55 -07:00
SAV3E.cs Add more xmldoc 2021-06-06 11:56:54 -07:00
SAV3FRLG.cs Add more xmldoc 2021-06-06 11:56:54 -07:00
SAV3GCMemoryCard.cs Clean up memcard handling a little 2021-01-30 16:45:08 -08:00
SAV3RS.cs Add more xmldoc 2021-06-06 11:56:54 -07:00
SAV3RSBox.cs moar is or 2020-12-25 12:30:26 -08:00
SAV3XD.cs Update gen2/3 setdex's too 2021-06-04 17:29:55 -07:00
SAV4.cs Minor clean 2021-05-29 15:31:47 -07:00
SAV4BR.cs Revert implicit casting 2021-03-29 00:14:44 -07:00
SAV4DP.cs Minor clean 2021-05-29 15:31:47 -07:00
SAV4HGSS.cs Minor clean 2021-05-29 15:31:47 -07:00
SAV4Pt.cs Minor clean 2021-05-29 15:31:47 -07:00
SAV4Sinnoh.cs Minor clean 2021-05-29 15:31:47 -07:00
SAV5.cs Move mail get to sav obj 2021-05-22 09:28:04 -07:00
SAV5B2W2.cs Add more xmldoc 2021-06-06 11:56:54 -07:00
SAV5BW.cs Add more xmldoc 2021-06-06 11:56:54 -07:00
SAV6.cs Make some properties into consts 2021-03-20 12:47:21 -07:00
SAV6AO.cs Rewrite gen6ao secret base handling, i/o, GUI 2021-06-13 00:38:47 -07:00
SAV6AODemo.cs Shift gen6 event flags to their actual index (+0xC*8) 2021-02-12 20:08:54 -08:00
SAV6XY.cs Replace some linq usage with direct logic 2021-05-06 23:26:38 -07:00
SAV7.cs Use range/index 2021-05-14 15:30:55 -07:00
SAV7b.cs Use range/index 2021-05-14 15:30:55 -07:00
SAV7SM.cs Extract Gen7 HoF class, extend event flag count 2021-04-07 00:20:02 -07:00
SAV7USUM.cs Extract Gen7 HoF class, extend event flag count 2021-04-07 00:20:02 -07:00
SAV8.cs Decrypt sav8 blocks in-place 2021-06-04 13:16:00 -07:00
SAV8SWSH.cs Decrypt sav8 blocks in-place 2021-06-04 13:16:00 -07:00
SAV_BEEF.cs Add more xmldoc 2021-06-06 11:56:54 -07:00
SAV_STADIUM.cs Minor clean 2021-05-29 15:31:47 -07:00
SaveFile.cs Track a PKM's Box,Slot,StorageFlags,Identifier metadata separately (#3222) 2021-06-22 20:23:48 -07:00
SaveFileMetadata.cs Use range/index 2021-05-14 15:30:55 -07:00
SaveFileState.cs Add xmldoc for save meta/state tracking 2020-12-07 19:49:04 -08:00