Kurt
d83b2331ac
Enhance nullable indication of array
...
Fix off by one unit test
2021-05-20 08:52:47 -07:00
Kurt
f462017670
Fix padding mask
...
Closes #3205 -- padding char
Closes #3206 -- sav3rs doesn't use SecurityKey, it's always 0
Co-Authored-By: Michi97 <24464847+Michi97@users.noreply.github.com>
2021-05-20 08:27:08 -07:00
Kurt
04ea271b8b
Update ShowdownSet.cs
2021-05-20 08:24:22 -07:00
Kurt
2655892db1
Choose a gender on unspecified
2021-05-19 17:12:30 -07:00
Kurt
fac7555c50
postfix gender form
...
handle all permutations of Indeedee-M/F (M/F)
if it detects (F), it uses female, otherwise it uses whatever the detected form was (0/1) and sets the values accordingly.
2021-05-19 13:12:18 -07:00
Kurt
fc8f9ebd56
Add first row for subregions, remove header from countries txt
2021-05-19 09:36:20 -07:00
Kurt
d6b8a018e6
Fix 3DS console region indexing
...
mystery gift region ID is not the same indexing as 3DS console region
2021-05-19 09:11:54 -07:00
Kurt
2658c8b89a
Update 21.05.19
2021-05-18 17:49:54 -07:00
Kurt
a03f5dcc9d
Make EncounterTrade met location use inheritance
...
hovering would grab ILocation, which didn't use the flexible met location fetch.
Just repoint stuff and have it as a virtual call, since most of these are fixed values, there's no point increasing the size of the classes besides those for gen4.
2021-05-18 17:14:17 -07:00
Kurt
1d71d151e8
Add gen8 to generation dropdown
2021-05-18 16:59:19 -07:00
Kurt
5355d251a6
Align shiny checkbox same as pkmdb
2021-05-18 16:59:01 -07:00
Kurt
99f0978630
Extract random date to util
2021-05-18 16:58:53 -07:00
Kurt
53e9d31545
Allow searching encounter db for shiny state
...
random shinies behave like not-shinies
so it only really filters for "always shiny" or "can be nonshiny".
2021-05-18 16:17:57 -07:00
Kurt
74e0cba3b0
Minor tweaks
...
use assert instead of manual exceptions
span
remove some dead logic
2021-05-18 16:16:48 -07:00
Kurt
25fa52e597
Use correct SID
...
lol I had copied from VC->gen7
2021-05-18 13:33:36 -07:00
Kurt
215b1c6e23
Remove whitespace
2021-05-18 13:33:13 -07:00
Kurt
2c820bfbe9
Minor tweaks
2021-05-18 13:29:55 -07:00
Kurt
ae0b2f13ea
Fix erroneous value setters
2021-05-18 13:12:43 -07:00
Kurt
2d8d3e04fc
Move mxyz to subclasses
2021-05-18 13:04:23 -07:00
Kurt
fbba64c0e6
Clean up catch rate comparisons
...
Add dragonite to the uncapturable list, removes catchrate comparison for dragonite since it's filtered out.
Skip some linq by doing the loop directly in the method. Replace local methods with captured variables with direct if-returns.
2021-05-18 10:38:01 -07:00
Kurt
565f161226
Show shiny state of encounter in db
...
Force shiny state for GO encounters
For encounters, this interface property is mainly just for exposing metadata for sprites.
2021-05-18 10:36:45 -07:00
Kurt
4c8772ff14
Update EvolutionRestrictions.cs
2021-05-16 11:12:16 -07:00
Kurt
5a012e85a0
Fix gen8 move threshold evo checks
...
gen7 allows all moves to be reminded; gen8 reverted that.
add greedy minlevel return, and reduce array size allocation by 270 bytes
2021-05-16 00:00:29 -07:00
Kurt
0e2f070510
Clean up know-move-evolution checks
...
Looks like Mr. Rime case wasn't being handled, so I rewrote it. Better performance, less complexity. No need to double-reference the moves.
Cache a single Valid evolution result; every parse can reuse that object.
2021-05-15 21:41:04 -07:00
Kurt
4e12e54028
Replace regex parse with string find
...
Only remaining uses of regex in the sln are wordfilter (required), and unescape for QR replies from web api.
This is slightly faster -- cover all cases if the response json changes (shouldn't).
2021-05-15 12:39:37 -07:00
Kurt
ad4aec3439
Improve resource loading speed by precomputing full manifest lookup
...
no longer needing to compare manifest names with case insensitivity before finding the manifest name.
muh startup speed
2021-05-15 11:56:06 -07:00
Kurt
44affe3caa
Add flag unit tests, more xmldoc
2021-05-15 11:32:25 -07:00
Kurt
ebefa0a918
Update ShowdownSet.cs
2021-05-15 10:20:19 -07:00
Kurt
2b25cd1e18
add notes for oras endscroll data
...
https://projectpokemon.org/home/forums/topic/49356-battle-chateau-help-well-not-really/?do=findComment&comment=266428
2021-05-15 01:46:33 -07:00
Kurt
e31980d15e
Clean up nickname parsing, make Gender an int type
...
Breaking change for anyone using IBattleTemplate (alm)
2021-05-14 23:41:14 -07:00
Kurt
acdbda4e12
Split DateUtil from Util class
2021-05-14 16:46:48 -07:00
Kurt
3ac1882151
Move BinaryCodedDecimal conversions to separate class
...
Add unit tests, clarify names
2021-05-14 16:32:26 -07:00
Kurt
50b15cd740
Use range/index
...
More in line with modernizing the codebase with latest c# syntax
improve web-qr decode speed slightly (no linq skiptake)
get money/coin mask without a temporary string (lol performance)
2021-05-14 15:30:55 -07:00
Kurt
871f9b0627
Convert checksum operations to span-based
...
Fix SAV.Data references in SAV_Misc4 to use the General block instead
2021-05-14 12:30:40 -07:00
Kurt
014835ed14
Add BigEndian span conversions
2021-05-14 12:23:12 -07:00
Kurt
b9d9766674
Fix typos, update block list notes
2021-05-14 12:16:08 -07:00
Kurt
07584a8774
Add chateau score, seaside cycle score
...
Update some other areas too
looks like this fixes the sube pkx fetch method for extraslots, yay.
2021-05-13 23:12:53 -07:00
Kurt
d21c1fb135
Set editing mode when loading data to form
...
Prevents wiping of Multiplayer sprite assignment
2021-05-12 15:44:28 -07:00
Kurt
1fe77c004c
Cache transfer location arrays if created once
2021-05-11 23:32:29 -07:00
Kurt
b97b54e5e4
Skip first indexes if requested
...
Fixes partition2 calls
2021-05-11 23:25:36 -07:00
Kurt
013aac602f
Don't clone string resources on fetch
...
Hardcode egg names, don't rely on string resource loading order for SpeciesNames to get an un-mutated copy.
fixes the infrequent race condition for legality unit tests
2021-05-10 18:41:01 -07:00
Kurt
3597eb14ad
Improve gen1-4 species name fetch
...
reduce nesting (separated methods)
handle gen2 french egg name (all caps)
use stringbuilder to replace chars
2021-05-10 16:09:28 -07:00
Kurt
ef4857fa9f
Improve perf of byte->hexstring parse
...
just use a stringbuilder
2021-05-10 16:07:25 -07:00
Kurt
d340642b09
Minor perf improvements
2021-05-10 01:01:45 -07:00
Kurt
8e9953dc0f
Keep festaID separate from nex ID bytes
2021-05-09 23:38:14 -07:00
Kurt
01f75f8441
Add test for hex string (arbitrary length) convert
2021-05-09 23:33:54 -07:00
Kurt
1cad57e35d
Build results in place, no linq
...
O(n) for speed & memory usage, as good as we can get.
Modified method is now less dumb. Array Copy doesn't have to worry about same-array overlapping src/dest regions
2021-05-09 22:48:24 -07:00
Kurt
2a7027ed84
Move files to more accurate subfolders
...
Gen1-3 are disjointed from the gen4+ item name listings, hence the separate folder. Plus, not all languages have localization files created.
2021-05-09 16:25:19 -07:00
Kurt
96d941db69
Preformat csv files, remove header
...
Shaves off a few kb
2021-05-09 15:47:21 -07:00
Kurt
f25ad054ef
Selectively TrimEnd without extra robust logic
...
TrimEnd has some loops and stuff which isn't necessary for single-char, single-time trims
2021-05-09 13:21:59 -07:00