feat: expose stable overworld checkpoints to mods

This commit is contained in:
MaxTomahawk
2026-08-07 14:49:45 +02:00
parent 0399ad040f
commit 6e94625f2a
6 changed files with 568 additions and 15 deletions
+13
View File
@@ -1131,4 +1131,17 @@ function Game:restoreSave(loaded, recovered)
end
end
-- Reconstruct a previously validated runtime checkpoint without replaying the
-- ordinary CONTINUE lifecycle. In particular, map onEnter scripts and
-- save.loading/save.loaded events must not run a second time. Validation,
-- identity checks and transactional rollback live in Checkpoint.lua.
function Game:restoreCheckpointSave(loaded)
self.save = loaded
self:adoptSave(loaded)
while self.stack:top() do self.stack:pop() end
self.stack:push(self.overworld, loaded.player.map,
loaded.player.x, loaded.player.y, loaded.player.facing,
{ via = "checkpoint", checkpoint = true })
end
return Game