* don't have layer/terrain/encounter options twice
* don't crash when finding trainer elevation if map data is null
* update FacingOptions viewmodel when MoveType gets set (important for event template)
* use the primary map during ctrl+drag interactions, rather than the map under the cursor.
* make FilteringComboOptions handle bad selected index better (no crashes)
Legendary pokemon events each need 2 flags: 1 for "recent battle" and 1 for "capture". The legend template also includes an info textbox to show you how to reset the legendary battle if you want to. This is often done in a transition script, but you can do it anywhere. By default, HMA won't reset the battle for you: once you defeat the pokemon or run away, it'll stay gone until you reset it.
* fadescreen should use screenfades list
* map object graphics should use overworld sprites enum (allows finding events from the overworld sprites table)
* change field name from 'unused' to 'padding' for final part of object event data
opening/closing a trainer ID selection combobox in the trainer panel of the map editor no longer creates a token unless you actually change the selection
* Invisible characters now appear semi-visible in the map editor.
* You can now type into the "Movement Type" textbox to find the option you want faster
* Added some logic to AngleComboBox to auto-set some bindings if the ViewModel is a `FilteringComboOptions`.
* 'ladder' is a valid warp behavior
* when updating record pointers, make sure the type registers as a pointer
* when updating 'false' tables (for map editor events, for example) use the false table to track creating concretes for records, rather than using what's in the model.
* when adding a false table to the model, make sure we clear any pointers first
* allow the map editor to load if types/items names are not found
* improve trainer object template and UI -> allow switching between available trainers and choosing an existing trainer from the template.
if no OW sprites can be found, just return a list with the single 'default OW' sprite.
Handle the case where the OW table is null when trying to render an OW.
the default sprite from the list will have the correct palette, since it can pull palette info from what's pointing to the list, instead of just the palettes from the sprite pointers.
users got confused about making warps. Change the text to make it more clear that the input value is for the target warp, not the current warp. Add visuals to display the current warp as a number.
* creating a new map should be considered an autonomous operation for undo purposes
* support connection-objects for FireRed
* crash less when reading invalid map / layout data
* show correct hover square when hovering over neighbor maps with borders
* fix elevation names / map permissions
* don't update tile render info for the block editor if the x/y change is a no-op
*
* say width/height correctly in the tooltips of the map size handles
* less flickering during undo
* include default OW sprite instead of blank (for example, tutorial catch man in viridian city)
* speed up the initial script-check process that looks for default trainer sprites for each OW by not caring about the length of child scripts
* use proper thread locking during block cache invalidation and renewal so that undo doesn't mess up the number of blocks shown in the block panel