Kurt
c301ce88ab
Update Random to be a bit more thread safe
...
Random isn't thread safe; users of PKHeX.Core.dll might run multithreaded operations (see PKSM + ALM), so we need to have a thread-specific RNG available.
Thread Local get; to improve performance, save the random object locally whenever it is used more than once in the method.
https://docs.microsoft.com/en-us/dotnet/api/system.threading.threadlocal-1?redirectedfrom=MSDN&view=netframework-4.8
https://stackoverflow.com/questions/18333885/threadstatic-v-s-threadlocalt-is-generic-better-than-attribute/18337158#18337158
2020-01-25 21:49:52 -08:00
Kurt
b5d48bc14f
Split up portions of CommonEdits
...
Cuts out about half the size; there's still a bunch of apply-value logic but it's not really big enough for a separate class.
Rename BallRandomizer->BallApplicator
2020-01-25 16:47:44 -08:00
Kurt
225d5d0698
Refresh PP on applying suggested moves
...
Closes #2655
pretty sure the FieldsLoaded is preventing the pp refresh, so just manually do it
2020-01-22 09:24:25 -08:00
Kurt
f3a9a9d7c2
Misc nullable handling update for winforms
...
Didn't enable it; there's some side effects from properties that used to be null in PKHeX.Core
there's probably more, but just handling a few.
Closes #2642
2020-01-18 13:27:48 -08:00
Kurt
df1d317861
Add block dump/import
...
Can do block swaps with other saves (fashion block is d224f9ac) -- export the block and import it to another save!
2020-01-13 19:04:21 -08:00
Kurt
2e16fb058c
Show form arguments in gen6/7
...
Clamp form argument load to current list bounds (used to throw arg range exception if invalid)
2020-01-13 17:09:03 -08:00
Kurt
5a20dc707d
Rewrite encounter suggestions
...
Don't clone legality templates, and keep suggested information minimal -- this isn't automod
2020-01-12 19:40:36 -08:00
Kurt
eaeebea923
Remove another method shortcut
...
EncounterSuggestion needs a facelift anyway
2020-01-12 17:00:03 -08:00
Kurt
bbd1aff5fe
Add new lengths
...
new format still crashes as block absolute index is now different
should do a different way of loading blocks (key instead of index)
2020-01-09 08:17:41 -08:00
Kurt
0dd4d1fe7a
Remove unnecessary casts
2020-01-06 17:50:18 -08:00
Kurt
87fbdf8222
Add Click PP label (not max) to refresh PP counts
...
https://github.com/kwsch/PKHeX/issues/2603#issuecomment-570754419
2020-01-03 20:07:56 -08:00
Kurt
90dabf5b87
Restore original background if hover-glow not done
...
Closes #2616
2020-01-03 19:46:04 -08:00
Kurt
26b4c991cb
Split Friendship and Form layout panels
...
Closes #2569
hax form change update trigger from validated->textchanged
might be a little annoying to see the layout/order change, but it should
be better as stuff is now visually chunked.
2019-12-26 14:52:50 -08:00
Kurt
60d12e330c
Handle bad gender values when loading
...
0/1/2 normally; I could just copy the genderless symbol for '3' as well
but eh
2019-12-26 14:27:17 -08:00
Kurt
97c3c6b610
Add raid/den detail browser
...
Hold alt when hitting activate all to dump instead
I've seen DenType=5 Event=2 for at least one raid so far... not sure if
the event/rare properties are accurate.
2019-12-23 23:30:21 -08:00
Kurt
9285dc5b52
Reduce width of formArg & flowlayoutpanel
...
Closes #2569
-2 combobox width
-15 flowlayoutpanel width (two of them)
I assume this works. Please let me know! The width was capped out on my
machine; the different scaled users might be off by a pixel (too big),
which makes it appear invisible because it can't render it in the
too-small space
2019-12-09 21:24:06 -08:00
Kurt
8acb336d51
Use enum for species comparisons
...
slightly easier to read with named values
2019-12-08 17:39:19 -08:00
Kurt
5ddd59c9aa
Fix runerigus/yamask partial load fail
...
320 is max hp (31IV 252EV), is this just -60 from max HP (threshold to
evolve at?)
might need some more research to see what is going on with this
only trycatch in release builds; was confused until I stepped thru and
saw the crash
2019-12-08 00:03:08 -08:00
Kurt
c2dd2c9145
Sync missing content
...
see previous commit, lol
2019-12-07 15:15:35 -08:00
Kurt
a178418c3d
Fix clone to all slots behavior
2019-12-07 13:56:00 -08:00
Kurt
99a884c56e
Add click nature label to copy other nature
...
For those who are annoyed that ShowdownSet does not import to Nature,
sure, you can do that with just one click now
(it's not overwritten automatically, just in case the event the
encounter is fixed nature)
2019-12-03 20:12:13 -08:00
Kurt
20f3552e39
Add vc origin sprite
...
ty @sora10pls
reorder for preference
2019-11-29 11:21:35 -08:00
Kurt
3c4e668d9a
Add alcremie formArg gui
...
Closes #2538
Standardize nomenclature as FormArgument, add interface for those
exposing the property.
2019-11-29 10:44:52 -08:00
Kurt
65e2457762
Don't suggest relearn moves if not parsed correctly
2019-11-26 16:12:57 -08:00
Kurt
5435a5d93e
Minor updates
...
Fix mark (ribbon) read for index > 64
Heal party stats on set detail import
Wipe HT Language for eggs/untraded
Extract BST total color logic
2019-11-25 17:32:10 -08:00
Archit Date
a05bed8f18
updated shiny indicator for xor0 ( #2522 )
2019-11-25 09:27:42 -08:00
Kurt
32d8225023
Fix drag slot equality check
...
prevents deleting party slots if a slot is dragged into its original
slot (X->X); Equals check only checked reference
2019-11-24 06:42:41 -08:00
Kurt
27754afea8
Fix box list width crunching
...
Closes #2477
2019-11-23 08:51:54 -08:00
Kurt
b6f2dd623e
Fix external drag restoring of image
...
Closes #2476
2019-11-22 22:22:30 -08:00
Kurt
9e997f1613
Trycatch all clipboard set-text operations
...
Closes #2486
redirect to a common method in the event that setting to the clipboard
fails; the handling is now the same for all usages (trycatched and a
shared error message).
2019-11-22 21:23:00 -08:00
Kurt
a50169d3d2
Add shift-set shinyxor0 pid
...
Display xor value on hover, not gonna do alternate stars/square display
Closes #2482
2019-11-20 20:38:05 -08:00
Kurt
2aaa3763ee
Fix record setting logic
...
Thanks @AnalogMan151 ! #2416
Fix method reference lol
2019-11-20 18:18:33 -08:00
Kurt
cca33fc0f9
Fix Technical Records box size
...
all goofed out under certain conditions
2019-11-18 17:42:59 -08:00
Kurt
7a77ca25f1
Show nature amps from statnature
...
Trigger update in stat pane when statnature is changed too
2019-11-17 16:00:23 -08:00
Ammako
2292c7eb1d
Don't show notOT language on Gen. 6-7 ( #2442 )
2019-11-17 10:48:39 -08:00
Kurt
ac498fe643
Update box clamp
...
off by 1, gen6 battle box causes it to be out of range
2019-11-16 21:21:02 -08:00
Kurt
08aef9abc0
Increase program size if required for different DPI
...
Closes #2439
2019-11-16 21:03:24 -08:00
Kurt
f836a3dddb
Fix Daycare slot display
...
was redirecting to party; party was removed
all that remains in the slot list the SAVEditor manages is the two
daycare slots.
Maybe it'll be better to have a popup form in the future, that way
multiple daycares can be shown as appropriate.
Closes #2433
2019-11-16 14:45:21 -08:00
Kurt
025cf69eeb
Switch pkm export formats to party format
...
Now dumps party format bytes
Cons: more space
Pros: stats are retained, especially when users drag-drop.
Closes #2419
2019-11-16 14:03:25 -08:00
Kurt
627a236956
Add shift hotkey to apply current as TRs
...
no window popup required
2019-11-15 23:22:21 -08:00
Kurt
981ed9a253
Add technical record flag editor & api
2019-11-15 23:12:28 -08:00
Kurt
cefb56a749
Sword/Shield Update
2019-11-15 17:52:08 -08:00
Kurt
b8835facd5
Rename public "pkm" properties to non-lowercase
...
lowercase = local variable or private member
2019-10-27 12:57:04 -07:00
Kurt
39d11f5f2f
Simplify font logic
...
dont bother trycatching stuff that shouldn't fail
2019-10-26 23:14:00 -07:00
Kurt
46640d48a3
Misc clean
...
un-nest classes,
move some logic to core,
update some get-only properties that return arrays to methods
2019-10-26 12:58:55 -07:00
Kurt
fcc993784b
Rename abstract pkm inherited class names
...
leading underscore for a class name = pls no
2019-10-26 12:42:33 -07:00
Kurt
e3efa65160
Cleanup
...
handle messages for dirty cleaning :)
2019-10-26 12:33:58 -07:00
Kurt
5dcee4fb9a
Set random moves if GetMoveSet yields invalid set
...
Closes #2406
No clean way to check for these edge scenarios, so just double check the
moveset and return random moves if we fail
2019-10-24 18:11:25 -07:00
Kurt
08a88b876f
Dispose dialog forms after use
2019-10-19 20:33:37 -07:00
Kurt
d4ce0644c8
Simplify block property names
...
[...]Block -> [...] since it's kinda redundant, we already know by its
type.
Rename offset ints that collide
2019-10-18 20:42:03 -07:00