Closes#860 by adding in prompt for Gen1 saves to determine if the save
originated from VC. Will disable Gen2 legality sources when checking pk1
files.
--
Fixes froslass/gallade evolution tree pruning movesets. For whatever
reason, the level argument of the Evolution is not 0 when using the
item; I manually edited the evos_sm.pkl binary to set the 2 evolutions
from [XX] -> 00.
Fixes gen1 ingame trades slipping through the getEncounter12 preference.
Gen2 has set TIDs, so check if TID is set.
Loosens checks for Gen7 trades (including prior transfers) as trading
between games clears the memory.
Add 3 more g7 trainer stat records too.
Thanks Holla!
--
Add getMoves(100) optimization as gen7 learnsets can grab 1->100, better
than looping over the range every time it's checked.
Use actual max record type
65535 is unused (no type=4), there's one 6 hidden in there 👍
I noticed there's some copying to Festa stats going on (see
Savedata::AddRecord)
6 "Pokemon Caught"
8 "Eggs Hatched"
33 "Trades at the GTS"
100 "Champion Title Defense"
173 "Bubbling Spot Encounters/Items"
175
176
177
182
183
Looks like the setter increments data over at the Festa block if the
active Mission is the recordID.
Rather than re-mapping the other pkm format language IDs, just make GC
games conform to the main series for uniform handling.
Closes#935
Thanks @javierhimura!
Also fix gen1/2 evo tree trimming error, thanks BeyondTheHorizon!
Also fix an exception when no static encounter can be generated for
1->7, match is now generated by checking gen1 and reusing the static
encounter creation info (now moved to core).
Were accidentally swapped; fix the underlying cause by reordering to show RS/E/FRLG instead of RS/FRLG/E, because that's how everyone refers to the games (RSE & FRLG).
#927
Tweak batch editor behavior to show Any first (used by any pk* type),
sort alphabetically too. Highlights the propertytype text if the
property is not present for the type.
Fix form1 offset for getter
move formNames into check (only fetch if forms exist for the dex
entries)
Add all forms to seen side when seen is toggled (behaves like gender)
Fix exceptions / insufficient behavior in pokedex4
change gen2 tutor name to be consistent with other gen variable names
replace gen2 trade checkresult with nothing as all properties are
already checked.
Add the rest of the encounter tables (besides johto land, ha). Method
immediatley hopped out as the while-loop break never incremented the
read offset.
Add preference ranking for the gen1/gen2 encounters to better pick the
best match.
Add GSC move tutors (3 tutor bits are immediately after the TMHMs).
Special handling for gen1 encountertrades to pre-verify the OT name in
the event that a possible gen2 encounter exists.
only use it when repopulating move legality
skip repopulation when clicking moves or met location since it's updated
at the end of the respective method
Add setter for HPType for gen2 pkm
obviously can mess with gender in gen2
also tweaked gen1/2 IsNicknamed setters to clear nickname, as well as
use the PKX get species name per format rather than doing it within the
class.
ResetBoxes reduce method calls for new blank/setting, just set data.
160ms->4ms
ComboBox Validation calling SelectedText.Length=0 no longer needed 3y
after it was originally added.
268ms->0ms
speeds up main thread by a third of a second (wowww), but the
selectedtext removal makes the program snappier during regular use
(loading/modifying)
Closes#919
Properties fetched would return PKM.cs properties (not declared in XK3
or PK3), such as Hidden Power Type.
The setter for Hidden Power type is unused everywhere, but was called
via reflection on transfer away from xk3/ck3 format. This caused IVs to
be tampered with in most cases.
By only fetching Declared properties (ie, within XK3.cs only), only the
'real' shared properties will be transferred. Extending this to the
batch editor, we can use this Declared-only filtering to grab more pkm
formats. While things are being updated, throw in pk1/pk2/bk4/ck3/xk3
formats to the dropdown.