Kurt
d60731940c
fix pokegear saving
...
oops 'sav' is Original save file
2019-09-02 21:51:51 -07:00
Kurt
4b8082be23
Add Pokegear number editing (hgss)
...
Closes #2379
2019-09-02 21:24:49 -07:00
Kurt
61bee67908
Misc fixes
...
revert HoF reads as they are stored outside the general/storage blocks
2019-09-02 20:25:38 -07:00
Kurt
b81a1e1e29
Refactoring
...
Increase abstraction for arbitrary slot get/set operations, and fracture
SAV4 behavior for each game type.
Adds: Undo/Redo of party slot changes
Fixes: Fixed Gen5 daycare slot 2 reading, and EXP reading
Fixes: Some slot color glitchiness
Fixed: Box layout editor now hides the flag label if no flags are
present
Fixed: Gen7 box flags are now shown (unknown purpose lol)
Changed: savefile objects are generally smaller (removed a few shared
offset fields)
2019-09-02 19:30:58 -07:00
Kurt
bf6c25eca7
Break up SlotChangeManager logic
...
A little bit cleaner when the logic is separated
Keep an abstraction of BoxEdit to cache the current box contents.
Already fetched to show sprites; any future fetches (for preview text /
hover sprite) can reuse the already fetched pkm data.
Should probably rewrite this stuff completely, but effort better spent
elsewhere
2019-08-20 19:50:28 -07:00
Kurt
39f5500d8a
Show summary tooltip on mouse enter
...
Thanks SadisticMystic for the suggestion!
2019-08-14 22:51:49 -07:00
Kurt
a608e0b252
Minor clean
...
Remove some unnecessary properties from SaveFile
Enumerate checksum flag results for GC memcard checking
Remove unnecessary checks on savefile type
Add some documentation
Decapitalize some method parameters
2019-07-14 15:06:45 -07:00
Kurt
c7eecf5976
Extract summary object to core
2019-07-13 17:43:05 -07:00
Kurt
c64ff5dd76
Fix sav5 behavior
...
Closes #2356 ty @Ammako
2019-07-10 00:19:59 -07:00
Kurt
f2ac29ff4e
Relocate some logic
...
slightly reduces savefile.cs footprint
2019-07-05 22:02:29 -07:00
Kurt
9a61f0de0f
Minor relocation of logic
...
and the gradual shift to full-oop continues
2019-07-05 21:39:47 -07:00
Kurt
aa94c70df2
Hide gen6 dex logic behind zukan class
...
Same as prior commit for gen5 & gen7
2019-07-05 18:04:36 -07:00
Kurt
adbb3e842a
Hide gen7 dex logic behind zukan class
...
Same as prior commit for gen5
2019-07-05 17:05:42 -07:00
Kurt
79a9269fbe
Hide gen5 dex logic in Zukan class
...
Didn't change any of the bulk modifications, but the data get/set is now
done via the Zukan object rather than raw data manipulation
2019-07-05 16:21:53 -07:00
Kurt
01fee15c1f
Show tooltip for inventory tabs
...
quality of life feature
2019-07-05 13:49:30 -07:00
Kurt
7f186048fb
Really fix dex lang flag offset style
...
c345688f6d
base(x) -> base(x - y) resulted in incorrect offsets for LGPE. Great.
Just make PokeDexLanguageFlags a shift offset instead of absolute;
update all usages.
Closes #2348
2019-07-05 12:16:09 -07:00
pokecal
6b3d6999d1
update MailBoxEditor ( #2344 )
...
fixed FRLG offset, etc.
2019-07-04 21:48:18 -07:00
BlackShark
e911363399
added missing GameVersion check ( #2340 )
2019-06-26 07:11:19 -07:00
Kurt
f35a0d57a8
Fix revised alert message
...
Closes #2333
2019-06-24 20:50:21 -07:00
Kurt
7104f42f56
Trycatch savefile load, handle bad backups
2019-06-22 18:45:37 -07:00
Kurt
cbd039b18c
Extract datasource filtered lists to object
...
GameInfo has been the storage for the current Game Language environment
When using GameInfo, only one environment is tracked at a time, which is
initialized by the PKM editor (items, moves). Rework things to allow
multiple filtered sources to exist, and keep the filtering logic in
PKHeX.Core for reuse in other programs... ;)
2019-06-22 10:50:32 -07:00
Kurt
32df9f2c39
Update trainer name on import
...
repop all lul, works
2019-06-20 21:38:06 -07:00
Kurt
e0de0780c7
Add or/as secret base i/o
...
extracted some logic for oop, works well enough as is without redoing
everything
2019-06-20 21:30:35 -07:00
Kurt
523c36d982
Add qr parse util
...
used in pkhex.mobile, might as well migrate some logic into core
I'd rather not untangle the decode-api response parsing to use QRUtil.
2019-06-18 20:10:01 -07:00
Kurt
55d486af31
Extract event block diff logic
2019-06-18 18:10:48 -07:00
Kurt
3083b04223
Add all combinations of gameversions
...
closes #2327
recent refactorings resulted in B/W being returned instead of BW
2019-06-17 20:55:36 -07:00
Kurt
455ab32722
Retain override version on clone
...
Also hide the pika friend label when YW features hidden #2283
2019-06-09 13:48:51 -07:00
Kurt
1b028198ad
Split gen5-7 saves with inheritance ( #2319 )
...
refer to pull request comments for summary
2019-06-08 19:56:11 -07:00
Kurt
de774ed131
readonly ComboItem
...
create once, never modified after
2019-06-01 19:12:41 -07:00
Kurt
8d781fd167
Simplify sorting to remove linq usage
...
create custom comparer to do the work
reorder some parameters
simplify gb hm set (All and FindIndex is duplicate work)
only usages of linq remaining are for the bulk action Where filtering
(ok)
2019-05-28 22:55:41 -07:00
Matt
44a257b832
Make Poffin names match in-game text ( #2306 )
2019-05-14 11:21:34 -07:00
Kurt
091b9e2281
Add g4 poffin editor (misc edits)
...
Thanks @sora10pls for docs!
https://pastebin.com/jNeVJQi0
2019-05-13 22:56:45 -07:00
Kurt
d4d26fd9b3
Fix eventflag data set to sav
...
cause:
300ef4d60a
Closes : #2301
2019-05-12 13:23:27 -07:00
Kurt
300ef4d60a
Minor simplifications
...
Use "SetData" method to automatically apply the Edited flag
Use appropriate method for CopyTo
simplify expressions a tad
2019-04-29 17:21:19 -07:00
Kurt
a220970124
Fix wallpaper resource display fetch
...
CB_BG is the background selection, not the box.
https://twitter.com/yajegamer/status/1120717928322748420
2019-04-23 18:37:51 -07:00
Kurt
5da9051431
More accurate sound option names
...
Deviating from official option names, reflect the end result instead.
clarity > accuracy
#2283
2019-04-15 15:46:03 -07:00
Kurt
286df71c5a
Hide sound type for nonyellow gen1 saves
...
Closes #2283
Fix label name & update translation file for them
2019-04-15 15:38:49 -07:00
Kurt
2f2512b09c
Reduce allocations for checking file write time
...
FileInfo inherits from FileSystemInfo, which initializes a bunch of
strings that we don't need
this isn't a great optimization, just a fun exercise finding a quicker
approach to get these values
2019-04-05 18:45:59 -07:00
Kurt
bb8cf5d3d8
Simplify get/decrypt pkm access
2019-03-29 19:43:33 -07:00
Kurt
796e836811
Add Settings reset button
...
force closes program to prevent main form closing event from saving
settings
Closes #2272
2019-03-23 19:05:35 -07:00
Kurt
82a40cb965
Misc updates
...
add comboitem list to string[]
add regions list as cached comboitem list
lock resource cache on fetch
extract alola time list generating
2019-03-18 21:34:21 -07:00
Kurt
8a08d32dff
Simplify pkm constructors
...
remove Identifier param. 99% of the time, identifier is not provided,
resulting in a useless call
end result:
provide 'create new' and 'create from' constructors
2019-03-16 18:41:56 -07:00
Kurt
13a6d16cb9
Relocate checksum/dexform logic
2019-03-16 12:01:21 -07:00
Kurt
7734e81adf
Remove unnecessary bytesperchar check
...
current.Length will always start right after the terminator data;
shifting further is unnecessary.
#2261
2019-03-07 16:58:19 -08:00
Kurt
61bf82e2bd
Add gs event flags
...
https://projectpokemon.org/home/forums/topic/49717-pkhex-flag-editing/?tab=comments#comment-240804
via pret repo; looks like 2000 event flags, and 0x100 event
consts/work-vals (byte)
add more rebattle toggles
2019-03-05 23:06:05 -08:00
Kurt
a4bf6335a9
Unclamp max date
...
values above 2100, whatever, let them get saved however they end up
2019-03-05 16:33:54 -08:00
Kurt
8d49400b07
Change SecondsTo* from int to uint
...
having a year > 2050 can result in a 32bit seconds value (top bit set);
instead of being negative, keep it as a 32bit number.
2019-03-05 15:55:26 -08:00
Kurt
d792c0d3a0
use u/L
...
use 'u' to denote uint values, so that less IL ops are required
~(21->17) in the case of IVs
no functional change, just a fun exercise looking at generated IL and
finding ways to use less ops
2019-02-23 15:36:26 -08:00
Kurt
5b29e71954
Misc tweaks
...
no functional change, just rewrite some logic for better flow
fix subform popup count restriction (OwnedForms requires forms to be
added/removed manually; it doesn't automatically update)
sanitize box names when dumping boxes with separate folders (and bad box
names)
2019-02-23 14:58:48 -08:00
Kurt
ca51edbdcf
Change sav.LoadBoxes to return int
...
make MysteryGift specific method flexible so that any IEncounterable
enumerable can be passed.
2019-02-23 14:37:06 -08:00
Kurt
a339cc9289
Extract pouch manipulation logic
...
add overloads for API syntactic sugar
make ItemConverter internal again
2019-02-22 22:48:34 -08:00
Kurt
399afd49a6
Misc rewrite
...
Remove a bunch of duplicate accessing
use dictionary to fetch grid rather than searching control names
break up larger methods to reduce complexity
probably going to rewrite the giveAll/removeAll actions to do work
within the pouch, then reload the UI with the final pouch
2019-02-22 18:43:15 -08:00
Kurt
05ba7c519c
Misc simplifications
...
removed duplicate sorting GUI logic
extract grid fetch method
2019-02-21 23:17:50 -08:00
Kurt
df94afa711
Misc updates
...
extract some enums to core, use Enum.GetNames to do string fetch
make stamp listbox taller
clean up Display*ID setters
2019-02-21 21:54:41 -08:00
Kurt
0156958f1a
Add fame hh:mm:ss
...
https://projectpokemon.org/home/forums/topic/49296-number-of-trades-on-trainer-card/?do=findComment&comment=240455
2019-02-21 15:20:26 -08:00
Kurt
40963c012a
Add sav3 BP Earned editing
...
misc editor, first tab (main)
2019-02-19 20:59:47 -08:00
Kurt
fa4318ae2f
Add gen3 record editing
...
in misc edits window
2019-02-19 20:46:58 -08:00
Kurt
ffc229ce00
Fix event combobox binding
2019-02-19 14:19:09 -08:00
Kurt
7c3e5aa83c
Make RandomGender a method instead of property
...
See pkNX for similar change; the functionality is really *method*
2019-02-17 22:13:40 -08:00
Kurt
a8c7307d4b
Update shortcuts
...
ctrl-n used to be settings, but encounter database now uses it
add ctrl-w to close settings editor (undocumented)
document more shortcuts
2019-02-17 15:08:14 -08:00
Kurt
ddeef079eb
Reorganize settings editor to show color settings
2019-02-17 14:52:04 -08:00
Kurt
2bb0ea0b38
Fix apply/clear trash
...
Closes #2261
2019-02-14 18:12:50 -08:00
Kurt
6f76a3b1ae
Add setting to ignore "Legal!" popup
...
just plays sound
change 'bad field data' sound to Hand
2019-02-12 20:17:09 -08:00
Kurt
e82b4de657
Misc clean
...
replace Friendship control click to match shortcut description (used to
do nothing)
Remove some duplicate translation strings
fix gameselect string formatting
apparently systemsounds changed in a recent win10 update, Question is
now silent?? Exclamation is now the same as Asterisk (same as Beep?) Use
hand instead of Exclamation.
only use asterisk for notifications
2019-02-11 22:39:12 -08:00
Kurt
309633a214
Replace some trycatch with tryparse
2019-02-11 22:04:47 -08:00
Kurt
182348526c
Add display TID/SID get/set
2019-02-10 10:31:20 -08:00
Kurt
dc5cdc34d7
Remove FieldsInitialized and rename check method
2019-02-09 17:07:44 -08:00
Kurt
59b41937e1
Misc variable name changes
...
readability++
2019-02-06 23:28:02 -08:00
Kurt
29253ed636
More cleaning
2019-02-03 20:28:03 -08:00
Kurt
893f98d667
Misc clarity
...
no functional change
make batch editor prefix list readonly
2019-02-03 10:28:33 -08:00
Kurt
f481404503
Misc clean
2019-02-02 10:19:41 -08:00
Kurt
6ed9f979de
Continued refactoring
...
removing null results as indicators of no data (c# 8 sooooon)
2019-02-01 23:26:43 -08:00
Kurt
aa022fad40
Misc refactoring
...
remove some null usages, return an empty array instead
reduce as arg
2019-02-01 23:08:03 -08:00
Kurt
3b8dc42f1a
Allow hidden settings to be displayed
...
hold control
2019-01-27 21:57:26 -08:00
PMArkive
095ec241ae
Column sorting changes for ZygardeCell editor ( #2249 )
...
Now you can sort the Available stickers to the top.
Also a change to have the "Ref" sort integers instead of strings.
Now it doesn't go 1\n11\n etc
2019-01-25 16:51:31 -08:00
Kurt
8652677a79
Misc tweaks
...
showdownset: contains char instead of string
gameinfo: static readonly array instead of redefining new on update
legality: order of operation / value reuse / simplification / comments
pkx: compare char instead of single character string
header/footer: move assignment into method as an out instead of ref
2019-01-20 21:55:28 -08:00
Kurt
9fd6d86b1d
Merge game selection alert & prompt to 1 popup
...
https://projectpokemon.org/home/forums/topic/49080-multiple-exceptions-when-selecting-gen-3-blank-saves/
ty BlackShark :)
2019-01-15 22:26:45 -08:00
Kurt
f89452bd41
Disallow GO blank save selection
2019-01-14 16:25:54 -08:00
Kurt
d62a69a6a7
Misc fixes
...
Provide gen1/2 gb only version origin fetch for personal/moves ty
shadowmario (i assume this fixes things)
make listbox use ingame font for special characters
2f6e30bb3c (r31924945)
ty @pmarkive
2019-01-13 18:12:31 -08:00
Kurt
2f6e30bb3c
Font update
...
Closes #2242 , adds OT font without cloning
add font to secret base editor, fix ability combobox binding --
apparently nobody has used this editor since it was changed back in July
lol
2019-01-13 14:43:04 -08:00
Kurt
154f122369
Allow changing of default savefile type
...
kinda have to restrict these to 'valid' choices; should be enough of a
selection->result to be adequate for changing version
restart the program after changing the setting; won't take effect until
rebooted.
2019-01-05 15:42:20 -08:00
Kurt
e028214eab
Update dex form handling for dex4
...
still not sure if it's entirely right, but at least there's no more
exceptions
https://projectpokemon.org/home/forums/topic/48288-pokedex-error-gen-4/
2019-01-05 12:37:41 -08:00
Kurt
1b50e97934
Remove cgse fixed path
...
can restore behavior by adding it as a custom user path; cgse isn't very
prevalent nowadays
now the only registry key checks are for checking net framework version
2019-01-02 18:18:24 -08:00
Kurt
473c4adaa9
Fix encounter browser startup
2018-12-31 23:39:08 -08:00
Kurt
e7f7e3dc3f
Update encounter search
...
Add version specific search or all compatible
Add encounter type checkboxes (others are ignored)
Only return distinct encounters (by reference)
Refresh Checksum from generated iencounterable->pk before converting (to
eventually be fixed in iencounterable rewrite maybe)
Closes #2219
2018-12-30 17:33:31 -08:00
Kurt
6140c973ae
Account for wr7 deviance from gen7 format extension
2018-12-29 22:10:33 -08:00
Kurt
ce8c4d1ccd
Allow rows to have non-multiples of 6
...
Say the count of gifts isn't a multiple of 6, it'd crash
just so happened that all prior games were mults of 6 lol
2018-12-29 22:00:17 -08:00
Kurt
6f22599baf
Prevent slot overwriting on bulk import
...
https://projectpokemon.org/home/forums/topic/48912-how-to-batch-import-pokemon-boxes-without-erasing-existing-pokemon/
2018-12-28 17:58:13 -08:00
Kurt
a133fcd498
Misc fixes
...
Fix encounter browser fetching for gen1/2
fix changing to gen1 savefile (extrabytes)
2018-12-27 21:28:47 -08:00
Kurt
423afa4518
Fix boxviewer not being initialized
...
2d774ac7cc
had removed the Reset() call from the Setup method; call afterwards.
Thanks RoC!
2018-12-26 13:06:58 -08:00
Kurt
d7a501c168
Relocate some logic to interfaces
2018-12-18 17:15:35 -08:00
Kurt
efb9b7eba2
Misc cleanup
...
removes clickonce logic/reference
2018-12-10 20:32:08 -08:00
Kurt
4c1232855f
Add getstring method with non-sav data
2018-12-04 22:00:57 -08:00
Kurt
0d8789e939
Show altform in encounter browser
2018-12-02 10:44:06 -08:00
Kurt
8e3e218d54
Update translations
2018-11-30 17:09:40 -08:00
Kurt
add025798f
update control names
2018-11-30 17:05:13 -08:00
Kurt
f6508bec5b
Add dex size record editing via pokedex editor
...
Closes #2186
2018-11-29 21:40:20 -08:00
Kurt
76a2e4f527
Add AltForm parameter to exp/level fetch
...
Starter Pikachu & Eevee have different growth rates than their base
forms (seriously WHY?)
remove old api surface in PKX as a breaking change as adding the
parameter is necessary.
2018-11-26 16:55:16 -08:00
Kurt
ab4c3fc7ac
Add go park slot delete (&all)
...
Closes #2179
2018-11-23 12:15:25 -08:00
Kurt
720be075ec
Add go park bulk import from folder
...
Closes #2177
2018-11-23 11:01:36 -08:00
Kurt
f5c5145cbf
Add mass export, drag import, fix onload
...
select folder to export
drag import to current slot
display slot 0 on form load
2018-11-15 21:31:19 -08:00
Kurt
546d4b69e2
Add individual go pkm dumping
...
.gp1 (go park entity for 1st gen Lets Go games)
2018-11-15 17:38:04 -08:00
Kurt
6a0a6aa82a
Add methods for 7b quirks
...
nidoran m/f when sanitized with the old way show the gender symbols as
'?'
2018-11-14 22:51:53 -08:00
Kurt
1feecef874
Add go park summarizer
2018-11-14 22:02:01 -08:00
Kurt
7abe0c8a9e
Add candy pouch type
...
reusing free space icon hides the give all button; just add another
sprite.
2018-11-13 20:46:48 -08:00
Kurt
1f985d8112
Remove unnecessary/incorrect flags
...
copypaste from sm lol uops
2018-11-13 20:46:03 -08:00
Kurt
2048bf0a06
Add dex/trainer/event editors for gg
2018-11-13 19:22:29 -08:00
Kurt
51d87dc6e0
Hide freespace for gg
2018-11-13 19:22:05 -08:00
Kurt
8185fb63b0
Add WIP IEncounterable browser
...
will eventually be hotkeyed to CTRL-N
2018-11-10 20:23:21 -08:00
Kurt
ebd1155bfc
Fix egg search
2018-11-09 16:50:39 -08:00
Kurt
359a529870
Misc updates
...
Move some logic around, fix style warnings
2018-10-27 08:53:09 -07:00
Kurt
22b77892ec
Update db pkmfile load filtering
...
Closes #2146
previously, it would only accept pk*, now that there are multiple
formats, just detect via any.
2018-10-21 09:21:46 -05:00
Kurt
f507ab7081
Misc parse settings reorg
...
makes it more centralized for defining parsing settings, maybe can have
flags to change severity of certain preferential checks
2018-10-05 19:58:30 -07:00
Kurt
827d7f8fb3
Misc tweaks
...
repoint to contains
2018-09-29 13:08:53 -07:00
Kurt
7b993d731a
Hide pika friendship for non-yellow gen1 saves
...
Closes #2130
2018-09-29 12:23:33 -07:00
Kurt
90f1d0cb09
Misc cleanup
2018-09-29 12:22:13 -07:00
Kurt
40a0206a5d
Misc style updates
...
whitespace / brackets
2018-09-26 18:56:29 -07:00
Kurt
e03e6cb2ff
Fix entree species change
...
thanks KR for finding
2018-09-09 15:36:58 -07:00
Kurt
189fa5f7b3
Add button to give all seals + illegal ones
...
#2112
2018-09-04 15:26:16 -07:00
Kurt
f5b09c2bea
Add key item sprite for mysterygift display
...
closes #2110
2018-09-03 14:23:27 -07:00
Kurt
53216333e6
Misc updates
...
extract final pkm manipulation logic from pkm editor
add xmldoc to boxmanipulator, add utility class for enum->manip fetching
fix xmldoc referencing removed enum member
relocate boxmanip overview logic to utility class
move SAVPaths file pointer to Main for reuse #2109 , will add to
autodetect in a later commit
open/save dialog with extra extensions: ignore ones already present
2018-09-03 10:30:35 -07:00
Kurt
cc20bb38d7
misc updates
...
use arrays instead of list when capacity known
use enums for const decoration
remove unnecessary aliases
2018-09-01 19:55:08 -07:00
Kurt
debccff8b7
Flag illegal sprites in database
...
Closes #2108 , uses overload
2018-09-01 15:04:56 -07:00
Kurt
538e90dd85
hide bp for rs saves
...
https://projectpokemon.org/home/forums/topic/47291-bug-with-battle-points-and-rubysapphire-not-emerald/
2018-08-29 07:33:42 -07:00
Kurt
f74c1e321a
no mo go to yo
...
pull goto default into 'when' so other cases continue to default
this is a goto free codebase ( ͡° ͜ʖ ͡°)
2018-08-27 20:48:57 -07:00
Kurt
daf9364fb2
Alphebetize settings
...
probably want to switch to a propertygrid later.
2018-08-19 21:25:21 -07:00
Matt
8c64f378c1
Add Mega Rayquaza unlock to GUI ( #2098 )
...
* Add Mega Rayquaza unlock to GUI
2018-08-19 08:24:59 -07:00
Kurt
0090aaa403
Remove goto
...
only 'goto' usages are just switch case jumps
2018-08-17 16:27:29 -07:00
Kurt
d7f39ea343
Extract pkm searching to separate classes
...
search logic can now be reused by core projects
adds option to provide extra filters run at the end (prior to clone
check)
2018-08-16 20:06:40 -07:00
Kurt
10894f5341
Add alternate clone hash method for Semi clones
...
https://projectpokemon.org/home/forums/topic/47048-suggestion-being-able-to-check-pokemon-with-exact-pid-semi-clones/
hold control when searching (kinda clunky solution) to instead search by
PID clones
2018-08-16 14:38:12 -07:00
Kurt
92d2d48e95
Skip detecting saves twice
...
Paths already has the regular backup locations + more, don't re-detect
later
Closes #2093
2018-08-14 21:04:22 -07:00
Kurt
af87752475
Reference underlying control visibility
...
closes #2092
2018-08-14 19:39:14 -07:00
Kurt
10f050eb18
Update translations with new hide savdetail setting
2018-08-13 19:40:00 -07:00
Kurt
70a6cd9421
Remove untranslatable content
...
sav6 recently added trainer appearance editor, prior commits removed pt
translation (only official ingame translations)
2018-08-13 19:24:49 -07:00
Kurt
1c718e641e
Prevent box scrolling if contextmenu is open
2018-08-12 11:01:21 -07:00
Kurt
d3ec969187
Style updates
...
split pcd/pgt
add more xmldoc
2018-08-09 21:53:39 -07:00
Kurt
6b62dd29ee
Update xy fashion edits
...
different for each gender
2018-08-08 21:27:14 -07:00
Kurt
98f21a12dd
Relocate gen6 trainer stat records to core
...
use trainerstat editor control in gen6 editor
fill in some details from the disassembly via setrecord usages
still slightly fuzzy on some:
fureai (based on usum idb name, similar logic)
soaring sky counts
looks like there's some other usages of the fields which were outside
the stat range, throwing an exception when loading to NumericUpDown,
added bypass logic
Thanks Holla!
2018-08-06 21:27:31 -07:00
Kurt
48a61a00a2
Relocate record stat id's to core
...
can potentially add localization by changing the method of fetching
2018-08-06 16:17:32 -07:00
Kurt
c3136187de
Style updates
2018-08-04 10:06:06 -07:00
Kurt
1486b7f14a
Misc style & minor tweaks
...
Remove move combobox flicker hack (no longer necessary)
Add more Array.Empty usages
cache mysterygift sizes
seal some classes
no functionality changes
2018-08-02 20:11:42 -07:00
Kurt
f4bfdb8311
Remove unnecessary empty array allocations
...
yay net 4.6
read more: http://justinvp.com/2015/07/20/array-empty/
2018-08-01 18:30:51 -07:00
Kurt
3fd21db51e
Style & function extracting
2018-07-29 16:39:15 -07:00
Kurt
5155e4d29b
Speed up Folder List entry adding
...
Don't autosize columns on each row addition
About 15 rows appear; resize on row 0, 7, and 14, and once more when
finished.
was O(n), now is O(min(n,3)+1)
2018-07-27 20:41:49 -07:00
Kurt
77bd91397a
Update form sizing / es translations
...
use some close synonyms (Reiniciar -> Borrar)
omit some words (potential / training) to keep layout compact
capitalize Equipado to match main window
Closes #2080
2018-07-27 17:38:23 -07:00
Kurt
9551d4e707
Relocate logic to core
...
probable/possible lgpe uses similar dex stuff, so best I totally
understand it (assuming quirks will be present)
2018-07-26 18:01:16 -07:00
ajtudela
1c05001fb7
Update spanish translations ( #2077 )
...
* Update spanish translations
2018-07-26 07:06:14 -07:00
Kurt
91f39d74db
Add box scrolling
...
https://projectpokemon.org/home/forums/topic/46370-bug-cant-scroll-between-boxes/
2018-07-25 19:29:41 -07:00
Kurt
63242cc24d
Reorder open folder logic
...
Close() still finished executing the method
Closes #2076
2018-07-25 07:26:29 -07:00
Kurt
8cb82560f6
sync unsaved
...
this closes #2068 , not the prior commit
2018-07-23 19:27:00 -07:00
Kurt
d685fec327
Sanity check listbox formes
...
SM does not have dex flags for totem forms, but pkhex now provides them
in the form dropdown
Closes #2068 thanks @iiippppk !
2018-07-23 19:15:54 -07:00
Kurt
1e932e14e9
Add custom path popup button
...
autofills with current contents if none found
2018-07-22 14:27:48 -07:00
Kurt
0c5c9bc33c
Misc clean / xmldoc updates
...
remove unused label in QR (use window Font)
escape & -> & for xmldoc proper style
2018-07-21 19:20:11 -07:00
Kurt
1c49b0681d
Extract dex logic
2018-07-21 11:46:38 -07:00
Kurt
63b9b72a49
Relocate save detection to core
...
Environment.GetLogicalDrives is not present in net standard 1.3;
relocate code and add it as a parameter
2018-07-21 10:23:15 -07:00
Kurt
c7175fbdb4
Misc reorg
...
bye bye SAVUtil and PKMUtil
2018-07-20 21:32:33 -07:00
Kurt
33637836f2
Ignore detected saves when displaying backups
2018-07-18 21:26:18 -07:00
Kurt
e5d95bf178
Display autodetected path location better
...
Autodetect location not stored in a button path will show up as "???";
check the typical homebrew autodetect paths, then display the parent
folder
eg, Path.Combine(root, "3ds", "Checkpoint", "saves");
shave off "saves" to return X:\3ds\Checkpoint
add range checks to label translation
2018-07-18 19:32:57 -07:00
Kurt
01c4ca348f
Allow FolderList to be translated
2018-07-17 21:02:01 -07:00
Kurt
170390b49d
Add datagrid filtering for folderlist view
...
can be a little silly if the tab hasn't been viewed yet, but works fine
2018-07-17 20:52:08 -07:00
Kurt
99c790a4b0
Update File name/path/folder fields
...
original file path is not saved with the two listed properties, add
FileFolder and relcoate existing FilePath functions to that field
move some GetVariantSAV usages to the string method instead of byte[]
2018-07-16 21:00:43 -07:00
Kurt
87056aaf7c
Increase save list population speed
2018-07-16 15:31:23 -07:00
Kurt
f51ac7d1f3
Update translations
...
Internal repositioning to match source
(auto generated changes)
2018-07-16 15:12:40 -07:00
Kurt
921374c8eb
Allow resize, add filename indication
2018-07-15 21:28:27 -07:00
Kurt
a81c28f114
Upgrade FolderList to show recent/backups
...
sortable grid like the ReportGrid for pkm, can open/browse individual
files
2018-07-15 17:48:31 -07:00
Kurt
f3225d1c47
Extract pkm preview to individual files
2018-07-15 11:12:02 -07:00
Kurt
b749db10d8
Null check property value
...
EggMetDate, if none set, returns null.
https://projectpokemon.org/home/forums/topic/46265-batch-editor-bug-systemnullreferenceexception/
2018-07-15 08:46:31 -07:00
Kurt
46ece28f4c
Add vc/gen1-2 search option
...
refactor out some searchable methods
2018-07-14 22:18:24 -07:00
Kurt
6b7ba49cba
Remove unnecessary logic
...
gamestrings: call but not value used
text.cs: use gamestrings method for auto-filtered, now removes korean in
Gen3 context
2018-07-14 16:53:14 -07:00
Kurt
77c5d13034
Simplify memory ui handling
...
abstract away the details to another class
2018-07-14 16:32:06 -07:00
Kurt
4d73fa70d8
Simplify binding to ComboItem logic
...
could probably look into better binding but meh
2018-07-14 16:00:28 -07:00
Kurt
8c2b74c149
Refactoring
...
max IVs use flawless method directly with 6 IVs specified
move color blend/stat calc to ImageUtil
move potential string to commonedits
expose color properties for pkmeditor
don't constantly create/dispose brushes for drawing legal moves
2018-07-14 15:08:14 -07:00
Kurt
625a77589b
Extract geolocation logic to interface
...
mixins would be nice but I guess extensions cover this
2018-07-14 10:34:34 -07:00
Kurt
94ad351979
Update translation files
...
new release soon
-opower6 now fully editable
-box export to showdownset added
2018-07-08 18:25:43 -07:00
Kurt
4dcac24f34
Add roamer3 active/level editing
2018-07-07 21:31:07 -07:00
Kurt
816c40429b
Reuse language data source for trainer editors
...
provides nice descriptions rather than 3 character codes
2018-07-07 17:02:17 -07:00
Kurt
d4c1093dd9
Add RS badge flags
...
make logic generic
2018-07-07 17:01:47 -07:00
Kurt
990eb73f8a
Misc simplifications
...
recordmax is simplified
2018-07-07 15:38:11 -07:00
Kurt
e46aed4b0b
Relocate bean logic to core
2018-07-07 15:37:47 -07:00
Kurt
ca16f08e36
Use new trainerstat control
...
misc cleanup/reorg inside control
2018-07-07 12:22:30 -07:00
Kurt
e915cd170b
Extract trainer stat to interface / usercontrol
2018-07-07 11:48:03 -07:00
Kurt
2e02ec9719
Refactoring
...
Move some logic out of saveditor/subs
2018-07-07 11:20:05 -07:00
Kurt
0c2d302997
Show tid7/sid7 for gen7+ origin
...
https://projectpokemon.org/home/forums/topic/46050-box-data-report-doesnt-display-correct-gen-7-tids/
2018-07-05 16:57:29 -07:00
Kurt
397de97f3c
Remove excessive references to Util.Rand32()
...
all usages besides fetching a 32bit random value should use rand.next
remove unnecessary do-while loop for calculating random EVs (always
returns 510 in total)
2018-07-04 11:30:43 -07:00
Kurt
9f8edc89bf
Refactoring
...
put some string[] behind IReadOnlyList to prevent any consumer from
modifying it
2018-06-30 09:59:48 -07:00
Kurt
346c401727
Rework initial evochain trim
...
push unsaved IVTotal/EVTotal stuff from prior commit
rework exposed types for evo chain
initial trim now uses much less linq
can probably redo the get initial chain to provide a species to break
on...
2018-06-22 17:59:02 -07:00
Kurt
1d24e459f9
Fix box data report out of range gen1/2
...
Closes #1992 , val was -1
2018-06-11 06:36:43 -07:00
Kurt
c6765fd26b
Remove ORAS arg
...
...
2018-06-10 14:07:36 -07:00
Kurt
19cb2cda2e
Remove MAX giveRegular for ORAS
...
level 3 is the legitimate max
2018-06-10 12:27:53 -07:00
Kurt
75f4318335
Split S/MAX from base 1-3 levels
...
ORAS can unlock MAX & Full Recovery flags, add special handling for that
2018-06-10 11:28:20 -07:00
Kurt
26f45d44d0
Rework OPower editor
...
https://projectpokemon.org/home/forums/topic/45683-pkhex-made-odd-number-of-zygarde-cells-usm/?do=findComment&comment=232476
Thanks @sora10pls for documenting what each flag does
2018-06-09 21:04:34 -07:00
Kurt
7ec7ca312d
Don't increment cell count for usum on giveall
...
show cell total for usum
2018-06-09 10:07:35 -07:00
Kurt
ae3b6a7fa1
Simplify IContestStats usage
...
remove new[] creating for checking if any contest stats exist
(HasContestStats)
2018-06-02 21:19:03 -07:00
Kurt
1d9795f774
Fix batch modify filter bool
...
rename methods for clarity
Closes #1977
2018-05-31 19:59:05 -07:00
Kurt
01c36bb3ad
Update control anchoring & form minsize
2018-05-28 16:40:36 -07:00
Kurt
5475da05c3
entree forest updates
...
clamp species list based on savefile
fix form control index set
remove slot from list (avoid duplicates, there's 530 slots and both
games have more than that available).
Closes #1974
2018-05-28 12:49:41 -07:00
Kurt
4b8cb9b8fb
Add entree forest editor & randomizer
...
ezpz
(clear trailing spaces from entree forest comments)
2018-05-28 08:26:52 -07:00
Kurt
abe3567174
Update db search
...
search caused cross thread exception due to ConfigurAwait not returning
context
finish await -> update controls with after restoring context.
don't rebox results 2x lmao; keep results as list due to other Remove
operations being present in other events.
2018-05-24 21:22:44 -07:00
Kurt
3b635be77f
Flag nonparsed
...
removed parsedvalid/invalid, unnecessary I guess
2018-05-22 18:57:39 -07:00
Kurt
05e3b3c8c3
Add switch save detection & folder browser link
...
use checkpoint's path
hide cgse paths if they don't exist
( ͡° ͜ʖ ͡°)
2018-05-21 18:20:08 -07:00
Kurt
6004886a56
create new binding for memory arg var
...
https://projectpokemon.org/home/forums/topic/45331-textvar/
possibly shares a reference thus causing it to be shared.
Thanks Davil!
2018-05-21 15:43:07 -07:00
Kurt
b1478043ba
Add range check
...
getting sloppy not checking myself
2018-05-20 20:11:21 -07:00
Kurt
bbe6762d24
Misc fixes
...
Off by 1 for MemArgType
div/0 for no instructions
Thanks Davil!
https://projectpokemon.org/home/forums/topic/45324-menories-error/
2018-05-20 20:05:27 -07:00
Kurt
30dc87df7e
Misc ui fixes
...
move distinct filter to reflectutil as it is spitting out
inherited(overriden) property names after the current class' property
name.
remove original (default) memory strings; had removed Items.Clear()
earlier (why would I need to clear if there was nothing there?) but
there was something there needing to be cleared. Remove the useless
initialization to fix that :)
Thanks Davil!
https://projectpokemon.org/home/forums/topic/45321-distsupertrain/
2018-05-20 07:46:59 -07:00
Kurt
ca14b43b62
Relocate memory specific data to own file
...
allows easier handling for memory interactions
2018-05-19 10:04:07 -07:00
Kurt
be0f864b42
Relocate memory datasource to core
2018-05-19 08:30:36 -07:00
Kurt
8cf70770cf
clean up batch editor
...
refactor some logic to make it easier to reuse
add some xmldoc
2018-05-18 19:19:15 -07:00
Kurt
2a877bfb9e
Better empty-base handling
...
Closes #1952
2018-05-18 16:01:17 -07:00
Kurt
d772a82953
Move batch editor logic to core
...
previous hurdle a year ago was propertyinfo fetching not looking at the
base class's properties; dig deeper for all properties to mimic existing
code for netframework
end result is batch editing now possible without gui
2018-05-17 22:43:07 -07:00
Kurt
e818a587ff
Split Boxes and Party in batch editor
...
Closes #1948
2018-05-16 16:51:38 -07:00
Kurt
4139299f00
Iterate to last poketch item
...
i-1 => need to use <=
2018-05-13 20:49:27 -07:00
Kurt
3ee6070b98
Fix poketch write
...
1123c24b0c
had addressed the loading, however, it did not address the saving
update pkx to not create a new array every time IsPKM is called
(possibly a lot)
2018-05-13 20:35:09 -07:00
Kurt
75b16393b1
More simplifications
2018-05-12 19:07:32 -07:00
Kurt
0e6db90de2
more minor tweaks
...
add 2 overloads for encounter generator
more simplifications
2018-05-12 18:11:47 -07:00
Kurt
99005d8fc0
Refactoring
...
more discards & simplifications
2018-05-12 12:28:48 -07:00
Kurt
5a3c8f4147
Remove trailing whitespace
2018-05-12 08:41:29 -07:00
wwwwwwzx
997d41b6db
Fix minlevel of Pangoro/Tyrantrum/Aurorus in gen6 ( #1938 )
...
* Fix minlevel of Pangoro/Tyrantrum/Aurorus in gen6
30: level + dark type in the party
32: level + day
33: level + night
34: level + female
Note Meowstic isn't affected due to another entry of level + male (23)
* Minor text usage fix
* Fix xorPID flipping in TransferEC check
2018-05-12 06:57:11 -07:00
Kurt
f060bab844
Use new trainer ID editing control in SAV_Trainer7
2018-04-28 11:52:48 -07:00
Kurt
e25e3fcc19
update joyful dodrio berry offset
...
bc90a4fc1d/include/global.h (L276)
u32 bestScore;
u16 berriesPicked;
u16 berriesPickedInRow;
2018-04-22 20:11:25 -07:00
Kurt
f6dda90f52
Add icons
...
icons are credit to Dave Gandy's Font Awesome pack on flaticon.com
https://www.flaticon.com/packs/font-awesome
2018-04-21 22:31:11 -07:00
Kurt
e91cb806e5
Extract extension->prefer format method
...
fails for 'pkx' (returned 8 instead of 6); establish standard behavior
2018-04-21 14:38:18 -07:00
Kurt
7a245278ea
Relocate mg description parse to core
2018-04-21 09:55:27 -07:00
Kurt
cb930fcaab
Show g7 tid on mystery gifts originating from g7+
2018-04-21 09:18:53 -07:00
Kurt
b8a5ccdf7d
Simplify shedinja evo move check
...
Closes #1895 , re-verified with pkm provided in #1805
there's no shedinja gift, always is an evolution
seal some forms to remove virt call in constructor warning
2018-04-10 17:00:28 -07:00
Kurt
335379bd2e
Remove unneeded string
...
#1893
2018-04-08 17:54:09 -07:00
Kurt
1d4e815689
Extract more mesage strings
...
all common strings in forms used by multiple generations
would rather rework the individual generation strings to be unnecessary
with better interaction instead (if possible), as translating hundreds
of limited exposure strings is a drag.
2018-04-06 21:23:09 -07:00
Kurt
48cf658abd
Update translations
...
#1885
removes content not present, moves dev code to separate debug-only class
2018-04-03 18:46:32 -07:00
Kurt
9ed2c594f2
Reorder form init
2018-04-02 20:36:13 -07:00
Kurt
3052855a70
Add more trainer records
2018-04-01 11:47:02 -07:00
Kurt
d794e71175
Extend contest-affection check to pre-gen6 transfer
...
Closes #1881
Thanks @ijuintekka !
Thanks @sora10pls !
2018-03-28 16:07:03 -07:00
Kurt
a24e5aa742
Update personalinfo usages
...
less temp array usages, add methods for cleaner understanding
2018-03-25 13:54:30 -07:00
Kurt
828636856c
Change coin cap to fixed 50000
...
#1746
https://projectpokemon.org/home/forums/topic/44503-bug-report-gen-4-coin-counts/
max is 50000
https://bulbapedia.bulbagarden.net/wiki/Coin_Case
The Coin Case can hold up to 9,999 coins in Generations I, II, and III,
and up to 50,000 coins in Generation IV.
2018-03-24 17:29:48 -07:00
Kurt
55ccb83d5f
Allow SettingsEditor to blacklist property names
2018-03-23 22:37:33 -07:00
Kurt
dd17ba0d3a
Add master settings window
...
#1864
need to hook into main window & delete old logic; when the logic flow
returns after closing the form, all the propagated settings will need to
be copied (ie where the setting is actually used).
translateinterface will translate the control text to a longform
descriptor per the current language.
2018-03-22 23:04:04 -07:00
Kurt
42f5f9b051
Add smart move[] setter
...
Closes #1871 (smart-move setting is also done by batch editor)
2018-03-20 08:35:41 -07:00
Kurt
26cc266dd1
Move type sprite fetch remapping to pkmutil
...
I still don't like it 100%
2018-03-18 11:25:57 -07:00
Kurt
f55028c1a0
Fix KChart errors
...
gen1 & gen2 types aren't laid out contiguously (yay bird type and extra
types)
fix gen2 type accessors looking at the wrong byte
type sprites now load correctly, and 3rd ability no longer throws an
error (forced to None).
2018-03-18 11:22:20 -07:00
Kurt
d65d9e0b79
Add missing =
...
lul oops
2018-03-16 17:57:24 -07:00
Kurt
d1a789eeab
Fix some pokedex4 behavior
...
https://projectpokemon.org/home/forums/topic/44347-gen-4-pokédex-forms-incorrectly-readwritten/
2018-03-16 17:54:47 -07:00
Kurt
cbf4038a95
Refactoring
...
relocate gift data storage out of legal.cs
2018-03-05 22:19:56 -08:00
Kurt
24982fe8c5
Misc simplifications
2018-02-28 21:05:50 -08:00
Kurt
d62b34f140
Don't set HiddenAbility if HaX
...
have user specify via 0x42 extrabyte as it can only be updated from
there.
closes #1846
2018-02-19 23:34:07 -08:00
Kurt
b75313cd87
Sync unsaved changes
...
closes #1840
2018-02-16 17:24:07 -08:00
Kurt
0a0b944de1
Use explicit generation param for forme fetch
...
closes #1837
2018-02-16 16:38:07 -08:00
Kurt
d706d825a9
Handle legal pichu form values
...
Closes #1828 , thanks @SpiredMoth !
slightly optimize batrev key init
fix exception for pkm loading switching between gen3->4 saves
2018-02-10 17:43:00 -08:00
Evan Dixon
392f01cb3e
Fix build error ( #1816 )
...
IEnumerable doesn't support LINQ methods, only the generic variant does. So this commit changes SAV_GameSelect's parameter to a generic IEnumerable of the only type being passed into it. I didn't realize it until afterward, but this is 100% the way it should have been because the databinding members expect ComboItems.
2018-02-05 12:12:42 -08:00
Pete Rolph
32c650c053
Fix a crash bug when loading Gen 3 saves on mono ( #1815 )
2018-02-05 07:48:47 -08:00
Kurt
1a5d4efdfe
Add database/mgdb -> save importing
...
Closes #1804
2018-02-01 17:29:07 -08:00
Kurt
ddf319c713
Set stat level on load
...
Closes #1790
lul
2018-01-28 14:11:12 -08:00
Kurt
5458b94e50
Resize coin entry
...
change 9999 to 65535 for dppt, max gets set on load anyway but just do
it for layout visualization
2018-01-27 17:50:59 -08:00