aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugene Sandulenko2005-08-13 19:41:11 +0000
committerEugene Sandulenko2005-08-13 19:41:11 +0000
commit8c4494578e8273841473934facb68e6476ee16ac (patch)
treefebcdc982e120914997bdb45bffb745751f39c4a
parent91a96ef5cdd9c71d4434768d87d0a46c34e6d33c (diff)
downloadscummvm-rg350-8c4494578e8273841473934facb68e6476ee16ac.tar.gz
scummvm-rg350-8c4494578e8273841473934facb68e6476ee16ac.tar.bz2
scummvm-rg350-8c4494578e8273841473934facb68e6476ee16ac.zip
Fix bug #1258537 "ITE: Introduction text is black"
svn-id: r18677
-rw-r--r--saga/gfx.cpp7
-rw-r--r--saga/interface.cpp6
-rw-r--r--saga/saga.cpp2
-rw-r--r--saga/scene.h2
4 files changed, 9 insertions, 8 deletions
diff --git a/saga/gfx.cpp b/saga/gfx.cpp
index 8f3070fe50..ca8f566e76 100644
--- a/saga/gfx.cpp
+++ b/saga/gfx.cpp
@@ -26,6 +26,7 @@
#include "saga/saga.h"
#include "saga/gfx.h"
#include "saga/interface.h"
+#include "saga/scene.h"
#include "common/system.h"
@@ -175,7 +176,7 @@ void Gfx::setPalette(PalEntry *pal) {
}
// Make 256th color black. See bug #1256368
- if (_vm->getFeatures() & GF_MAC_RESOURCES)
+ if (_vm->getFeatures() & GF_MAC_RESOURCES && !_vm->_scene->isInIntro())
memset(&_currentPal[255 * 4], 0, 4);
_system->setPalette(_currentPal, 0, PAL_ENTRIES);
@@ -238,7 +239,7 @@ void Gfx::palToBlack(PalEntry *src_pal, double percent) {
}
// Make 256th color black. See bug #1256368
- if (_vm->getFeatures() & GF_MAC_RESOURCES)
+ if (_vm->getFeatures() & GF_MAC_RESOURCES && !_vm->_scene->isInIntro())
memset(&_currentPal[255 * 4], 0, 4);
_system->setPalette(_currentPal, 0, PAL_ENTRIES);
@@ -312,7 +313,7 @@ void Gfx::blackToPal(PalEntry *src_pal, double percent) {
}
// Make 256th color black. See bug #1256368
- if (_vm->getFeatures() & GF_MAC_RESOURCES)
+ if (_vm->getFeatures() & GF_MAC_RESOURCES && !_vm->_scene->isInIntro())
memset(&_currentPal[255 * 4], 0, 4);
_system->setPalette(_currentPal, 0, PAL_ENTRIES);
diff --git a/saga/interface.cpp b/saga/interface.cpp
index 88ce03b5fe..7e0d2402f1 100644
--- a/saga/interface.cpp
+++ b/saga/interface.cpp
@@ -329,7 +329,7 @@ bool Interface::processAscii(uint16 ascii, bool synthetic) {
switch (_panelMode) {
case kPanelNull:
if (ascii == 27) { // Esc
- if (_vm->_scene->isInDemo()) {
+ if (_vm->_scene->isInIntro()) {
_vm->_scene->skipScene();
} else {
_vm->_actor->abortAllSpeeches();
@@ -558,7 +558,7 @@ void Interface::draw() {
backBuffer = _vm->_gfx->getBackBuffer();
- if (_vm->_scene->isInDemo() || _fadeMode == kFadeOut)
+ if (_vm->_scene->isInIntro() || _fadeMode == kFadeOut)
return;
// Disable this for IHNM for now, since that game uses the full screen
@@ -1258,7 +1258,7 @@ void Interface::update(const Point& mousePoint, int updateFlag) {
if (!_active && _panelMode == kPanelNull && (updateFlag & UPDATE_MOUSECLICK))
_vm->_actor->abortSpeech();
- if (_vm->_scene->isInDemo() || _fadeMode == kFadeOut || !_active) {
+ if (_vm->_scene->isInIntro() || _fadeMode == kFadeOut || !_active) {
return;
}
diff --git a/saga/saga.cpp b/saga/saga.cpp
index 2d2b655939..44ce9bf9dd 100644
--- a/saga/saga.cpp
+++ b/saga/saga.cpp
@@ -314,7 +314,7 @@ int SagaEngine::go() {
// Since Puzzle is actorless, we do it here
if (_puzzle->isActive()) {
_actor->handleSpeech(msec);
- } else if (!_scene->isInDemo() && getGameType() == GType_ITE) {
+ } else if (!_scene->isInIntro() && getGameType() == GType_ITE) {
if (_interface->getMode() == kPanelMain ||
_interface->getMode() == kPanelConverse ||
_interface->getMode() == kPanelNull)
diff --git a/saga/scene.h b/saga/scene.h
index 5a3c5a9a27..2547016afb 100644
--- a/saga/scene.h
+++ b/saga/scene.h
@@ -226,7 +226,7 @@ class Scene {
void draw();
int getFlags() const { return _sceneDescription.flags; }
int getScriptModuleNumber() const { return _sceneDescription.scriptModuleNumber; }
- bool isInDemo() { return !_inGame; }
+ bool isInIntro() { return !_inGame; }
const Rect& getSceneClip() const { return _sceneClip; }
void getBGMaskInfo(int &width, int &height, byte *&buffer, size_t &bufferLength);