Commit graph

200 commits

Author SHA1 Message Date
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
552ec48c55 Remove fieldsloaded bypass
We're really just manually changing fields; let the GUI logic update
stuff.
Closes #2251 , also fills in Nickname now.
2019-01-26 16:25:21 -08:00
Kurt
13090c0ced misc gen1 updates
sav1: assign personal table based on (detected/provided) version
catchrate editor: allow to use savefile personal
remove gb era prompt whenever gb/blank loaded; have it as a setting (can
be overridden for VC now). keep allowgbera as autodetect
personaltable: track format for debugging purposes/info

update translations
2019-01-21 20:06:02 -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
338638db94 Disallow negative forme ids
hax behavior sets '1' to altform textbox (from '-1')
2019-01-15 16:47:32 -08:00
Kurt
b5cf02a933 Add more party related properties/methods 2019-01-12 10:54:38 -08:00
Kurt
9a4f12c279 Misc updates
rearrange pkm version groups for clear break between
twins/siblings/family
clear pokelist for sav7b on non-exportable saves (prevents b1s1 from
showing markings)
rename horohoro (pgo) to non romaji lol, hide daycare/party tabs on
nonexportable save
remove some unnecessary operations
rewrite getallcontrolsoftype to remove ToList() and make generic
2019-01-05 15:40:25 -08:00
Kurt
559435e82e Simplify splash screen operation
remove silly idle loop, call close manually

remove initialization check for generating sprite; now only calls at max
2x when starting up = not necessary to bypass with a special variable
2019-01-04 22:46:52 -08:00
Kurt
de096dc406 change accessibility back to private
all private
remove unused init string
2019-01-02 20:25:09 -08:00
Kurt
dc382e7746 Remove unused init item
Closes #2227 , validation failed to recognize this item since it wasn't
a ComboItem
only happens if a gen1/2 save is provided as the most recent/startup
save.
2019-01-02 20:21:47 -08:00
Kurt
d9b63a9934 reconfigure hax setter for pkmeditor
pass status to stats on set -- Closes #2226
make all controls private
2019-01-02 18:49:36 -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
1430460573 Hide medals/ribbons/memories on pb7
Closes #2216
2018-12-27 20:01:29 -08:00
Kurt
2d774ac7cc Allow dynamic default savefile type load
Make extrabytes a pkm property (don't mutate array pls)
reconfigure startup loading to only initialize after initial load of sav
& pkm (using blanks if not provided)
2018-12-19 22:10:32 -08:00
Kurt
fb10a1f983 add size rating indications when viewing pkm data 2018-12-13 21:10:38 -08:00
Kurt
bca8924437 Add favorite flag editing
Closes #2199
2018-12-04 18:38:47 -08:00
Kurt
08f13cb3a1 fix use before init 2018-11-26 19:06:51 -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
26647996c6 Update cp/stats on friendship update 2018-11-26 15:42:40 -08:00
Kurt
105c466ab3 Move sizecp update to Stat Update method
Closes #2182
2018-11-26 15:37:44 -08:00
Kurt
95776d8520 Set default savefile to gg 2018-11-21 13:51:26 -08:00
Kurt
2ec5c8764f Adjust CP clamps for illegal CP values
CalcCP clamps itself, let the GUI clamp entered values differently
2018-11-18 16:24:37 -08:00
Kurt
16e51a81ff Reset cp/size on species/form change 2018-11-17 19:57:53 -08:00
Kurt
409047728d Default recalc to false 2018-11-16 19:04:38 -08:00
Kurt
6ae2204009 Add AV randomize
Alt: Set all to Zero
Control: Maximize
Otherwise: Random (0-200)

fix missing on-textbox-click events for atk->spe (was on HP)
2018-11-16 14:21:29 -08:00
Kurt
e735026d20 Add new pkm editor control, hide unnecessary 2018-11-13 19:25:03 -08:00
Kurt
7b00e6cfd0 Add size/cp editor control
Years from now this may have to be split (sizes arent related to CP)
2018-11-13 19:24:08 -08:00
Kurt
3cbc3fc406 Add AVs to stat editor control 2018-11-13 19:21:14 -08:00
Kurt
28fec9882b Add pkm variant for beluga 2018-11-13 19:10:31 -08:00
Kurt
f1a9504b4b Use savefile max species ID on template
Closes #2157
2018-11-02 19:33:30 -07:00
Kurt
359a529870 Misc updates
Move some logic around, fix style warnings
2018-10-27 08:53:09 -07:00
Kurt
66f082e4a0 Add shadow lugia sprite
Closes #2145
2018-10-20 23:05:15 -05:00
Kurt
6f09f7b89e Add catch rate editor control
#2132
has a 'reset' button which tries to set a legal value
has a 'clear' button which sets it to zero, similar to gen2 removing an
item
2018-09-30 10:16:45 -07:00
Kurt
9304101141 Hover species combobox -> show species ID 2018-09-28 21:17:46 -07:00
Kurt
0de49c915a Draw all move items if hax
https://projectpokemon.org/home/forums/topic/47534-move-selection-broken-in-illegal-mode/
2018-09-13 22:10:35 -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
493bef75eb Misc updates
condense repeated logic
extract properties
extract reusable methods
2018-09-02 18:02:25 -07:00
Kurt
ebae14e6ad Add unnicknamed forced languageID wc7 handling
https://projectpokemon.org/home/forums/topic/47295-bug-event-golduck-name-not-matching-species/
another edge case
2018-08-29 20:36:32 -07:00
Kurt
e9059023eb Add ball selector with legal ball indication
click the ball label/sprite; hovering over ball puts the name in the
subform title bar
2018-08-29 19:30:48 -07:00
Kurt
6abd60cc5c Add ball auto suggestion
click ball sprite/label to cycle through legal balls
hold alt to use old behavior (set to pokeball)
hold shift to cycle through legal balls randomly (default behavior goes
poke->color->poke)

want to randomize setting balls? use the ApplyBallLegalRandom method at
the end :)

can't really get too fancy as only one color is stored in the personal
data, pkm aren't one single color.
2018-08-28 21:13:45 -07:00
Kurt
9dae7dad67 Misc updates
move encountertype datasource providing to core
fix rerolling EC not updating characteristic
remove some repeat logic calls
relocate geolocation name fetch to separate class, add tests to ensure
functionality, add languageID->country/region fetch method
2018-08-25 17:04:01 -07:00
Kurt
c7aea9cad2 add option to hide pid/ec
hides pid & ec in pkmeditor, gamesync & securevalue in saveditor
easier to share screenshots/stream without leaking identifying
information

fix auto-centering of pkmeditor subwindows when a savefile is detected
on program load(tab_otmisc isn't initialized and reads an incorrect
width)
2018-08-19 18:22:07 -07:00
Kurt
6edc828cc3 misc style updates 2018-08-12 19:27:11 -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
0745ba3294 Defer move combobox repop until dropdown
Yay sneaky smart solutions!
Instead of refilling the combobox when the legal move list changes, wait
until the full list is required then repopulate the individual combobox
can't even notice the lag besides the individual tab load. yess
2018-08-01 21:57:15 -07:00
Kurt
0ee9b04bf7 Skip move combobox repop if no changes
cache a hashset to determine if the legally allowed moves are the same.
reuse cache in paint method

previously, was noticeable if you load the Moves tab then check
legality; the legality message was delayed by a couple hundred
milliseconds due to repopulating 4 comboboxes (Combobox.NativeAdd
hotspot triggered by RefreshItems, which happens when we set the
datasource). By skipping unnecessary repopulations, gui lag is lessened.
would be preferred if I can just reorder the list inside, but noo.
2018-08-01 21:22:49 -07:00
Kurt
93c4ec9fec Use version specific personal info
Handling for gen3 deoxys :)
Closes #2082
2018-07-27 21:21:42 -07:00
Kurt
c8563a3737 Respacening
Style guidelines, handle a bunch of files
no functional change
2018-07-26 19:34:27 -07:00
Kurt
c7175fbdb4 Misc reorg
bye bye SAVUtil and PKMUtil
2018-07-20 21:32:33 -07:00
Kurt
229dc96c00 Safe convert current level
Dry startup can cause a crash if the field is somehow not filled in:

https://projectpokemon.org/home/forums/topic/46313-pkhex-ver-180716-wont-run/
2018-07-19 16:46:56 -07:00