33 #include "common/system.h" 34 #include "common/random.h" 35 #include "common/rect.h" 36 #include "common/savefile.h" 37 #include "engines/engine.h" 38 #include "engines/savestate.h" 40 #include "lab/console.h" 41 #include "lab/image.h" 42 #include "lab/labsets.h" 43 #include "lab/detection.h" 81 uint16 _crumbDirection;
84 #define MAX_CRUMBS 128 123 bool _isCrumbWaiting;
132 int _lastWaitTOFTicks;
135 uint16 _highPalette[20];
139 uint16 _monitorButtonHeight;
141 uint32 _extraGameFeatures;
150 ButtonList _journalButtonList;
151 ButtonList _mapButtonList;
152 Image *_imgMap, *_imgRoom, *_imgUpArrowRoom, *_imgDownArrowRoom, *_imgBridge;
153 Image *_imgHRoom, *_imgVRoom, *_imgMaze, *_imgHugeMaze, *_imgPath;
157 Image *_monitorButton;
158 Image *_journalBackImage;
164 bool _droppingCrumbs;
165 bool _followingCrumbs;
166 bool _followCrumbsFast;
167 bool _isCrumbTurning;
172 uint16 _highestCondition;
177 uint32 _crumbTimestamp;
186 ButtonList _invButtonList;
187 ButtonList _moveButtonList;
188 Image *_invImages[10];
189 Image *_moveImages[20];
190 LargeSet *_conditions, *_roomsFound;
207 uint32 getFeatures()
const;
211 void changeVolume(
int delta);
212 uint16 getDirection() {
return _direction; }
218 uint16 getQuarters();
219 void setQuarters(uint16 quarters);
228 bool isMainDisplay()
const {
return _mainDisplay; }
239 void decIncInv(uint16 *CurInv,
bool dec);
244 void doActions(
const ActionList &actionList);
249 bool doActionRule(
Common::Point pos, int16 action, int16 roomNum);
254 bool doActionRuleSub(int16 action, int16 roomNum,
const CloseData *closePtr,
bool allowDefaults);
259 void handleMonitorCloseup();
294 bool doOperateRuleSub(int16 itemNum, int16 roomNum,
const CloseData *closePtr,
bool allowDefaults);
304 bool doTurn(uint16 from, uint16 to);
309 bool doUse(uint16 curInv);
320 void drawDirection(
const CloseData *closePtr);
325 void drawJournal(uint16 wipenum,
bool needFade);
330 void drawJournalText();
335 void drawMap(uint16 curRoom, uint16 curMsg, uint16 floorNum,
bool fadeIn);
340 void drawMonText(
const char *text,
TextFont *monitorFont,
Common::Rect textRect,
bool isinteractive);
345 void drawRoomMap(uint16 curRoom,
bool drawMarkFl);
350 void drawRoomMessage(uint16 curInv,
const CloseData *closePtr);
351 void drawStaticMessage(byte index);
364 const CloseData *findClosePtrMatch(
const CloseData *closePtr,
const CloseDataList &list);
369 bool floorVisited(uint16 floorNum);
374 MainButton followCrumbs();
377 bool processEvent(MessageClass tmpClass, uint16 code, uint16 qualifier,
Common::Point tmpPos,
378 uint16 &curInv,
IntuiMessage *curMsg,
bool &forceDraw, uint16 buttonId, uint16 &actionMode);
389 uint16 getLowerFloor(uint16 floorNum);
400 uint16 getUpperFloor(uint16 floorNum);
405 ViewData *getViewData(uint16 roomNum, uint16 direction);
420 void loadJournalData();
431 void showLab2Teaser();
436 void perFlipButton(uint16 buttonId);
441 uint16 processArrow(uint16 curDirection, uint16 arrow);
446 void processJournal();
451 void processMap(uint16 curRoom);
462 bool saveRestoreGame();
467 void setCurrentClose(
Common::Point pos,
const CloseData **closePtrList,
bool useAbsoluteCoords,
bool next=
false);
477 void turnPage(
bool fromLeft);
478 bool processKey(
IntuiMessage *curMsg, uint32 msgClass, uint16 &qualifier,
Common::Point &curPos, uint16 &curInv,
bool &forceDraw, uint16 code);
479 void processMainButton(uint16 &curInv, uint16 &lastInv, uint16 &oldDirection,
bool &forceDraw, uint16 buttonId, uint16 &actionMode);
480 void processAltButton(uint16 &curInv, uint16 &lastInv, uint16 buttonId, uint16 &actionMode);
481 void performAction(uint16 actionMode,
Common::Point curPos, uint16 &curInv);
491 bool loadGame(
int slot);
494 void handleTrialWarning();
EngineFeature
Definition: engine.h:253
Definition: interface.h:49
Definition: savefile.h:54
Definition: speciallocks.h:39
Definition: advancedDetector.h:163
Definition: processroom.h:145
Definition: savestate.h:56
Definition: processroom.h:175
Definition: eventman.h:40
Definition: processroom.h:181
Definition: processroom.h:136
bool skipThumbnail(Common::SeekableReadStream &in)
Definition: eventman.h:47
Definition: processroom.h:167
Definition: resource.h:94
Definition: movie_decoder.h:32