Add FlushUpdates and events for players/saves debounced updates - #227
Merged
Conversation
tudddorrr
force-pushed
the
flush-debounced-updates
branch
3 times, most recently
from
August 4, 2026 01:39
1390ec9 to
f8ae6f9
Compare
tudddorrr
force-pushed
the
flush-debounced-updates
branch
from
August 4, 2026 19:13
f8ae6f9 to
5490315
Compare
tudddorrr
force-pushed
the
flush-debounced-updates
branch
from
August 4, 2026 19:43
5490315 to
c65b010
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Debounced API overhaul
DebouncedAPIis now generic overTReturnDataandTUpdateResult, enabling callers to receive typed results from debounced operations instead of fire-and-forget voids.Player.SetProp,DeleteProp, and their array variants now returnTask<PlayerUpdateResult>, letting callers await the outcome and inspect rejected props inline.Talo.Saves.UpdateCurrentSaveandDebounceUpdatenow returnTask<SaveUpdateResult>with the updated save on success.Completion signals and flush support
OnPlayerUpdated(bool)andOnSaveUpdated(bool, GameSave)events that fire after each debounced settle, so UI can react without polling.FlushUpdates()on both APIs drains any pending trailing calls and returns aFlushResultenum (NothingPending,Success,Failure).TaloManager.OnApplicationQuitnow flushes events, player updates, and save updates before the process exits, preventing silent data loss.Sample and documentation updates
SetPropsample now awaits the result and shows rejection reasons inline instead of relying on a global event listener.OnSaveUpdatedfor save feedback instead of manually toggling button text after awaiting.