Commit graph

268 commits

Author SHA1 Message Date
Kurt
d0355253bf Use boxdata property to dump 2015-11-19 22:42:57 -08:00
Kurt
242bedac43 Sync changes
VS/github didn't catch this, had to reopen the project.
2015-11-18 21:43:51 -08:00
Kurt
d36c133536 Move some form initialization to designer
Have to keep PictureBox.AllowDrop = true as it's normally overridden and
needs to be set after initialization.
2015-11-18 21:37:30 -08:00
Kurt
f3ea73787b Add alt/shift click
Shift click setting is not accessible without the hotkey, not going to
add it as a Right Click Menu.

Main had to expose more methods (to access info from tabs); standardized
all references to the database path as well.
2015-11-14 19:41:39 -08:00
Kurt
dc5fc1f175 Add deletion method for database tool
Can delete files from database folder, or save file.

Easy way to filter crap out to delete, yay.
2015-11-14 18:17:54 -08:00
Kurt
72e149dc70 D&D: user's temp folder instead of application path 2015-11-14 14:19:40 -08:00
Kurt
71d029fbb4 Don't dump empty slots 2015-11-13 18:29:59 -08:00
Kurt
0df9e35397 Arceus, not Mew
Forgot to save changes.
2015-11-05 23:17:06 -08:00
Kurt
c15cbe2870 Separated initialization bool for clear purpose
formInitialized is for closing the splash screen and showing the main
form.
fieldsInitialized is for setting up and not running updates until fields
are ready to be updated.

Arceus is now the initial species instead of language dependent
(Abomasnow).
2015-11-05 22:59:55 -08:00
Kurt
0e82433f21 Redefine initializing logic
No longer short circuits to true when loading a blank file on startup.
Accomplished by storing the old value, temporarily setting to false and
then setting back when finished.
2015-11-05 22:47:39 -08:00
Kurt
34856658d4 Clean rescaling formula
Thanks AibotNya for bringing this to my attention!

No functionality is changed; just clearing up some mud.
(306 is to allow 10px on each side of the tab control)
2015-11-05 22:08:24 -08:00
Kurt
35ca2d6db4 Add ramsav loading on boot 2015-11-03 18:35:27 -08:00
Kurt
c4ba137333 Fix ramsav storage getting cleared
Thanks Odaxis!
2015-10-26 20:17:50 -07:00
Kurt
15e3ff2eb1 Reconfigure current box saving logic
Moved to after the chunk check; it's also physically impossible to save
the file on the Party/Battle Box view so I don't even bother checking
now.
2015-10-25 18:12:07 -07:00
Kurt
d1c21d460f Cleanup
Removed duplicate array initialization for getting slot filler.

Improves speed ever so slightly ;)

Other minor cleanup/rearrangement
2015-10-24 18:16:22 -07:00
Kurt
b1c0beff74 Send "chunk uninitialized detection" to class
yeah, get educated.
2015-10-24 16:52:25 -07:00
Kurt
101c0ad80f Minor bugfixes and cleanup
Added an Edited property for the save
blank slot (encrypted) is initialized once and can be used elsewhere
instead of constantly being recreated for no reason.
Fixed having 32 boxes for non-saves

All SAV editing forms now set the Edited flag when saving->close.
2015-10-24 16:33:44 -07:00
Kurt
1b514bc84f Move SAV box sorting to class 2015-10-24 12:31:29 -07:00
Kurt
775dc74287 Add trade friendship altering
Special cases allow friendship to be min/maxed anyway.
Added get/set for current friendship.
2015-10-24 11:57:07 -07:00
Kurt
661052bcf9 Refactoring of Save File Usage
Probably breaks a thing or two... time to get testing after this new
commit.

Wrapping the stored 'savefile' into an object which handles its use
allows a clearer separation of function and easier maintenance or future
updates.

May eventually move all get/sets for each form to allow property
fetching from any window, all logic handled within the class.
2015-10-23 20:13:32 -07:00
Kurt
2e5f447dce Begin Implementing auto-modification when set
There's a few ways to finish implementing, as the program needs a way to
access Trainer Information on the fly. Quick and dirty way is to add new
global variables and set them when a save file is loaded, and a cleaner
way would be to move the 'savefile' variable into the sav class and do
all accessing from there.

Not yet decided on which. For now, the added items and code still do
nothing.
2015-10-19 19:08:56 -07:00
Kurt
ebae9a933b Cleanup of Delete/View
Removed unneeded picturebox array (duplicate of slotpictureboxes)
Removed temporary variable 'picturebox', just straight up compare to
null.
Deleting now instantly sets the picture to null, instead of generating
the image. (might not have been the best idea if I somehow decided to
change slot filling)
Empty slots now instantly return null (empty) for their image instead of
doing layering.
2015-10-14 20:10:09 -07:00
Kurt
1961c972c3 Simplify setting pk6's to XY with ORAS exclusives 2015-10-14 19:59:43 -07:00
Kurt
f3ec13965f Fix ramsav loading logic
Since ramsavloaded was defined when loading (and removed), we need to
define the ramsav before loading it.

Fix for checksum button.
2015-10-14 18:52:50 -07:00
Kurt
f6bddf6fce Ramsav/Powersave cleanup
Old code which is unnecessary.
2015-10-14 18:45:45 -07:00
Kurt
9d9250fbc1 Revisit slot loading logic
savLoaded is useless now
2015-10-14 18:33:51 -07:00
Kurt
77b4f9cc0f Fix injectiondebug loading
woww I search for the start but never use it, wp
thanks Cuestion24
2015-10-13 19:10:55 -07:00
Kurt
468bf14dad Fix bad pk6 detection logic
&& -> ||

Also changed to using PK6 class and early-checking for a bad sanity.
2015-10-13 18:58:59 -07:00
Kurt
6e207b677c Isolate box dump method
Now using the get->FileName for the pk6.
2015-10-12 17:06:30 -07:00
Kurt
afdb94ba13 Fix silly edge case
Ensure the checksum is valid before loading the data
2015-10-11 23:43:07 -07:00
Kurt
b352de254e Add optional focusing when loading to tabs 2015-10-11 23:36:20 -07:00
Kurt
480622388c Speed up loading to tabs (sprite)
Information is already available, no need to reformulate a new array.
2015-10-11 23:34:11 -07:00
Kurt
32b1ba52e3 Simplify version calculation
24,25,26,27,28,29
2015-10-10 10:01:52 -07:00
Kurt
8ef03eaccd Database sanity checking before opening 2015-10-08 17:40:36 -07:00
Kurt
d9073cea98 Finish first iteration of Database & Search
Should surpass the search options of Pokécheck ;)

Quite easy to add extra search options too!
2015-10-07 20:19:34 -07:00
Kurt
772cd08bae Fix (set from tabs) not setting the display flag 2015-10-05 21:58:08 -07:00
Kurt
c1bb9d5cec Add database view skeleton
future?
2015-10-05 18:51:52 -07:00
Kurt
ded26dccb7 Remove unnecessary sub-classes
Structures was originally intended to be a big class but that'd be way
too messy.
2015-10-04 16:58:17 -07:00
Kurt
7b00e797d0 Invalidate init on program language change
Store the pk6 data in a separate byte array.
2015-10-04 09:58:47 -07:00
Kurt
9f420473ad Update box sort query usage
Still don't know where I want to have the user access this.
2015-10-04 09:33:43 -07:00
Kurt
28dd4b2903 Update label clicking
Addresses Issue #58
Check for null first (root issue)
2015-10-02 17:41:55 -07:00
Kurt
6954df5e28 Box sorting beginnings
gonna toy with this later.
2015-10-01 21:06:21 -07:00
Kurt
d508e68057 Fix ToolTip = null
Thanks RustInPeace!
2015-09-28 21:13:23 -07:00
Kurt
076a8b369d Memory Editor uses pk6 object & bugfixes
Eggs cannot have memories, and have all edits disabled.
When a pk6 is saved, memories will be cleared if they should not be
present.

Fixed empty regions showing up with data
Fixed not being able to edit the first georegion for an untraded Pokemon

All lock-outs for editing should be correct now.
2015-09-28 21:11:03 -07:00
Kurt
30811c03e0 Initialize Move1 to bypass movecount check on load 2015-09-28 19:36:28 -07:00
Kurt
f84f630a0d Fixed Party Stat writing and move cascade
'pkx' array was dummied out, resulting in the pk6 data not receiving the
party stats for writing.

Old bug: Having a Moveset with 1--4 (gap of two) would only remove one
of the blank move slots. Added method in the PK6 class for the (now
correct) fix-code; other fixes that are done when saving are now done in
separate methods as well.
2015-09-27 19:56:17 -07:00
Kurt
8e0d367ddf Cleanup & Adding MaskedTextBox click events (IV/EV)
Same functionality as the previous commit's adding of Max/Min stats for
IV/EV; this one should be easier to do (Control click the textbox to
max, alt to minimize/zero).

Removed SavePKX / OpenPKX; they are only used inside one method and
don't need to be persistent.
2015-09-27 10:00:45 -07:00
Kurt
fb059193c7 Fix daycare data not reloading on box refresh 2015-09-26 23:51:26 -07:00
Kurt
27492e1600 Add IV/EV click modification
Control to modify IVs, Alt to modify EVs
Left click to set to 31 (or max remaining EVs)
Right click to set to 0.

Feels much better with the Key being the IV/EV switch, not the
left/right click (for left/right column editing).

Think of it as L(oad)/R(eset) 👍
2015-09-25 21:56:15 -07:00
Kurt
87073e639c Slimming, reverting, and fixing
Can't find any more problems; found an existing bug when opening the
Memory editor where it did not fetch the current Friendship or set the
final Friendship back.
2015-09-24 19:54:50 -07:00