Commit graph

463 commits

Author SHA1 Message Date
Kurt
c07a36c333 Fix event flag get set
yay order of operations
also update prompt messages for more guidance
Closes #1464
2017-09-17 10:16:56 -07:00
Kurt
7efd771bf4 Misc refactoring
add docs, move some data fetching to more appropriate class
remove old XP memecrypto support handling, was previously removed due to
net standard/core split
refactor memecrypto to handle multiple save sizes (USUM won't be the
same size save file); placeholder -1 for USUM size
2017-09-16 11:38:58 -07:00
Kurt
599a67a5a0 Merge pull request #1456 from sercho80/master
Add JKSM backup path
2017-09-16 10:01:46 -07:00
Kurt
fa14c794c0 Add dragdrop tab switching qol improvement
#1457
2017-09-15 09:13:08 -07:00
Kurt
5665481cab Reduce machoke trade minlvl gen1
Thanks Mewtwo!

https://projectpokemon.org/home/forums/topic/41636-ricky-machamp-unable-to-match-encounter
https://bulbapedia.bulbagarden.net/wiki/Kanto_Safari_Zone
2017-09-15 06:42:00 -07:00
sercho80
5813ba7f44 Add JKSM backup path
For those using Rosalina and JKSM :)
2017-09-15 07:34:22 +02:00
sora10pls
4f28e5cabc Add GodMode9 3DS backup path 2017-09-14 16:41:35 -04:00
Kurt
d286fe9731 Extract get/set event flag common SAV method
throw in a little docs
2017-09-13 20:37:18 -07:00
Kurt
bc2f36c18c uncap underground stats
only may have trouble if the stat gets close to int.MaxValue as it could
really be a uint :)
closes #1449
2017-09-08 09:04:29 -07:00
Kurt
35049a5b5b Update thread path
Closes #1382
2017-09-07 21:47:18 -07:00
Kurt
311ea4bc50 Refactoring
relocate memory type detection tables out of MemoryAmie editor
remove casting reference to get text (invalid memories no longer throw
exceptions)
2017-09-07 17:46:21 -07:00
Archit Date
1123c24b0c Fix Gen4 Misc options when no Poketch is obtained. (#1448)
* Fix Gen4 Misc options when no Poketch is obtained.

closes #1447
2017-09-07 12:25:45 -07:00
Kurt
62f99bf5b8 Refactoring
split up slot resetting to smaller methods, use non-box reset when
toggling FlagIllegal
Closes #1446
2017-09-06 22:11:08 -07:00
Kurt
d7b982728c Disallow min/maximization of boxviewer
can double click or use windows keys to minimize
don't want that
other props are just updating themselves with the boxview control prop
additions
2017-09-06 22:02:03 -07:00
Kurt
863220655e gen1/2 shiny button fix
setting the string to the control causes it to update, use the
changingFields to prevent this update from happening until we want to
(via UpdateIVs)
Closes #1444
2017-09-06 17:10:15 -07:00
Kurt
cbda637981 Remove old (GF fixed) shiny correlation
Transporter was updated
2017-09-06 09:12:56 -07:00
Kurt
c531f9ae5f Update 17.09.05
Update event binaries with latest from the Event Gallery
this time, ignore any in the "Unreleased" folder!
2017-09-04 22:54:16 -07:00
Kurt
97f0f418d6 Enable auto-bak loading for db
previously was only for debug builds; loads in like 2 seconds on my
computer for >70k pkm from >250 backups

if enough people complain I can add it as a setting instead
2017-09-04 22:27:55 -07:00
Kurt
dcf2b5fd9c Improve database loading speed
do db population in another thread, invoke an update when complete
2017-09-04 22:22:02 -07:00
Kurt
492e378101 Disable auto-hyper on showdown import (lvl 100)
only hyper train if currently loaded pkm is level 100 (can be hyper
trained).
closes #1439
2017-09-04 19:01:04 -07:00
Kurt
432ca847f6 Add debug build identification
shows up prefixed by "d-" and the date modified (compiled)
helps identify shared non-release builds
2017-09-04 13:40:04 -07:00
Kurt
229d752d7a Update showdown form parsing
Closes #1437 (should have been handled in PKHeX.Core not winforms);
extracted the two sanitization methods and sprinkled in some c#7
2017-09-02 08:26:51 -07:00
Kurt
a679312371 Change box/party illegal flagging default setting
i think it's time to turn this on by default for new settings
2017-08-30 21:30:41 -07:00
Kurt
072f1ba83d Refactor level-evolution checks slightly
Allows evolution met level check to be skipped
Adds minimum level constraint for evolution chain generating

Closes #1430

also adds deferral to the gen3 encounter generator as encounterstatic
gifts can collide with wild encounters when transferred
2017-08-28 18:12:57 -07:00
Kurt
41482af052 Add auto hyper train on showdown set import 2017-08-27 20:39:11 -07:00
Egzon Qukovci Jusufi
2775ad984e Fix Underground button to be only enabled for DPPt 2017-08-27 22:52:47 +02:00
Kurt
219c042315 Add unlock all pokewalker courses cheat button
Closes #1406
2017-08-27 12:53:57 -07:00
Kurt
b26c670985 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	PKHeX.Core/Saves/SAV4.cs
2017-08-27 12:36:56 -07:00
Egzon Qukovci Jusufi
d0b5ceb8ff Underground Score Editor (help needed) (#1416)
* Underground Score Editor first commit

* not needed space

* changed anchor points

* added dp offsets, ug scores to underground, underground button click code
2017-08-27 12:32:43 -07:00
Kurt
896427a848 Refresh box viewers on box load
closes #1425
2017-08-26 18:37:44 -07:00
Kurt
5b0e431347 Revert "Uncap max box ID for gen6 not-XY saves"
This reverts commit 9869335151.
2017-08-26 08:41:18 -07:00
Kurt
183164a197 Add batch edit pk1/2 .PID=$shiny
Closes #1419
2017-08-25 17:44:15 -07:00
Kurt
9869335151 Uncap max box ID for gen6 not-XY saves
Closes #1411
2017-08-25 17:25:42 -07:00
Kurt
ccc6357294 Misc updates
Re-enable PKM (abstract class) property searching via Database/MGDB
search
Closes #1412 (can now search or exclude certain formats)

Add auto-detection for all supported saves (rather than gen3+ except
GC/PBR)
2017-08-24 18:49:09 -07:00
Kurt
996a219a13 Gen5 international language bits dex fix
Closes #1395
Gen5 save files do not store multilang dex entries for gen5 species

https://bulbapedia.bulbagarden.net/wiki/Foreign_Pok%C3%A9dex_entries#In_Generation_V
2017-08-20 17:52:10 -07:00
Kurt
37c858b6ad Update validation tweak
prior commit reverted incorrect behavior fix, force something within the
control to validate (not everything else)
2017-08-17 16:43:54 -07:00
Kurt
cadf3134d9 Misc fixes
fix early-verification (introduced in 9864d84), just invert the
fieldsLoaded check. No longer interrupts the pkm loading routine when
changing game locations
fix stadium check (accidentally inverted in bfdf1c5)
Closes #1398
Closes #1397
2017-08-16 22:12:28 -07:00
Kurt
7fb9ce4131 Misc updates
Add global link mission stats (thanks Holla!)
remove some ToArray() linq in favor of direct copies
Relocate encounter suggestion logic to separate class
Closes #1396, addresses other edge cases like entree-non HA & happiny
egg.
2017-08-15 21:16:47 -07:00
Kurt
9864d84704 Misc fixes/improvements
Reduce memory usage for evo method banlist (static banlist references)
Fix gen6 mega evo flag truncation
simplify QR encode/decode logic a little
Don't apply transparency if transparency is already 100% (skip the loop)
Add gen5 wild pid/tid-sid correlation check
Fix validation value reset (loading gen3-4 pkm without looking at met
tab causes the met location to get reset); fixed by prematurely
validating before setting the value
Fix gen3 pkm with gen4 contest ribbons in gen4/5 getting flagged
incorrectly
2017-08-13 00:21:42 -07:00
Kurt
47dcb56090 Misc fixes
static-wild encounter g4 collision (abra gift), closes #1390
off by one pokepuff strings
unshuffle bk4 ribbons
pgt bad sanity events now auto-sanitized
2017-08-10 20:51:27 -07:00
Kurt
340a71a47e Update 17.08.07
Update event binaries with latest from the Event Gallery
2017-08-06 21:50:11 -07:00
Kurt
8357774635 Disable play time editing on cxd
Closes #1292
2017-08-06 17:26:09 -07:00
Kurt
07690e2919 Unhide language for gen1/2 saves
Closes #1349

Add egg memory wiping when ticking as egg,
Add egg memory setting when suggesting encounter info.
Closes #1350
I'd rather have it this way as to not do cross-tab auto edits that the
user may miss.
2017-08-05 20:30:33 -07:00
Kurt
80196f75ef Refactoring
split Core.PKX into smaller classes, only StringConverter is exposed for
outside namespaces
2017-07-31 23:03:51 -07:00
Kurt
9b31202345 Restore bk4 properties
necessary for reflection property transferral (ie language)
indirectly fixes mixed-bit properties (ie altform/gender) as they are
reversed bits relative to pk4.
2017-07-26 18:26:54 -07:00
Kurt
2faf6ae8e5 Redo prior g5 roamer commit
switch to list to allow/add unknown value option
#1358
2017-07-23 22:44:00 -07:00
Kurt
866e8fd485 Split roamer flags into checkboxes
basically there was 0x81 which was not 0-3, and the other roamer had
0x40.

Closes #1358, thanks @Ninjistix !
2017-07-22 13:15:53 -07:00
Kurt
2d18440445 Fix wurmple evo gen3/4
yeah it was never the lowest 16 bits as every-internet-source claims.

1D9C9130 silcoon => 3716[8] = cascoon (nope)
#1330 was correct!
2017-07-17 15:58:15 -07:00
Kurt
249c08b062 Add gen-sensitive deoxys sprite fetching
Closes #1327
2017-07-16 14:05:29 -07:00
Kurt
2a2f5669e4 Add wc3->pk3 conversion
fixes 10ANIV pikachu having Thunderbolt twice
un-duplicates CHANNEL event data
adds seed->PIDIV generator template for M1/2/4, CXD, Channel, and BACD

improve pkm converter to update nickname of hatched eggs. isn't perfect
(farfetch'd) but works better than before
2017-07-15 18:36:55 -07:00
Kurt
569873701b Fix antishiny 3-5=>6+ check
uint SID = Util.ToUInt32(TB_TID.Text);
uint TID = Util.ToUInt32(TB_TID.Text);
first line should have been TB_SID.Text not TID

pull out method

Thanks wejhvabewjty!

https://projectpokemon.org/forums/forums/topic/41110-problem-with-pok%C3%A9mon-caught-w-cute-charm-lead/
2017-07-15 09:48:08 -07:00
Kurt
2f3c56e7c5 Update gen4/5 mg generators
PGF for movie victini has OTgender=3; only eggs are supposed to set OT
details from the SAV.

update pattern matchers to abuse this fact.

Thanks @odaxis !
2017-07-14 22:50:12 -07:00
Kurt
ee57bc49f0 Add gen3 event flag/variable editing
Template files added for e/frlg, no guarantees.
http://i.imgur.com/ER5rRBn.png
(left+select+b when on groudon/kyogre menu screen)

Closes #1328, thanks @rboninsegna !

Added the ability to prefix flag numbers with 0x, and prefix variable
numbers with 0x40__; will be parsed as hex.
2017-07-13 23:05:59 -07:00
Kurt
c12eba2186 Add Gen6 mega evolution early-unlock edit
TrainerCard offset is 0x14000
http://i.imgur.com/XtsZLmL.png

via:
33011937 ekx
182491428 hbg
tyvm anon
2017-07-12 20:38:24 -07:00
Kurt
8ffe2257db Add cancel abort
Cancel no longer defaults to the latter (no/LG) option
closes #1321
2017-07-11 18:01:20 -07:00
Kurt
fa4d6d78fe Fix filenotfound exception on drag&drop
Dragging from a deeply nested file & folder truncates the filename (eg
from winrar), causing an invalid path to be passed.
2017-07-10 18:57:03 -07:00
Kurt
fa642820b1 Redesign event flag editor
split control groups into separate tabs for easier viewing
2017-07-09 14:54:10 -07:00
Kurt
4a2dbe4ad2 Add gen4 ribbon names
Closes #1297
fix off by 1 language checking
2017-07-09 14:31:08 -07:00
Kurt
45c891e64f Add inventory sorting by index number
Closes #1312
2017-07-06 17:24:40 -07:00
Kurt
502093b8b2 Misc tweaks
fix pcd detection (yield brewk needed to be inside brackets
remove brackets from single line lambda expressions
2017-07-05 23:05:49 -07:00
Kurt
e8f9fd0098 Add control-click for box left/right
jump to start/end of boxes
2017-07-05 18:54:21 -07:00
Kurt
bbac3dc7ee Improve db scroll behavior
Focus was passed when control area was entered; only pass focus when the
mouse wheel is moved.
Add tooltip to show full path of last viewed file if the filename is too
long. Double clicking the label still works to copy the full label to
clipboard.
2017-07-05 18:39:53 -07:00
Kurt
d4aff0632e Add ability to batch edit trashbytes
Raw editing of byte fields

.Nickname_Trash=$[]43,00,65,00,72,00,66,00,72,00,6F,00,75,00,73,00,73,00,65,00,00,00,00,00

only use cases are OT/Nickname trash bytes

not too concerned about speed re-parsing values or storing it to an auto
property; it's fast enough.
2017-07-04 22:22:04 -07:00
Kurt
80e2d55999 Tweak alt-click preview sprite behavior
Closes #1293
2017-07-02 21:27:22 -07:00
Kurt
70b5832dff Change g7tid format
d6 not d7
Closes #1291
2017-07-02 11:02:16 -07:00
Kurt
993767f05a Update 17.07.02
Update event binaries with latest from the Event Gallery
2017-07-02 00:14:27 -07:00
Kurt
4e9b6be8e5 Convert console output to debug output
output messages are now no longer in release builds, as they are only
visible when debugging in an IDE.
2017-07-01 19:43:51 -07:00
Kurt
788bd5ef8c Don't batch edit if no data to iterate over
Closes #1287
Setting PartyData with Length==0 throws an exception from the SAV
object; only process if necessary.

Felt like splitting the method up into smaller pieces.
2017-07-01 16:07:02 -07:00
Kurt
a71229beca Misc performance tweak
fetching blank sav in GUI thread takes ~200ms on my PC, running in a
different thread saves ~180ms on startup time (thread returns approx the
same time as InitializeComponent finishes)
2017-06-29 23:48:25 -07:00
Kurt
1c4a1af633 Misc updates
Detect channel, only detect Channel PIDIV for RS origin (only really
care about method1/2/4 being used when it shouldn't)
Channel does this weird thing called not setting the met level.

Refactor set suggested met location to a method that can suppress
popups.
2017-06-29 19:32:29 -07:00
sora10pls
ef822b12ae Misc Editor changes 2017-06-29 18:14:42 -04:00
Kurt
587d0ea9fc Misc ribbon editing qol
sort ribbon checkbox names alphabetically
hovering over ribbon displays ribbon name ('what is this ribbon
called?')
2017-06-29 09:03:56 -07:00
Kurt
bf6ef284b1 Move contest stat to separate usercontrol
#1272
Smart label now appears for gen 3-5
2017-06-25 10:57:35 -07:00
Evan Dixon
560f4eab0b Target netstanard1.3 and net46
I recently learned about targetting multiple frameworks in .Net Standard libraries. The main benefit here si taht PKHeX.WinForms and PKHeX.Tests no longer need to carry around the .Net Core DLLs. While it's now an option, I encourage PKHeX.Core to avoid framework-specific compiler directives.
2017-06-24 08:12:35 -05:00
Kurt
a4c0927d9c Fix batch editor filter check
passing an object with a type from another assembly will have
obj.GetType() return a System.RuntimeType, which is absolutely not what
we want.

supply the pkm derived GetType

why is this so wonky

Closes #1266
2017-06-23 21:19:22 -07:00
sora10pls
9cd85bf1db Misc4 updates 2017-06-23 15:47:52 -04:00
Kurt
5b5c9d0017 Move ribbon name resources to string dictionary
multilang support now possible, other language translation files added
from existing form translation file

feel free to submit a pull request to change anything for your native
language :)

Closes #1250
not gonna add the alt sprites/names for pk3's
2017-06-22 21:56:41 -07:00
Kurt
86e0374efc Update poketch dropdown/set
#1263
2017-06-22 19:18:14 -07:00
Kurt
f59782a479 Add remove all held items of boxdata
part of the winforms api, unused by pkhex
closes #1264
no need putting held items in inventory as the inventory can be edited
outright
2017-06-22 18:51:46 -07:00
Kurt
0aec466965 Fix loading boxdata/pcdata
the input == 0 checks only applied to gen4+; pk1/2/3 do not have a
sanity at 0x4
Closes #1262
2017-06-22 17:52:11 -07:00
Kurt
aa67a63893 Allow alt-click preview to import showdown
Alt-Click species may not always be visible, simple enough
2017-06-21 21:57:59 -07:00
Kurt
1815a7f273 Add current poketch app selection
Closes #1260
2017-06-21 21:07:07 -07:00
Kurt
606a091523 save/read gen2 pkrs
instead of ignoring it
#1257
2017-06-21 20:31:51 -07:00
Kurt
e697a9edc7 Block parties without battleable pkms
#1257
not perfect but less restrictive, probably more obvious.
2017-06-21 20:24:42 -07:00
Kurt
36b75179f3 Update level/egg behavior
Similar to how anything higher than 255 is dropped to 100, setting level
to 0 will overwrite it to 1. Current level is just a derived property
from EXP, so it's just a display property in the editor.

Toggling IsEgg for gen4 won't flag as nicknamed.

#1257
2017-06-20 22:57:22 -07:00
Kurt
5b15483914 Allow Old Sea Map to be skipped on nonJP
Closes #1255
2017-06-20 22:24:02 -07:00
Kurt
8cc3a36708 Add manaphy egg sprite
Closes #1256
2017-06-20 22:19:04 -07:00
Evan Dixon
2636e7ded8 Fixed another potential blank error message
I also added comments where appropriate, because it took far too long to understand what was going on when reviewing the commit that fixed the original bug.
2017-06-20 20:38:33 -05:00
Kurt
2db061d15d Fix blank error message
Closes #1251

Thanks @ReignOfComputer for finding the source :)
2017-06-20 18:16:29 -07:00
Kurt
1a9da12404 Misc updates
fields->properties, capitalize
fix pkm fields toggle referencing old pkm file, simplify that process
instead of constantly referencing Format
2017-06-20 17:57:23 -07:00
Kurt
b4222c756a Refactoring
reduce cross-class chatter, simplifly large methods to smaller pieces
some speed improvements
2017-06-18 22:27:40 -07:00
Kurt
5b4cedf14b Refactoring
Rewrote showdown set exporting to be much clearer, added auto-fixing of
relearn moves when importing showdown set (applies suggested relearn
moves)
Simplified main form loading routine (from ~160 to ~25 by extracting
methods)
2017-06-18 13:02:02 -07:00
Kurt
b5d2db6610 Add shinyleaf/pokeathlon stat legality check
#1236
2017-06-17 22:16:24 -07:00
Kurt
da6f880c16 Add Shiny Leaf editing
Closes #1236
pk4/bk4 only, obviously

side note, using static events is no-no, designer auto-removed them.
just manually reapply (as well to others that used it)
2017-06-17 21:49:14 -07:00
Kurt
13d3e515f0 Flag save as edited when unlocking friend safari
Closes #1241
2017-06-17 19:27:35 -07:00
Kurt
258f660a90 Misc fixes
Immediately hide legality indication if hax
invert blank sav check (refactoring oops)
Closes #1238
2017-06-17 19:20:37 -07:00
Kurt
3f38b123a3 Refactoring
mostly renaming things, includes a little bit of added sugar and
splitting methods to simplify the codebase.

all methods are now PascalCase
2017-06-17 18:37:19 -07:00
Kurt
5d50f58d86 Add pk1 catchrate refresher to current species
Label_Species already has a click event for showdown sets with a
modifierkey; add a default behavior which checks for pk1 and if so, sets
the catch rate to the current species.

Users shouldn't have to look up catch rate values or be responsible for
editing them; they are currently handled by the pk1 object. Setting a
species ID checks if the catch rate is within the species lineage, and
only updates it to the current species if the rate doesn't match any.
With this change, the user can force the catchrate to match the current
species (then change back to the evo form) instead of having to change
the species to a separate lineage that does not have the current (not
displayed) catch rate value.

Closes #1235
2017-06-16 18:56:17 -07:00
Kurt
8f833d8171 Simplify max item count give/modify
999 is true max, set suggested give count to -4 from max (or 1).
Apply giveAll's max value restriction to modifyAll
Prevent giveall/modifyall for PCItems/FreeSpace due to mixed item types.

Closes #1228
Closes #1227
2017-06-14 18:43:28 -07:00
Kurt
86720b547b Add <=gen3 pouch giveall
Closes #1225
Resizes array if too long, allows random set or standard (sequential)
set.
2017-06-14 08:42:49 -07:00