From 7d9b584a84e0d6c302ba262eb2a336ea7c638ef2 Mon Sep 17 00:00:00 2001 From: lolbot-iichan Date: Sun, 20 Jan 2019 18:39:16 +0300 Subject: WINTERMUTE: Add FoxTail registry flush method FoxTail requires Game.RegistryFlush() method to force saving of persistent settings --- engines/wintermute/base/base_game.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/engines/wintermute/base/base_game.cpp b/engines/wintermute/base/base_game.cpp index 81a34bd5bc..f5caaa8d2e 100644 --- a/engines/wintermute/base/base_game.cpp +++ b/engines/wintermute/base/base_game.cpp @@ -1260,6 +1260,21 @@ bool BaseGame::scCallMethod(ScScript *script, ScStack *stack, ScStack *thisStack return STATUS_OK; } +#ifdef ENABLE_FOXTAIL + ////////////////////////////////////////////////////////////////////////// + // [FoxTail] RegistryFlush + // Return value is never used + // Used at SaveGameSettings() and Game.RegistryFlush() + // Called after a series of RegWriteNumber calls + ////////////////////////////////////////////////////////////////////////// + else if (strcmp(name, "RegistryFlush") == 0) { + stack->correctParams(0); + ConfMan.flushToDisk(); + stack->pushNULL(); + return STATUS_OK; + } +#endif + ////////////////////////////////////////////////////////////////////////// // RegWriteNumber ////////////////////////////////////////////////////////////////////////// -- cgit v1.2.3