ScummVM API documentation
Kyra::KyraEngine_HoF Class Reference
Inheritance diagram for Kyra::KyraEngine_HoF:
Kyra::KyraEngine_v2 Kyra::KyraEngine_v1 Engine

Classes

struct  InventoryWsa
 
struct  ShapeDesc
 
struct  TalkObject
 
struct  TalkSections
 

Public Member Functions

 KyraEngine_HoF (OSystem *system, const GameFlags &flags)
 
void pauseEngineIntern (bool pause) override
 
Screenscreen () override
 
Screen_v2screen_v2 () const override
 
GUIgui () const override
 
TextDisplayertext () override
 
int language () const
 
- Public Member Functions inherited from Kyra::KyraEngine_v2
 KyraEngine_v2 (OSystem *system, const GameFlags &flags, const EngineDesc &desc)
 
void pauseEngineIntern (bool pause) override
 
void delay (uint32 time, bool update=false, bool isMainLoop=false) override
 
const EngineDescengineDesc () const
 
- Public Member Functions inherited from Kyra::KyraEngine_v1
 KyraEngine_v1 (OSystem *system, const GameFlags &flags)
 
uint8 game () const
 
const GameFlagsgameFlags () const
 
Resourceresource ()
 
Soundsound ()
 
StaticResourcestaticres ()
 
TimerManagertimer ()
 
uint32 tickLength () const
 
void setMousePos (int x, int y)
 
Common::Point getMousePos ()
 
bool speechEnabled ()
 
bool textEnabled ()
 
void setVolume (kVolumeEntry vol, uint8 value)
 
uint8 getVolume (kVolumeEntry vol)
 
void syncSoundSettings () override
 
int setGameFlag (int flag)
 
int queryGameFlag (int flag) const
 
int resetGameFlag (int flag)
 
virtual void snd_playTheme (int file, int track)
 
virtual void snd_playWanderScoreViaMap (int command, int restart)
 
virtual bool snd_voiceIsPlaying ()
 
virtual void snd_stopVoice ()
 
virtual void delayUntil (uint32 timestamp, bool updateGameTimers=false, bool update=false, bool isMainLoop=false)
 
virtual void delayWithTicks (int ticks)
 
- Public Member Functions inherited from Engine
MetaEnginegetMetaEngine () const
 
void setMetaEngine (MetaEngine *metaEngine)
 
PauseToken pauseEngine ()
 
bool isPaused () const
 
void openMainMenuDialog ()
 
uint32 getTotalPlayTime () const
 
void setTotalPlayTime (uint32 time=0)
 
Common::TimerManagergetTimerManager ()
 
Common::EventManagergetEventManager ()
 
Common::SaveFileManagergetSaveFileManager ()
 
bool existExtractedCDAudioFiles (uint track=1)
 
bool isDataAndCDAudioReadFromSameCD ()
 
void warnMissingExtractedCDAudio ()
 
void handleAutoSave ()
 
void saveAutosaveIfEnabled ()
 
virtual bool canSaveAutosaveCurrently ()
 
 Engine (OSystem *syst)
 
virtual ~Engine ()
 
virtual void initializePath (const Common::FSNode &gamePath)
 
virtual void errorString (const char *buf_input, char *buf_output, int buf_output_size)
 
virtual GUI::DebuggergetDebugger () final
 
void setDebugger (GUI::Debugger *debugger)
 
GUI::DebuggergetOrCreateDebugger ()
 
virtual void applyGameSettings ()
 
virtual void flipMute ()
 
virtual Common::String getSaveStateName (int slot) const
 
virtual Common::Error loadGameStream (Common::SeekableReadStream *stream)
 
void setGameToLoadSlot (int slot)
 
virtual Common::Error saveGameStream (Common::WriteStream *stream, bool isAutosave=false)
 
bool saveGameDialog ()
 
bool loadGameDialog ()
 

Protected Member Functions

void seq_showStarcraftLogo ()
 
int seq_playIntro ()
 
int seq_playOutro ()
 
int seq_playDemo ()
 
void seq_pausePlayer (bool toggle)
 
Common::Error init () override
 
Common::Error go () override
 
void startup ()
 
void runLoop ()
 
void cleanup ()
 
void registerDefaultSettings () override
 
void writeSettings () override
 
void readSettings () override
 
void initStaticResource ()
 
void setupTimers () override
 
void setupOpcodeTable () override
 
void loadMouseShapes ()
 
void loadItemShapes ()
 
void update () override
 
void updateWithText () override
 
void updateMouse ()
 
void dinoRide ()
 
void handleInput (int x, int y)
 
bool handleInputUnkSub (int x, int y)
 
int inputSceneChange (int x, int y, int unk1, int unk2) override
 
void processKeyboardSfx (int inputFlag)
 
void backUpPage0 ()
 
void restorePage0 ()
 
void backUpGfxRect24x24 (int x, int y)
 
void restoreGfxRect24x24 (int x, int y)
 
void backUpGfxRect32x32 (int x, int y)
 
void restoreGfxRect32x32 (int x, int y)
 
void freeSceneShapePtrs ()
 
void loadCharacterShapes (int shapes) override
 
void loadInventoryShapes ()
 
void resetScaleTable ()
 
void setScaleTableItem (int item, int data)
 
int getScale (int x, int y) override
 
void setDrawLayerTableEntry (int entry, int data)
 
int getDrawLayer (int x, int y)
 
int initAnimationShapes (uint8 *filedata) override
 
void uninitAnimationShapes (int count, uint8 *filedata) override
 
void restorePage3 () override
 
void clearAnimObjects () override
 
void refreshAnimObjects (int force) override
 
void drawAnimObjects () override
 
void drawSceneAnimObject (AnimObj *obj, int x, int y, int drawLayer) override
 
void drawCharacterAnimObject (AnimObj *obj, int x, int y, int drawLayer) override
 
void updateItemAnimations ()
 
void updateCharFacing ()
 
void updateCharacterAnim (int) override
 
void updateSceneAnim (int anim, int newFrame) override
 
void setCharacterAnimDim (int w, int h) override
 
void resetCharacterAnimDim () override
 
void enterNewScene (uint16 newScene, int facing, int unk1, int unk2, int unk3) override
 
void enterNewSceneUnk1 (int facing, int unk1, int unk2)
 
void enterNewSceneUnk2 (int unk1)
 
void unloadScene ()
 
void loadScenePal ()
 
void loadSceneMsc ()
 
void fadeScenePal (int srcIndex, int delay)
 
void startSceneScript (int unk1)
 
void runSceneScript2 ()
 
void runSceneScript4 (int unk1)
 
void runSceneScript7 ()
 
void initSceneAnims (int unk1)
 
void initSceneScreen (int unk1)
 
int trySceneChange (int *moveTable, int unk1, int updateChar) override
 
int checkSceneChange ()
 
bool lineIsPassable (int x, int y) override
 
void setMouseCursor (Item item) override
 
int checkItemCollision (int x, int y)
 
void updateWaterFlasks ()
 
bool dropItem (int unk1, Item item, int x, int y, int unk2)
 
bool processItemDrop (uint16 sceneId, Item item, int x, int y, int unk1, int unk2)
 
void itemDropDown (int startX, int startY, int dstX, int dstY, int itemSlot, Item item)
 
void exchangeMouseItem (int itemPos)
 
bool pickUpItem (int x, int y)
 
bool isDropable (int x, int y)
 
bool itemIsFlask (Item item)
 
int getInventoryItemSlot (Item item)
 
void removeSlotFromInventory (int slot)
 
bool checkInventoryItemExchange (Item item, int slot)
 
void drawInventoryShape (int page, Item item, int slot)
 
void clearInventorySlot (int slot, int page)
 
void redrawInventory (int page)
 
void scrollInventoryWheel ()
 
int findFreeVisibleInventorySlot ()
 
void loadButtonShapes ()
 
void setupLangButtonShapes ()
 
void initInventoryButtonList ()
 
int scrollInventory (Button *button)
 
int buttonInventory (Button *button)
 
int bookButton (Button *button)
 
int cauldronButton (Button *button)
 
int cauldronClearButton (Button *button)
 
void loadBookBkgd ()
 
void showBookPage ()
 
void bookLoop ()
 
void bookDecodeText (uint8 *text)
 
void bookPrintText (int dstPage, const uint8 *text, int x, int y, uint8 color)
 
int bookPrevPage (Button *button)
 
int bookNextPage (Button *button)
 
int bookClose (Button *button)
 
void resetCauldronStateTable (int idx)
 
bool addToCauldronStateTable (int data, int idx)
 
void setCauldronState (uint8 state, bool paletteFade)
 
void clearCauldronTable ()
 
void addFrontCauldronTable (int item)
 
void cauldronItemAnim (int item)
 
void cauldronRndPaletteFade ()
 
bool updateCauldron ()
 
void listItemsInCauldron ()
 
void loadCCodeBuffer (const char *file)
 
void loadOptionsBuffer (const char *file)
 
void loadChapterBuffer (int chapter)
 
uint8 * getTableEntry (uint8 *buffer, int id)
 
Common::String getTableString (int id, uint8 *buffer, bool decode)
 
Common::String getChapterString (int id)
 
void changeFileExtension (Common::String &file)
 
int getItemCommandStringDrop (Item item)
 
int getItemCommandStringPickUp (Item item)
 
int getItemCommandStringInv (Item item)
 
void updateCharPal (int unk1)
 
void setCharPalEntry (int entry, int value)
 
int getCharacterWalkspeed () const override
 
void updateCharAnimFrame (int *table) override
 
bool checkCharCollision (int x, int y)
 
void showMessageFromCCode (int id, int16 palIndex, int)
 
void showMessage (const Common::String &string, int16 palIndex)
 
void clearMessage ()
 
void showChapterMessage (int id, int16 palIndex)
 
void updateCommandLineEx (int str1, int str2, int16 palIndex)
 
void fadeMessagePalette ()
 
int chatGetType (const char *text)
 
int chatCalcDuration (const Common::String &text)
 
void objectChat (const Common::String &text, int object, int vocHigh=-1, int vocLow=-1)
 
void objectChatInit (const Common::String &text, int object, int vocHigh=-1, int vocLow=-1)
 
void objectChatPrintText (const Common::String &text, int object)
 
void objectChatProcess (const char *script)
 
void objectChatWaitToFinish ()
 
void startDialogue (int dlgIndex)
 
void zanthSceneStartupChat ()
 
void randomSceneChat () override
 
void updateDlgBuffer ()
 
void loadDlgHeader (int &csEntry, int &vocH, int &scIndex1, int &scIndex2)
 
void processDialogue (int dlgOffset, int vocH=0, int csEntry=0)
 
void npcChatSequence (const Common::String &str, int objectId, int vocHigh=-1, int vocLow=-1)
 
void setDlgIndex (int dlgIndex) override
 
void initTalkObject (int index)
 
void deinitTalkObject (int index)
 
void playTim (const char *filename)
 
int t2_initChat (const TIM *tim, const uint16 *param)
 
int t2_updateSceneAnim (const TIM *tim, const uint16 *param)
 
int t2_resetChat (const TIM *tim, const uint16 *param)
 
int t2_playSoundEffect (const TIM *tim, const uint16 *param)
 
void openTalkFile (int newFile)
 
void snd_playVoiceFile (int id) override
 
void snd_loadSoundFile (int id)
 
void playVoice (int high, int low)
 
void snd_playSoundEffect (int track, int volume=0xFF) override
 
void timerFadeOutMessage (int)
 
void timerCauldronAnimation (int)
 
void timerFunc4 (int)
 
void timerFunc5 (int)
 
void timerBurnZanthia (int)
 
void setTimer1DelaySecs (int secs)
 
void setNextIdleAnimTimer ()
 
void showIdleAnim ()
 
void runIdleScript (int script)
 
void setWalkspeed (uint8 speed) override
 
void seq_makeBookOrCauldronAppear (int type)
 
void seq_makeBookAppear ()
 
void loadInvWsa (const char *filename, int run, int delay, int page, int sfx, int sFrame, int flags)
 
void closeInvWsa ()
 
void updateInvWsa ()
 
void displayInvWsaLastFrame ()
 
int o2_setCharacterFacingRefresh (EMCState *script)
 
int o2_setCharacterPos (EMCState *script)
 
int o2_defineObject (EMCState *script)
 
int o2_refreshCharacter (EMCState *script)
 
int o2_setSceneComment (EMCState *script)
 
int o2_setCharacterAnimFrame (EMCState *script)
 
int o2_setCharacterFacing (EMCState *script)
 
int o2_customCharacterChat (EMCState *script)
 
int o2_soundFadeOut (EMCState *script)
 
int o2_showChapterMessage (EMCState *script)
 
int o2_restoreTalkTextMessageBkgd (EMCState *script)
 
int o2_wsaClose (EMCState *script)
 
int o2_meanWhileScene (EMCState *script)
 
int o2_backUpScreen (EMCState *script)
 
int o2_restoreScreen (EMCState *script)
 
int o2_displayWsaFrame (EMCState *script)
 
int o2_displayWsaSequentialFramesLooping (EMCState *script)
 
int o2_wsaOpen (EMCState *script)
 
int o2_displayWsaSequentialFrames (EMCState *script)
 
int o2_displayWsaSequence (EMCState *script)
 
int o2_addItemToInventory (EMCState *script)
 
int o2_drawShape (EMCState *script)
 
int o2_addItemToCurScene (EMCState *script)
 
int o2_loadSoundFile (EMCState *script)
 
int o2_removeSlotFromInventory (EMCState *script)
 
int o2_removeItemFromInventory (EMCState *script)
 
int o2_countItemInInventory (EMCState *script)
 
int o2_countItemsInScene (EMCState *script)
 
int o2_wipeDownMouseItem (EMCState *script)
 
int o2_getElapsedSecs (EMCState *script)
 
int o2_getTimerDelay (EMCState *script)
 
int o2_playCompleteSoundEffect (EMCState *script)
 
int o2_delaySecs (EMCState *script)
 
int o2_setTimerDelay (EMCState *script)
 
int o2_setScaleTableItem (EMCState *script)
 
int o2_setDrawLayerTableItem (EMCState *script)
 
int o2_setCharPalEntry (EMCState *script)
 
int o2_loadZShapes (EMCState *script)
 
int o2_drawSceneShape (EMCState *script)
 
int o2_drawSceneShapeOnPage (EMCState *script)
 
int o2_disableAnimObject (EMCState *script)
 
int o2_enableAnimObject (EMCState *script)
 
int o2_loadPalette384 (EMCState *script)
 
int o2_setPalette384 (EMCState *script)
 
int o2_restoreBackBuffer (EMCState *script)
 
int o2_backUpInventoryGfx (EMCState *script)
 
int o2_disableSceneAnim (EMCState *script)
 
int o2_enableSceneAnim (EMCState *script)
 
int o2_restoreInventoryGfx (EMCState *script)
 
int o2_setSceneAnimPos2 (EMCState *script)
 
int o2_fadeScenePal (EMCState *script)
 
int o2_enterNewScene (EMCState *script)
 
int o2_switchScene (EMCState *script)
 
int o2_setPathfinderFlag (EMCState *script)
 
int o2_getSceneExitToFacing (EMCState *script)
 
int o2_setLayerFlag (EMCState *script)
 
int o2_setZanthiaPos (EMCState *script)
 
int o2_loadMusicTrack (EMCState *script)
 
int o2_setSceneAnimPos (EMCState *script)
 
int o2_setCauldronState (EMCState *script)
 
int o2_showItemString (EMCState *script)
 
int o2_isAnySoundPlaying (EMCState *script)
 
int o2_setDrawNoShapeFlag (EMCState *script)
 
int o2_setRunFlag (EMCState *script)
 
int o2_showLetter (EMCState *script)
 
int o2_playFireflyScore (EMCState *script)
 
int o2_encodeShape (EMCState *script)
 
int o2_defineSceneAnim (EMCState *script)
 
int o2_updateSceneAnim (EMCState *script)
 
int o2_addToSceneAnimPosAndUpdate (EMCState *script)
 
int o2_useItemOnMainChar (EMCState *script)
 
int o2_startDialogue (EMCState *script)
 
int o2_addCauldronStateTableEntry (EMCState *script)
 
int o2_setCountDown (EMCState *script)
 
int o2_getCountDown (EMCState *script)
 
int o2_pressColorKey (EMCState *script)
 
int o2_objectChat (EMCState *script)
 
int o2_changeChapter (EMCState *script)
 
int o2_getColorCodeFlag1 (EMCState *script)
 
int o2_setColorCodeFlag1 (EMCState *script)
 
int o2_getColorCodeFlag2 (EMCState *script)
 
int o2_setColorCodeFlag2 (EMCState *script)
 
int o2_getColorCodeValue (EMCState *script)
 
int o2_setColorCodeValue (EMCState *script)
 
int o2_countItemInstances (EMCState *script)
 
int o2_removeItemFromScene (EMCState *script)
 
int o2_initObject (EMCState *script)
 
int o2_npcChat (EMCState *script)
 
int o2_deinitObject (EMCState *script)
 
int o2_playTimSequence (EMCState *script)
 
int o2_makeBookOrCauldronAppear (EMCState *script)
 
int o2_resetInputColorCode (EMCState *script)
 
int o2_mushroomEffect (EMCState *script)
 
int o2_customChat (EMCState *script)
 
int o2_customChatFinish (EMCState *script)
 
int o2_setupSceneAnimation (EMCState *script)
 
int o2_stopSceneAnimation (EMCState *script)
 
int o2_processPaletteIndex (EMCState *script)
 
int o2_updateTwoSceneAnims (EMCState *script)
 
int o2_getRainbowRoomData (EMCState *script)
 
int o2_drawSceneShapeEx (EMCState *script)
 
int o2_midiSoundFadeout (EMCState *script)
 
int o2_getSfxDriver (EMCState *script)
 
int o2_getVocSupport (EMCState *script)
 
int o2_getMusicDriver (EMCState *script)
 
int o2_zanthiaChat (EMCState *script)
 
int o2_isVoiceEnabled (EMCState *script)
 
int o2_isVoicePlaying (EMCState *script)
 
int o2_stopVoicePlaying (EMCState *script)
 
int o2_getGameLanguage (EMCState *script)
 
int o2_demoFinale (EMCState *script)
 
int o2_dummy (EMCState *script)
 
int o2a_setCharacterFrame (EMCState *script)
 
void runStartScript (int script, int unk1)
 
void loadNPCScript ()
 
Common::Error saveGameStateIntern (int slot, const char *saveName, const Graphics::Surface *thumbnail) override
 
Common::Error loadGameState (int slot) override
 
- Protected Member Functions inherited from Kyra::KyraEngine_v2
void allocAnimObjects (int actors, int anims, int items)
 
AnimObjinitAnimList (AnimObj *list, AnimObj *entry)
 
AnimObjaddToAnimListSorted (AnimObj *list, AnimObj *entry)
 
AnimObjdeleteAnimListEntry (AnimObj *list, AnimObj *entry)
 
void refreshAnimObjectsIfNeed ()
 
void flagAnimObjsSpecialRefresh ()
 
void flagAnimObjsForRefresh ()
 
void addItemToAnimList (int item)
 
void deleteItemAnimEntry (int item)
 
virtual void animSetupPaletteEntry (AnimObj *)
 
bool checkSpecialSceneExit (int num, int x, int y)
 
void runSceneScript6 ()
 
void freeSceneAnims ()
 
void updateSpecialSceneScripts ()
 
void runAnimationScript (const char *filename, int allowSkip, int resetChar, int newShapes, int shapeUnload)
 
int o2a_setAnimationShapes (EMCState *script)
 
int o2a_setResetFrame (EMCState *script)
 
void processAnimationScript (int allowSkip, int resetChar)
 
uint8 * getShapePtr (int index) const
 
void addShapeToPool (const uint8 *data, int realIndex, int shape)
 
void addShapeToPool (uint8 *shpData, int index)
 
void remShapeFromPool (int idx)
 
int findWay (int curX, int curY, int dstX, int dstY, int *moveTable, int moveTableSize) override
 
bool directLinePassable (int x, int y, int toX, int toY)
 
int pathfinderInitPositionTable (int *moveTable)
 
int pathfinderAddToPositionTable (int index, int v1, int v2)
 
int pathfinderInitPositionIndexTable (int tableLen, int x, int y)
 
int pathfinderAddToPositionIndexTable (int index, int v)
 
void pathfinderFinializePath (int *moveTable, int unk1, int x, int y, int moveTableSize)
 
void initItemList (int size)
 
int findFreeItem ()
 
int countAllItems ()
 
int findItem (uint16 sceneId, Item id)
 
int findItem (Item item)
 
void resetItemList ()
 
void resetItem (int index)
 
void setHandItem (Item item) override
 
void removeHandItem () override
 
void moveCharacter (int facing, int x, int y)
 
int updateCharPos (int *table, int force=0)
 
void updateCharPosWithUpdate ()
 
int o2_getCharacterX (EMCState *script)
 
int o2_getCharacterY (EMCState *script)
 
int o2_getCharacterFacing (EMCState *script)
 
int o2_getCharacterScene (EMCState *script)
 
int o2_setCharacterFacingOverwrite (EMCState *script)
 
int o2_trySceneChange (EMCState *script)
 
int o2_moveCharacter (EMCState *script)
 
int o2_checkForItem (EMCState *script)
 
int o2_defineItem (EMCState *script)
 
int o2_addSpecialExit (EMCState *script)
 
int o2_delay (EMCState *script)
 
int o2_update (EMCState *script)
 
int o2_getShapeFlag1 (EMCState *script)
 
int o2_waitForConfirmationClick (EMCState *script)
 
int o2_randomSceneChat (EMCState *script)
 
int o2_setDlgIndex (EMCState *script)
 
int o2_getDlgIndex (EMCState *script)
 
int o2_defineRoomEntrance (EMCState *script)
 
int o2_runAnimationScript (EMCState *script)
 
int o2_setSpecialSceneScriptRunTime (EMCState *script)
 
int o2_defineScene (EMCState *script)
 
int o2_setSpecialSceneScriptState (EMCState *script)
 
int o2_clearSpecialSceneScriptState (EMCState *script)
 
int o2_querySpecialSceneScriptState (EMCState *script)
 
int o2_setHiddenItemsEntry (EMCState *script)
 
int o2_getHiddenItemsEntry (EMCState *script)
 
int o2_disableTimer (EMCState *script)
 
int o2_enableTimer (EMCState *script)
 
int o2_setTimerCountdown (EMCState *script)
 
int o2_setVocHigh (EMCState *script)
 
int o2_getVocHigh (EMCState *script)
 
- Protected Member Functions inherited from Kyra::KyraEngine_v1
Common::Error run () override
 
bool hasFeature (EngineFeature f) const override
 
void pauseEngineIntern (bool pause) override
 
void setupKeyMap ()
 
void updateInput ()
 
int checkInput (Button *buttonList, bool mainLoop=false, int eventFlag=0x8000)
 
void removeInputTop ()
 
void transposeScreenOutputY (int yAdd)
 
virtual bool skipFlag () const
 
virtual void resetSkipFlag (bool removeEvent=true)
 
int o1_queryGameFlag (EMCState *script)
 
int o1_setGameFlag (EMCState *script)
 
int o1_resetGameFlag (EMCState *script)
 
int o1_getRand (EMCState *script)
 
int o1_hideMouse (EMCState *script)
 
int o1_showMouse (EMCState *script)
 
int o1_setMousePos (EMCState *script)
 
int o1_setHandItem (EMCState *script)
 
int o1_removeHandItem (EMCState *script)
 
int o1_getMouseState (EMCState *script)
 
int o1_setDeathHandler (EMCState *script)
 
int o1_playWanderScoreViaMap (EMCState *script)
 
int o1_fillRect (EMCState *script)
 
int o1_blockInWalkableRegion (EMCState *script)
 
int o1_blockOutWalkableRegion (EMCState *script)
 
int o1_playSoundEffect (EMCState *script)
 
int16 emcSafeReadStack (EMCState *s, int x, int line, const char *file)
 
virtual int convertVolumeToMixer (int value)
 
virtual int convertVolumeFromMixer (int value)
 
int findSubPath (int x, int y, int toX, int toY, int *moveTable, int start, int end)
 
int getFacingFromPointToPoint (int x, int y, int toX, int toY)
 
int getOppositeFacingDirection (int dir)
 
void changePosTowardsFacing (int &x, int &y, int facing)
 
int getMoveTableSize (int *moveTable)
 
bool canLoadGameStateCurrently (Common::U32String *msg=nullptr) override
 
bool canSaveGameStateCurrently (Common::U32String *msg=nullptr) override
 
int getAutosaveSlot () const override
 
const char * getSavegameFilename (int num)
 
bool saveFileLoadable (int slot)
 
void loadGameStateCheck (int slot)
 
Common::Error saveGameState (int slot, const Common::String &desc, bool isAutosave=false) override
 
Common::SeekableReadStreamopenSaveForReading (const char *filename, SaveHeader &header, bool checkID=true)
 
Common::OutSaveFileopenSaveForWriting (const char *filename, const char *saveName, const Graphics::Surface *thumbnail) const
 
virtual Graphics::SurfacegenerateSaveThumbnail () const
 
void updatePlayTimer ()
 
void restartPlayTimerAt (uint32 totalPlaySecs)
 
void pausePlayTimer (bool pause)
 
- Protected Member Functions inherited from Engine
virtual int runDialog (GUI::Dialog &dialog)
 
void defaultSyncSoundSettings ()
 

Protected Attributes

Screen_HoF_screen
 
TextDisplayer_HoF_text
 
TIMInterpreter_tim
 
uint8 _configTextspeed
 
Common::Functor0Mem< void, KyraEngine_HoF_updateFunctor
 
bool _inventorySaved
 
uint8 * _gfxBackUpRect
 
uint8 * _sceneShapeTable [50]
 
WSAMovie_v2_wsaSlots [10]
 
ShapeDesc_shapeDescTable
 
uint16 _scaleTable [15]
 
int _drawLayerTable [15]
 
int _layerFlagTable [16]
 
uint8 * _gamePlayBuffer
 
int _animObj0Width
 
int _animObj0Height
 
const char * _sceneCommentString
 
uint8 _scenePal [688]
 
uint8 _itemHtDat [176]
 
ActiveItemAnim _activeItemAnim [15]
 
int _nextAnimItem
 
bool _menuDirectlyToLoad
 
GUI_HoF_gui
 
uint8 * _buttonShapes [19]
 
Button_inventoryButtons
 
Button_buttonList
 
int _bookMaxPage
 
int _bookNewPage
 
int _bookCurPage
 
int _bookBkgd
 
bool _bookShown
 
uint8 _cauldronState
 
int16 _cauldronUseCount
 
int16 _cauldronTable [25]
 
int16 _cauldronStateTables [23][7]
 
uint8 * _optionsBuffer
 
uint8 * _cCodeBuffer
 
uint8 * _chapterBuffer
 
int _currentChapter
 
int _newChapterFile
 
char _internStringBuf [200]
 
bool _useCharPal
 
bool _setCharPalFinal
 
int _charPalEntry
 
uint8 _charPalTable [16]
 
int _characterFacingCountTable [2]
 
Common::String _shownMessage
 
byte _messagePal [3]
 
bool _fadeMessagePalette
 
Screen::FontId _defaultFont
 
Screen::FontId _bookFont
 
int _lineHeight
 
bool _chatIsNote
 
int _npcTalkChpIndex
 
int _npcTalkDlgIndex
 
uint8 _newSceneDlgState [32]
 
int8 ** _conversationState
 
uint8 * _dlgBuffer
 
TalkObject_talkObjectList
 
TalkSections _currentTalkSections
 
Common::String _TLKFilename
 
Common::Array< const TIMOpcode * > _timOpcodes
 
int _oldTalkFile
 
int _currentTalkFile
 
int _lastSfxTrack
 
uint32 _nextIdleAnim
 
int _lastIdleScript
 
bool _useSceneIdleAnim
 
struct Kyra::KyraEngine_HoF::InventoryWsa _invWsa
 
bool _noScriptEnter
 
EMCData _npcScriptData
 
bool _chatAltFlag
 
const char *const * _ingamePakList
 
int _ingamePakListSize
 
const char *const * _musicFileListIntro
 
int _musicFileListIntroSize
 
const char *const * _musicFileListFinale
 
int _musicFileListFinaleSize
 
const char *const * _musicFileListIngame
 
int _musicFileListIngameSize
 
const uint8 * _cdaTrackTableIntro
 
int _cdaTrackTableIntroSize
 
const uint8 * _cdaTrackTableIngame
 
int _cdaTrackTableIngameSize
 
const uint8 * _cdaTrackTableFinale
 
int _cdaTrackTableFinaleSize
 
const char *const * _ingameSoundList
 
int _ingameSoundListSize
 
const int16 * _ingameSoundIndex
 
int _ingameSoundIndexSize
 
const uint16 * _ingameTalkObjIndex
 
int _ingameTalkObjIndexSize
 
const char *const * _ingameTimJpStr
 
int _ingameTimJpStrSize
 
const ItemAnimDefinition_itemAnimDefinition
 
int _itemAnimDefinitionSize
 
int _colorCodeFlag1
 
int _colorCodeFlag2
 
uint8 _presetColorCode [7]
 
uint8 _inputColorCode [7]
 
uint32 _scriptCountDown
 
int _dbgPass
 
- Protected Attributes inherited from Kyra::KyraEngine_v2
EngineDesc _desc
 
uint32 _pauseStart
 
bool _runFlag
 
bool _showOutro
 
int _lang
 
const int _numLang
 
int _langIntern
 
AnimObj_animObjects
 
AnimObj_animActor
 
AnimObj_animAnims
 
AnimObj_animItems
 
bool _drawNoShapeFlag
 
AnimObj_animList
 
uint8 * _screenBuffer
 
SceneDesc_sceneList
 
int _sceneListSize
 
uint16 _currentScene
 
uint16 _sceneExit1
 
uint16 _sceneExit2
 
uint16 _sceneExit3
 
uint16 _sceneExit4
 
int _sceneEnterX1
 
int _sceneEnterY1
 
int _sceneEnterX2
 
int _sceneEnterY2
 
int _sceneEnterX3
 
int _sceneEnterY3
 
int _sceneEnterX4
 
int _sceneEnterY4
 
int _specialExitCount
 
uint16 _specialExitTable [25]
 
bool _overwriteSceneFacing
 
EMCData _sceneScriptData
 
EMCState _sceneScriptState
 
SceneAnim _sceneAnims [16]
 
WSAMovie_v2_sceneAnimMovie [16]
 
bool _specialSceneScriptState [10]
 
bool _specialSceneScriptStateBackup [10]
 
EMCState _sceneSpecialScripts [10]
 
uint32 _sceneSpecialScriptsTimer [10]
 
int _lastProcessedSceneScript
 
bool _specialSceneScriptRunFlag
 
EMCData _animationScriptData
 
EMCState _animationScriptState
 
Common::Array< const Opcode * > _opcodesAnimation
 
char _animShapeFilename [14]
 
uint8 * _animShapeFiledata
 
int _animShapeCount
 
int _animShapeLastEntry
 
int _animNewFrame
 
int _animDelayTime
 
int _animResetFrame
 
int _animShapeWidth
 
int _animShapeHeight
 
int _animShapeXAdd
 
int _animShapeYAdd
 
bool _animNeedUpdate
 
ShapeMap _gameShapes
 
int _characterShapeFile
 
int _movFacingTable [600]
 
int _pathfinderFlag
 
bool _smoothingPath
 
int _pathfinderPositionTable [400]
 
int _pathfinderPositionIndexTable [200]
 
Item _hiddenItems [100]
 
ItemDefinition_itemList
 
int _itemListSize
 
int _itemInHand
 
int _savedMouseState
 
Character _mainCharacter
 
int _mainCharX
 
int _mainCharY
 
int _charScale
 
uint32 _updateCharPosNextUpdate
 
int _vocHigh
 
Common::String _chatText
 
int _chatObject
 
uint32 _chatEndTime
 
int _chatVocHigh
 
int _chatVocLow
 
bool _chatTextEnabled
 
EMCData _chatScriptData
 
EMCState _chatScriptState
 
int _unk4
 
int _unk5
 
bool _unkSceneScreenFlag1
 
bool _unkHandleSceneChangeFlag
 
- Protected Attributes inherited from Kyra::KyraEngine_v1
Resource_res
 
Sound_sound
 
TextDisplayer_text
 
StaticResource_staticres
 
TimerManager_timer
 
EMCInterpreter_emc
 
int _mouseX
 
int _mouseY
 
int _transOffsY
 
Common::List< Event_eventList
 
KeyMap _keyMap
 
bool _asciiCodeEvents
 
bool _kbEventSkip
 
uint8 _configWalkspeed
 
int _configMusic
 
bool _configSounds
 
uint8 _configVoice
 
bool _configNullSound
 
Common::RenderMode _configRenderMode
 
uint16 _tickLength
 
uint16 _gameSpeed
 
int8 _deathHandler
 
GameFlags _flags
 
Common::Array< const Opcode * > _opcodes
 
int _mouseState
 
uint8 _flagsTable [100]
 
Audio::SoundHandle _speechHandle
 
int _curMusicTheme
 
int _curSfxFile
 
int16 _lastMusicCommand
 
const int8 * _trackMap
 
int _trackMapSize
 
bool _preventScriptSfx
 
int _gameToLoad
 
bool _isSaveAllowed
 
Common::String _savegameFilename
 
uint32 _lastSecTick
 
uint32 _lastSecTickAtPauseStart
 
uint32 _totalPlaySecs
 
- Protected Attributes inherited from Engine
Common::TimerManager_timer
 
Common::EventManager_eventMan
 
Common::SaveFileManager_saveFileMan
 
GUI::Dialog_mainMenuDialog
 
const Common::String _targetName
 

Static Protected Attributes

static const EngineDesc _hofEngineDesc
 
static const int8 _dosTrackMap []
 
static const int _dosTrackMapSize
 
static const int8 _mt32SfxMap []
 
static const int _mt32SfxMapSize
 
static const int8 _gmSfxMap []
 
static const int _gmSfxMapSize
 
static const int8 _pcSpkSfxMap []
 
static const int _pcSpkSfxMapSize
 
static const int16 _keyboardSounds [190]
 
static const byte _itemStringMap []
 
static const int _itemStringMapSize
 
static const Item _flaskTable []
 
static const int _inventoryX []
 
static const int _inventoryY []
 
static const uint16 _itemMagicTable []
 
static const int _bookPageYOffset []
 
static const byte _bookTextColorMap []
 
static const int16 _cauldronProtectedItems []
 
static const int16 _cauldronBowlTable []
 
static const int16 _cauldronMagicTable []
 
static const int16 _cauldronMagicTableScene77 []
 
static const uint8 _cauldronStateTable []
 
static const char *const _languageExtension []
 
static const char *const _scriptLangExt []
 
static const uint8 _characterFrameTable []
 
static const uint8 _rainbowRoomData []
 
- Static Protected Attributes inherited from Kyra::KyraEngine_v1
static const int8 _addXPosTable []
 
static const int8 _addYPosTable []
 
static const int8 _charAddXPosTable []
 
static const int8 _charAddYPosTable []
 

Additional Inherited Members

- Public Types inherited from Kyra::KyraEngine_v1
enum  kVolumeEntry { kVolumeMusic = 0, kVolumeSfx = 1, kVolumeSpeech = 2 }
 
- Public Types inherited from Engine
enum  EngineFeature {
  kSupportsSubtitleOptions, kSupportsReturnToLauncher, kSupportsLoadingDuringRuntime, kSupportsSavingDuringRuntime,
  kSupportsChangingOptionsDuringRuntime, kSupportsArbitraryResolutions, kSupportsHelp, kSupportsQuitDialogOverride
}
 
- Static Public Member Functions inherited from Engine
static void quitGame ()
 
static bool shouldQuit ()
 
static MetaEngineDetectiongetMetaEngineDetection ()
 
static bool warnUserAboutUnsupportedGame (Common::String msg=Common::String())
 
static void errorUnsupportedGame (Common::String extraMsg)
 
- Public Attributes inherited from Kyra::KyraEngine_v1
Common::RandomSource _rnd
 
- Public Attributes inherited from Engine
OSystem_system
 
Audio::Mixer_mixer
 
- Protected Types inherited from Kyra::KyraEngine_v2
typedef Common::HashMap< int, uint8 * > ShapeMap
 
- Protected Types inherited from Kyra::KyraEngine_v1
enum  ReadSaveHeaderError { kRSHENoError = 0, kRSHEInvalidType = 1, kRSHEInvalidVersion = 2, kRSHEIoError = 3 }
 
typedef Common::HashMap< Common::KeyCode, int16, KeyCodeHashKeyMap
 
- Static Protected Member Functions inherited from Kyra::KyraEngine_v1
static Common::String getSavegameFilename (const Common::String &target, int num)
 
static WARN_UNUSED_RESULT ReadSaveHeaderError readSaveHeader (Common::SeekableReadStream *file, SaveHeader &header, bool skipThumbnail=true)
 

Member Function Documentation

◆ pauseEngineIntern()

void Kyra::KyraEngine_HoF::pauseEngineIntern ( bool  pause)
overridevirtual

Actual implementation of pauseEngine by subclasses.

See also
Engine::pauseEngine

Reimplemented from Engine.

◆ loadGameState()

Common::Error Kyra::KyraEngine_HoF::loadGameState ( int  slot)
overrideprotectedvirtual

Load a game state.

Parameters
slotThe slot from which a save state should be loaded.
Returns
kNoError on success, otherwise an error code.

Implements Kyra::KyraEngine_v1.


The documentation for this class was generated from the following file: