22 #ifndef LASTEXPRESS_SCENEMANAGER_H 23 #define LASTEXPRESS_SCENEMANAGER_H 25 #include "lastexpress/data/scene.h" 27 #include "common/hashmap.h" 28 #include "common/list.h" 32 class LastExpressEngine;
39 enum CheckPositionType {
40 kCheckPositionLookingUp,
41 kCheckPositionLookingDown,
42 kCheckPositionLookingAtDoors,
43 kCheckPositionLookingAtClock
50 void loadSceneDataFile(ArchiveIndex archive);
51 Scene *
get(SceneIndex sceneIndex) {
return _sceneLoader->get(sceneIndex); }
54 void setScene(SceneIndex sceneIndex);
55 void loadScene(SceneIndex sceneIndex);
56 void loadSceneFromObject(ObjectIndex
object,
bool alternate =
false);
57 void loadSceneFromItem(InventoryItem item);
58 void loadSceneFromItemPosition(InventoryItem item);
59 void loadSceneFromPosition(CarIndex car, Position position,
int param3 = -1);
62 void drawScene(SceneIndex sceneIndex);
64 SceneIndex processIndex(SceneIndex sceneIndex);
67 bool checkPosition(SceneIndex sceneIndex, CheckPositionType type)
const;
68 bool checkCurrentPosition(
bool doCheckOtherCars)
const;
71 void updateDoorsAndClock();
72 void resetDoorsAndClock();
75 void drawFrames(
bool refreshScreen);
84 SceneIndex getSceneIndexFromPosition(CarIndex car, Position position,
int param3 = -1);
86 void setFlagDrawSequences() { _flagDrawSequences =
true; }
94 bool _flagDrawEntities;
95 bool _flagDrawSequences;
96 bool _flagCoordinates;
109 void preProcessScene(SceneIndex *index);
110 void postProcessScene();
112 void resetCoordinates();
117 #endif // LASTEXPRESS_SCENEMANAGER_H
Definition: lastexpress.h:69
Definition: animation.h:45
Definition: sequence.h:183