[Scummvm-cvs-logs] CVS: scummvm/queen cutaway.cpp,1.52,1.53 cutaway.h,1.25,1.26 logic.cpp,1.79,1.80 structs.h,1.19,1.20 verb.h,1.5,1.6 walk.cpp,1.19,1.20

David Eriksson twogood at users.sourceforge.net
Fri Nov 7 02:58:07 CET 2003


Update of /cvsroot/scummvm/scummvm/queen
In directory sc8-pr-cvs1:/tmp/cvs-serv2836/queen

Modified Files:
	cutaway.cpp cutaway.h logic.cpp structs.h verb.h walk.cpp 
Log Message:
Minor fixes.


Index: cutaway.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/cutaway.cpp,v
retrieving revision 1.52
retrieving revision 1.53
diff -u -d -r1.52 -r1.53
--- cutaway.cpp	7 Nov 2003 02:33:20 -0000	1.52
+++ cutaway.cpp	7 Nov 2003 10:57:20 -0000	1.53
@@ -202,9 +202,9 @@
 	ptr = Talk::getString(ptr, _talkFile, MAX_FILENAME_LENGTH);
 	debug(0, "Talk file = '%s'", _talkFile);
 
-	int TALKTO = READ_BE_UINT16(ptr);
+	_talkTo = (int16)READ_BE_UINT16(ptr);
 	ptr += 2;
-	debug(0, "TALKTO = %i", TALKTO);
+	debug(0, "_talkTo = %i", _talkTo);
 }
 
 byte *Cutaway::getCutawayObject(byte *ptr, CutawayObject &object)
@@ -999,7 +999,7 @@
 	}
 	else {
 		_logic->personSetData(
-				object.objectNumber - _logic->roomData(object.room), 
+				object.objectNumber - _logic->roomData(_logic->currentRoom()), 
 				"", true, &p);
 
 		if (object.bobStartX || object.bobStartY) {
@@ -1060,7 +1060,7 @@
 	int i;
 	nextFilename[0] = '\0';
 
-	byte *ptr = _objectData;
+	_currentImage = _logic->numFrames();
 
 	int initialJoeX = _logic->joeX();
 	int initialJoeY = _logic->joeY();
@@ -1072,6 +1072,8 @@
 	// XXX if (_comPanel == 0 || _comPanel == 2)
 	// XXX	SCENE_START(0);
 
+	byte *ptr = _objectData;
+
 	for (i = 0; i < _cutawayObjectCount; i++) {
 		CutawayObject object;
 		ptr = getCutawayObject(ptr, object);
@@ -1464,7 +1466,16 @@
 	if (0 == scumm_stricmp(right(_talkFile, 4), ".dog")) {
 		nextFilename[0] = '\0';
 
-		Talk::talk(_talkFile, 0 /* XXX */, nextFilename, _graphics, _input, _logic, _resource, _sound);
+		int personInRoom;
+
+		if (_talkTo > 0)
+			personInRoom = _talkTo - _logic->roomData(_logic->currentRoom());
+		else {
+			warning("_talkTo is 0!");
+			personInRoom = 0; 			// XXX is this correct?
+		}
+
+		Talk::talk(_talkFile, personInRoom, nextFilename, _graphics, _input, _logic, _resource, _sound);
 	}
 }
 

Index: cutaway.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/cutaway.h,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -d -r1.25 -r1.26
--- cutaway.h	6 Nov 2003 21:15:35 -0000	1.25
+++ cutaway.h	7 Nov 2003 10:57:20 -0000	1.26
@@ -185,6 +185,9 @@
 		//! Name of .dog file
 		char _talkFile[MAX_FILENAME_SIZE];
 
+		//! Person to talk to
+		int16 _talkTo;
+
 		//! Used by changeRooms
 		ObjectDataBackup _personData[MAX_PERSON_COUNT];
 

Index: logic.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/logic.cpp,v
retrieving revision 1.79
retrieving revision 1.80
diff -u -d -r1.79 -r1.80
--- logic.cpp	7 Nov 2003 02:33:20 -0000	1.79
+++ logic.cpp	7 Nov 2003 10:57:20 -0000	1.80
@@ -1240,7 +1240,7 @@
 void Logic::personSetData(int16 noun, const char *actorName, bool loadBank, Person *pp) {
 	
 	if (noun <= 0) {
-		warning("Logic::personSetData() - Negative object number");
+		warning("Logic::personSetData() - Invalid object number: %i", noun);
 	}
 
 	uint16 i;

Index: structs.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/structs.h,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- structs.h	31 Oct 2003 13:47:27 -0000	1.19
+++ structs.h	7 Nov 2003 10:57:21 -0000	1.20
@@ -22,10 +22,9 @@
 #ifndef QUEENSTRUCTS_H
 #define QUEENSTRUCTS_H
 
-namespace Queen {
-
 #include "queen/verb.h"
 
+namespace Queen {
 
 struct Box {
 	int16 x1, y1, x2, y2;

Index: verb.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/verb.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- verb.h	6 Nov 2003 08:53:09 -0000	1.5
+++ verb.h	7 Nov 2003 10:57:21 -0000	1.6
@@ -23,6 +23,7 @@
 #ifndef QUEENVERB_H
 #define QUEENVERB_H
 
+namespace Queen {
 
 enum VerbEnum {
 	VERB_NONE = 0,
@@ -167,5 +168,6 @@
 	static char* _verbName[13];
 };
 
+} // End of namespace Queen
 
 #endif

Index: walk.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/walk.cpp,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- walk.cpp	5 Nov 2003 10:08:55 -0000	1.19
+++ walk.cpp	7 Nov 2003 10:57:21 -0000	1.20
@@ -344,6 +344,10 @@
 
 int16 Walk::personMove(const Person *pp, int16 endx, int16 endy, uint16 curImage, int direction) {
 
+	if (curImage > MAX_FRAMES_NUMBER) {
+		error("[Walk::personMove] curImage is invalid: %i", curImage);
+	}
+
 	if (endx == 0 && endy == 0) {
 		warning("Walk::personMove() - endx == 0 && endy == 0");
 		return 0;





More information about the Scummvm-git-logs mailing list