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
Kurt
18ecad9743
Update program GUI abstractions
...
Co-Authored-By: Matt <17801814+sora10pls@users.noreply.github.com>
Co-Authored-By: SciresM <8676005+SciresM@users.noreply.github.com>
2022-02-04 17:36:51 -08:00
Kurt
b0e7e86c68
Add savedata sub-menu editors
...
Co-Authored-By: Matt <17801814+sora10pls@users.noreply.github.com>
Co-Authored-By: SciresM <8676005+SciresM@users.noreply.github.com>
Co-Authored-By: Lusamine <30205550+Lusamine@users.noreply.github.com>
2022-02-04 17:32:16 -08:00
Kurt
3389a224d1
Change stat label clicks to change nature instead
...
Document in shortcuts
Old behavior was undocumented, and was kinda janky.
Closes #3376
2022-01-25 16:45:41 -08:00
Kurt
da9d09ea76
Misc tweaks
...
No functional change
2022-01-11 22:53:20 -08:00
Kurt
36bf73818e
Source trainers for encounter database
...
Closes #3364
Related: #3358
2022-01-03 19:33:10 -08:00
sora10pls
3f1335e19f
Add Zone unlock cheat to BDSP Misc Editor
...
As with most event work tampering, make sure you keep save backups. Accessing areas before you're intended to will almost certainly break story progression.
2022-01-03 11:06:06 -05:00
Kurt
47071b41f3
Refactoring: Span-based value writes and method signatures ( #3361 )
...
Existing `get`/`set` logic is flawed in that it doesn't work on Big Endian operating systems, and it allocates heap objects when it doesn't need to.
`System.Buffers.Binary.BinaryPrimitives` in the `System.Memory` NuGet package provides both Little Endian and Big Endian methods to read and write data; all the `get`/`set` operations have been reworked to use this new API. This removes the need for PKHeX's manual `BigEndian` class, as all functions are already covered by the BinaryPrimitives API.
The `StringConverter` has now been rewritten to accept a Span to read from & write to, no longer requiring a temporary StringBuilder.
Other Fixes included:
- The Super Training UI for Gen6 has been reworked according to the latest block structure additions.
- Cloning a Stadium2 Save File now works correctly (opening from the Folder browser list).
- Checksum & Sanity properties removed from parent PKM class, and is now implemented via interface.
2022-01-02 21:35:59 -08:00
MewTracker
d5a79079c0
Added named constant for BDSP swarms ( #3362 )
2022-01-02 15:43:18 -08:00
Kurt
4b8adfe28d
Bump winforms proj c# lang to 10
...
no functional change
2022-01-02 15:04:16 -08:00
Kurt
3f769d6f52
Update 22.01.01
2022-01-02 00:53:37 -08:00
Kurt
0cf7b22363
Fix init of custom work value, fix write of named workval
...
Closes #3357
2022-01-01 23:23:44 -08:00
Kurt
ae70525fd5
Use correct reference for unlocking events
...
Was unlocking the real save file, not the editing-shadow. Oops
2022-01-01 23:15:37 -08:00
Kurt
76cac85243
Minor clean
2021-12-27 13:50:21 -08:00
Kurt
cc8ac7a4f1
Remove unnecessary warning suppression
...
fixed dat .editorconfig in vs22
Catching general exceptions is okay because this program handles user modified data that can potentially be corrupt.
2021-12-27 12:09:15 -08:00
Kurt
11039f1119
Extract some event unlocking logic for core
2021-12-26 18:21:34 -08:00