Kurt
796e836811
Add Settings reset button
...
force closes program to prevent main form closing event from saving
settings
Closes #2272
2019-03-23 19:05:35 -07:00
Kurt
e83f313281
Remove unnecessary abstraction
...
less objects with only 1 property/field, less objects created = faster
2019-03-23 18:59:45 -07:00
Kurt
55c7bf9858
Remove unnecessary abstraction
...
EvolutionSet was just an object that hides an array, with no logic
was planning to use the EvolutionSet to do the evolution checks, but
EvolutionTree was required to connect the evolution chains together
2019-03-23 10:36:28 -07:00
Kurt
41e066c562
Consolidate duplicate logic
...
Reformat g1/2 evolution data binaries for easy loading
precomputed count => no unnecessary allocation/resizing
2019-03-23 10:05:33 -07:00
Kurt
20f023e619
Reduce allocations
...
GetMethod used to create new array every time; reuse static hashset
(same arrays)
use scan approach to allocate required count
2019-03-23 01:01:04 -07:00
Kurt
4650a6f5b5
Reduce sizes
2019-03-22 21:19:47 -07:00
Kurt
583fcfa449
Use builtin struct instead of anonymous object
...
faster overall
2019-03-22 18:46:31 -07:00
Kurt
bc5ed2d218
Misc reductions
...
Removes empty trashbyte array allocation (less objects)
Change int[] to byte[] (less filesize/mem) (-256*6)
Change int[] to ushort[], precompute reverse table in saved space
removes dictionary lookup for array index fetch (faster, less memory, no
temp obj allocations!)
could make the ushort[] arrays into byte[] by changing them to be value
shifts? Not worth saving filesize for cpu.
2019-03-22 18:42:03 -07:00
Kurt
687da38e2e
Add pkrs infected/cured setters
2019-03-21 16:48:17 -07:00
Kurt
cce362b98a
Relocate FFFF trim (and 0000) to same location
2019-03-20 22:13:09 -07:00
Kurt
b1ead9e630
Split StringConverter into smaller pieces
...
reduces loading time (don't have to allocate conversion arrays when
launching a gen7 game), and separates things to easier to manage
locations
reworks gen3 string encode/decode, no longer does 3->4->5 and 5->4->3;
instead goes straight to the end result without an intermediary format.
String sanitization should probably be broken up rather than reused, oh
well.
2019-03-20 21:50:44 -07:00
Kurt
8bc949152d
Enhance IEncounterable list summarization
...
separates by type (wild, egg, etc) then groups by generation, listing
the locations and games that can obtain it in that location
2019-03-19 22:05:13 -07:00
Kurt
fad5e4bdee
Expand comboitem loading for simple cases
...
slightly less gc pressure, precompute capacity
2019-03-18 21:55:33 -07:00
Kurt
82a40cb965
Misc updates
...
add comboitem list to string[]
add regions list as cached comboitem list
lock resource cache on fetch
extract alola time list generating
2019-03-18 21:34:21 -07:00
Kurt
d681933a44
Minor tweaks
...
pkmtests same namespace as others
legalitytests assert that we check at least one file
extract repo base path fetch method
2019-03-18 19:33:56 -07:00
Kurt
7e8154fa62
Make parsing flexible / diacritic insensitive
...
Flabébé if users manually type it :)
2019-03-18 18:09:48 -07:00
Kurt
53dbdf62f7
Add more test cases, case insensitive parse
2019-03-18 00:04:17 -07:00
Kurt
5e3b390fe1
Add learnability API and tests
2019-03-17 22:19:46 -07:00
Kurt
d975081a86
Add short/long name property differentiation
2019-03-17 22:19:37 -07:00
Kurt
9f7f9f9e75
Use glyph dictionary instead of creating 19 strings
...
muh optimization
2019-03-16 20:15:12 -07:00
Kurt
3eed1370c1
Minor simplification
...
if conditional checks >=3, and all subsequent checks require Valid; add
this to the continue condition, and remove unnecessary comparisons
update some comments
2019-03-16 20:07:30 -07:00
Kurt
99baca5f5e
Use min parameter count
...
PK2 doesn't like getting passed null for the byte[] parameter (rightly
so); don't depend on the src code order having the first constructor
being the one with the least arguments
fix it in pk1/2 so that the first constructor has the least args, anyway
2019-03-16 20:04:44 -07:00
Kurt
8a08d32dff
Simplify pkm constructors
...
remove Identifier param. 99% of the time, identifier is not provided,
resulting in a useless call
end result:
provide 'create new' and 'create from' constructors
2019-03-16 18:41:56 -07:00
Kurt
fb76032a39
Remove unnecessary null checks on constructors
2019-03-16 18:23:50 -07:00
Kurt
5765ce8229
Extract gc version IDs to separate logic
2019-03-16 16:48:38 -07:00
Kurt
ebc7c6ae29
Remove PKX.LCRNG method
...
Duplicate with RNG.LCRNG
reuse cryptarray for gen5 mysterygift r/w
2019-03-16 16:25:25 -07:00
Kurt
fc10fd3d60
Simplify transfer xor, extract glyph conversion
2019-03-16 16:19:00 -07:00
Kurt
9ca4ef1e09
Move pkx hidden power logic to HiddenPower.cs
2019-03-16 12:07:22 -07:00
Kurt
13a6d16cb9
Relocate checksum/dexform logic
2019-03-16 12:01:21 -07:00
Kurt
7bab3a69fe
Merge pull request #2271 from bsinky/more-BV7-data
...
Add PlayerNames and MatchStamp to BV7
2019-03-15 14:36:06 -07:00
Benjamin Sinkula
e4d59b8b98
Add PlayerNames and MatchDate to BV7
2019-03-15 14:35:55 -05:00
Kurt
41bc3f6182
Fix header'ed file export
...
For xd, getfinaldata returned a standard 344KB save, but then slapped it together with the inner savedata (0x28000 bytes) rather than using the GCI header. Don't use 'Data'
2019-03-15 10:26:16 -07:00
Kurt
118dcb4d0b
Merge pull request #2270 from sora10pls/patch-1
...
Add file references for Let's Go
2019-03-12 09:33:43 -07:00
Matt
ecd8117e83
Add file references for Let's Go
2019-03-12 11:59:06 -04:00
Kurt
7e864c67b7
Update assembly info (version)
...
now reflects 19/03/11
2019-03-11 06:23:48 -07:00
Kurt
97c8c40855
fix typo
2019-03-10 22:59:08 -07:00
Kurt
94c80fd32c
Update 19.03.11
...
update mgdb latest
2019-03-10 22:56:30 -07:00
Kurt
e0ca0ac1f4
Add decoration / unown puzzle flags
...
UnlockAllDecorations already exists in SAV2.cs , but expose these in the
GUI with names
2019-03-09 23:13:07 -08:00
Kurt
e8a5a55323
Add union/berry crush stat ids
2019-03-09 10:26:43 -08:00
Kurt
88e2bce495
Sync gs en flags
...
match zh/ja
2019-03-09 00:16:16 -08:00
Kurt
0d5ee9489b
Fix memcard sav cloning
...
Closes #2267 , Thanks @PMArkive && @Subject21J !
2019-03-07 18:05:55 -08:00
Kurt
bd00680545
Fix incorrect block index ref
...
https://github.com/kwsch/PKHeX/issues/2267
Still doesn't fix the underlying issue
2019-03-07 17:30:50 -08:00
Kurt
7734e81adf
Remove unnecessary bytesperchar check
...
current.Length will always start right after the terminator data;
shifting further is unnecessary.
#2261
2019-03-07 16:58:19 -08:00
Kurt
ee787a0f71
Fix HoF size check
...
now matches the code in ChecksumsValid (< instead of <=)
2019-03-07 15:45:51 -08:00
Kurt
9b783dd047
Unban mankey/machop shiny pgo transfers
...
https://pokemongolive.com/en/post/battleshowdown2019/
Mar. 5, 2019, at 1:00 p.m. PST (GMT −8) to Mar. 12, 2019, at 1:00 p.m.
PDT (GMT −7)
2019-03-05 23:09:39 -08:00
Kurt
61bf82e2bd
Add gs event flags
...
https://projectpokemon.org/home/forums/topic/49717-pkhex-flag-editing/?tab=comments#comment-240804
via pret repo; looks like 2000 event flags, and 0x100 event
consts/work-vals (byte)
add more rebattle toggles
2019-03-05 23:06:05 -08:00
Kurt
a4bf6335a9
Unclamp max date
...
values above 2100, whatever, let them get saved however they end up
2019-03-05 16:33:54 -08:00
Kurt
8d49400b07
Change SecondsTo* from int to uint
...
having a year > 2050 can result in a 32bit seconds value (top bit set);
instead of being negative, keep it as a 32bit number.
2019-03-05 15:55:26 -08:00
Kurt
bb2c7e22cb
Add HoF checksum verification and saving
...
Thanks @av🥑 cado#0315 (discord)
2019-03-02 09:16:03 -08:00
Kurt
174f9758a1
Fix gen1 hm index check
...
Closes #2266
2019-02-28 10:01:28 -08:00