aboutsummaryrefslogtreecommitdiff
path: root/engines/tsage
diff options
context:
space:
mode:
authorStrangerke2014-01-01 16:30:02 +0100
committerStrangerke2014-01-01 16:30:02 +0100
commitbade0e45b0ca0b550019a9bd3cea92a186300dcf (patch)
treee561ec8e6282c91cb1a45e04783f002988ba2759 /engines/tsage
parent92b8dbf1ada9a68a3e8b541ef66c4686b49e223b (diff)
downloadscummvm-rg350-bade0e45b0ca0b550019a9bd3cea92a186300dcf.tar.gz
scummvm-rg350-bade0e45b0ca0b550019a9bd3cea92a186300dcf.tar.bz2
scummvm-rg350-bade0e45b0ca0b550019a9bd3cea92a186300dcf.zip
TSAGE: R2R Demo - Fix some incomplete tests on GF_DEMO
Diffstat (limited to 'engines/tsage')
-rw-r--r--engines/tsage/events.cpp2
-rw-r--r--engines/tsage/globals.cpp64
-rw-r--r--engines/tsage/graphics.cpp5
3 files changed, 38 insertions, 33 deletions
diff --git a/engines/tsage/events.cpp b/engines/tsage/events.cpp
index 6baa654214..0ba60384bf 100644
--- a/engines/tsage/events.cpp
+++ b/engines/tsage/events.cpp
@@ -156,7 +156,7 @@ void EventsClass::setCursor(CursorType cursorType) {
// No cursor
g_globals->setFlag(122);
- if ((g_vm->getFeatures() & GF_DEMO) || (g_vm->getGameID() != GType_Ringworld)) {
+ if ((g_vm->getGameID() != GType_Ringworld) || ((g_vm->getGameID() == GType_Ringworld) && (g_vm->getFeatures() & GF_DEMO))) {
CursorMan.showMouse(false);
return;
}
diff --git a/engines/tsage/globals.cpp b/engines/tsage/globals.cpp
index 50d4b4e008..9b1b0f1dcb 100644
--- a/engines/tsage/globals.cpp
+++ b/engines/tsage/globals.cpp
@@ -64,17 +64,39 @@ Globals::Globals() : _dialogCenter(160, 140), _gfxManagerInstance(_screenSurface
_stripNum = 0;
_gfxEdgeAdjust = 3;
- if (g_vm->getFeatures() & GF_DEMO) {
- _gfxFontNumber = 0;
- _gfxColors.background = 6;
- _gfxColors.foreground = 0;
- _fontColors.background = 255;
- _fontColors.foreground = 6;
- _dialogCenter.y = 80;
- // Workaround in order to use later version of the engine
- _color1 = _gfxColors.foreground;
- _color2 = _gfxColors.foreground;
- _color3 = _gfxColors.foreground;
+ if (g_vm->getGameID() == GType_Ringworld) {
+ if (g_vm->getFeatures() & GF_DEMO) {
+ _gfxFontNumber = 0;
+ _gfxColors.background = 6;
+ _gfxColors.foreground = 0;
+ _fontColors.background = 255;
+ _fontColors.foreground = 6;
+ _dialogCenter.y = 80;
+ // Workaround in order to use later version of the engine
+ _color1 = _gfxColors.foreground;
+ _color2 = _gfxColors.foreground;
+ _color3 = _gfxColors.foreground;
+ } else if (g_vm->getFeatures() & GF_CD) {
+ _gfxFontNumber = 50;
+ _gfxColors.background = 53;
+ _gfxColors.foreground = 0;
+ _fontColors.background = 51;
+ _fontColors.foreground = 54;
+ _color1 = 18;
+ _color2 = 18;
+ _color3 = 18;
+ } else {
+ // Floppy version
+ _gfxFontNumber = 50;
+ _gfxColors.background = 53;
+ _gfxColors.foreground = 18;
+ _fontColors.background = 51;
+ _fontColors.foreground = 54;
+ // Workaround in order to use later version of the engine
+ _color1 = _gfxColors.foreground;
+ _color2 = _gfxColors.foreground;
+ _color3 = _gfxColors.foreground;
+ }
} else if (g_vm->getGameID() == GType_BlueForce) {
// Blue Force
_gfxFontNumber = 0;
@@ -94,26 +116,6 @@ Globals::Globals() : _dialogCenter(160, 140), _gfxManagerInstance(_screenSurface
_color2 = 15;
_color3 = 4;
_dialogCenter.y = 100;
- } else if ((g_vm->getGameID() == GType_Ringworld) && (g_vm->getFeatures() & GF_CD)) {
- _gfxFontNumber = 50;
- _gfxColors.background = 53;
- _gfxColors.foreground = 0;
- _fontColors.background = 51;
- _fontColors.foreground = 54;
- _color1 = 18;
- _color2 = 18;
- _color3 = 18;
- } else {
- // Ringworld
- _gfxFontNumber = 50;
- _gfxColors.background = 53;
- _gfxColors.foreground = 18;
- _fontColors.background = 51;
- _fontColors.foreground = 54;
- // Workaround in order to use later version of the engine
- _color1 = _gfxColors.foreground;
- _color2 = _gfxColors.foreground;
- _color3 = _gfxColors.foreground;
}
_screenSurface.setScreenSurface();
_gfxManagers.push_back(&_gfxManagerInstance);
diff --git a/engines/tsage/graphics.cpp b/engines/tsage/graphics.cpp
index fa3ed33302..97857aca34 100644
--- a/engines/tsage/graphics.cpp
+++ b/engines/tsage/graphics.cpp
@@ -1390,7 +1390,10 @@ void GfxManager::copyFrom(GfxSurface &src, const Rect &srcBounds, const Rect &de
GfxFont::GfxFont() {
- _fontNumber = (g_vm->getFeatures() & GF_DEMO) ? 0 : 50;
+ if ((g_vm->getGameID() == GType_Ringworld) && (g_vm->getFeatures() & GF_DEMO))
+ _fontNumber = 0;
+ else
+ _fontNumber = 50;
_numChars = 0;
_bpp = 0;
_fontData = NULL;