22 #ifndef NANCY_ACTION_SECONDARYMOVIE_H 23 #define NANCY_ACTION_SECONDARYMOVIE_H 25 #include "common/ptr.h" 27 #include "engines/nancy/action/actionrecord.h" 36 class InteractiveVideo;
51 static const byte kMovieSceneChange = 5;
52 static const byte kMovieNoSceneChange = 6;
54 static const byte kPlayerCursorAllowed = 1;
55 static const byte kNoPlayerCursorAllowed = 2;
57 static const byte kPlayMovieForward = 1;
58 static const byte kPlayMovieReverse = 2;
75 uint16 startFrame = 0;
82 uint16 stayWeight = 0;
90 void onPause(
bool pause)
override;
93 void execute()
override;
95 bool getIsFinished()
const {
return _isFinished; }
101 uint16 _videoType = kVideoPlaytypeAVF;
102 uint16 _videoFormat = kLargeVideoFormat;
103 uint16 _videoSceneChange = kMovieNoSceneChange;
104 byte _playerCursorAllowed = kPlayerCursorAllowed;
105 byte _playDirection = kPlayMovieForward;
106 uint16 _firstFrame = 0;
107 uint16 _lastFrame = 0;
120 bool _isRandom =
false;
123 uint16 _randomPlayerCursorAllowed = kPlayerCursorAllowed;
129 enum RandomChainState { kRandomPlaying, kRandomPaused };
130 int _activeSequenceIndex = -1;
131 RandomChainState _randomChainState = kRandomPlaying;
132 uint32 _randomPauseEndTime = 0;
133 bool _randomStopRequested =
false;
136 void stopRandom() { _randomStopRequested =
true; }
139 void playRandomSequence();
141 bool isViewportRelative()
const override {
return true; }
143 bool isPersistentAcrossScenes()
const override {
144 return _isRandom && !_isDone && !_randomStopRequested;
149 return _isRandom ?
"PlayRandomMovie" :
"PlaySecondaryMovie";
162 bool activateRandomSequence(
int index);
167 int rollNextSequence();
170 int _curViewportFrame = -1;
171 bool _isFinished =
false;
182 void execute()
override;
184 enum RandomMovieControlMode : byte {
186 kStopAfterSequence = 1,
191 Common::String getRecordTypeName()
const override {
return "PlayRandomMovieControl"; }
193 byte _mode = kStopNow;
200 #endif // NANCY_ACTION_SECONDARYMOVIE_H Definition: managed_surface.h:51
Definition: commontypes.h:200
Definition: commontypes.h:152
Definition: secondarymovie.h:49
Definition: serializer.h:80
Definition: commontypes.h:172
Definition: actionrecord.h:152
Definition: secondarymovie.h:60
Definition: secondarymovie.h:67
Definition: actionrecord.h:97
Definition: secondarymovie.h:73
Definition: commontypes.h:255
Definition: secondarymovie.h:177
Definition: animation.h:37
Definition: commontypes.h:167
Definition: actionmanager.h:32