[Scummvm-cvs-logs] SF.net SVN: scummvm: [27557] scummvm/trunk/engines/saga

thebluegr at users.sourceforge.net thebluegr at users.sourceforge.net
Wed Jun 20 18:36:30 CEST 2007


Revision: 27557
          http://scummvm.svn.sourceforge.net/scummvm/?rev=27557&view=rev
Author:   thebluegr
Date:     2007-06-20 09:36:29 -0700 (Wed, 20 Jun 2007)

Log Message:
-----------
Added a workaround in IHNM for the compact disk in Ellen's chapter

Modified Paths:
--------------
    scummvm/trunk/engines/saga/actor.cpp
    scummvm/trunk/engines/saga/sfuncs.cpp

Modified: scummvm/trunk/engines/saga/actor.cpp
===================================================================
--- scummvm/trunk/engines/saga/actor.cpp	2007-06-20 14:41:19 UTC (rev 27556)
+++ scummvm/trunk/engines/saga/actor.cpp	2007-06-20 16:36:29 UTC (rev 27557)
@@ -2287,6 +2287,22 @@
 		_activeSpeech.speechBox.left -= _activeSpeech.speechBox.right - _vm->getDisplayWidth() - 10;
 		_activeSpeech.speechBox.right = _vm->getDisplayWidth() - 10;
 	}
+
+	// WORKAROUND for the compact disk in Ellen's chapter
+	// Once Ellen starts saying that "Something is different", bring the compact disk in the
+	// scene. After speaking with AM, the compact disk is visible. She always says this line 
+	// when entering room 59, after speaking with AM, if the compact disk is not picked up yet
+	// Check Script::sfDropObject for the other part of this workaround
+	if (_vm->getGameType() == GType_IHNM && _vm->_scene->currentChapterNumber() == 3 &&
+		_vm->_scene->currentSceneNumber() == 59 && _activeSpeech.sampleResourceId == 286) {
+		for (i = 0; i < _objsCount; i++) {
+			if (_objs[i]->_id == 16385) {	// the compact disk
+				_objs[i]->_sceneNumber = 59;
+				break;
+			}
+		}
+	}
+
 }
 
 void Actor::nonActorSpeech(const Common::Rect &box, const char **strings, int stringsCount, int sampleResourceId, int speechFlags) {

Modified: scummvm/trunk/engines/saga/sfuncs.cpp
===================================================================
--- scummvm/trunk/engines/saga/sfuncs.cpp	2007-06-20 14:41:19 UTC (rev 27556)
+++ scummvm/trunk/engines/saga/sfuncs.cpp	2007-06-20 16:36:29 UTC (rev 27557)
@@ -843,6 +843,14 @@
 
 	obj->_sceneNumber = _vm->_scene->currentSceneNumber();
 
+	// WORKAROUND for the compact disk in Ellen's chapter
+	// Change the scene number of the compact disk so that it's not shown. It will be shown 
+	// once Ellen says that there's something different (i.e. after speaking with AM)
+	// See Actor::actorSpeech for the other part of this workaround
+	if (_vm->getGameType() == GType_IHNM && _vm->_scene->currentChapterNumber() == 3 &&
+		_vm->_scene->currentSceneNumber() == 59 && obj->_id == 16385)
+			obj->_sceneNumber = -1;
+
 	if (_vm->getGameType() == GType_IHNM)
 		obj->_spriteListResourceId = spriteId;
 	else


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list