PKHeX/PKHeX.Core/Legality/Encounters
Kurt fa9a809751
Encapsulate item pouch arrays/etc for finer control (#3860)
* Extract/encapsulate inventory legal arrays to interface+class

Hiding them behind methods allows these to be left as ReadOnlySpan<ushort> and thus never allocate on the heap.
Also refactors out some logic for checking if an item is legal.

End result feels more maintainable and is less bloaty (no more passing in a nullable func)

Batch editing
* Add HasType filter

```
=HasType=11
.HeldItem=Meadow Plate
```

slaps a meadow plate on any pkm with grass type
Use `=PersonalType1=11` for only primary grass types; only-secondary-type grass will not match it.
2023-04-16 12:58:07 -07:00
..
Data Encapsulate item pouch arrays/etc for finer control (#3860) 2023-04-16 12:58:07 -07:00
EncounterMisc Update EncounterEgg.cs 2023-03-04 15:10:34 -08:00
EncounterSlot Disallow form argument on Gimmighoul 2023-04-13 11:28:05 -04:00
EncounterStatic Minor minor perf 2023-04-15 01:58:37 -07:00
EncounterTrade Add more xmldoc 2023-03-31 13:00:34 -07:00
Generator Minor minor perf 2023-04-15 01:58:37 -07:00
Information Minor minor perf 2023-04-15 01:58:37 -07:00
Verifiers Add more xmldoc 2023-03-31 13:00:34 -07:00
EncounterMatchRating.cs Add more xmldoc 2022-08-21 01:39:16 -07:00
IEncounterable.cs File scoped namespaces (#3529) 2022-06-18 11:04:24 -07:00
IEncounterConvertible.cs File scoped namespaces (#3529) 2022-06-18 11:04:24 -07:00
IEncounterFormRandom.cs Update from .NET Framework 4.6 to .NET 7 (#3729) 2023-01-21 20:02:33 -08:00
IEncounterInfo.cs File scoped namespaces (#3529) 2022-06-18 11:04:24 -07:00
IEncounterMatch.cs Refactoring: Narrow some value types (Species, Move, Form) (#3575) 2022-08-26 23:43:36 -07:00
IEncounterTemplate.cs Update 22.11.24 2022-11-24 17:42:17 -08:00