25 #ifndef BURIED_SCENE_VIEW_H 26 #define BURIED_SCENE_VIEW_H 28 #include "buried/aidata.h" 29 #include "buried/animdata.h" 30 #include "buried/global_flags.h" 31 #include "buried/sprtdata.h" 32 #include "buried/window.h" 34 #include "common/array.h" 62 bool startNewGame(
bool walkthrough =
false);
63 bool startNewGameIntro(
bool walkthrough =
false);
64 bool startNewGame(
const Location &startingLocation);
65 bool showDeathScene(
int deathSceneIndex);
66 bool showCompletionScene();
69 GlobalFlags &getGlobalFlags() {
return _globalFlags; }
70 bool getCurrentSceneLocation(
Location &curLocation);
72 bool jumpToScene(
const Location &newLocation);
73 bool jumpToSceneRestore(
const Location &newLocation);
74 bool moveInDirection(Direction direction);
76 bool timeSuitJump(
int destination);
82 bool pushNewTransition(
Graphics::Surface *newBackground,
int direction,
int stripSize,
int totalTime);
83 bool slideInTransition(
Graphics::Surface *newBackground,
int direction,
int stripSize,
int totalTime);
84 bool slideOutTransition(
Graphics::Surface *newBackground,
int direction,
int stripSize,
int totalTime);
93 bool enableCycleFrameCache(
bool enable);
94 bool flushCycleFrameCache();
95 bool enableCycling(
bool enable);
96 bool forceEnableCycling(
bool enable);
97 bool getCyclingStatus()
const {
return _cycleEnabled; }
98 bool isCyclingEnabled()
const {
return _cycleEnabled || _forceCycleEnabled; }
99 bool closeCycleFrameMovie();
101 bool addNumberToGlobalFlagTable(byte numberToAdd);
102 byte getNumberFromGlobalFlagTable(
int tableIndex);
103 bool isNumberInGlobalFlagTable(byte numberToCheck);
105 bool playSynchronousAnimation(
int animationID);
106 bool playSynchronousAnimationExtern(
int animationID);
107 bool playPlacedSynchronousAnimation(
int animationID,
int left,
int top);
108 bool playClippedSynchronousAnimation(
int animationID,
int left,
int top,
int right,
int bottom);
110 bool startAsynchronousAnimation(
int animationID,
bool loopAnimation);
111 bool startAsynchronousAnimation(
int fileNameID,
int startPosition,
int playStartPosition,
int frameCount,
bool loopAnimation);
112 bool startAsynchronousAnimationExtern(
int fileNameID,
int startPosition,
int playStartPosition,
int frameCount,
bool loopAnimation);
113 bool stopAsynchronousAnimation();
114 bool isAsynchronousAnimationStillPlaying();
115 int getAsynchronousAnimationCurrentPosition();
116 bool asynchronousAnimationTimerCallback();
117 bool startPlacedAsynchronousAnimation(
int left,
int top,
int width,
int height,
int animationID,
bool loopAnimation);
118 bool startPlacedAsynchronousAnimation(
int left,
int top,
int width,
int height,
int fileNameID,
int startPosition,
int playStartPosition,
int frameCount,
bool loopAnimation);
119 bool startPlacedAsynchronousAnimationExtern(
int left,
int top,
int width,
int height,
int fileNameID,
int startPosition,
int playStartPosition,
int frameCount,
bool loopAnimation);
122 bool checkAICommentDependencies(
const Location &commentLocation,
const AIComment &commentData);
123 bool playAICommentFromData(
const AIComment &commentData);
124 bool playAIComment(
int commentType);
125 bool playAIComment(
const Location &commentLocation,
int commentType);
126 bool checkForAIComment(
int commentType);
127 bool checkForAIComment(
const Location &commentLocation,
int commentType);
129 bool infoWindowDisplayed(
bool flag);
130 bool bioChipWindowDisplayed(
bool flag);
131 bool burnedLetterWindowDisplayed(
bool flag);
132 bool isAuxWindowDisplayed();
135 void onTimer(uint timer);
136 bool onSetCursor(uint message);
137 void onEnable(
bool enable);
145 bool isScenePresent() {
return _currentScene != 0; }
146 int draggingItem(
int itemID,
const Common::Point &pointLocation,
int itemFlags);
147 int droppedItem(
int itemID,
const Common::Point &pointLocation,
int itemFlags);
149 bool updatePrebufferWithSprite(
Sprite &spriteData);
150 bool changeSpriteStatus(
bool status);
153 bool displayLiveText(
const Common::String &text =
"",
bool notifyUser =
true);
156 bool resetNavigationArrows();
158 bool startEnvironmentAmbient(
int oldTimeZone = -1,
int oldEnvironment = -1,
int timeZone = -1,
int environment = -1,
bool fade =
true);
159 bool checkCustomAICommentDependencies(
const Location &commentLocation,
const AIComment &commentData);
161 const SceneBase *getCurrentScene()
const {
return _currentScene; }
182 bool _cycleEnabled, _forceCycleEnabled;
185 bool _infoWindowDisplayed;
186 bool _bioChipWindowDisplayed;
187 bool _burnedLetterDisplayed;
191 int _asyncMovieStartFrame;
192 int _asyncMovieFrameCount;
193 bool _loopAsyncMovie;
198 uint _demoSoundTimer;
199 int _demoSoundEffectHandle;
200 void startDemoAmbientSound();
202 void handleCyclingChange();
204 bool initializeTimeZoneAndEnvironment(
Window *viewWindow,
int timeZone,
int environment);
209 bool moveToDestination(
const DestinationScene &destinationData,
int navFrame);
212 bool initializeAILabTimeZoneAndEnvironment(
Window *viewWindow,
int environment);
213 bool startAILabAmbient(
int oldTimeZone,
int oldEnvironment,
int environment,
bool fade);
215 bool checkCustomSpaceStationAICommentDependencies(
const Location &commentLocation,
const AIComment &commentData);
218 bool initializeCastleTimeZoneAndEnvironment(
Window *viewWindow,
int environment);
219 bool startCastleAmbient(
int oldTimeZone,
int oldEnvironment,
int environment,
bool fade);
221 bool checkCustomCastleAICommentDependencies(
const Location &commentLocation,
const AIComment &commentData);
224 bool initializeDaVinciTimeZoneAndEnvironment(
Window *viewWindow,
int environment);
225 bool startDaVinciAmbient(
int oldTimeZone,
int oldEnvironment,
int environment,
bool fade);
227 bool checkCustomDaVinciAICommentDependencies(
const Location &commentLocation,
const AIComment &commentData);
230 bool startFutureApartmentAmbient(
int oldTimeZone,
int oldEnvironment,
int environment,
bool fade);
234 bool initializeMayanTimeZoneAndEnvironment(
Window *viewWindow,
int environment);
235 bool startMayanAmbient(
int oldTimeZone,
int oldEnvironment,
int environment,
bool fade);
237 bool checkCustomMayanAICommentDependencies(
const Location &commentLocation,
const AIComment &commentData);
240 bool initializeAgent3LairTimeZoneAndEnvironment(
Window *viewWindow,
int environment);
241 bool startAgent3LairAmbient(
int oldTimeZone,
int oldEnvironment,
int environment,
bool fade);
245 bool initializeAlienTimeZoneAndEnvironment(
Window *viewWindow,
int environment);
246 bool startAlienAmbient(
int oldTimeZone,
int oldEnvironment,
int environment,
bool fade);
249 byte *aiFlag(uint16 offset);
250 byte getAIFlag(uint16 offset);
251 void setAIFlag(uint16 offset, byte value);
Definition: avi_frames.h:42
Definition: global_flags.h:35
Definition: agent_evaluation.h:31
Definition: video_window.h:37
Definition: formatinfo.h:28
Definition: sprtdata.h:36
Definition: keyboard.h:294
Definition: scene_view.h:54
Definition: scene_base.h:76