ArrayV
ArrayV copied to clipboard
Java 14 sort, SMB3 shuffle, & bugfixes galore
Sup? Been having some fun with this project lately. I'd be happy to split these out into multiple branches if you want to cherry pick.
New features:
- Java 14 copypasta sort
- Super Mario Bros. 3 Matching Game shuffle
Bug Fixes:
- Highlights: Fix bounds checking in markArray and throw early.
- Previously, it would accept indices over 32767 with no immediate problems and cause pernicious crashes down the line in clearAllMarks.
- I've included a little test sort that intentionally causes the crash.
- JEnhancedOptionPane: "Use default" no longer accepts your input.
- ArrayManager: Improve error handling for custom distributions.
- If the file is nonexistent, malformed, or the user just clicks cancel, the selection is rejected and the previous one remains.
- ShufflePrompt, ShuffleDialog: Fix double update bugs in JList handlers
- I'm not actually sure what tool was used to generate these files, but I don't think I stepped outside the proper bounds, here.
- Perlin noise: Fix floating point error that lead the shuffler to sample a constant point
- I just used Math.nextUp, which is basically just
*(float*)(*((int*)&randomStart) + 1)
. The real fix is to use doubles.
- I just used Math.nextUp, which is basically just