Local Storage Queueing
TheCyberBrick opened this issue ยท 0 comments
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.