[ANGRY PIXEL] The Betweenlands

[ANGRY PIXEL] The Betweenlands

24M Downloads

Local Storage Queueing

TheCyberBrick opened this issue ยท 0 comments

commented

Currently ILocalStorage#linkChunk(Chunk) and ILocalStorage#unlinkChunk(Chunk) require the chunk to exist and be loaded which can cause cascading gen etc.
A new enum parameter (immediate/queue) should be added.
Immediate mode works same way as it currently does, i.e. loading the chunk.
Queue mode does not load the chunk - if the chunk already exists and is loaded then it acts like immediate, otherwise the link/unlink action is stored in a seperate file for the chunk (or chunk in region file) to then be executed once the chunk is loaded/created by the game.
The ILocalStorageHandler methods that get local storage will also need a new enum (existing/existing_or_queued/queued). Methods that add/remove local storage use the immediate/queue enum.