MOHAWK: Allow for Riven to update specific portions of the screen

svn-id: r55206
This commit is contained in:
Matthew Hoops 2011-01-11 19:23:24 +00:00
parent 1f043e15c7
commit d03ff6e036
2 changed files with 3 additions and 3 deletions

View File

@ -672,7 +672,7 @@ void RivenGraphics::drawPLST(uint16 x) {
delete plst;
}
void RivenGraphics::updateScreen() {
void RivenGraphics::updateScreen(Common::Rect updateRect) {
if (_updatesEnabled) {
_vm->runUpdateScreenScript();
@ -681,7 +681,7 @@ void RivenGraphics::updateScreen() {
// Copy to screen if there's no transition. Otherwise transition. ;)
if (_scheduledTransition < 0)
_vm->_system->copyRectToScreen((byte *)_mainScreen->pixels, _mainScreen->pitch, 0, 0, _mainScreen->w, _mainScreen->h);
_vm->_system->copyRectToScreen((byte *)_mainScreen->getBasePtr(updateRect.left, updateRect.top), _mainScreen->pitch, updateRect.left, updateRect.top, updateRect.width(), updateRect.height());
else
runScheduledTransition();

View File

@ -171,7 +171,7 @@ public:
~RivenGraphics();
void copyImageToScreen(uint16, uint32, uint32, uint32, uint32);
void updateScreen();
void updateScreen(Common::Rect updateRect = Common::Rect(0, 0, 608, 392));
bool _updatesEnabled;
Common::Array<uint16> _activatedPLSTs;
void drawPLST(uint16 x);