Closes#729
1. Dark mode now applied correctly (was previously lacking)
2. Fixed terrain brush action (brush active is higher priority than drag, fix tile fetch)
3. Fixed writing of Building/structure labels; apply after Terrain
4. Single terrain brush form allowed, center to Field Editor on launch
Somewhat related: fix Show() load for non-ShowDialog() forms to center to parent.
Updates the Field Item Editor to render layers based on the entire map, and the per-patch positioning of each layer.
Import/export will gracefully handle upgrade/downgrade, and viewport import/export will gracefully update tiles rather than a per-acre basis.
Performance has also been slightly improved; no allocation is done anymore when updating the image.
Similar to PKHeX's batch editor, probably with some stubbed functionality.
Example to change Oak Trees to apple trees:
=ItemId=60000
.ItemId=60001
;
=ExtensionItemId=60000
.ExtensionItemId=60001
Example to unbury all items:
=IsBuried=True
.IsBuried=False
.IsDropped=True
Closes#156
turning off auto-r/w won't happen if the auto-r/w itself fails. still pops open a message saying error until you turn it off in the other window.
jp/en/zh -- only english has been translated (duh)
keep in mind this translates the text in the program, not the internal flag names.
not sure if other languages need to be supported; from PKHeX's experience, only spanish is updated (besides jp/zh), as most users speak english or are fine using the program in english.
pls localize villager names and item names for non-english :P -- preferrably automated from raw game dumps
Decentralizes pocket injection logic from SysBotUI so that other auto-injectors can be passed in (future? like terrain/overworld items).
Adds validation to not modify items if the pocket data doesn't have the expected layout.
Closes#47 by implementing things in a more abstract & extendable way. Thanks @jfmherokiller for the example implementation which served as an inspiration!