[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