[Scummvm-git-logs] scummvm master -> 12c07ee18f90f17dae65fe216e2b98c407306196

sev- sev at scummvm.org
Fri Aug 26 18:39:54 CEST 2016


This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
8a372eaf71 DIRECTOR: Execute proper script on frames. This fixes the playback
b7570373dd DIRECTOR: Reworked event loop, so the mouse is more responsive
12c07ee18f DIRECTOR: Lingo: Remove irrelevant header


Commit: 8a372eaf7169a67af984380e0204808da4feeee4
    https://github.com/scummvm/scummvm/commit/8a372eaf7169a67af984380e0204808da4feeee4
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2016-08-26T18:39:47+02:00

Commit Message:
DIRECTOR: Execute proper script on frames. This fixes the playback

Changed paths:
    engines/director/frame.cpp
    engines/director/score.cpp



diff --git a/engines/director/frame.cpp b/engines/director/frame.cpp
index 55d5ebd..0ede871 100644
--- a/engines/director/frame.cpp
+++ b/engines/director/frame.cpp
@@ -77,6 +77,8 @@ Frame::Frame(const Frame &frame) {
 	_blend = frame._blend;
 	_palette = new PaletteInfo();
 
+	debugC(1, kDebugLoading, "Frame. action: %d transType: %d transDuration: %d", _actionId, _transType, _transDuration);
+
 	_sprites.resize(CHANNEL_COUNT);
 
 	for (uint16 i = 0; i < CHANNEL_COUNT; i++) {
diff --git a/engines/director/score.cpp b/engines/director/score.cpp
index c07804b..9dd8cd8 100644
--- a/engines/director/score.cpp
+++ b/engines/director/score.cpp
@@ -752,8 +752,8 @@ void Score::update() {
 	_surface->copyFrom(*_trailSurface);
 
 	//Enter and exit from previous frame (Director 4)
-	_lingo->processEvent(kEventEnterFrame, _currentFrame);
-	_lingo->processEvent(kEventExitFrame, _currentFrame);
+	_lingo->processEvent(kEventEnterFrame, _frames[_currentFrame]->_actionId);
+	_lingo->processEvent(kEventExitFrame, _frames[_currentFrame]->_actionId);
 	//TODO Director 6 - another order
 
 


Commit: b7570373dd2d6c5a96fc8eed8302e4b5a0d80cdf
    https://github.com/scummvm/scummvm/commit/b7570373dd2d6c5a96fc8eed8302e4b5a0d80cdf
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2016-08-26T18:39:47+02:00

Commit Message:
DIRECTOR: Reworked event loop, so the mouse is more responsive

Changed paths:
    engines/director/score.cpp



diff --git a/engines/director/score.cpp b/engines/director/score.cpp
index 9dd8cd8..8a252a2 100644
--- a/engines/director/score.cpp
+++ b/engines/director/score.cpp
@@ -738,9 +738,6 @@ void Score::startLoop() {
 		debugC(1, kDebugImages, "Current frame: %d", _currentFrame);
 		update();
 		processEvents();
-
-		g_system->updateScreen();
-		g_system->delayMillis(200);
 	}
 }
 
@@ -797,13 +794,11 @@ void Score::update() {
 			//Wait for sound channel 1
 			while (_soundManager->isChannelActive(1)) {
 				processEvents();
-				g_system->delayMillis(10);
 			}
 		} else if (tempo == 134) {
 			//Wait for sound channel 2
 			while (_soundManager->isChannelActive(2)) {
 				processEvents();
-				g_system->delayMillis(10);
 			}
 		}
 	}
@@ -816,22 +811,29 @@ void Score::processEvents() {
 
 	Common::Event event;
 
-	while (g_system->getEventManager()->pollEvent(event)) {
-		if (event.type == Common::EVENT_QUIT)
-			_stopPlay = true;
+	int endTime = g_system->getMillis() + 200;
 
-		if (event.type == Common::EVENT_LBUTTONDOWN) {
-			Common::Point pos = g_system->getEventManager()->getMousePos();
+	while (g_system->getMillis() < endTime) {
+		while (g_system->getEventManager()->pollEvent(event)) {
+			if (event.type == Common::EVENT_QUIT)
+				_stopPlay = true;
 
-			//TODO there is dont send frame id
-			_lingo->processEvent(kEventMouseDown, _frames[_currentFrame]->getSpriteIDFromPos(pos));
-		}
+			if (event.type == Common::EVENT_LBUTTONDOWN) {
+				Common::Point pos = g_system->getEventManager()->getMousePos();
+
+				//TODO there is dont send frame id
+				_lingo->processEvent(kEventMouseDown, _frames[_currentFrame]->getSpriteIDFromPos(pos));
+			}
 
-		if (event.type == Common::EVENT_LBUTTONUP) {
-			Common::Point pos = g_system->getEventManager()->getMousePos();
+			if (event.type == Common::EVENT_LBUTTONUP) {
+				Common::Point pos = g_system->getEventManager()->getMousePos();
 
-			_lingo->processEvent(kEventMouseUp, _frames[_currentFrame]->getSpriteIDFromPos(pos));
+				_lingo->processEvent(kEventMouseUp, _frames[_currentFrame]->getSpriteIDFromPos(pos));
+			}
 		}
+
+		g_system->updateScreen();
+		g_system->delayMillis(10);
 	}
 }
 


Commit: 12c07ee18f90f17dae65fe216e2b98c407306196
    https://github.com/scummvm/scummvm/commit/12c07ee18f90f17dae65fe216e2b98c407306196
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2016-08-26T18:39:47+02:00

Commit Message:
DIRECTOR: Lingo: Remove irrelevant header

Changed paths:
    engines/director/lingo/lingo-funcs.cpp



diff --git a/engines/director/lingo/lingo-funcs.cpp b/engines/director/lingo/lingo-funcs.cpp
index 2189f1f..e22044c 100644
--- a/engines/director/lingo/lingo-funcs.cpp
+++ b/engines/director/lingo/lingo-funcs.cpp
@@ -20,29 +20,6 @@
  *
  */
 
-// Heavily inspired by hoc
-// Copyright (C) AT&T 1995
-// All Rights Reserved
-//
-// Permission to use, copy, modify, and distribute this software and
-// its documentation for any purpose and without fee is hereby
-// granted, provided that the above copyright notice appear in all
-// copies and that both that the copyright notice and this
-// permission notice and warranty disclaimer appear in supporting
-// documentation, and that the name of AT&T or any of its entities
-// not be used in advertising or publicity pertaining to
-// distribution of the software without specific, written prior
-// permission.
-//
-// AT&T DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-// INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.
-// IN NO EVENT SHALL AT&T OR ANY OF ITS ENTITIES BE LIABLE FOR ANY
-// SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
-// IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
-// ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
-// THIS SOFTWARE.
-
 #include "director/lingo/lingo.h"
 #include "common/file.h"
 #include "audio/decoders/wave.h"





More information about the Scummvm-git-logs mailing list