Add: Campsite Editor to Map tab.
Allows users to set whether there is or is not a villager visiting the campsite, allows selecting that visitor and to edit the visit timestamp (defaults to current timestamp override so visitor is there on same day load).
Back-tracked offsets from old Cylindircal Earth save schemas for old save revs.
If campsite is not unlocked on the save, the UI is locked out with a message.
Cleanup: Moved UpdateFruitsFlag to misc editor class over save class because that was bad form. Oops.
* Fix loading player house and room dumps
* Check converted house/room data lengths rather instead of the imported dunmp's
* Fix downgrading player house format
Closes#523
Thanks @Zelfild for identifying the problematic indexes!
Skips over these two indexes on give-all, and skips over them when spawning a set of DIY items onto the ground.
Added control-key to set all IsNew to false instead of true (when doing GiveAll)
To make dumping/loading designs match other dumping/loading buttons (terrain, acre and so on)
+ clicking on "Dump/Load Design" will draw a context menu with 4 options (2 if it's only one design pattern e.g. town flag).
+ when loading designs, I made the Listbox with the design names repopulate (update names) and select the user-selected design instead of going to index = 0;
+ when loading all designs I open a prompt to update "values" or not, instead of by default updating them.
+ fixed file name of dumped singular pro designs to .nhpd instead of .nhd lol
c1bc5ae97f
Add Vertical spawn mode, since people like to do that for their treasure islands
Co-Authored-By: MadDanEccles <5344903+MadDanEccles@users.noreply.github.com>
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
hold ctrl+alt(+shift for full map) to replace all items on the map that you tap, with the item from the editor.
don't mix & match field items (trees) with regular items, cuz we can't verify size matching for those. Field Items return "unknown size".
v1.5 increased the size of GSaveLightMemory by 0xC each; with 160 entries, everything stored after this field (at 0x2F84) increased its offset by 0x780.
GSaveItemName ClothesPTops; // @0x14c size 0x8, align 4
s16 _58b5e808; // @0x154 size 0x2, align 2
s8 ClothesPTarget; // @0x156 size 0x1, align 1
Should be possible to convert the first revision of villager data to the current format and vice versa. Someone would need to document how they pre-fill these new fields (listed above).
The second parameter of `Array.CopyTo` takes an integer that represents the index in array at which copying begins. Therefore in this case it should be set to 0 instead of the array's length.
Setting a field item with the snap active will align it to the major gridlines. This will prevent the user from setting un-interactable objects (rocks, trees) unintentionally.
Having the auto-handle extension tiles will now delete all associated tiles when issuing a delete command on an extension tile, rather than just deleting the extension tile.
Change friendship here.
Can also cheat all friendships (of all villagers, for all saved players) to 255 by shift clicking the drop-down button instead.