[Scummvm-cvs-logs] SF.net SVN: scummvm: [27053] scummvm/trunk/engines/agos

eriktorbjorn at users.sourceforge.net eriktorbjorn at users.sourceforge.net
Sat Jun 2 17:20:44 CEST 2007


Revision: 27053
          http://scummvm.svn.sourceforge.net/scummvm/?rev=27053&view=rev
Author:   eriktorbjorn
Date:     2007-06-02 08:20:43 -0700 (Sat, 02 Jun 2007)

Log Message:
-----------
Actually drop the DXA frame (i.e. don't update the screen) when we say we do.

Modified Paths:
--------------
    scummvm/trunk/engines/agos/animation.cpp
    scummvm/trunk/engines/agos/animation.h

Modified: scummvm/trunk/engines/agos/animation.cpp
===================================================================
--- scummvm/trunk/engines/agos/animation.cpp	2007-06-02 13:35:24 UTC (rev 27052)
+++ scummvm/trunk/engines/agos/animation.cpp	2007-06-02 15:20:43 UTC (rev 27053)
@@ -230,9 +230,8 @@
 
 void MoviePlayer::handleNextFrame() {
 	decodeNextFrame();
-	processFrame();
-
-	_vm->_system->updateScreen();
+	if (processFrame())
+		_vm->_system->updateScreen();
 	_frameNum++;
 
 	Common::Event event;
@@ -285,7 +284,7 @@
 	_vm->_system->setPalette(palette, 0, 256);
 }
 
-void MoviePlayer::processFrame() {
+bool MoviePlayer::processFrame() {
 	copyFrameToBuffer(_vm->getFrontBuf(), (_vm->_screenWidth - _width) / 2, (_vm->_screenHeight - _height) / 2, _vm->_screenWidth);
 	_vm->_system->copyRectToScreen(_vm->getFrontBuf(), _vm->_screenWidth, 0, 0, _vm->_screenWidth, _vm->_screenHeight);
 
@@ -309,10 +308,13 @@
 			while (_vm->_system->getMillis() < _ticks)
 				_vm->_system->delayMillis(10);
 		}
-	} else {
-		warning("dropped frame %i", _frameNum);
-		_frameSkipped++;
+
+		return true;
 	}
+
+	warning("dropped frame %i", _frameNum);
+	_frameSkipped++;
+	return false;
 }
 
 const char * MoviePlayer::_sequenceList[90] = {

Modified: scummvm/trunk/engines/agos/animation.h
===================================================================
--- scummvm/trunk/engines/agos/animation.h	2007-06-02 13:35:24 UTC (rev 27052)
+++ scummvm/trunk/engines/agos/animation.h	2007-06-02 15:20:43 UTC (rev 27053)
@@ -64,7 +64,7 @@
 	void playOmniTV();
 
 	void handleNextFrame();
-	void processFrame();
+	bool processFrame();
 	void startSound();
 };
 


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