Today, I set out to finish the first major addition to Abiathar since its public release: the tileinfo editor. I figured out a very effective (and enterprisey) method of updating all the tileinfo overlay instances when a property is changed. When the Tile Property Modifier tool changes a tile, it will send a NotifyTileinfoChange message through its state accessor to Abiathar Core, which will then raise MarkDirty on all planes that report HasTileinfo for that plane.
Armed with that working, it was trivial to put in other nice features like property copying and animation linking. There was in issue involving the animation target highlight on background tiles, but that was fixed by checking which tileinfo helper was being used. (Also, it's kind of a pain that the ComboBox control in DropDownList mode won't let you just set the SelectedText property, but that was an entirely different bug.) After some more testing, I decided it was release-ready.
Documentation is important, so I updated the appropriate sections, also updating screenshots of GUIs that had been changed. With the new help file uploaded, the update files in place, and testing done, I flipped the switch on the update (and wrote a little post about it on the PCKF thread). It met with great success, but just a few hours after the release, I myself noticed a horrifying bug: if a gamemaps file was loaded that did not have a level in slot 0, Abiathar would erase all the levels. I fixed it very quickly (and also put in the code for the Instant Carma reverser I'd been working on) and reuploaded it as v1.1.1.
No comments:
Post a Comment