SCI: add user option for high resolution graphics
Instead of choosing Windows as platform, users can now also simply click this option for Gabriel Knight 1 + King's Quest 6 Defaults to high resolution graphics
This commit is contained in:
parent
354a3af717
commit
0aa9924df1
7 changed files with 71 additions and 19 deletions
|
@ -95,6 +95,8 @@ SciEngine::SciEngine(OSystem *syst, const ADGameDescription *desc, SciGameId gam
|
|||
_console = 0;
|
||||
_opcode_formats = 0;
|
||||
|
||||
_forceHiresGraphics = false;
|
||||
|
||||
// Set up the engine specific debug levels
|
||||
DebugMan.addDebugChannel(kDebugLevelError, "Error", "Script error debugging");
|
||||
DebugMan.addDebugChannel(kDebugLevelNodes, "Lists", "Lists and nodes debugging");
|
||||
|
@ -222,6 +224,34 @@ Common::Error SciEngine::run() {
|
|||
_scriptPatcher = new ScriptPatcher();
|
||||
SegManager *segMan = new SegManager(_resMan, _scriptPatcher);
|
||||
|
||||
// Read user option for hires graphics
|
||||
// Only show/selectable for:
|
||||
// - King's Quest 6 CD
|
||||
// - King's Quest 6 CD demo
|
||||
// - Gabriel Knight 1 CD
|
||||
// TODO: Police Quest 4?
|
||||
// TODO: Check, if Gabriel Knight 1 floppy supports high resolution
|
||||
// TODO: Check, if Gabriel Knight 1 on Mac supports high resolution
|
||||
switch (getPlatform()) {
|
||||
case Common::kPlatformDOS:
|
||||
case Common::kPlatformWindows:
|
||||
// Only DOS+Windows
|
||||
switch (_gameId) {
|
||||
case GID_KQ6:
|
||||
if (isCD())
|
||||
_forceHiresGraphics = ConfMan.getBool("enable_high_resolution_graphics");
|
||||
break;
|
||||
case GID_GK1:
|
||||
if ((isCD()) && (!isDemo()))
|
||||
_forceHiresGraphics = ConfMan.getBool("enable_high_resolution_graphics");
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
};
|
||||
|
||||
// Initialize the game screen
|
||||
_gfxScreen = new GfxScreen(_resMan);
|
||||
_gfxScreen->enableUndithering(ConfMan.getBool("disable_dithering"));
|
||||
|
@ -805,6 +835,10 @@ bool SciEngine::isCD() const {
|
|||
return _gameDescription->flags & ADGF_CD;
|
||||
}
|
||||
|
||||
bool SciEngine::forceHiresGraphics() const {
|
||||
return _forceHiresGraphics;
|
||||
}
|
||||
|
||||
bool SciEngine::isBE() const{
|
||||
switch(_gameDescription->platform) {
|
||||
case Common::kPlatformAmiga:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue