Move the %25 into the Criteria check method; only done in 1 method rather than across a few dozen.
can potentially skip % operations depending on inputs.
also inline some gender calls where gender isn't needed further in the generation pattern, so it can be skipped.
Run a quick translation of the save troubleshooter (force loader)
Adds a PGL editor GUI
Fleshes out the adventure info block, GTS block, and battle box block; thanks to the PGL DW effort aggregating over 100 save files to give a varied expression of fields :D
Fix SpriteUtil failing to yield an item sprite (due to the split of artwork-item/big-item, the method was never repointed).
fix wishmkr shiny request failing to return correctly; add in ganlon/salac item set
Accessible on release builds too; now joined by the hex-clipboard &Import and the list-pl&Ugins
maybe I'll add these as a visible toolstrip. for now, feature is available to those in-the-know, and who should know-better.
does this allow loading of previous unsupported romhack savefiles? yeah. should it be used to do that? no.
Closes#4811
Follow-up needed (or never):
* OT names: any more?
* OT names: dependent on OT Version/Gender? Dependent on uploader Version/Gender?
* Trigger: on any char being within the Korean chartable span?
* Nicknames: wiped if triggered?
* Trash bytes: if nickname wiped, does it clear correctly? 5-char nickname on Muk would leave 1 char as trash.
Sad this was never common knowledge back in the day.
Add some utility methods to quickly check if sanitization should apply.
Detects for system dark mode on startup since many users don't know about dark mode. Won't override any existing setting, just detects if no cfg exists `new()`.
Text/control dpi scaling is opt-in for high dpi users, reduces font blurriness.
https://github.com/kwsch/PKHeX/discussions/4458#discussioncomment-12362513
The hover-preview was rewritten in the past year to directly paint instead of updating many controls, so it works fine with `DpiUnawareGdiScaled`. I've not checked extensively to see if anything becomes broken, so user beware 💫
25600 is the max from vitamins (was 0 EVs for every other stat)
> Prior to Generation III, effort values were based on a system of stat experience and vitamins increased a stat by 2560 EV points, but could only be used until the stat had 25600 EVs.
change it from 65535 (raw max) to 25600 (legal max).
A bit more coherent to see a list of medals rather than one at a time.
Add a few more properties, along with the Habitat List.
Remove maximize box from Join Avenue editor, consistent with other editors.
Extract a common IV generator method that has considerations for over-specified and under-specified criteria, rather than deadlocking/returning invalid IV spreads.
Rearrange magic numbers for sync lock-out/lock-in for better JIT comparison (sequential range).
Previous improvement missed the "what if the lead is NOT synchronize". We already have a branch for YES synchronize. Magnemite test case solves for no-sync
Probably would be worthwhile to de-tangle this but meh