[Scummvm-cvs-logs] CVS: scummvm/scumm actor.cpp,1.299,1.300 actor.h,1.66,1.67 akos.cpp,1.179,1.180 script_v6he.cpp,2.122,2.123 script_v72he.cpp,2.120,2.121 scumm.cpp,1.224,1.225 scumm.h,1.493,1.494

Gregory Montoir cyx at users.sourceforge.net
Tue Sep 21 14:11:07 CEST 2004


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26269/scumm

Modified Files:
	actor.cpp actor.h akos.cpp script_v6he.cpp script_v72he.cpp 
	scumm.cpp scumm.h 
Log Message:
cleanup
add some warnings to detect the use of new Aux animation data

Index: actor.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/actor.cpp,v
retrieving revision 1.299
retrieving revision 1.300
diff -u -d -r1.299 -r1.300
--- actor.cpp	21 Sep 2004 20:21:30 -0000	1.299
+++ actor.cpp	21 Sep 2004 21:10:21 -0000	1.300
@@ -1846,7 +1846,7 @@
 	}
 }
 
-bool Actor::isUserConditionSet(int slot) {
+bool Actor::isUserConditionSet(int slot) const {
 	assert(slot >= 1 && slot <= 0x20);
 	return (condMask & (1 << (slot + 0xF))) != 0;
 }
@@ -1865,7 +1865,7 @@
 	}	
 }
 
-bool Actor::isTalkConditionSet(int slot) {	
+bool Actor::isTalkConditionSet(int slot) const {	
 	assert(slot >= 1 && slot <= 0x10);
 	return (condMask & (1 << (slot - 1))) != 0;
 }
@@ -1874,8 +1874,8 @@
 	if (!_skipProcessActors) {
 		for (int i = 0; i < _auxBlocksNum; ++i) {
 			AuxBlock *ab = &_auxBlocks[i];
-			assert(ab->r.top <= ab->r.bottom);
 			if (ab->visible) {
+				assert(ab->r.top <= ab->r.bottom);
 				gdi.copyVirtScreenBuffers(ab->r);
 			}
 		}
@@ -1897,6 +1897,14 @@
 				assert(akax);
 				const uint8 *auxd = findPalInPals(akax, ae->subIndex) - _resourceHeaderSize;
 				assert(auxd);
+				const uint8 *frel = findResourceData(MKID('FREL'), auxd);
+				if (frel) {
+					warning("unhandled FREL block");
+				}
+				const uint8 *disp = findResourceData(MKID('DISP'), auxd);
+				if (disp) {
+					warning("unhandled DISP block");
+				}
 				const uint8 *axfd = findResourceData(MKID('AXFD'), auxd);
 				assert(axfd);
 

Index: actor.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/actor.h,v
retrieving revision 1.66
retrieving revision 1.67
diff -u -d -r1.66 -r1.67
--- actor.h	21 Sep 2004 05:59:26 -0000	1.66
+++ actor.h	21 Sep 2004 21:10:21 -0000	1.67
@@ -247,10 +247,10 @@
 	void classChanged(int cls, bool value);
 	
 	void setUserCondition(int slot, int set);
-	bool isUserConditionSet(int slot);
+	bool isUserConditionSet(int slot) const;
 
 	void setTalkCondition(int slot);
-	bool isTalkConditionSet(int slot);
+	bool isTalkConditionSet(int slot) const;
 	
 	// Used by the save/load syste:
 	static const SaveLoadEntry *getSaveLoadEntries();

Index: akos.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/akos.cpp,v
retrieving revision 1.179
retrieving revision 1.180
diff -u -d -r1.179 -r1.180
--- akos.cpp	21 Sep 2004 13:54:30 -0000	1.179
+++ akos.cpp	21 Sep 2004 21:10:22 -0000	1.180
@@ -1617,25 +1617,25 @@
 }
 
 void ScummEngine::akos_queCommand(byte cmd, Actor *a, int param_1, int param_2) {
-	checkRange(32, 0, _queuePos, "akos_queCommand overflow");
+	checkRange(32, 0, _akosQueuePos, "akos_queCommand overflow");
 
-	_queuePos++;
-	_queueCmd[_queuePos] = cmd;
-	_queueActor[_queuePos] = a->number;
-	_queueParam1[_queuePos] = param_1;
-	_queueParam2[_queuePos] = param_2;
+	_akosQueuePos++;
+	_akosQueue[_akosQueuePos].cmd = cmd;
+	_akosQueue[_akosQueuePos].actor = a->number;
+	_akosQueue[_akosQueuePos].param1 = param_1;
+	_akosQueue[_akosQueuePos].param2 = param_2;
 }
 
 void ScummEngine::akos_processQueue() {
 	byte cmd;
 	int actor, param_1, param_2;
 
-	while (_queuePos) {
-		cmd = _queueCmd[_queuePos];	
-		actor = _queueActor[_queuePos];
-		param_1 = _queueParam1[_queuePos];
-		param_2 = _queueParam2[_queuePos];
-		_queuePos--;
+	while (_akosQueuePos) {
+		cmd = _akosQueue[_akosQueuePos].cmd;
+		actor = _akosQueue[_akosQueuePos].actor;
+		param_1 = _akosQueue[_akosQueuePos].param1;
+		param_2 = _akosQueue[_akosQueuePos].param2;
+		_akosQueuePos--;
 
 		Actor *a = derefActor(actor, "akos_processQueue");
 
@@ -1678,12 +1678,12 @@
 			if (_heversion >= 71) {
 				_actorToPrintStrFor = a->number;
 
-				a->talkPosX = _queueTalkPosX[param_1];
-				a->talkPosY = _queueTalkPosY[param_1];
-				a->talkColor = _queueTalkColor[param_1];
+				a->talkPosX = _talkQueue[param_1].posX;
+				a->talkPosY = _talkQueue[param_1].posY;
+				a->talkColor = _talkQueue[param_1].color;
 
 				_string[0].loadDefault();
-				actorTalk(_queueTalkString[param_1]);
+				actorTalk(_talkQueue[param_1].sentence);
 
 			} else if (param_1 != 0) {
 				if (_imuseDigital) {

Index: script_v6he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v6he.cpp,v
retrieving revision 2.122
retrieving revision 2.123
diff -u -d -r2.122 -r2.123
--- script_v6he.cpp	21 Sep 2004 01:00:30 -0000	2.122
+++ script_v6he.cpp	21 Sep 2004 21:10:22 -0000	2.123
@@ -737,11 +737,11 @@
 		int slot = pop();
 
 		int len = resStrLen(string) + 1;
-		addMessageToStack(string, _queueTalkString[slot], len);
+		addMessageToStack(string, _talkQueue[slot].sentence, len);
 
-		_queueTalkPosX[slot] = a->talkPosX;
-		_queueTalkPosY[slot] = a->talkPosY;
-		_queueTalkColor[slot] = a->talkColor;
+		_talkQueue[slot].posX = a->talkPosX;
+		_talkQueue[slot].posY = a->talkPosY;
+		_talkQueue[slot].color = a->talkColor;
 		break;
 		}
 	default:

Index: script_v72he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v72he.cpp,v
retrieving revision 2.120
retrieving revision 2.121
diff -u -d -r2.120 -r2.121
--- script_v72he.cpp	21 Sep 2004 20:21:31 -0000	2.120
+++ script_v72he.cpp	21 Sep 2004 21:10:22 -0000	2.121
@@ -914,7 +914,7 @@
 		return;
 	}
 
-	a = derefActorSafe(_curActor, "o60_actorOps");
+	a = derefActorSafe(_curActor, "o72_actorOps");
 	if (!a)
 		return;
 
@@ -1092,11 +1092,11 @@
 		int slot = pop();
 
 		int len = resStrLen(string) + 1;
-		addMessageToStack(string, _queueTalkString[slot], len);
+		addMessageToStack(string, _talkQueue[slot].sentence, len);
 
-		_queueTalkPosX[slot] = a->talkPosX;
-		_queueTalkPosY[slot] = a->talkPosY;
-		_queueTalkColor[slot] = a->talkColor;
+		_talkQueue[slot].posX = a->talkPosX;
+		_talkQueue[slot].posY = a->talkPosY;
+		_talkQueue[slot].color = a->talkColor;
 		break;
 		}
 	default:

Index: scumm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scumm.cpp,v
retrieving revision 1.224
retrieving revision 1.225
diff -u -d -r1.224 -r1.225
--- scumm.cpp	21 Sep 2004 12:44:33 -0000	1.224
+++ scumm.cpp	21 Sep 2004 21:10:22 -0000	1.225
@@ -703,16 +703,10 @@
 	_wizState = 0;
 	_wizFlag = 0;
 
-	memset(_queueCmd, 0, sizeof(_queueCmd));
-	memset(_queueActor, 0, sizeof(_queueActor));
-	memset(_queueParam1, 0, sizeof(_queueParam1));
-	memset(_queueParam2, 0, sizeof(_queueParam2));
-	_queuePos = 0;
+	memset(_akosQueue, 0, sizeof(_akosQueue));
+	_akosQueuePos = 0;
 
-	memset(_queueTalkPosX, 0, sizeof(_queueTalkPosX));
-	memset(_queueTalkPosY, 0, sizeof(_queueTalkPosY));
-	memset(_queueTalkColor, 0, sizeof(_queueTalkColor));
-	memset(_queueTalkString, 0, sizeof(_queueTalkString));
+	memset(_talkQueue, 0, sizeof(_talkQueue));
 
 	//
 	// Init all VARS to 0xFF

Index: scumm.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scumm.h,v
retrieving revision 1.493
retrieving revision 1.494
diff -u -d -r1.493 -r1.494
--- scumm.h	21 Sep 2004 13:54:30 -0000	1.493
+++ scumm.h	21 Sep 2004 21:10:23 -0000	1.494
@@ -872,16 +872,20 @@
 	int cost_frameToAnim(Actor *a, int frame);
 
 	// Akos Class
-	int16 _queueCmd[32];
-	int16 _queueActor[32];
-	int16 _queueParam1[32];
-	int16 _queueParam2[32];
-	int16 _queuePos;
+	struct {
+		int16 cmd;
+		int16 actor;
+		int16 param1;
+		int16 param2;
+	} _akosQueue[32];
+	int16 _akosQueuePos;
 
-	int16 _queueTalkPosX[16];
-	int16 _queueTalkPosY[16];
-	int16 _queueTalkColor[16];
-	byte _queueTalkString[16][128];
+	struct {
+		int16 posX;
+		int16 posY;
+		int16 color;
+		byte sentence[128];
+	} _talkQueue[16];
 
 	Common::Rect _actorClipOverride;
 





More information about the Scummvm-git-logs mailing list