XEEN: Fix error in vertMerge

This commit is contained in:
Paul Gilbert 2014-12-26 18:50:14 +11:00
parent d213db3dc1
commit 1a6dd88713
3 changed files with 4 additions and 3 deletions

View File

@ -60,6 +60,7 @@ void DarkSideEngine::darkSideIntro() {
bool breakFlag = false;
int nwcIndex = 0, nwcFrame = 0;
for (int idx = 0; idx < 55 && !shouldQuit() && !breakFlag; ++idx) {
// Render the next frame
_events->updateGameCounter();
_screen->vertMerge(0);
nwc[nwcIndex].draw(*_screen, nwcFrame, Common::Point(0, 0));
@ -72,7 +73,7 @@ void DarkSideEngine::darkSideIntro() {
case 34:
case 44:
++nwcIndex;
++nwcFrame;
nwcFrame = 0;
break;
case 35:
_sound->proc2(voc[1]);

View File

@ -345,7 +345,7 @@ void SpriteResource::drawOffset(XSurface &dest, uint16 offset, const Common::Poi
}
}
dest.addDirtyRect(Common::Rect(destPos.x, destPos.y,
dest.addDirtyRect(Common::Rect(destPos.x + xOffset, destPos.y + yOffset,
destPos.x + xOffset + width, destPos.y + yOffset + height));
}

View File

@ -160,7 +160,7 @@ void Screen::vertMerge(int yp) {
Common::copy(srcP, srcP + SCREEN_WIDTH, destP);
}
for (int y = yp; y < SCREEN_HEIGHT; ++y) {
for (int y = SCREEN_HEIGHT - yp; y < SCREEN_HEIGHT; ++y) {
const byte *srcP = (const byte *)_pages[1].getBasePtr(0, y);
byte *destP = (byte *)getBasePtr(0, y);
Common::copy(srcP, srcP + SCREEN_WIDTH, destP);