Commit Graph

2483 Commits

Author SHA1 Message Date
Haven1433
5beb09325e add thumb code table for move animation script commands 2022-05-13 22:45:42 -05:00
Haven1433
132bc95fa1 add support for starter editing in FR/LG 2022-05-13 22:37:08 -05:00
Haven1433
5780a52a3a fix duplicate goto bug 2022-05-12 22:51:12 -05:00
Haven1433
5bcc747eb3 fix filtering 2022-05-12 22:25:57 -05:00
Haven1433
c9e2f831c1 fix repoint menu background 2022-05-12 21:51:18 -05:00
Haven1433
68c895b7d8 add multichoice text to the decap list 2022-05-12 21:51:02 -05:00
Haven1433
dd8bba7cab make unused ints appear in grey 2022-05-12 18:20:45 -05:00
Haven1433
af4844643e apply angles to tool panel 2022-05-12 18:18:30 -05:00
Haven1433
9485b70036 make the buttons bigger 2022-05-12 08:05:12 -05:00
Haven1433
0ee6c97617 Add ips/ups patch creation support
right-click on a tab, choose to create a patch from that tab to the next tab to the right
2022-05-12 08:05:04 -05:00
Haven1433
82fa7c607b fix related table logic for constant-length tables 2022-05-10 08:25:15 -05:00
Haven1433
9953a939ff add name text lists to the decap tool 2022-05-10 07:46:19 -05:00
Haven1433
63579e3173 add version to title bar 2022-05-09 23:28:46 -05:00
Haven1433
70b70d8685 add useitem animation 2022-05-09 23:28:39 -05:00
Haven1433
9d9e65bca5 update tables 2022-05-09 23:19:49 -05:00
Haven1433
6730940fd9 patch application should be more careful with metadata
don't mark the metadata as changed until we're ready to actually use the token
2022-05-09 22:38:43 -05:00
Haven1433
b63ed0154c fix right-click menus for table tool
the right-click menu was getting messed up since the textbox was going away whenever it lost focus... which happens every time we open a context menu. The new code now specifically keeps the TextBox around in situations where the contextmenu is opening.
2022-05-09 21:07:04 -05:00
Haven1433
5c31f0f84d fix copy/paste for pcs strings with escape codes 2022-05-09 21:04:17 -05:00
Haven1433
b43a0647b9 Fix ItemEffect EditScope issues
when repoint causes a new
2022-05-09 20:24:52 -05:00
Haven1433
809245ffc6 allow find to ignore excess whitespace 2022-05-09 07:26:22 -05:00
Haven1433
4cf8df8f8d allow finding 4-byte words 2022-05-09 07:26:06 -05:00
Haven1433
e1a5ac5b57 add DoomDesire animation 2022-05-08 23:44:28 -05:00
Haven1433
93852078bd Only clear pointer data if the new value is different from the written value
We weren't handling this correctly for offset pointers
2022-05-08 23:14:35 -05:00
Haven1433
04ae9c54ff first pass at a decap util 2022-05-08 23:01:18 -05:00
Haven1433
9c56704249 add new pc options text table 2022-05-08 22:59:49 -05:00
Haven1433
f3d6543a1b fix dispatch bug during Find 2022-05-08 22:59:35 -05:00
Haven1433
cf2c2c4b18 allow lists with null elements
I meant to support this before, but apparently didn't. Add for type chart readability
2022-05-08 22:18:36 -05:00
Haven1433
ea37075c43 Delete from end of file should not cause asserts 2022-05-06 22:26:43 -05:00
Haven1433
d1166893ba Fix metadata issue for extending child arrays from parent arrays
When we extend a child array from a parent array expanding, it's possible to knock out another child of the same parent, which then needs to be re-added. Doing so makes us lose the pointers of that child, which is a metadata bug.

Just like with the constant, make sure that updating the child table length needs to check that all associated pointers exist.
2022-05-06 21:35:22 -05:00
Haven1433
02d16518d1 fix scripts.specials.thumb length in FR/LG 2022-05-05 20:34:17 -05:00
Haven1433
2d2f4b2b6f allow 2-byte constants 2022-05-05 20:01:14 -05:00
Haven1433
484dc9c238 Fix metadata load edge cases with overlapping tables with constant length
These tables are first loaded with the wrong size and then updated once the constant is available. The tables need to clear correctly in the case of a conflict.
2022-05-05 19:57:36 -05:00
Haven1433
90512e9c51 Refresh() should update headers 2022-05-05 19:56:14 -05:00
Haven1433
0925b97d2a fix UPS Patch bug 2022-05-03 22:12:03 -05:00
Haven1433
485b307115 Don't require filler arguments to be explicit 2022-05-03 10:50:57 -05:00
Haven1433
5bccc8258f improve script parsing
allow enum tables to parse numeric values
2022-05-03 06:51:04 -05:00
Haven1433
659a617bb0 fix failing test
handle tuple selection out-of-range issues
2022-05-02 21:18:29 -05:00
Haven1433
dd2d64979b Use multiple templates for combobox dropdown items
We don't need to create PixelImage objects for text lists
2022-05-02 21:12:50 -05:00
Haven1433
542f204e07 fix stream copy issues
* do include a leading + for the first element if the stream allows for zero elements
* don't include a closing [] for the deep copied stream if there's already one in the stream
2022-05-02 21:05:04 -05:00
Haven1433
ea62ba4e0d fix tuple combo box interactions 2022-05-02 20:47:49 -05:00
Haven1433
42a61367b2 Enums in Tuples should have default text 2022-04-28 21:15:48 -05:00
Haven1433
a880adaf23 Fix TableGroups Upgrade bug
When upgrading from an older version, tablegroups get duplicated. Fix that.
* Using the same DefaultHash trick as with Lists, we can track which TableGroups have been edited by users. Remove all the TableGroups that haven't been edited during upgrade. Then add all the new TableGroups. Don't add a TableGroup that contains a Table that we've already added.
2022-04-28 20:43:43 -05:00
Haven1433
80ba9eeb2c add introscene biking character sprites 2022-04-28 09:06:40 -05:00
Haven1433
ba1a493aec version bump 2022-04-27 22:55:02 -05:00
Haven1433
e79f865ff8 Don't use HashCode
GetHashCode does not return consistent values. Use SHA256 instead.
2022-04-27 22:33:10 -05:00
Haven1433
f76c2c4736 Hand-Modified Lists shouldn't update during version upgrade
If the user modified a list or added new elements to it, don't modify the list during version upgrades. If the list has never been modified, go ahead and update the list based on the new default metadata.

This is implementing by storing a 'Default Hash' for lists. The user that modifies the list will leave the default hash alone, and the program can notice the mismatch and avoid updating the modified list.
2022-04-27 22:04:19 -05:00
Haven1433
48bd5ac866 Update PagedViewModel button implementation
* replace palette buttons with angle buttons
* replace prev/next commands with prev/next methods and CanExecute properties. Wrap these methods with Click handlers.
* In the click handlers, do some hacky logic to prevent auto-scrolling in response to the button getting enabled/disabled.
2022-04-27 07:04:41 -05:00
Haven1433
21b4056859 New tabs should have PokemonModel functionality
I may eventually rename PokemonModel to GbaModel or something. But it has a number of features (pointers, etc) that users want to use with other file types.
2022-04-22 21:34:24 -05:00
Haven1433
8ecae8ad9f Update Tilemap_UsesPalettePage_PaletteContainsPage
The logic to pull the data for this method used to actually load the entire model for Ruby/FireRed/Emerald. This is _very_ slow and made the tests start slowly, since enumerating them was such a cost.
The MemberData for this Theory now does all its work by looking only at tableReference, not actual models. This lets it load much faster.
Since it loads so fast, we can afford to check all 9 games that we support: R/S 1.0/1.1, FR/LG 1.0/1.1, and Emerald. So instead of only verifying R/FR/E, we can verify all 9.
Starting a test run or debug session is now much faster.
2022-04-22 21:33:17 -05:00
Haven1433
a2174ed61f differentiate between different toml files using the full file name
.gba files will continue to use <name>.toml for <name>.gba files. All other files will use <name>.<extension>.toml. This is to allow you to store metadata for both your .gba file and your .sav file if you want to. And maybe even an .ips or .ups if you get fancy.
2022-04-20 22:31:43 -05:00