Commit graph

8322 commits

Author SHA1 Message Date
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
sora10pls
e330eb5cfc Add current Meowth Distribution Raids 2021-04-29 20:08:16 -04:00
Kurt
2bfcdaf148 Update LegalityAnalysis.cs 2021-04-28 18:22:39 -07:00
CanoeHope
c1cce9a892
Correct Colosseum/XD Item Quantities (#3203)
* Update SAV3Colosseum.cs

* Update SAV3XD.cs
2021-04-28 16:55:37 -07:00
CanoeHope
747d6ed6c7
Fix Colosseum/XD Max Money (#3202)
* Update SAV3Colosseum.cs

* Update SAV3XD.cs
2021-04-28 11:58:26 -07:00
Kurt
91557d0180 Don't defer on hidden ability change 2021-04-25 00:11:15 -07:00
Lusamine
e5867ce512 Add NormalEncountRigel2 block and Pokedex Rec block 2021-04-23 17:41:54 -05:00
Lusamine
eceb498da3 Fix Gen 2 roamer locations 2021-04-23 15:52:54 -05:00
sora10pls
00e88b2abd Add World Penguin Day distribution Raids 2021-04-23 11:39:20 -04:00
Kurt
e36fdd3cb6 Update EncounterStatic8ND.cs 2021-04-22 22:32:17 -07:00
Kurt
efb3d9aeac Add inaccessible den-rank checks
Rotom Bike water upgrade isn't available until you have sufficient progress, so you can't get these dens with the lowest rank.

Co-Authored-By: Lusamine <30205550+Lusamine@users.noreply.github.com>
2021-04-22 21:47:25 -07:00
Kurt
f66662b8db More deferral tweaks for non-HA having HA 2021-04-22 13:47:33 -07:00
Kurt
b049c82284 Update SAV_MysteryGiftDB.cs 2021-04-21 19:36:10 -07:00
Kurt
8e1be1f911 Pre-filter gifts that aren't available for current save 2021-04-21 19:28:01 -07:00
Kurt
5607d833be Remove affixed on none-ribbon
don't care about remove all legal retaining if not removed
2021-04-21 19:19:58 -07:00
Kurt
8483dc241d Update MarkVerifier.cs 2021-04-21 19:12:50 -07:00
Kurt
802275ced0 Fix recently loaded tracking
Not present would return instantly; just chain it with the remove tail
2021-04-21 19:02:30 -07:00
Kurt
7256ff0a7f Check if the Shedinja's encounter can have marks
Not all gen8 encounters can have marks (nest, go), so use the regular method.
2021-04-21 18:52:24 -07:00
Kurt
b89c4fb17f Database load on invalid party counts 2021-04-21 18:33:57 -07:00
Kurt
2aed4c3118 Add shedinja dropped ribbons/marking considerations
Nice bug ya got there, gamefreak.

Coulda cleared the AffixedRibbon value instead of copying it on Shedinja creation, and it would have made this unnecessary.

Please ditch the Affixed Ribbon gimmick for future games, thanks!
2021-04-21 15:20:16 -07:00
Kurt
25565e6f07 More pattern matching expressions
Shapes are fancy; nested pattern checks
2021-04-20 02:17:28 -07:00
Kurt
9dfa1077ee Rename internal PKMInfo class to match batch names 2021-04-20 01:50:47 -07:00