28 #ifndef WINTERMUTE_ADSCENE_H 29 #define WINTERMUTE_ADSCENE_H 31 #include "engines/wintermute/base/base_fader.h" 41 class AdWaypointGroup;
47 class AdSceneGeometry;
53 uint32 _ambientLightColor;
54 TShadowType _maxShadowType;
55 bool _scroll3DCompatibility;
76 void setMaxShadowType(TShadowType shadowType);
82 int32 _editorResolutionWidth;
83 int32 _editorResolutionHeight;
85 bool getRegionsAt(
int x,
int y,
AdRegion **regionList,
int numRegions);
86 bool handleItemAssociations(
const char *itemName,
bool show);
88 float getRotationAt(
int x,
int y);
91 bool _persistentState;
92 bool _persistentStateSprites;
94 void setOffset(
int offsetLeft,
int offsetTop);
95 bool pointInViewport(
int x,
int y);
98 bool getViewportSize(int32 *width =
nullptr, int32 *height =
nullptr);
99 bool getViewportOffset(int32 *offsetX =
nullptr, int32 *offsetY =
nullptr);
103 void pfPointsAdd(
int x,
int y,
int distance);
104 void pfPointsStart();
106 bool correctTargetPoint(int32 startX, int32 startY, int32 *x, int32 *y,
bool checkFreeObjects =
false,
BaseObject *requester =
nullptr);
107 bool correctTargetPoint2(int32 startX, int32 startY, int32 *targetX, int32 *targetY,
bool checkFreeObjects,
BaseObject *requester);
109 bool displayRegionContent(
AdRegion *region =
nullptr,
bool display3DOnly =
false);
110 bool displayRegionContentOld(
AdRegion *region =
nullptr);
111 static int compareObjs(
const void *obj1,
const void *obj2);
113 bool updateFreeObjects();
114 bool traverseNodes(
bool update =
false);
115 float getScaleAt(
int y);
116 bool sortScaleLevels();
117 bool sortRotLevels();
123 uint32 getAlphaAt(
int x,
int y,
bool colorCheck =
false);
124 bool _paralaxScrolling;
125 void skipTo(
int offsetX,
int offsetY);
130 void scrollTo(
int offsetX,
int offsetY);
131 bool update()
override;
133 int32 _targetOffsetTop;
134 int32 _targetOffsetLeft;
136 int32 _scrollPixelsV;
140 int32 _scrollPixelsH;
144 bool display()
override;
147 void pathFinderStep();
148 bool isBlockedAt(
int x,
int y,
bool checkFreeObjects =
false,
BaseObject *requester =
nullptr);
149 bool isWalkableAt(
int x,
int y,
bool checkFreeObjects =
false,
BaseObject *requester =
nullptr);
151 float getZoomAt(
int x,
int y);
158 bool loadFile(
const char *filename);
159 bool loadBuffer(
char *buffer,
bool complete =
true);
163 bool removeObject(
AdObject *Object);
164 int32 _editorMarginH;
165 int32 _editorMarginV;
166 uint32 _editorColFrame;
167 uint32 _editorColEntity;
168 uint32 _editorColRegion;
169 uint32 _editorColBlocked;
170 uint32 _editorColWaypoints;
171 uint32 _editorColEntitySel;
172 uint32 _editorColRegionSel;
173 uint32 _editorColBlockedSel;
174 uint32 _editorColWaypointsSel;
175 uint32 _editorColScale;
176 uint32 _editorColDecor;
177 uint32 _editorColDecorSel;
179 bool _editorShowRegions;
180 bool _editorShowBlocked;
181 bool _editorShowDecor;
182 bool _editorShowEntities;
183 bool _editorShowScale;
187 bool restoreDeviceObjects()
override;
190 void onLayerResized(
AdLayer *layer);
194 bool scSetProperty(
const char *name,
ScValue *value)
override;
196 const char *scToString()
override;
200 bool persistState(
bool saving =
true);
Definition: base_game.h:75
Definition: base_point.h:36
Definition: script_value.h:42
Definition: ad_object.h:46
Definition: ad_scene.h:49
Definition: ad_region.h:35
Definition: base_dynamic_buffer.h:35
Definition: ad_layer.h:33
Definition: script_stack.h:41
Definition: ad_scene_geometry.h:47
Definition: base_fader.h:36
Definition: coll_templ.h:347
Definition: ad_waypoint_group.h:35
Definition: base_viewport.h:37
Definition: ui_window.h:39
Definition: base_object.h:49
Definition: achievements_tables.h:27