[Scummvm-cvs-logs] scummvm master -> 2be8db90ee8b8f427c1e3483b79b187e67183eb6
bluegr
md5 at scummvm.org
Mon Sep 26 04:30:01 CEST 2011
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
2be8db90ee AGI: Fixed bug #3196882 - "KQ3: PCSpeaker affects render mode"
Commit: 2be8db90ee8b8f427c1e3483b79b187e67183eb6
https://github.com/scummvm/scummvm/commit/2be8db90ee8b8f427c1e3483b79b187e67183eb6
Author: Filippos Karapetis (md5 at scummvm.org)
Date: 2011-09-25T19:23:42-07:00
Commit Message:
AGI: Fixed bug #3196882 - "KQ3: PCSpeaker affects render mode"
Changed paths:
engines/agi/agi.cpp
engines/agi/agi.h
engines/agi/preagi.cpp
diff --git a/engines/agi/agi.cpp b/engines/agi/agi.cpp
index 49b4335..4ed606c 100644
--- a/engines/agi/agi.cpp
+++ b/engines/agi/agi.cpp
@@ -525,6 +525,21 @@ AgiBase::~AgiBase() {
}
}
+void AgiBase::initRenderMode() {
+ _renderMode = Common::kRenderEGA;
+
+ if (ConfMan.hasKey("platform")) {
+ Common::Platform platform = Common::parsePlatform(ConfMan.get("platform"));
+ _renderMode = (platform == Common::kPlatformAmiga) ? Common::kRenderAmiga : Common::kRenderEGA;
+ }
+
+ if (ConfMan.hasKey("render_mode")) {
+ Common::RenderMode tmpMode = Common::parseRenderMode(ConfMan.get("render_mode").c_str());
+ if (tmpMode != Common::kRenderDefault)
+ _renderMode = tmpMode;
+ }
+}
+
AgiEngine::AgiEngine(OSystem *syst, const AGIGameDescription *gameDesc) : AgiBase(syst, gameDesc) {
// Setup mixer
@@ -620,23 +635,7 @@ void AgiEngine::initialize() {
}
}
- if (ConfMan.hasKey("render_mode")) {
- _renderMode = Common::parseRenderMode(ConfMan.get("render_mode").c_str());
- } else if (ConfMan.hasKey("platform")) {
- switch (Common::parsePlatform(ConfMan.get("platform"))) {
- case Common::kPlatformAmiga:
- _renderMode = Common::kRenderAmiga;
- break;
- case Common::kPlatformPC:
- _renderMode = Common::kRenderEGA;
- break;
- default:
- _renderMode = Common::kRenderEGA;
- break;
- }
- } else {
- _renderMode = Common::kRenderDefault;
- }
+ initRenderMode();
_buttonStyle = AgiButtonStyle(_renderMode);
_defaultButtonStyle = AgiButtonStyle();
diff --git a/engines/agi/agi.h b/engines/agi/agi.h
index d82bc58..07729b6 100644
--- a/engines/agi/agi.h
+++ b/engines/agi/agi.h
@@ -776,6 +776,8 @@ protected:
virtual void initialize() = 0;
+ void initRenderMode();
+
public:
GfxMgr *_gfx;
diff --git a/engines/agi/preagi.cpp b/engines/agi/preagi.cpp
index 8d407ec..0b5afc7 100644
--- a/engines/agi/preagi.cpp
+++ b/engines/agi/preagi.cpp
@@ -54,21 +54,7 @@ PreAgiEngine::PreAgiEngine(OSystem *syst, const AGIGameDescription *gameDesc) :
}
void PreAgiEngine::initialize() {
- if (ConfMan.hasKey("render_mode")) {
- _renderMode = Common::parseRenderMode(ConfMan.get("render_mode").c_str());
- } else if (ConfMan.hasKey("platform")) {
- switch (Common::parsePlatform(ConfMan.get("platform"))) {
- case Common::kPlatformAmiga:
- _renderMode = Common::kRenderAmiga;
- break;
- case Common::kPlatformPC:
- _renderMode = Common::kRenderEGA;
- break;
- default:
- _renderMode = Common::kRenderEGA;
- break;
- }
- }
+ initRenderMode();
_gfx = new GfxMgr(this);
_picture = new PictureMgr(this, _gfx);
More information about the Scummvm-git-logs
mailing list