Kurt
723514e89c
Update 21.11.19 - Brilliant Diamond & Shining Pearl ( #3289 )
...
Big thanks to @SciresM @sora10pls @Lusamine @architdate @ReignOfComputer for testing and contributing code / test cases. Can't add co-authors from the PR menu :(
Builds will fail because azure pipelines not yet updated with net6.
2021-11-19 18:23:49 -08:00
Kurt
93d5f0886a
Update Overworld8RNG.cs
2021-10-17 17:40:38 -07:00
Kurt
910f9a651b
Fix CuteCharm frame yield off-by-one call index
...
Closes #3271 , thanks @valthisse !
2021-10-15 18:23:51 -07:00
Kurt
80d1712b72
Mark stuff with enums, remove unused arrays
...
Fix shuffled comments for FormInfo
Remove unnecessary Reset on ctor, all fields are already the default
2021-09-07 20:57:19 -07:00
Kurt
5079b4f311
Handle cutecharm ambiguous seed-frames
...
Iterate over all possible seed frames that yield the IV pattern; nature is right before IV rands (PID is algorithmic from gender ratio and prior nature call).
Split up GetFrames into stepwise methods, clean up parameter passing
2021-09-06 00:35:40 -07:00
Kurt
6112c9c91c
Condense into expression, add future-evo case
2021-08-22 00:06:02 -07:00
Kurt
92d1666970
Make PIDIV a readonly struct
...
Add tests to ensure the optimization remains in effect later
2021-08-21 18:24:38 -07:00
Kurt
65c5890e1f
Make NPCLock a readonly struct
...
Reduces allocation, improves locality of data since the contents take less size than a pointer (can pass byval)
2021-08-21 17:44:43 -07:00
Kurt
8f0fb902d1
ArgumentException -> ArgumentOutOfRangeException
2021-08-21 16:51:50 -07:00
Kurt
bedc52943e
Trailing commas
...
No functional change
2021-08-20 13:49:20 -07:00
Kurt
c6342a163f
Minor clean
...
variable swaps, simplifications
2021-08-20 13:42:25 -07:00
Kurt
5ec2b12ae5
Handle some warnings for release build
...
Unused usings; just make PIDType stuff visible.
2021-08-06 09:41:39 -07:00
Kurt
cc0397f087
Misc tweaks
...
Improved readability
2021-08-05 15:18:43 -07:00
Kurt
d1fb38b9cf
Set correlation with unrestricted details if failed
2021-08-04 19:58:25 -07:00
Kurt
26f7364a9c
Condense more expressions
...
Easier to read as pattern matching
2021-08-01 16:21:30 -07:00
Kurt
f46bda3f75
Condense some expressions, parameter names
...
Enable warnings as errors, so that future pull requests can't submit nullable warning content
2021-07-31 22:38:04 -07:00
Kurt
7c697a519e
Make EncounterArea parent reference protected, expose properties
2021-07-30 14:05:23 -07:00
Kurt
8e5e4487ba
Change interface for method call to less restricted
...
Don't need "Name" or "LongName" for these methods.
2021-07-13 18:22:04 -07:00
Kurt
46f50a3a56
Use named consts for magic gender values
...
More personal magic value comparisons
2021-07-13 18:22:04 -07:00
Kurt
103aa9aa4b
Revise EncounterArea and EncounterType for clarity ( #3228 )
...
EncounterArea now stores a more specific type'd array for encounter slots. Better iteration and less casting, as the nonspecific `Slots` fetch is rarely referenced.
EncounterType renamed to GroundTile to reflect how it actually works in Gen4. Was previously an ambiguous field that was clarified a little; we can describe it a little better now. Keep the GUI the same to not scare the end users.
Change Trash Byte properties to get/set a Span. Trash Byte legality checking easier on the garbage collector?
2021-06-29 20:58:06 -07:00
Kurt
b7f849cb42
Allow Charm type to be valid for pokewalker if same PID result
...
Closes #3227
Thanks @HappyLappy1 !
2021-06-25 13:10:39 -07:00
Kurt
a10b35190c
Minor tweaks
...
off by 1 max range for gen2 slot -> pk2
SetRandomIVs already sets IVs inside the method, retval is for knowing what the new value sare
show WC8 restricted version rather than defaulting to SH
pass the rand object rather than fetching for the current thread every loop for Unown & random IV shuffling
Use ToLowerInvariant for resource fetching, should resolve the turkish issue
Check typeof(T) first, not that we check for ToolStripItem or ContextMenuStrip with this function.
2021-06-24 00:36:04 -07:00
Kurt
64039b4070
Force shiny state of raids
...
Co-Authored-By: Matt <17801814+sora10pls@users.noreply.github.com>
2021-06-03 17:50:48 -07:00
Kurt
2c820bfbe9
Minor tweaks
2021-05-18 13:29:55 -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
6bce4eea14
Minor clean
...
Annotations (nullable), some switch cases for readability
2021-03-14 16:16:55 -07:00
Kurt
ac116e0d0b
Add more xmldoc / enum clean
2021-03-14 11:28:46 -07:00
Kurt
7b163147ef
Add case for special headbutt slots
...
Closes #3174
Add more xmldoc for SlotType
Import revised slot-type table, as we've removed "Special" from the regular trees.
ef4b1b2894
2021-03-11 20:52:00 -08:00
Kurt
5cc3322b83
Split RNG class into simple & enhanced
...
ARNG object doesn't need the reversal caches, saves 256KB of memory allocation
Move RNG algorithms & support logic into a subfolder
2021-03-10 22:30:30 -08:00
Kurt
155e0283ce
Inline some string logic, extract magic values, xmldoc
2021-03-09 21:31:53 -08:00
Kurt
74a5c03cd2
Clean check for overworld IVs
...
Closes #3150
Still need to remove some symbol encounter tables that are unused
2021-02-15 09:04:47 -08:00
Kurt
90f7de4b27
Update Overworld8RNG.cs
2021-02-14 21:52:34 -08:00
Kurt
34bb0f1fc0
Update Overworld8RNG.cs
...
because archit wants it
2021-02-14 21:45:39 -08:00
Kurt
927c83d660
Show seed in output, flag correlations that shouldn't
2021-02-14 16:00:43 -08:00
Kurt
267613270e
Generate slots/static per correlation if appropriate
...
Relocate the SetRandomEC at the tail end of the generator into the specific classes that set EC, so that our correlation generators don't have their EC overwritten at the end.
2021-02-14 12:27:14 -08:00
Kurt
1af27516e6
pid encounter type mismatch: returns
...
Keeping the cryptic message for now :)
2021-02-14 10:20:35 -08:00
Kurt
a65ab2accc
Flag wild slots that don't match 32bit correlation
2021-02-13 22:45:07 -08:00
Kurt
834d0d77ba
Create Overworld8RNG.cs
2021-02-13 18:18:14 -08:00
Kurt
48c2c43293
Re-dump slots with revised SlotType definitions
2021-02-01 23:43:52 -08:00
Kurt
e8fa28794c
Make PIDIV lighter weight, readonly
2021-01-27 16:52:04 -08:00
Kurt
f615814548
Add xmldoc, increase swish util flexibility
2021-01-07 15:34:26 -08:00
Kurt
5554651951
Mark scxorshift32 and xoro128p as ref structs
...
Prevents passing them as args, as intended. These are self mutating structs
2021-01-07 15:33:42 -08:00
Kurt
cc43550357
Simplify more expressions
2021-01-04 17:31:43 -08:00
Kurt
09089da14e
Use more expression return style
...
Reduces indentation & bracketing, a bit more concise
2021-01-01 17:08:49 -08:00
Kurt
6071834d4f
Fix gender ratio comparison for Colo starters
...
LockFinder:
https://projectpokemon.org/home/forums/topic/57375-pkhex-new-update-legality-errors-contribution-page/?do=findComment&comment=263736
CXDVerifier:
Use a switch expression for a more concise representation of logic
2020-12-29 20:25:05 -08:00
Kurt
e8c23f6644
Simplify some repeated comparisons with expressions
...
Less prone for bugs since it uses the same value for all comparisons without re-specifying
2020-12-29 00:37:59 -08:00
Kurt
c119f18af3
spec->species
2020-12-28 22:22:52 -08:00
Kurt
ee5349ff98
moar is or
2020-12-25 12:30:26 -08:00
Kurt
4a8a495d04
Condense some switch expressions
...
Should be it for now; exhaustively searched for all that made sense to change
2020-12-25 10:58:33 -08:00
Kurt
93910df2c6
Use new switch statements
2020-12-23 17:14:38 -08:00