From d01fddfa6b39afa897cb1e1d694db127298da5cc Mon Sep 17 00:00:00 2001 From: Dmitry Iskrich Date: Wed, 8 Jun 2016 15:50:21 +0300 Subject: [PATCH] DIRECTOR: Add transition types --- engines/director/score.cpp | 3 +- engines/director/score.h | 57 +++++++++++++++++++++++++++++++++++++- 2 files changed, 58 insertions(+), 2 deletions(-) diff --git a/engines/director/score.cpp b/engines/director/score.cpp index beb0c9774fa1..bc79ee922274 100644 --- a/engines/director/score.cpp +++ b/engines/director/score.cpp @@ -475,6 +475,7 @@ Frame::Frame(const Frame &frame) { _actionId = frame._actionId; _transFlags = frame._transFlags; _transType = frame._transType; + _transChunkSize = frame._transChunkSize; _tempo = frame._tempo; _sound1 = frame._sound1; _sound2 = frame._sound2; @@ -542,7 +543,7 @@ void Frame::readMainChannels(Common::SeekableReadStream &stream, uint16 offset, offset++; break; case kTransTypePosition: - _transType = stream.readByte(); + _transType = static_cast(stream.readByte()); offset++; break; case kSound1Position: diff --git a/engines/director/score.h b/engines/director/score.h index 60fa0e76d716..09e3377e8aa2 100644 --- a/engines/director/score.h +++ b/engines/director/score.h @@ -103,6 +103,61 @@ enum scriptType { kFrameScript }; +enum transitionType { + kTransWipeRight = 1, + kTransWipeLeft, + kTransWipeDown, + kTransWipeUp, + kTransCenterOutHorizontal, + kTransEdgesInHorizontal, + kTransCenterOutVertical, + kTransEdgesInVertical, + kTransCenterOutSquare, + kTransEdgesInSquare, + kTransPushLeft, + kTransPushRight, + kTransPushDown, + kTransPushUp, + kTransRevealUp, + kTransRevealUpRight, + kTransRevealRight, + kTransRevealDown, + kTransRevealDownRight, + kTransRevealDownLeft, + kTransRevealLeft, + kTransRevealUpLeft, + kTransDisolvePixelsFast, + kTransDisolveBoxyRects, + kTransDisolveBoxySquares, + kTransDisolvePatterns, + kTransRandomRows, + kTransRandomColumns, + kTransCoverDown, + kTransCoverDownLeft, + kTransCoverDownRight, + kTransCoverLeft, + kTransCoverRight, + kTransCoverUp, + kTransCoverUpLeft, + kTransCoverUpRight, + kTransTypeVenitianBlind, + kTransTypeCheckerboard, + kTransTypeStripsBottomBuildLeft, + kTransTypeStripsBottomBuildRight, + kTransTypeStripsLeftBuildDown, + kTransTypeStripsLeftBuildUp, + kTransTypeStripsRightBuildDown, + kTransTypeStripsRightBuildUp, + kTransTypeStripsTopBuildLeft, + kTransTypeStripsTopBuildRight, + kTransZoomOpen, + kTransZoomClose, + kTransVerticalBinds, + kTransDisolveBitsTrans, + kTransDisolvePixels, + kTransDisolveBits +}; + struct Cast { castType type; Common::Rect initialRect; @@ -186,7 +241,7 @@ class Frame { uint8 _actionId; uint8 _transFlags; uint8 _transChunkSize; - uint8 _transType; + transitionType _transType; uint8 _tempo; uint16 _sound1;