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
Kurt
43af6322e8
Clean up csproj's
...
no functional change
yay wildcards
2021-05-09 12:57:26 -07:00
Kurt
cea2edb3e9
Add controls in one action
...
reduces the amount of control redraws
2021-05-09 12:10:32 -07:00
Kurt
96ea7f0b39
Fix toxtricity neutral StatNature generating
2021-05-08 08:29:20 -07:00
Kurt
a7f3ce5766
Leak mismatched forms thru the possible check
...
The EncDB doesn't specify form; the encounter methods verify Form.
This is actually a fix; pkm that can change forms aren't really encounter trades, but we shouldn't be strict matching here.
2021-05-08 08:13:27 -07:00
Kurt
ceede68861
Minor tweaks
2021-05-07 22:11:10 -07:00
Kurt
31142ee297
Replace some linq usage with direct logic
2021-05-06 23:26:38 -07:00
Kurt
fa5bc0d634
Set friendship after form set
...
Resolves GO galarian stunfisk, ty matt
2021-05-05 08:43:32 -07:00
Kurt
9826067a18
Handle latest custom folder path buttons correctly
...
no longer tab separated paths; just show the parent folder name.
2021-05-03 16:58:23 -07:00
Kurt
f063014879
Improve clarity of plugin load failures
2021-05-02 18:27:04 -07:00
sora10pls
6ed6e60840
Add PogoType + Requirements for Strange Egg encounters
...
Rationale behind this is explained in the accompanied commit in PGET: 7c2575d8a8
Co-Authored-By: Lusamine <30205550+Lusamine@users.noreply.github.com>
2021-04-30 21:13:28 -04:00