Kurt
5bcccc6d92
HOME 2.0.0: Handle conversion behavior & restrictions ( #3506 )
...
* Revises legality checks to account for traveling between the three game islands (PLA/BDSP/SWSH)
* Adds conversion mechanisms between the three formats, as well as flexible conversion options to backfill missing data (thanks GameFreak/ILCA for opting for lossy conversion instead of updating the games).
* Adds API abstractions for HOME data storage format (EKH/PKH format 1, aka EH1/PH1).
* Revises some APIs for better usage:
- `PKM` now exposes a `Context` to indicate the isolation context for legality purposes.
- Some method signatures have changed to accept `Context` or `GameVersion` instead of a vague `int` for Generation.
- Evolution History is now tracked in the Legality parse for specific contexts, rather than only per generation.
2022-05-30 21:43:52 -07:00
Kurt
5ae34854c7
Fix extrabyte load behavior
...
funny how nobody caught this for so long haha
Don't trigger a write on validation/during a load.
2022-05-30 18:17:12 -07:00
Kurt
b0c489dd05
Guard against incorrect cgear skin pixel formats
...
Now shows the appropriate message.
2022-05-30 14:05:06 -07:00
Kurt
30e549faf5
Clamp subway/forest values for numeric control
...
stop with bad cheats lol
2022-05-27 12:20:49 -07:00
Kurt
d839437037
G5 Entree: Handle out-of-range species IDs
2022-05-16 18:57:58 -07:00
Kurt
25be6f77ab
Remove HaX altering Stat_Level
...
Old jank that makes stuff less obvious to follow. Very very few people want out-of-bounds levels, even in HaX.
We have the batch editor to mutate these properties if it is really desired; same as Status condition/etc.
Don't trigger event calls if sanitized value is same as input.
Update PKMEditor.cs
2022-05-14 15:20:43 -07:00
Kurt
df2bbbeed5
Pixel alignment for pkm editor
...
Relearn Moves shifted down by 1px to match Moves
Relearn Moves groupbox shiftedto align with Moves
HT groupbox height +1px to match OT groupbox
2022-05-14 08:39:47 -07:00
sora10pls
75f9f39cbf
Add BDSP Hall of Origin unlock cheat
2022-05-13 17:25:18 -04:00
Kurt
e741d34a44
Initialize gender sprite on component init
2022-05-13 12:03:00 -07:00
Kurt
bc054c09ed
PK5: Clear party stats on import
...
Add property get/set for the undocumented fields
2022-05-08 18:36:18 -07:00
Kurt
781fa5c706
Change main window dragdrop behavior (move->copy)
...
Now allows dragging from box/party/etc into main window again
Use the ctrl hotkeys u keyboard-lackers
2022-05-08 13:01:08 -07:00
Kurt
8c4db878dd
Extract logic to set initial mastery move flags
...
Are we done yet
2022-05-08 10:28:22 -07:00
Kurt
95054f0054
Clamp too-high numeric values from cheats
...
Closes #3493
2022-05-08 09:28:41 -07:00
Kurt
82fae7b350
Revise moveshop move suggest methods
2022-05-07 21:21:29 -07:00
Kurt
e34d03d2e5
Update 22.05.08
2022-05-07 14:30:16 -07:00
Kurt
178069f889
Minor tweaks
2022-05-07 11:47:01 -07:00
Kurt
6e13031217
Add cancellationtoken to cancel long searches
...
Close the window if you accidentally search all, and the program will stop searching rather than continue running in the background.
2022-05-07 09:25:59 -07:00
Kurt
a57f40ae7d
Break up PKX into separate classes
...
Many years ago, PKX used to be a >4,000 line bloated file, which spun off multiple classes like CommonEdits and most of the early non-GUI PKM related logic. Now, it's just a stub to source the latest generation & personal table.
Separate files = more concise info, and more room to grow to do more advanced things.
Makes the IsPresent methods public (no longer internal).
2022-05-06 20:38:55 -07:00
Kurt
59ceec3c65
Extract EffortValues class, add $rand + $suggest
...
Renames IV/EV verifier field objects for Legality Checks due to class name clashing.
2022-05-06 15:47:54 -07:00
Kurt
be9c947dd6
Use tuples and ComboItem, not anonymous class
...
Little more explicit
2022-05-06 15:43:51 -07:00
Kurt
75874b6b81
Show lock capsule slot in mystery gift editor
...
Closes #3487
editor getting hacky, but it works
2022-05-05 21:21:03 -07:00
Kurt
703a641b4a
Show + retain free space sorting index: gen7 items
...
Closes #3485
PKHeX has ignored gen7 free space since the initial implementation, if I recall correctly -- no more :)
2022-05-03 16:28:07 -07:00
Kurt
7c8f52cbbf
Minor clean
...
invert nesting, add missing if( space, group OT checks together
2022-05-02 23:48:25 -07:00
Kurt
41578132cf
Minor tweaks
...
Add Get/Set Relearn method to PKM.cs
Alpha Mastered move now indicates incomplete text entry (like moves/relearn)
Split up legal move indication helper class, use DI to allow other implementations of DataSource to be returned (pkhex mobile?).
Remove unused gender refresh method (see previous added UserControl commit)
Add helper method to center control within control
2022-05-02 18:11:31 -07:00
Kurt
af141581ee
Minor tweaks
...
Single underscore discards (one of the c# language revisions allowed reusing the single underscore discard).
Remove a temporary allocation in BDSP flag editor
2022-04-26 19:48:09 -07:00
Kurt
5be9863ef4
Sanitize gender on species/form change
...
clean up some if expressions
2022-04-25 17:30:16 -07:00
Kurt
ecee948107
Add gender sprites for main GUI
...
Might trickle this out to the other editors that have gender toggles.
2022-04-24 20:28:56 -07:00
Kurt
1f49574be1
Fix g6 hof len
2022-04-23 22:05:51 -07:00
Kurt
f5358e0e37
Update HoF6 entity editing
...
Reusable entity struct, no more overlapping fields
Adds OT Gender, fixes some flags.
Thanks L1nk2futr3 !
https://projectpokemon.org/home/forums/topic/60977-hall-of-fame-tid-resetting-gen-6/?do=findComment&comment=275575
2022-04-23 10:42:56 -07:00
Kurt
a6561a91b1
Add clone deletion in savefile from pkmdb
2022-04-19 16:33:11 -07:00
Kurt
a61d8d1efc
Extract IMultiplayerSprite from SaveFile
...
only used by gen6 saves
2022-04-15 14:58:40 -07:00
Kurt
a681783f1a
Extract interface for SaveBlock, allow strict
...
External users shouldn't be using SaveBlock
2022-04-15 11:45:04 -07:00
Kurt
841fcde2b2
Enhance Pokerus api functions
...
Fixes #3480 ; (0,0) is a valid state regardless of format.
2022-04-14 14:05:32 -07:00
CanoeHope
cf901861e7
Update Shortcuts and Legality texts ( #3477 )
...
* Update LegalityCheckStrings_en.txt
* Update LegalityCheckStrings_de.txt
* Update LegalityCheckStrings_es.txt
* Update LegalityCheckStrings_fr.txt
* Update LegalityCheckStrings_it.txt
* Update shortcuts.txt
2022-04-11 15:09:42 -07:00
Kurt
a85737b8f6
Fix event flag row click set
2022-04-11 14:49:06 -07:00
Kurt
b8734dd3aa
Add ctrl/alt click for contest stats
...
Closes #3476
2022-04-11 11:57:55 -07:00
Kurt
a5ee845c3b
Decouple event flag/work from SaveFile
2022-04-09 18:12:57 -07:00
Kurt
a601180821
Extract Pokerus util logic
...
Simplify some GUI interactions when changing strain. Changing the day selection will update the visibility, no need to manually do it again.
2022-04-09 12:27:16 -07:00
Kurt
0389624508
Extract unnecessary stringbuilding from pkmconvert
2022-04-09 11:58:52 -07:00
Kurt
e6cf5d0baf
Split PKMConverter into multiple classes
...
EntityFormat -> detects byte[] -> ctor() PKM
EntityConverter -> converts between pkm formats
RecentTrainerCache -> used by other classes (not within EntityConverter!)
EntityBlank -> creates blank PKM objects indirectly
2022-04-09 01:39:34 -07:00
Kurt
274b613487
Change signature to set stackalloc ivs
2022-04-08 20:43:31 -07:00
Kurt
13eb244bbd
Add arrows to move mail slots for gen2/3
...
#3470
2022-04-02 23:36:39 -07:00
Kurt
4199a93be1
Fix gen6 HoF write for TID
2022-03-27 21:37:32 -07:00
Kurt
92708ddc03
Fix some misbehaviors in mg slot swaps
...
PCD->PGT empty slot drops don't select the lowest empty slot, now fixed
dragdrop of empty slots (as the source) is now disallowed
2022-03-27 21:37:06 -07:00
Kurt
60de53063a
Minor tweaks
...
Extract some logic
2022-03-26 15:51:12 -07:00
Kurt
51f2fe35a4
Trycatch backup file creation
...
Stop putting PKHeX in Program Files ya goofballs
2022-03-25 19:25:07 -07:00
Kurt
fdd96494de
Update lang_fr.txt
...
Closes #3469
2022-03-23 12:03:26 -07:00
Kurt
d02537f16e
Make dragdrop work with exporting to discord
...
Hold shift when dropping into discord to have discord auto-send it; bump time delay to 20s for file deletes
Seems like it just wanted Effects.Copy instead of Effects.Move, nice. Used to work for a while until it didn't.
2022-03-22 23:02:46 -07:00
Kurt
46c83faa0e
Refactor hall extradata to read as a separate block
2022-03-21 18:53:24 -07:00
Kurt
54f1e341f9
Spanify spawner object get
2022-03-20 01:46:24 -07:00
Kurt
1a26ecbf40
Update 22.03.18
2022-03-18 15:59:07 -07:00
Kurt
9a0f9f5119
Minor tweak
2022-03-15 19:23:13 -07:00
Kurt
b45ce123da
Show rainbow bean index
...
14 -> 15
Clean up some API functions
2022-03-08 21:02:06 -08:00
Kurt
218f8b05c3
Fix AV load
...
oops
2022-03-07 18:43:52 -08:00
Kurt
c51d51d381
More specific primitives for Memories/others
2022-03-06 12:01:47 -08:00
Kurt
9632ad44fd
Span-ify HiddenPower methods
...
Zero heap allocation Hidden Power bruteforcing via Heap's algorithm
2022-03-06 00:43:49 -08:00
Kurt
e17483fe46
some linq reduction
2022-03-05 20:03:52 -08:00
Kurt
3d9c7dc750
Reduce IAwakened from int->byte
2022-03-05 18:46:03 -08:00
Kurt
b20566eb59
Use actual primitive instead of int
...
Some interfaces aren't needed to be exposed as int
2022-03-05 18:30:35 -08:00
Kurt
6ae59c509f
IGanbaru int->byte fields
2022-03-04 22:34:11 -08:00
Kurt
e5296fc51a
Add IoA diglett button in Trainer editor
...
Closes #3454
Use ahtb sourced (hash,string) correlation from pkNX to dynamically generate block keys.
Co-Authored-By: Jonathan Herbert <3344332+foohyfooh@users.noreply.github.com>
2022-03-01 21:34:16 -08:00
Kurt
8c9c5e0198
Update 22.03.01
2022-02-28 23:16:17 -08:00
Kurt
d1e62fb6d1
Add dex solitude complete mark checkbox
2022-02-28 00:03:38 -08:00
Kurt
ae74ee7931
Minor tweaks
...
Translation util only for debug build (unused in release)
Simplify some plugin load expressions
2022-02-26 21:45:31 -08:00
Kurt
5a71ecc8bb
Minor clean
2022-02-24 23:17:16 -08:00
Kurt
bdbd9fc899
Add error message if user moves file for backup
2022-02-23 21:53:01 -08:00
Kurt
fc3f142d16
Update 22.02.22
2022-02-22 21:40:01 -08:00
Kurt
5b981f2832
Un-secret the bulk PKM validator
...
Now has its own button next to verify checksums.
2022-02-21 17:46:32 -08:00
sora10pls
3f6427f323
Hide held item for LA, display Hidden Power type for BDSP
2022-02-18 09:52:30 -05:00
Kurt
adda0af96e
Rework apricorn/bean editors to be text entry
...
Combobox for count is an antipattern, just parse like all the other quantity datagrids
2022-02-14 21:46:22 -08:00
Kurt
dc3d8e7cec
Minor clean
2022-02-14 21:32:52 -08:00
Kurt
013fe95c8d
Update 22.02.14
2022-02-13 01:18:19 -08:00
Kurt
bc2549b24e
Minimize BAK file allocations ( #3426 )
...
Stop allocating an entire shadow copy of the save file whenever we create a new savefile object from file.
Prior commits added the clear SaveFileMetadata class to cleanly track the file path. Backups are copied from the original path.
2022-02-09 16:48:55 -08:00
Kurt
aca0e48510
Update translations with latest control list
2022-02-09 15:43:20 -08:00
Kurt
16da1deadc
Revise battle subway flag handling
...
Retain all flag bits; expose the other 5 flag bits as some saves do have them.
Undocumented.
Closes #3422
2022-02-09 15:41:00 -08:00
Kurt
e5c6b769b7
Fix update check for slower startups
...
Closes #3424
2022-02-09 10:47:07 -08:00
Kurt
f5344452cf
Fix last funfest mission record r/w
...
Closes #3423
2022-02-09 10:36:46 -08:00
Kurt
c59b0947f0
idden Power base power next to type
...
No need to have two lines; simplifies the already complex user control slightly.
2022-02-08 22:25:14 -08:00
Kurt
ee15a15c9e
Minor tweaks
...
Lower contest stat row
Lower IsNoble & IsAlpha
Prevent closing Splash Screen when interrupted by plugin dialogs
2022-02-08 21:46:16 -08:00
Kurt
9c5955c104
Emulate Height & Weight float calculations matching the game ( #3417 )
...
* Accurately implement height/weight calc
* Handle GUI reads
Having Auto off will read and write the values correctly
F6 will handle all the decimal points possible
* Remove no longer needed tolerance check
2022-02-08 18:56:11 -08:00
Kurt
b06f889cdd
Update 22.02.08
2022-02-07 20:13:19 -08:00
Kurt
b20fb39d77
Don't set dex on slot swap within save
...
Closes #3411
2022-02-07 15:03:26 -08:00
Kurt
17495fafca
Remove RightToLeft textbox setting
...
Closes #3410
no more occurrences of RightToLeft.Yes
2022-02-07 14:37:54 -08:00
Kurt
3069d42ad4
Fix 16/16->G7 conversion
...
lol oops
Closes #3405
2022-02-06 16:00:51 -08:00
Kurt
81c8d80bb8
Use datagrid for better performing event flag rendering
...
Closes #3400
Lots of controls are slow to render; datagrid is fine. Wire it up so that it detects & updates the custom research checkbox on the other tab.
2022-02-06 01:10:51 -08:00
Kurt
a3595d1429
Update more values on height change & auto update
...
Closes #3390
Remove focus from pending edits to the NumericUpDown, and only set scalars if not loading. Fixes switching between entries with pending NUD value changes.
2022-02-05 22:02:07 -08:00
Easy World
9da37852ea
Minor translation revise ( #3404 )
...
* Update lang_zh.txt
* Update text_Games_zh.txt
2022-02-05 20:53:14 -08:00
Kurt
ea327a5c03
Add all circle Pokémon images; add setting for sprite preference ( #3402 )
...
* Add sprite builder toggling for forced-circle sprites
* Add assets for all LA Pokémon sprites
Co-authored-by: sora10pls <17801814+sora10pls@users.noreply.github.com>
2022-02-05 14:54:01 -08:00
Kurt
cd19d1d700
Fix folder list backup fetch
...
Introduces an option to disable reading .bak / "backup" files; trickle the changes up to all surface users so that SAV_FolderList can correctly load all .bak saves into its Backup tab.
The "ignore backups" was added in the latest feature push to ignore "backup" from being detected as the latest save.
2022-02-05 09:49:47 -08:00
Kurt
6683c1af01
Widen SAV editor popup buttons
...
Closes #3389
2022-02-05 09:31:02 -08:00
sora10pls
dea2eeb0e2
Fix TR editor move strings
...
Thanks GlacierWolf on Discord!
2022-02-05 10:40:27 -05:00
Kurt
9bbb6f1e20
Allow GiveAll for PLA PCItems storage
...
Big storage box
https://projectpokemon.org/home/forums/topic/60579-pokemon-legend-of-arceus-items-issue/#comment-273030
2022-02-05 01:05:58 -08:00
Kurt
b7a00ca869
Add label text for ModifyGanbaru (Max All GVs)
...
Already localized for zh, ty easyworld :)
2022-02-04 22:22:00 -08:00
Michael Scire
cb92166aa2
Fix incorrect form when saving on close without ever viewing multi-form pokemon ( Closes #3386 )
2022-02-04 21:07:03 -08:00
Kurt
3c42d04c70
Initial default save version for startup
2022-02-04 20:55:44 -08:00
Easy World
52b980290f
update Chinese translation for PLA ( #3385 )
...
* Update text_Games_zh.txt
* Update text_Ribbons_zh.txt
* Update lang_zh.txt
2022-02-04 20:01:28 -08:00
Kurt
eed5bb04e3
Merge pull request #3382 from kwsch/pla
...
Update 22.02.04
Individual commits from this PR are not cherry-pickable in a vacuum; these were manually re-committed from a staging repo in order to group together changes for general public viewing. There were over 250 commits on the private development repo for this update.
2022-02-04 18:28:17 -08:00
Kurt
d4a6392b44
Update 22.02.04
...
Co-Authored-By: SciresM <8676005+SciresM@users.noreply.github.com>
Co-Authored-By: Lusamine <30205550+Lusamine@users.noreply.github.com>
Co-Authored-By: Matt <17801814+sora10pls@users.noreply.github.com>
2022-02-04 18:21:10 -08:00
Kurt
cdf41c0376
Update program translations
2022-02-04 17:42:00 -08:00
Kurt
2cef0c23a6
Update localization dumping util
2022-02-04 17:37:13 -08:00