[Scummvm-cvs-logs] SF.net SVN: scummvm: [22623] scummvm/trunk/engines/kyra
lordhoto at users.sourceforge.net
lordhoto at users.sourceforge.net
Thu May 25 01:08:01 CEST 2006
Revision: 22623
Author: lordhoto
Date: 2006-05-25 01:07:20 -0700 (Thu, 25 May 2006)
ViewCVS: http://svn.sourceforge.net/scummvm/?rev=22623&view=rev
Log Message:
-----------
Some more _quitFlag checks, makes quitting while end sequence faster.
Modified Paths:
--------------
scummvm/trunk/engines/kyra/screen.cpp
scummvm/trunk/engines/kyra/sequences_v1.cpp
Modified: scummvm/trunk/engines/kyra/screen.cpp
===================================================================
--- scummvm/trunk/engines/kyra/screen.cpp 2006-05-25 08:02:17 UTC (rev 22622)
+++ scummvm/trunk/engines/kyra/screen.cpp 2006-05-25 08:07:20 UTC (rev 22623)
@@ -218,7 +218,7 @@
delayInc += delay;
}
int delayAcc = 0;
- while (1) {
+ while (!_vm->quit()) {
delayAcc += delayInc;
bool needRefresh = false;
for (int i = 0; i < 768; ++i) {
@@ -250,6 +250,11 @@
_vm->delay((delayAcc >> 8) * 1000 / 60);
delayAcc &= 0xFF;
}
+
+ if (_vm->quit()) {
+ setScreenPalette(palData);
+ _system->updateScreen();
+ }
}
void Screen::setPaletteIndex(uint8 index, uint8 red, uint8 green, uint8 blue) {
@@ -448,7 +453,7 @@
int32 start, now;
int wait;
- for (y = 0; y < h; ++y) {
+ for (y = 0; y < h && !_vm->quit(); ++y) {
start = (int32)_system->getMillis();
int y_cur = y;
for (x = 0; x < w; ++x) {
@@ -470,6 +475,10 @@
_vm->delay(wait);
}
}
+ if (_vm->quit()) {
+ copyRegion(sx, sy, sx, sy, w, h, srcPage, dstPage);
+ _system->updateScreen();
+ }
}
void Screen::fillRect(int x1, int y1, int x2, int y2, uint8 color, int pageNum) {
Modified: scummvm/trunk/engines/kyra/sequences_v1.cpp
===================================================================
--- scummvm/trunk/engines/kyra/sequences_v1.cpp 2006-05-25 08:02:17 UTC (rev 22622)
+++ scummvm/trunk/engines/kyra/sequences_v1.cpp 2006-05-25 08:07:20 UTC (rev 22623)
@@ -993,6 +993,8 @@
void KyraEngine::seq_playEnding() {
debugC(9, kDebugLevelMain, "KyraEngine::seq_playEnding()");
+ if (_quitFlag)
+ return;
_screen->hideMouse();
_screen->_curPage = 0;
_screen->fadeToBlack();
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