22 #ifndef STARK_SERVICES_RESOURCE_PROVIDER_H 23 #define STARK_SERVICES_RESOURCE_PROVIDER_H 25 #include "common/list.h" 27 #include "engines/stark/resourcereference.h" 56 void requestLocationChange(uint16 level, uint16 location);
61 void setShouldRestoreCurrentState() { _restoreCurrentState =
true; }
63 void pushAndChangeLocation(int16 level, int16 location);
64 void returnToPushedLocation();
76 void performLocationChange();
82 void commitActiveLocationsState();
97 struct PreviousLocation {
103 void pushCurrentLocation();
104 void popCurrentLocation();
110 Current *findLevel(uint16 level)
const;
111 Current *findLocation(uint16 level, uint16 location)
const;
113 void purgeOldLocations();
115 void runLocationChangeScripts(
Resources::Object *resource, uint32 scriptCallMode);
116 void setAprilInitialPosition();
117 void setScrollInitialPosition();
123 bool _locationChangeRequest;
124 bool _restoreCurrentState;
126 CurrentList _locations;
129 int32 _nextDirection;
134 #endif // STARK_SERVICES_RESOURCE_PROVIDER_H Definition: location.h:51
Definition: archiveloader.h:64
Definition: resourcereference.h:39
Definition: stateprovider.h:103
bool hasLocationChangeRequest() const
Definition: resourceprovider.h:59
Definition: stateprovider.h:51
Definition: resourceprovider.h:48