Add Ink session recovery and Coolify Docker support
This commit is contained in:
Vendored
+19
@@ -147,6 +147,25 @@ async function handleGameApi(socket, method, args) {
|
||||
socket.emit('gameLoaded', { slot });
|
||||
return { success: true, result: true, running: true, slot };
|
||||
}
|
||||
case 'resumeGame':
|
||||
case 'resumeGame()': {
|
||||
const browserSave = typeof args[0] === 'string' ? args[0] : null;
|
||||
if (!browserSave) {
|
||||
return { success: false, error: 'missing_state', result: false };
|
||||
}
|
||||
const engine = new ink_engine_1.InkEngine(getStoryPath());
|
||||
engine.resumeGame(browserSave);
|
||||
sessions.set(socket.id, engine);
|
||||
return { success: true, result: true, running: engine.isRunning() };
|
||||
}
|
||||
case 'exportGameState':
|
||||
case 'exportGameState()': {
|
||||
const engine = sessions.get(socket.id);
|
||||
if (!engine?.isRunning()) {
|
||||
return { success: false, error: 'game_not_running', result: false };
|
||||
}
|
||||
return { success: true, result: true, savedState: engine.saveGame() };
|
||||
}
|
||||
case 'saveGame':
|
||||
case 'saveGame()': {
|
||||
const engine = sessions.get(socket.id);
|
||||
|
||||
Reference in New Issue
Block a user