[Scummvm-cvs-logs] CVS: scummvm/queen bankman.cpp,1.5,1.6 command.cpp,1.74,1.75 display.cpp,1.68,1.69 graphics.cpp,1.103,1.104 journal.cpp,1.38,1.39 logic.cpp,1.202,1.203 talk.cpp,1.105,1.106

Gregory Montoir cyx at users.sourceforge.net
Sun Oct 3 18:37:35 CEST 2004


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

Modified Files:
	bankman.cpp command.cpp display.cpp graphics.cpp journal.cpp 
	logic.cpp talk.cpp 
Log Message:
cleanup

Index: bankman.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/bankman.cpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- bankman.cpp	19 Jan 2004 21:38:07 -0000	1.5
+++ bankman.cpp	3 Oct 2004 20:14:54 -0000	1.6
@@ -55,7 +55,7 @@
 	debug(9, "BankManager::load() entries = %d", entries); 
 
 	uint32 offset = 2;
-	uint8 *p = _banks[bankslot].data;
+	const uint8 *p = _banks[bankslot].data;
 	for (uint16 i = 1; i <= entries; ++i) {
 		_banks[bankslot].indexes[i] = offset;
 		uint16 w = READ_LE_UINT16(p + offset + 0);
@@ -74,7 +74,7 @@
 	assert(_banks[bankslot].data != NULL);
 		
 	BobFrame *pbf = &_frames[dstframe];
-	uint8 *p = _banks[bankslot].data + _banks[bankslot].indexes[srcframe];
+	const uint8 *p = _banks[bankslot].data + _banks[bankslot].indexes[srcframe];
 	pbf->width    = READ_LE_UINT16(p + 0);
 	pbf->height   = READ_LE_UINT16(p + 2);
 	pbf->xhotspot = READ_LE_UINT16(p + 4);
@@ -91,7 +91,7 @@
 	assert(bankslot < MAX_BANKS_NUMBER);
 	assert(_banks[bankslot].data != NULL);
 
-	uint8 *p = _banks[bankslot].data + _banks[bankslot].indexes[srcframe];
+	const uint8 *p = _banks[bankslot].data + _banks[bankslot].indexes[srcframe];
 	uint16 src_w = READ_LE_UINT16(p + 0);
 	uint16 src_h = READ_LE_UINT16(p + 2);
 
@@ -135,7 +135,7 @@
 }
 
 void BankManager::eraseFrames(bool joe) {
-    uint32 i = 0;
+	uint32 i = 0;
 	if (!joe) {
 		i = FRAMES_JOE + FRAMES_JOE_XTRA;
 	}

Index: command.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/command.cpp,v
retrieving revision 1.74
retrieving revision 1.75
diff -u -d -r1.74 -r1.75
--- command.cpp	3 Apr 2004 17:58:58 -0000	1.74
+++ command.cpp	3 Oct 2004 20:14:54 -0000	1.75
@@ -30,7 +30,6 @@
 #include "queen/queen.h"
 #include "queen/sound.h"
 #include "queen/state.h"
-#include "queen/talk.h"
 #include "queen/walk.h"
 
 namespace Queen {

Index: display.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/display.cpp,v
retrieving revision 1.68
retrieving revision 1.69
diff -u -d -r1.68 -r1.69
--- display.cpp	28 Sep 2004 20:19:27 -0000	1.68
+++ display.cpp	3 Oct 2004 20:14:54 -0000	1.69
@@ -575,13 +575,14 @@
 }
 
 void Display::prepareUpdate() {
-	if (!_fullscreen)
+	int h = GAME_SCREEN_HEIGHT;
+	if (!_fullscreen) {
+		h = ROOM_ZONE_HEIGHT;
 		memcpy(_screenBuf + SCREEN_W * ROOM_ZONE_HEIGHT, _panelBuf, PANEL_W * PANEL_H);
-	int i;
-	int n = _fullscreen ? 200 : 150;
+	}
 	uint8 *dst = _screenBuf;
-	uint8 *src = _backdropBuf + _horizontalScroll;
-	for (i = 0; i < n; ++i) {
+	const uint8 *src = _backdropBuf + _horizontalScroll;
+	while (h--) {
 		memcpy(dst, src, SCREEN_W);
 		dst += SCREEN_W;
 		src += BACKDROP_W;
@@ -598,6 +599,7 @@
 		_pal.dirtyMin = 144;
 		_pal.dirtyMax = 144;
 	}
+	// uncomment this line to disable the dirty blocks rendering	
 //	_fullRefresh = 1;
 	if (_fullRefresh) {
 		_system->copyRectToScreen(_screenBuf, SCREEN_W, 0, 0, SCREEN_W, SCREEN_H);
@@ -639,7 +641,7 @@
 
 void Display::setupPanel() {
 	uint32 size;
-	uint8 *pcxBuf = _vm->resource()->loadFile("panel.pcx", 0, &size);
+	const uint8 *pcxBuf = _vm->resource()->loadFile("panel.pcx", 0, &size);
 	uint8 *dst = _panelBuf + PANEL_W * 10;
 	readPCX(dst, PANEL_W, pcxBuf + 128, PANEL_W, PANEL_H - 10);
 	const uint8 *pal = pcxBuf + size - 768 + 144 * 3;
@@ -695,8 +697,7 @@
 		}
 	} else if (!xflip) { // Masked bitmap unflipped
 		while (h--) {
-			int i;
-			for(i = 0; i < w; ++i) {
+			for(int i = 0; i < w; ++i) {
 				uint8 b = *(srcBuf + i);
 				if(b != 0) {
 					*(dstBuf + i) = b;
@@ -707,8 +708,7 @@
 		}
 	} else { // Masked bitmap flipped
 		while (h--) {
-			int i;
-			for(i = 0; i < w; ++i) {
+			for(int i = 0; i < w; ++i) {
 				uint8 b = *(srcBuf + i);
 				if(b != 0) {
 					*(dstBuf - i) = b;
@@ -798,13 +798,11 @@
 
 void Display::initFont() {
 	// calculate font justification sizes
-	uint16 i, y, x;
-
-	for (i = 0; i < 256; ++i) {
+	for (int i = 0; i < 256; ++i) {
 		_charWidth[i] = 0;
-		for (y = 0; y < 8; ++y) {
+		for (int y = 0; y < 8; ++y) {
 			uint8 c = _font[i * 8 + y];
-			for (x = 0; x < 8; ++x) {
+			for (int x = 0; x < 8; ++x) {
 				if ((c & (0x80 >> x)) && (x > _charWidth[i])) {
 					_charWidth[i] = x;
 				}
@@ -898,6 +896,8 @@
 }
 
 void Display::drawText(uint16 x, uint16 y, uint8 color, const char *text, bool outlined) {
+	static const int dx[] = { -1, 0, 1, 1, 1, 0, -1, -1 };
+	static const int dy[] = { -1, -1, -1, 0, 1, 1, 1, 0 };	
 	const uint8 *str = (const uint8*)text;
 	uint16 xs = x;
 	while (*str && x < SCREEN_W) {
@@ -905,10 +905,8 @@
 		const uint8 *pchr = _font + c * 8;
 
 		if (outlined) {
-			const int xOff[] = { -1, 0, 1, 1, 1, 0, -1, -1 };
-			const int yOff[] = { -1, -1, -1, 0, 1, 1, 1, 0 };
 			for (int i = 0; i < 8; ++i) {
-				drawChar(x + xOff[i], y + yOff[i], INK_OUTLINED_TEXT, pchr);
+				drawChar(x + dx[i], y + dy[i], INK_OUTLINED_TEXT, pchr);
 			}
 		}
 		drawChar(x, y, color, pchr);
@@ -997,7 +995,7 @@
 			p += SCREEN_W;
 		}
 		_system->copyRectToScreen(buf, SCREEN_W, x, y, 2, 2);
-			_system->updateScreen();
+		_system->updateScreen();
 		_vm->input()->delay(10);
 	}
 }
@@ -1026,7 +1024,7 @@
 			++i;
 			_system->copyRectToScreen(buf, SCREEN_W, x, y, 2, 2);
 		}
-			_system->updateScreen();
+		_system->updateScreen();
 		_vm->input()->delay(10);
 	}
 }

Index: graphics.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/graphics.cpp,v
retrieving revision 1.103
retrieving revision 1.104
diff -u -d -r1.103 -r1.104
--- graphics.cpp	14 Aug 2004 22:33:13 -0000	1.103
+++ graphics.cpp	3 Oct 2004 20:14:54 -0000	1.104
@@ -1151,6 +1151,11 @@
 }
 
 void BamScene::updateFightAnimation() {
+	static const BamDataBlock *fightDataBlocks[] = {
+		_fight1Data,
+		_fight2Data,
+		_fight3Data
+	};
 	if (_flag != F_STOP) {
 		const BamDataBlock *bdb = &_fightData[_index];
 
@@ -1195,12 +1200,7 @@
 			break;
 		case 99: // end of BAM data
 			_lastSoundIndex = _index = 0;
-			const BamDataBlock *data[] = {
-				_fight1Data,
-				_fight2Data,
-				_fight3Data
-			};
-			_fightData = data[_vm->randomizer.getRandomNumber(2)];
+			_fightData = fightDataBlocks[_vm->randomizer.getRandomNumber(2)];
 			if (_flag == F_REQ_STOP) {
 				_flag = F_STOP;
 			}

Index: journal.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/journal.cpp,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -d -r1.38 -r1.39
--- journal.cpp	28 Sep 2004 20:19:27 -0000	1.38
+++ journal.cpp	3 Oct 2004 20:14:54 -0000	1.39
@@ -187,7 +187,7 @@
 		_vm->display()->setText(136, y, _saveDescriptions[n], false);
 		_vm->display()->setText(109, y + 1, nb, false);
 	}
-	// hightlight current page
+	// highlight current page
 	showBob(BOB_SAVE_PAGE, 300, 3 + _currentSavePage * 15, 6 + _currentSavePage);
 }
 
@@ -220,8 +220,7 @@
 		_quit = true;
 	} else if (zoneNum == ZN_GIVEUP) {
 		enterYesNoMode(zoneNum, TXT_GIVE_UP);
-	}
-	if (zoneNum == ZN_TEXT_SPEED) {
+	} else if (zoneNum == ZN_TEXT_SPEED) {
 		_vm->talkSpeed((x - 136) * 100 / 130);
 		drawConfigPanel();
 	} else if (zoneNum == ZN_SFX_TOGGLE) {
@@ -389,14 +388,14 @@
 }
 
 void Journal::drawNormalPanel() {
-	int frames[] = { FRAME_BLUE_1, FRAME_BLUE_2, FRAME_BLUE_1, FRAME_ORANGE };
-	int titles[] = { TXT_REVIEW_ENTRY, TXT_MAKE_ENTRY, TXT_CLOSE, TXT_GIVE_UP };
+	static const int frames[] = { FRAME_BLUE_1, FRAME_BLUE_2, FRAME_BLUE_1, FRAME_ORANGE };
+	static const int titles[] = { TXT_REVIEW_ENTRY, TXT_MAKE_ENTRY, TXT_CLOSE, TXT_GIVE_UP };
 	drawPanel(frames, titles, 4);
 }
 
 void Journal::drawYesNoPanel(int titleNum) {
-	int frames[] = { FRAME_GREY, FRAME_BLUE_1, FRAME_BLUE_2 };
-	int titles[] = { titleNum, TXT_YES, TXT_NO };
+	static const int frames[] = { FRAME_GREY, FRAME_BLUE_1, FRAME_BLUE_2 };
+	static const int titles[] = { titleNum, TXT_YES, TXT_NO };
 	drawPanel(frames, titles, 3);
 
 	hideBob(BOB_LEFT_RECT_4);

Index: logic.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/logic.cpp,v
retrieving revision 1.202
retrieving revision 1.203
diff -u -d -r1.202 -r1.203
--- logic.cpp	19 Sep 2004 13:43:01 -0000	1.202
+++ logic.cpp	3 Oct 2004 20:14:54 -0000	1.203
@@ -835,14 +835,22 @@
 }
 
 void Logic::startDialogue(const char *dlgFile, int personInRoom, char *cutaway) {
-	char cutawayFile[20];
-	if (cutaway == NULL) {
-		cutaway = cutawayFile;
-	}
-	_vm->display()->fullscreen(true);
-	Talk::talk(dlgFile, personInRoom, cutaway, _vm);
-	if (!cutaway[0]) {
-		_vm->display()->fullscreen(false);
+	ObjectData *data = objectData(_roomData[_currentRoom] + personInRoom);
+	if (data->name > 0 && data->entryObj <= 0) {
+		if (State::findTalk(data->state) == STATE_TALK_MUTE) {
+			// 'I can't talk to that'
+			makeJoeSpeak(24 + _vm->randomizer.getRandomNumber(2));
+		} else {
+			char cutawayFile[20];
+			if (cutaway == NULL) {
+				cutaway = cutawayFile;
+			}
+			_vm->display()->fullscreen(true);
+			Talk::talk(dlgFile, personInRoom, cutaway, _vm);
+			if (!cutaway[0]) {
+				_vm->display()->fullscreen(false);
+			}
+		}
 	}
 }
 

Index: talk.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/talk.cpp,v
retrieving revision 1.105
retrieving revision 1.106
diff -u -d -r1.105 -r1.106
--- talk.cpp	12 Sep 2004 18:21:20 -0000	1.105
+++ talk.cpp	3 Oct 2004 20:14:55 -0000	1.106
@@ -85,21 +85,6 @@
 
 	cutawayFilename[0] = '\0';
 
-	int roomStart = _vm->logic()->currentRoomData();
-	ObjectData *data = _vm->logic()->objectData(roomStart + personInRoom);
-
-	if (data->name <= 0)	// disabled!
-		return;
-
-	if (data->entryObj > 0)
-		return;
-
-	if (State::findTalk(data->state) == STATE_TALK_MUTE) {
-		// 'I can't talk to that'
-		_vm->logic()->makeJoeSpeak(24 + _vm->randomizer.getRandomNumber(2));
-		return;
-	}
-
 	load(filename);
 
 	Person person;
@@ -770,16 +755,13 @@
 				_vm->update();
 			}
 
+			if (_vm->input()->talkQuit())
+				break;
+			
 			if (_vm->logic()->joeWalk() == JWM_SPEAK) {
-				if (_vm->input()->talkQuit())
-					break;
-
 				_vm->update();
 			}
 			else {
-				if (_vm->input()->talkQuit())
-					break;
-
 				_vm->update(true);
 				if (_vm->logic()->joeWalk() == JWM_EXECUTE)
 					// Selected a command, so exit
@@ -828,9 +810,7 @@
 
 	switch (command) {
 		case SPEAK_PAUSE:
-			for (i = 0; i < 10; i++) {
-				if (_vm->input()->talkQuit())
-					break;
+			for (i = 0; i < 10 && !_vm->input()->talkQuit(); i++) {
 				_vm->update();
 			}
 			return;





More information about the Scummvm-git-logs mailing list