Commit graph

888 commits

Author SHA1 Message Date
Kurt
925699af0d Fix Trainer Info editor issues + bugfixes
Fixed reported bugs by Wanderer1391; found a bunch more as a side effect
of refactoring. Didn't like how so many values were hard coded so I
moved them all into the SAV6 class for easier r/w.

Re-enabled the Map Coordinate editing for non-ramsavs.
Updated the Map Coordinate display to the ingame coordinate style (using
NumericUpDowns), the coordinates for player.X and player.Y are divided
by 18 to get the current cell coordinates.
2015-11-20 22:02:15 -08:00
Kurt
6cba50ba2b Remove hard coded box count 2015-11-19 22:44:16 -08:00
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
c719c335df Add Pokécenter & Gift Trainer Sprites 2015-11-17 21:02:23 -08:00
Kurt
426eda5a46 Use SAV's BoxData property to load data 2015-11-15 22:03:58 -08:00
Kurt
b16ee55ed4 Assign an identifier for PK6 box/spot origin 2015-11-15 22:03:36 -08:00
Kurt
e4bc9e58f0 Box and Party properties for easy manipulation 2015-11-15 21:58:34 -08:00
Kurt
861881a37d Allow new instance of PK6 with no arguments 2015-11-15 21:56:00 -08:00
Kurt
eb22a46290 remove debug stuff
oops
2015-11-15 08:20:17 -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
f867697caa Close
Close
2015-11-13 19:04:42 -08:00
Kurt
75be21bac2 Improved search filters
Automatically ignore bad sanity/species
Allow user to select Box&/Database as their search source.
2015-11-13 18:31:01 -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
f67441cc89 Change byte to int
Allows it to be easier used by comboboxes; SelectedValue = (byte) does
not work.
Instead of having these cast to int whenever used, this way is more
preferable.
2015-10-27 17:58:53 -07:00
Kurt
c4ba137333 Fix ramsav storage getting cleared
Thanks Odaxis!
2015-10-26 20:17:50 -07:00
Kurt
76d6320b21 Simplify Friendship modification on set
Copies instead of highbounds.
Added supporting property in PK6 class.
2015-10-25 18:46:17 -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
e85c57b35c Re-enable encounter type
Visibility toggling is sufficient; there never was code to re-enable.

Old cosmetic bug :)
2015-10-24 16:41:49 -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
25fca4964b Implement Trade logic when Set
Friendship and Affection are still not modified.
This may cause an issue with users who edit mons with their OT as
current handler and set friendship to 255, and the program makes the HT
with 0 friendship.

Can't really code in an alert as it'd be an annoyance for users. Gotta
think about it more :)
2015-10-24 11:29:03 -07:00
Kurt
f14a06a8bd Fix initialization for non-saves
When initializing with a zero-byte array (ie, starting the program and
just having blank data), the box/party have specific offsets.

Also got rid of the silly default switch cases which can just be
achieved earlier.
2015-10-24 09:52:02 -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
d85936467e Add dex overriding from method call
A little shuffling of info too for ease of use.
2015-10-23 20:10:03 -07:00
Kurt
d5484d265b Implement global settings for on-set methods
This makes it so that the program can turn off these methods for every
instance unless the implemented method explicitly says otherwise.

Nullable boolzzz
2015-10-23 19:58:23 -07:00
Kurt
f348a27d0c Minor Bug fixes
Properly init offsets for inventory, and fix for genderless bit writing.

ORAS PokeDex editor does not save bools for the current entry when
closing the form; fix will be provided in a later commit.
2015-10-23 19:45:25 -07:00
Kurt
322fceb598 Add new class
Performs SAV operations to match the division already done for PK6.
2015-10-22 00:16:44 -07:00
Kurt
5057be999f Use defined size names 2015-10-21 22:59:22 -07:00
Kurt
f3374aee10 Add constant sizes for easy reference in code 2015-10-21 22:54:50 -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
4a1ee57c58 Improve Trading logic to include Banking 2015-10-18 18:33:38 -07:00
Kurt
048fbb60ce Remove unused resource
fulldex_XY no longer needed
2015-10-15 04:23:57 -07:00
Kurt
6431ef1f68 Update Fill Pokedex method
Now just spams Give All for every species before writing forms (and
encounter count if necessary)
2015-10-15 04:23:41 -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