PKHeX/PKHeX.Core/Util
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
..
Localization Use range/index 2021-05-14 15:30:55 -07:00
ArrayUtil.cs Track a PKM's Box,Slot,StorageFlags,Identifier metadata separately (#3222) 2021-06-22 20:23:48 -07:00
BigEndian.cs Move BinaryCodedDecimal conversions to separate class 2021-05-14 16:32:26 -07:00
BinaryCodedDecimal.cs Move BinaryCodedDecimal conversions to separate class 2021-05-14 16:32:26 -07:00
ComboItemUtil.cs Minor tweaks 2021-06-03 12:04:19 -07:00
DateUtil.cs Extract random date to util 2021-05-18 16:58:53 -07:00
FileUtil.cs Add some code analysis for try-return with nullable out 2021-01-17 00:05:07 -08:00
FlagUtil.cs Add flag unit tests, more xmldoc 2021-05-15 11:32:25 -07:00
FrameworkUtil.cs Minor clean 2021-05-29 15:31:47 -07:00
MessageStrings.cs Update translatables with latest 2021-06-15 20:01:01 -07:00
NetUtil.cs Minor clean 2021-03-14 16:16:55 -07:00
PathUtil.cs Add flag unit tests, more xmldoc 2021-05-15 11:32:25 -07:00
RandUtil.cs Target type'd new 2020-12-21 17:17:56 -08:00
ReflectUtil.cs Add some code analysis for try-return with nullable out 2021-01-17 00:05:07 -08:00
ResourceUtil.cs Improve resource loading speed by precomputing full manifest lookup 2021-05-15 11:56:06 -07:00
StringUtil.cs Use range/index 2021-05-14 15:30:55 -07:00
UpdateUtil.cs Replace regex parse with string find 2021-05-15 12:39:37 -07:00
Util.cs Minor perf improvements 2021-05-23 10:56:25 -07:00
ValueTypeTypeConverter.cs Use range/index 2021-05-14 15:30:55 -07:00