Commit graph

768 commits

Author SHA1 Message Date
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
4d0007f49b Show nature of pk1/2 via slothover
derived via EXP%25 as if it were converted to pk7.
#1954
2018-05-20 18:33:38 -07:00
Kurt
199b6f2caf Add move rand for batch editor
Also add Move Rand & Move Reset to box modify contextmenu
2018-05-20 14:29:13 -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
e216c38151 Misc updates
Add GetShowdownSets text output methods
Add party/box overload methods for easier slot setting api
Protect locked slots when importing BoxData
Misc saveditor simplifications
Add wc3->pk3 test
2018-05-19 20:48:03 -07:00
Kurt
b391faa494 sync missing commit
i swear
2018-05-19 16:39:01 -07:00
Kurt
9fd5df6e99 Misc pbr ui fixes
remove todo comment
fix exception when refreshing slot coloring
update box when saveslot index changed, not validated.
update boxviewers when saveslot changes
2018-05-19 16:33:06 -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
23083317d7 Refactoring
pull out GameStrings

add debug output for crystal headbutt trees
fix qrpkm item access
2018-05-18 21:35:57 -07:00
Kurt
128fd1331f sync missing content 2018-05-18 20:02:49 -07:00
Kurt
95b4d0820d Minor reorganization
amount of pkm obj classes is pretty high, move the static utility
classes to another folder

breaks usage of pkm.ShowdownText; removes a dependency from PKM.
2018-05-18 19:33:11 -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
2b9a105e36 Add unsafe dll load option
ilmerging assemblies somehow ignores the loadFromRemoteSources app
setting, so allow the compiler (user) to specify that the main app
should ignore those security checks.
2018-05-15 20:16:57 -07:00
Kurt
5f2f295541 Restore old clicksort functionality
no longer reverses sort
Closes #1946
2018-05-15 15:56:48 -07:00
Kurt
b798da9b03 Use altform first
Closes #1947
2018-05-15 15:23:31 -07:00
Kurt
4a20710a96 Toggle on loadFromRemoteSources
allows loading of dll plugins that aren't unblocked
#1945
2018-05-14 21:52:42 -07:00
Evan Dixon
bbdb94007e Simplify logic in PlayCry (#1944)
Local functions are cool and all, but for something this simple, it just hurts readability and makes things needlessly complex.
2018-05-14 20:04:15 -07:00
Kurt
78c4dbd69c Update plugin interface
now is notified during a file load event (can handle itself)
2018-05-14 17:30:56 -07:00
Kurt
663ec5c536 Add sound path
Closes #1943
2018-05-14 15:46:36 -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
857919bd28 Add basic plugin sys
reference PKHeX.Core, main window loads assemblies & initializes
providing an ISaveProvider and the menustrip control (to insert controls
into)

pretty rough but should allow for inserting external control buttons &
allowing it to edit the UI a little

example: https://github.com/kwsch/PKHeXPluginExample
feedback is appreciated
2018-05-13 12:49:29 -07:00
Kurt
28ef791014 Update hovered slot on box change
using keyboard instead of mouse can change box without moving mouse
outside the slot picturebox
trigger an update when the box is changed, but only if the updating
parent has the hovered child (ie a boxviewer changing box while hovering
the main window won't re-cry the main window slot since it wasn't
updated)
Closes #1940

add some gender threshold properties to personalinfo
2018-05-13 08:14:46 -07:00
Kurt
19f2420670 Add settings for slotText & slotCry
Closes #1939
2018-05-12 20:04:58 -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
e2f11edc43 Refactoring
discards, Array.Find over FirstOrDefault
2018-05-12 08:41:29 -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
c2644cc9f0 Flag gendered pkm without gender
for lack of a better message
#1936

add some docs & trycatch bad wavs
2018-05-11 21:05:15 -07:00
Kurt
4fdff9581f Add forme specific cry detect
dex-form.wav
if not found, reverts to none (dex.wav)

47be96e92d (commitcomment-28950071)
2018-05-11 17:40:00 -07:00
Kurt
b933677c44 Stop sounds on leaving
yeah moving your mouse out and having pkm cries exploding in ur ears is
fun ;)
2018-05-11 17:05:42 -07:00
Kurt
47be96e92d Add feature: pkm cries on sprite hover
Years ago a branch was made to play a pkm's cry when its sprite was
hovered over, to assist users who are less fortunate in the ocular
department. Since a pkm's sprite is not text, playing the pkm's cry
helps the user identify what is in each data slot.

To enable the feature, put a folder named "sounds" in the same folder as
the executable; name all pkmcry files after the species national dex
number (no padding zeros), with an extension .wav
2018-05-11 16:58:29 -07:00
Kurt
fc63a863d5 Update drag&drop
remove hover-tooltip keycombo
reuse logic for move/drop
2018-05-11 16:38:09 -07:00
Kurt
815705bc5e Fix gender handling
Closes #1933

if not allowed to be genderless, flag as invalid gender
only permit valid genders after genderless is ruled out
(both done by checking the low bit)
2018-05-10 18:53:23 -07:00
Kurt
9fb7056837 Add test living dex generator
doesn't generate everything due to the evo chain not being 'full'
(instead is unevolved singular pkm), nor does it evolve pkm
2018-05-09 21:02:35 -07:00
Kurt
16ed4353b2 More generator updates
Store 4g giratina held item for enc->pkm legality
revise usages of GetSaneGender
Rearrange some logic
Better handle impossible version encounters (gen4)

gen 1-5 done, stuck on 659 - bunnelby egg...?
2018-05-09 17:50:56 -07:00
Kurt
19a0560474 Misc cleanup
extend byte[]->pkm iterator for specifying start/stop
clean up some in main window
2018-05-06 22:24:25 -07:00
Kurt
6e3f66ef25 Fix unsettable slots allowing bad drop-swap 2018-05-05 18:19:49 -07:00
Kurt
b572620dac Remove if not activated
Closes #1926
2018-05-05 17:29:38 -07:00
Kurt
16e2fc3344 Tack on shift to the showdownset view
hold ctrl+shift for the set preview; I forgot that ctrl was already used
for quick loading to tabs (makes it impossible with just ctrl)
2018-05-05 08:50:15 -07:00
Kurt
c8cdff8abc Add showdownset preview bubble for slot views
Hold control when you move your mouse to enter the slot's control area
(ie put your mouse on the sprite while holding control); the program
will display a ShowdownSet summary of the contents so you don't have to
load to tabs.

Holding Control is required for now (can always recompile to have it
always on); can be a nuisance for those not wanting to view details
since it overlays a big window (obscuring).

Closes #1925
2018-05-05 08:25:36 -07:00
Kurt
232427d002 Rework slot interactivity a little
decentralize some logic, individual view providers now provide the
details rather than detecting from a huge array.

#1925
2018-05-05 08:07:22 -07:00