From 42028e984fa70c7fbb4536f1146161942e6fac40 Mon Sep 17 00:00:00 2001 From: Travis Howell Date: Sun, 22 Feb 2004 03:08:18 +0000 Subject: Enable and use VAR_VOICE_MODE svn-id: r12979 --- scumm/saveload.cpp | 4 ++++ scumm/scumm.h | 1 + scumm/scummvm.cpp | 4 ++++ scumm/vars.cpp | 4 ++-- 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/scumm/saveload.cpp b/scumm/saveload.cpp index c7316fae56..e4159a3ed4 100644 --- a/scumm/saveload.cpp +++ b/scumm/saveload.cpp @@ -200,6 +200,10 @@ bool ScummEngine::loadState(int slot, bool compat, SaveFileManager *mgr) { _scummVars[VAR_CAMERA_ACCEL_Y] = _scummVars[110]; } + // Sync with current config setting + if (_version >= 7) + VAR(VAR_VOICE_MODE) = ConfMan.getBool("subtitles"); + // We could simply dirty colours 0-15 for 16-colour games -- nowadays // they handle their palette pretty much like the more recent games // anyway. There was a time, though, when re-initializing was necessary diff --git a/scumm/scumm.h b/scumm/scumm.h index d3794445d2..e64c033a0c 100644 --- a/scumm/scumm.h +++ b/scumm/scumm.h @@ -1223,6 +1223,7 @@ public: byte VAR_CLICK_AREA; byte VAR_BLAST_ABOVE_TEXT; + byte VAR_VOICE_MODE; }; // This is a constant lookup table of reverse bit masks diff --git a/scumm/scummvm.cpp b/scumm/scummvm.cpp index c6b747ee5a..50e4ffbac4 100644 --- a/scumm/scummvm.cpp +++ b/scumm/scummvm.cpp @@ -618,6 +618,7 @@ ScummEngine::ScummEngine(GameDetector *detector, OSystem *syst, const ScummGameS VAR_CLICK_AREA = 0xFF; VAR_BLAST_ABOVE_TEXT = 0xFF; + VAR_VOICE_MODE = 0xFF; // Use g_scumm from error() ONLY g_scumm = this; @@ -1200,6 +1201,9 @@ void ScummEngine::initScummVars() { VAR(VAR_CURRENT_LIGHTS) = LIGHTMODE_actor_base | LIGHTMODE_actor_color | LIGHTMODE_screen; } + if (_version >= 7) + VAR(VAR_VOICE_MODE) = ConfMan.getBool("subtitles"); + VAR(VAR_CHARINC) = 4; talkingActor(0); } diff --git a/scumm/vars.cpp b/scumm/vars.cpp index df6b9109f1..5a12cc2291 100644 --- a/scumm/vars.cpp +++ b/scumm/vars.cpp @@ -194,7 +194,7 @@ void ScummEngine_v7::setupScummVars() { VAR_PERFORMANCE_2 = 27; VAR_GAME_LOADED = 29; VAR_V6_EMSSPACE = 32; - //VAR_VOICE_MODE = 33; // 0 is voice, 1 is voice+text, 2 is text only + VAR_VOICE_MODE = 33; // 0 is voice, 1 is voice+text, 2 is text only VAR_RANDOM_NR = 34; VAR_NEW_ROOM = 35; VAR_WALKTO_OBJ = 36; @@ -292,7 +292,7 @@ void ScummEngine_v8::setupScummVars() { VAR_NEW_ROOM = 32; VAR_WALKTO_OBJ = 33; - //VAR_VOICE_MODE = 39; // 0 is voice, 1 is voice+text, 2 is text only + VAR_VOICE_MODE = 39; // 0 is voice, 1 is voice+text, 2 is text only VAR_GAME_LOADED = 40; VAR_LANGUAGE = 41; -- cgit v1.2.3