[Scummvm-git-logs] scummvm master -> 8de7c68b3ea8c978138f7adf45b3aadcbb9d42a5
sev-
sev at scummvm.org
Sun Mar 29 20:34:52 UTC 2020
This automated email contains information about 4 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
f3f29f6c52 DIRECTOR: Improve debug output
e01fe2a2c4 DIRECTOR: Fix cover transitions
5f8d882172 DIRECTOR: Implement kTransCenterOutSquare
8de7c68b3e DIRECTOR: Implemented kTransAlgoCover transitions
Commit: f3f29f6c52dd3394a987d478232f03b13535dcbc
https://github.com/scummvm/scummvm/commit/f3f29f6c52dd3394a987d478232f03b13535dcbc
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-03-29T22:34:33+02:00
Commit Message:
DIRECTOR: Improve debug output
Changed paths:
engines/director/score.cpp
diff --git a/engines/director/score.cpp b/engines/director/score.cpp
index c9605377b6..b797e1724b 100644
--- a/engines/director/score.cpp
+++ b/engines/director/score.cpp
@@ -1048,7 +1048,7 @@ void Score::loadActions(Common::SeekableSubReadStreamEndian &stream) {
for (j = _actions.begin(); j != _actions.end(); ++j) {
if (!scriptRefs[j->_key]) {
- warning("Action id %d is not referenced, skipping", j->_key);
+ warning("Action id %d is not referenced, skipping, the code was:\n-----\n%s\n------", j->_key, j->_value.c_str());
continue;
}
if (!j->_value.empty()) {
Commit: e01fe2a2c44a8e5ac73398c538331234a62ca31b
https://github.com/scummvm/scummvm/commit/e01fe2a2c44a8e5ac73398c538331234a62ca31b
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-03-29T22:34:33+02:00
Commit Message:
DIRECTOR: Fix cover transitions
Changed paths:
engines/director/transitions.cpp
diff --git a/engines/director/transitions.cpp b/engines/director/transitions.cpp
index 978c3c6c0a..60cce3fc33 100644
--- a/engines/director/transitions.cpp
+++ b/engines/director/transitions.cpp
@@ -155,7 +155,7 @@ void Frame::playTransition(Score *score) {
Common::Rect clipRect(score->_movieRect);
clipRect.moveTo(0, 0);
- Common::Rect r = clipRect;
+ Common::Rect rfrom, rto;
initTransParams(t, score, clipRect);
@@ -165,61 +165,68 @@ void Frame::playTransition(Score *score) {
return;
}
+ rfrom = clipRect;
+ rto = clipRect;
+
for (uint16 i = 1; i < t.steps; i++) {
bool stop = false;
+ rto = clipRect;
switch (t.type) {
case kTransCenterOutHorizontal: // 5
t.xpos += t.xStepSize;
- r.setWidth(t.xpos * 2);
- r.moveTo(clipRect.width() / 2 - t.xpos, 0);
+ rto.setWidth(t.xpos * 2);
+ rto.moveTo(clipRect.width() / 2 - t.xpos, 0);
+ rfrom = rto;
break;
case kTransCenterOutVertical: // 7
t.ypos += t.yStepSize;
- r.setHeight(t.ypos * 2);
- r.moveTo(0, clipRect.height() / 2 - t.ypos);
+ rto.setHeight(t.ypos * 2);
+ rto.moveTo(0, clipRect.height() / 2 - t.ypos);
+ rfrom = rto;
break;
case kTransCoverDown: // 29
- r.setHeight(t.yStepSize * i);
+ rto.setHeight(clipRect.height());
+ rto.moveTo(0, -clipRect.height() + t.yStepSize * i);
break;
case kTransCoverDownLeft: // 30
- r.setWidth(t.xStepSize * i);
- r.setHeight(t.yStepSize * i);
- r.moveTo(clipRect.width() - t.xStepSize * i, 0);
+ rto.setWidth(t.xStepSize * i);
+ rto.setHeight(t.yStepSize * i);
+ rto.moveTo(clipRect.width() - t.xStepSize * i, 0);
break;
case kTransCoverDownRight: // 31
- r.setWidth(t.xStepSize * i);
- r.setHeight(t.yStepSize * i);
+ rto.setWidth(t.xStepSize * i);
+ rto.setHeight(t.yStepSize * i);
break;
case kTransCoverLeft: // 32
- r.setWidth(t.xStepSize * i);
- r.moveTo(clipRect.width() - t.xStepSize * i, 0);
+ rto.setWidth(t.xStepSize * i);
+ rto.moveTo(clipRect.width() - t.xStepSize * i, 0);
break;
case kTransCoverRight: // 33
- r.setWidth(t.xStepSize * i);
+ rto.setWidth(t.xStepSize * i);
break;
case kTransCoverUp: // 34
- r.setHeight(t.yStepSize * i);
- r.moveTo(0, clipRect.height() - t.yStepSize * i);
+ rto.setHeight(t.yStepSize * i);
+ rto.moveTo(0, clipRect.height() - t.yStepSize * i);
break;
case kTransCoverUpLeft: // 35
- r.setWidth(t.xStepSize * i);
- r.setHeight(t.yStepSize * i);
- r.moveTo(clipRect.width() - t.xStepSize * i, clipRect.height() - t.yStepSize * i);
+ rto.setWidth(t.xStepSize * i);
+ rto.setHeight(t.yStepSize * i);
+ rto.moveTo(clipRect.width() - t.xStepSize * i, clipRect.height() - t.yStepSize * i);
break;
case kTransCoverUpRight: // 36
- r.setWidth(t.xStepSize * i);
- r.setHeight(t.yStepSize * i);
- r.moveTo(0, clipRect.height() - t.yStepSize * i);
+ rto.setWidth(t.xStepSize * i);
+ rto.setHeight(t.yStepSize * i);
+ rto.moveTo(0, clipRect.height() - t.yStepSize * i);
case kTransDissolvePixels: // 51
warning("Frame::playTransition(): Unhandled transition type %s %d %d", transProps[t.type].name, t.duration, _transChunkSize);
@@ -235,15 +242,17 @@ void Frame::playTransition(Score *score) {
if (stop)
break;
- r.clip(clipRect);
+ score->_backSurface->blitFrom(*score->_surface, rfrom, Common::Point(rto.left, rto.top));
+
+ rto.clip(clipRect);
g_system->delayMillis(t.stepDuration);
if (processQuitEvent(true))
break;
- score->_backSurface->copyRectToSurface(*score->_surface, 0, 0, r);
+ if (rto.height() > 0 && rto.width() > 0)
+ g_system->copyRectToScreen(score->_backSurface->getBasePtr(rto.left, rto.top), score->_backSurface->pitch, rto.left, rto.top, rto.width(), rto.height()); // transition
- g_system->copyRectToScreen(score->_backSurface->getPixels(), score->_backSurface->pitch, r.left, r.top, r.width(), r.height()); // transition
g_system->updateScreen();
}
}
Commit: 5f8d882172df60cee5e504d531764b7faa95b9c2
https://github.com/scummvm/scummvm/commit/5f8d882172df60cee5e504d531764b7faa95b9c2
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-03-29T22:34:33+02:00
Commit Message:
DIRECTOR: Implement kTransCenterOutSquare
Changed paths:
engines/director/transitions.cpp
diff --git a/engines/director/transitions.cpp b/engines/director/transitions.cpp
index 60cce3fc33..d0f47dd199 100644
--- a/engines/director/transitions.cpp
+++ b/engines/director/transitions.cpp
@@ -187,6 +187,15 @@ void Frame::playTransition(Score *score) {
rfrom = rto;
break;
+ case kTransCenterOutSquare: // 9
+ t.ypos += t.yStepSize;
+ rto.setHeight(t.ypos * 2);
+ t.xpos += t.xStepSize;
+ rto.setWidth(t.xpos * 2);
+ rto.moveTo(clipRect.width() / 2 - t.xpos, clipRect.height() / 2 - t.ypos);
+ rfrom = rto;
+ break;
+
case kTransCoverDown: // 29
rto.setHeight(clipRect.height());
rto.moveTo(0, -clipRect.height() + t.yStepSize * i);
Commit: 8de7c68b3ea8c978138f7adf45b3aadcbb9d42a5
https://github.com/scummvm/scummvm/commit/8de7c68b3ea8c978138f7adf45b3aadcbb9d42a5
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-03-29T22:34:33+02:00
Commit Message:
DIRECTOR: Implemented kTransAlgoCover transitions
Changed paths:
engines/director/transitions.cpp
diff --git a/engines/director/transitions.cpp b/engines/director/transitions.cpp
index d0f47dd199..f53b5400be 100644
--- a/engines/director/transitions.cpp
+++ b/engines/director/transitions.cpp
@@ -202,40 +202,32 @@ void Frame::playTransition(Score *score) {
break;
case kTransCoverDownLeft: // 30
- rto.setWidth(t.xStepSize * i);
- rto.setHeight(t.yStepSize * i);
- rto.moveTo(clipRect.width() - t.xStepSize * i, 0);
+ rto.moveTo(clipRect.width() - t.xStepSize * i, -clipRect.height() + t.yStepSize * i);
break;
case kTransCoverDownRight: // 31
- rto.setWidth(t.xStepSize * i);
- rto.setHeight(t.yStepSize * i);
+ rto.moveTo(-clipRect.width() + t.xStepSize * i, -clipRect.height() + t.yStepSize * i);
break;
case kTransCoverLeft: // 32
- rto.setWidth(t.xStepSize * i);
rto.moveTo(clipRect.width() - t.xStepSize * i, 0);
break;
case kTransCoverRight: // 33
- rto.setWidth(t.xStepSize * i);
+ rto.moveTo(-clipRect.width() + t.xStepSize * i, 0);
break;
case kTransCoverUp: // 34
- rto.setHeight(t.yStepSize * i);
rto.moveTo(0, clipRect.height() - t.yStepSize * i);
break;
case kTransCoverUpLeft: // 35
- rto.setWidth(t.xStepSize * i);
- rto.setHeight(t.yStepSize * i);
rto.moveTo(clipRect.width() - t.xStepSize * i, clipRect.height() - t.yStepSize * i);
break;
case kTransCoverUpRight: // 36
- rto.setWidth(t.xStepSize * i);
- rto.setHeight(t.yStepSize * i);
- rto.moveTo(0, clipRect.height() - t.yStepSize * i);
+ rto.moveTo(-clipRect.width() + t.xStepSize * i, clipRect.height() - t.yStepSize * i);
+ break;
case kTransDissolvePixels: // 51
warning("Frame::playTransition(): Unhandled transition type %s %d %d", transProps[t.type].name, t.duration, _transChunkSize);
More information about the Scummvm-git-logs
mailing list