Commit Graph

1375 Commits

Author SHA1 Message Date
haven1433
130e9f1eb8 add metadata during create operations
for layout and blockmap
2022-10-28 17:29:34 -05:00
haven1433
19c15d96ed Record both collision ad tile 2022-10-28 17:10:40 -05:00
haven1433
74be3f4ac2 add RenderPrototype
and logic for initial tiles
2022-10-28 10:51:38 -05:00
haven1433
7a6a886c38 refactor 2022-10-28 08:42:20 -05:00
haven1433
87e4d8fcec bugfix 2022-10-27 22:48:36 -05:00
haven1433
b5e15ead3f draft
added right-click menu and a draft of the creation logic. Doesn't quite work right yet.
2022-10-27 21:37:05 -05:00
haven1433
6d56881685 ui improvements 2022-10-26 22:30:35 -05:00
haven1433
d9b9735d92 color update
orange was too close to red
2022-10-26 19:10:06 -05:00
haven1433
216ac5ebec improve arg recognition
signpost args are complicated. The app can now tell the difference between the different 'kinds'.
2022-10-26 07:39:26 -05:00
haven1433
b75c96030f use a no-change token when loading map scripts
this doesn't need to go in undo/redo. It's more in the 'deferred loading' category.
2022-10-25 07:17:08 -05:00
haven1433
a78ca56744 appending to a table should refresh the table view
so that new elements can be seen when in single-table-focus

don't write runs into other runs when changing pointers in text-pointer tables.
2022-10-23 20:09:47 -05:00
haven1433
c928418339 improve OW palette display
* if multiple OWs use the same sprite, it'll show the right palette in the highest table and tooltip now. Drilling down further levels will still show the sprite with the first palette, since at that level the sprite can't tell which palette it should use. This is similar to how the Ruby/Sapphire item sprites work.
2022-10-22 15:19:46 -05:00
haven1433
3615c5174c fix liquid crystal patch metadata bug
* add debug message for non-positive run lengths
* add a sanity check for the number of pokemon in a trainer team. In vanilla it'll never be more than 6, so put a reasonable cap of 1000 on it to prevent possible integer overflows
* make sure that a missing map names table doesn't cause issues
2022-10-21 07:40:17 -05:00
haven1433
8980c8f631 sanitize names 2022-10-20 22:58:44 -05:00
haven1433
a966a18831 fix ruby music naming bug 2022-10-20 22:51:05 -05:00
haven1433
e00b2d6187 add/remove destinations 2022-10-20 22:29:49 -05:00
haven1433
953fe52fb6 improve tuple model
* add fly spots to event list
* allow moving/deleting fly spots
* remove Elevation from base event interface
* improve header UI
2022-10-20 21:48:29 -05:00
haven1433
d80680270a header improvements
also fix a weird bug that can happen when pasting characters at the end of a text stream that needs to be repointed
2022-10-19 20:36:58 -05:00
haven1433
a371b65a15 fix bugs
* don't freeze when AMap saves
* allow edit->paste to target the ViewPort even if it doesn't have focus
* notify on repoint
* command to jump to data in the viewport
* show hover point in the corner
* finish script UI (add, remove, edit)
* find record fields when doing Show Uses
* tooltip for address for rom overview
2022-10-19 20:00:24 -05:00
haven1433
dc7878b0f0 bugfixes
* make sure the model length changes after importing a sprite causes the rom to auto-expand
* require less freespace by default as excess to a run being expanded, and require less freespace buffer placed after runs.
* fix double-click crashes reported by wet blanket
* if Ctrl+F is used before the rom finishes loading, wait for the rom to finish loading before trying to do the find.
*
2022-10-16 22:24:50 -05:00
haven1433
86bfec7b1f bugfixes
* python tool should support reading/writing tuples in tables
* writing `0` to a length in a table should update the children to be null (and delete the data)
* change an element count from 0 should create new data if the pointer is null
* creating new data via `@{` should update the length
* tested that this also works as expected with trainer teams (tpt)
* might have issues with ows, but they handle length differently
2022-10-16 00:06:34 -05:00
haven1433
74a3ef523d add safety code 2022-10-14 20:46:01 -05:00
haven1433
31b8f5e0c5 progress on scripts 2022-10-13 22:12:19 -05:00
haven1433
7b0ee88dae refactor 2022-10-13 22:11:59 -05:00
haven1433
0b5da64d09 first pass UI for scripts 2022-10-13 21:04:09 -05:00
haven1433
0e4ded5090 Complete first pass at repointer, start first pass at script collection 2022-10-13 19:47:42 -05:00
haven1433
a0254ef8ea fix script formatting bug
formatting a script should not remove inner anchors
2022-10-13 07:06:21 -05:00
haven1433
89166552cb fix loading bug
data didn't load correctly if a false pointer or text interrupted the data
2022-10-12 20:49:13 -05:00
haven1433
aafe651e0f code cleanup
initial pass at the data buttons. Maybe it'll end up just being a menu with a bunch of items, but I feel like with so many operations, they need to be a bit more organized than just a simple hierarchy.
2022-10-11 23:12:04 -05:00
haven1433
028f37adcf improve selection logic
selection is now based on nearest-neighbor instead of what's under the mouse
also show wild pokemon preview
2022-10-11 21:23:12 -05:00
haven1433
5c5f51fcc9 Sprite export improvement
Allow exporting indexed PNGs
Other changes:
* multi-select blocks
* edit borders
* fix castform export
2022-10-11 20:11:37 -05:00
haven1433
d2e88ad864 add border panel
currently empty
2022-10-10 22:25:32 -05:00
haven1433
f3aa78575c fix expansion / truncation issues 2022-10-10 21:47:22 -05:00
haven1433
ce3d307251 bug fixing
* fairy script wasn't adding correctly
* right-click menus for inner-pointers weren't showing the right addresses
* appending a table and then updating the new pointer to point into a new table wasn't clearing the old pointer location from the old anchor
* search was causing thread-lock issues
* Display As Text was causing thread-lock issues
* python tool needs to update related fields when updating a table (structType, child table length from parent)
* fix character set issues
* fix crashes with mapper when tables don't have expected elements
* fix showing map options when there's no mapper
* improve handling of custom character escape sequences
* truncate text in tooltips
2022-10-10 21:33:57 -05:00
haven1433
ac20599845 add scripts.money.cap for emerald
this is our first 4-byte constant, so I had to make some changes to how 4-byte constants worked.
* constref file needs to support 4-byte constants
* WordRun needs to be able to tell the difference between a constant that's matched to a table length (displayed as the table name) and a constant that is not matched to a table name (displayed as the number)
* Goto needs to be able to go to 4-byte constants
2022-10-09 22:44:52 -05:00
haven1433
84cb8bc143 fix event refresh issue after drawing 2022-10-09 22:16:56 -05:00
haven1433
743e3015b4 fix redo bug / improve block selection 2022-10-09 22:12:11 -05:00
haven1433
bad7cdd115 show the selected tile 2022-10-09 12:48:55 -05:00
haven1433
157c33b9ed undo/redo improvements
* make undo history smarter for block editing
2022-10-09 09:58:48 -05:00
haven1433
37f167356d block editing 2022-10-08 23:49:48 -05:00
haven1433
5aa83014db block editing 2022-10-08 21:45:12 -05:00
haven1433
cea8cfba01 tile panel improvements 2022-10-07 22:54:45 -05:00
haven1433
1fcd04d74d progress 2022-10-07 06:44:04 -05:00
haven1433
b31d84e03e make tileset animation code more flexible in preparation for supporting more games 2022-10-04 23:13:37 -05:00
haven1433
4317864b64 fix disappearing script section bug 2022-10-04 16:58:45 -05:00
haven1433
6de8951d6a Improve toml reading logic
If there's an error reading the toml, give an error rather than showing the crash dialog.
2022-10-02 00:16:15 -05:00
haven1433
0f3748419b lock like you mean it
change all instances of lock (runs) to lock (threadlock) so that there's just one master threadlock that's used when accessing / editing the runs collection.

All public methods that access or edit the runs collection are now protected by the threadlock.

PLEASE tell me I didn't accidentally cause a deadlock here...
2022-10-01 22:20:54 -05:00
haven1433
f243c66562 remember length base-16 base-10 choice between runs 2022-09-30 22:59:03 -05:00
haven1433
ad15f35193 undo should refresh the code tool 2022-09-30 16:10:33 -05:00
haven1433
23c4e3b9ac fix underscore bug in menu items
need to escape underscores so WPF doesn't turn them into underlines for keyboard shortcuts
2022-09-30 16:09:56 -05:00