Public Member Functions | |
| int | getHETimer (int timer) |
| void | setHETimer (int timer) |
| void | pauseHETimers (bool pause) |
| ScummEngine_v60he (OSystem *syst, const DetectorResult &dr) | |
| Common::Path | generateFilename (const int room) const override |
| void | setActorClippingRect (int actor, int x1, int y1, int x2, int y2) |
| bool | actorsOverlapInStrip (int actorA, int actorB, int stripNumber) |
| void | resetScumm () override |
Public Member Functions inherited from Scumm::ScummEngine_v6 | |
| ScummEngine_v6 (OSystem *syst, const DetectorResult &dr) | |
| void | resetScumm () override |
| void | nukeArray (int array) |
| void | removeBlastObjects () |
| void | restoreBlastObjectsRects () |
| bool | akos_increaseAnims (const byte *akos, Actor *a) |
| bool | akos_increaseAnim (Actor *a, int i, const byte *aksq, const uint16 *akfo, int numakfo) |
Public Member Functions inherited from Scumm::ScummEngine | |
| ScummEngine (OSystem *syst, const DetectorResult &dr) | |
| Common::Error | init () |
| Common::Error | go () |
| Common::Error | run () override |
| void | errorString (const char *buf_input, char *buf_output, int buf_output_size) override |
| bool | hasFeature (EngineFeature f) const override |
| bool | gameSupportsQuitDialogOverride () const |
| void | syncSoundSettings () override |
| Common::Error | loadGameState (int slot) override |
| bool | canLoadGameStateCurrently (Common::U32String *msg=nullptr) override |
| Common::Error | saveGameState (int slot, const Common::String &desc, bool isAutosave=false) override |
| bool | canSaveGameStateCurrently (Common::U32String *msg=nullptr) override |
| void | pauseEngineIntern (bool pause) override |
| void | beginTextInput () |
| void | endTextInput () |
| void | parseEvents () |
| void | pauseGame () |
| void | restart () |
| bool | isUsingOriginalGUI () const |
| bool | isMessageBannerActive () |
| char | displayMessage (const char *altButton, MSVC_PRINTF const char *message,...) GCC_PRINTF(3 |
| char bool | displayMessageYesNo (MSVC_PRINTF const char *message,...) GCC_PRINTF(2 |
| int32 & | scummVar (byte var, const char *varName, const char *file, int line) |
| int32 | scummVar (byte var, const char *varName, const char *file, int line) const |
| void | NES_loadCostumeSet (int n) |
| bool | getSavegameName (int slot, Common::String &desc) |
| void | listSavegames (bool *marks, int num) |
| void | requestSave (int slot, const Common::String &name) |
| void | requestLoad (int slot) |
| Common::String | getTargetName () const |
| bool | canPauseSoundsDuringSave () const |
| void | runScript (int script, bool freezeResistant, bool recursive, int *lvarptr, int cycle=0) |
| void | stopScript (int script) |
| void | nukeArrays (byte scriptSlot) |
| bool | openFile (BaseScummFile &file, const Common::Path &filename, bool resourceFile=false) |
| ScummFile * | instantiateScummFile (bool indexPAKFiles=true) |
| int | getResourceSize (ResType type, ResId idx) |
| byte * | getResourceAddress (ResType type, ResId idx) |
| byte * | getStringAddressVar (int i) |
| void | ensureResourceLoaded (ResType type, ResId idx) |
| const byte * | findResourceData (uint32 tag, const byte *ptr) |
| const byte * | findResource (uint32 tag, const byte *ptr) |
| void | applyWorkaroundIfNeeded (ResType type, int idx) |
| bool | verifyMI2MacBootScript () |
| bool | verifyMI2MacBootScript (byte *buf, int size) |
| bool | tryPatchMI1CannibalScript (byte *buf, int size) |
| int | getResourceDataSize (const byte *ptr) const |
| void | dumpResource (const char *tag, int index, const byte *ptr, int length=-1) |
| int | getInventorySlot () |
| int | findInventory (int owner, int index) |
| int | getInventoryCount (int owner) |
| bool | getClass (int obj, int cls) const |
| int | getObjectOrActorWidth (int object, int &width) |
| int | getObjectOrActorXY (int object, int &x, int &y) |
| int | getDist (int x, int y, int x2, int y2) |
| bool | isValidActor (int id) const |
| Actor * | derefActor (int id, const char *errmsg=0) const |
| Actor * | derefActorSafe (int id, const char *errmsg) const |
| virtual void | actorTalk (const byte *msg) |
| void | stopTalk () |
| int | getTalkingActor () |
| void | setTalkingActor (int variable) |
| bool | isCostumeInUse (int i) const |
| bool | isLightOn () const |
| virtual int | getCurrentLights () const |
| uint8 * | getHEPaletteSlot (uint16 palSlot) |
| uint16 | get16BitColor (uint8 r, uint8 g, uint8 b) |
| uint32 | getPaletteColorFromRGB (byte *palette, byte r, byte g, byte b) |
| uint32 | getPackedRGBColorFromPalette (byte *palette, uint32 color) |
| void | fetchBlackAndWhite (uint32 &black, uint32 &white, byte *palette, int paletteEntries) |
| int | remapPaletteColor (int r, int g, int b, int threshold) |
| void | readPCEPalette (const byte **ptr, byte **dest, int numEntries) |
| void | colorPCEToRGB (uint16 color, byte *r, byte *g, byte *b) |
| void | setPCETextPalette (uint8 color) |
| void | markRectAsDirty (VirtScreenNumber virt, int left, int right, int top, int bottom, int dirtybit=0) |
| void | markRectAsDirty (VirtScreenNumber virt, const Common::Rect &rect, int dirtybit=0) |
| VirtScreen * | findVirtScreen (int y) |
| byte * | getMaskBuffer (int x, int y, int z) |
| double | getTimerFrequency () |
| double | getAmigaMusicTimerFrequency () |
| byte | getNumBoxes () |
| byte * | getBoxMatrixBaseAddr () |
| byte * | getBoxConnectionBase (int box) |
| int | getNextBox (byte from, byte to) |
| void | setBoxFlags (int box, int val) |
| void | setBoxScale (int box, int b) |
| bool | checkXYInBoxBounds (int box, int x, int y) |
| BoxCoords | getBoxCoordinates (int boxnum) |
| byte | getMaskFromBox (int box) |
| Box * | getBoxBaseAddr (int box) |
| byte | getBoxFlags (int box) |
| int | getBoxScale (int box) |
| int | getScale (int box, int x, int y) |
| int | getScaleFromSlot (int slot, int x, int y) |
| virtual void | translateText (const byte *text, byte *trans_buff, int transBufferSize) |
| bool | reverseIfNeeded (const byte *text, byte *reverseBuf, int reverseBufSize) const |
| Common::CodePage | getDialogCodePage () const |
| byte * | get2byteCharPtr (int idx) |
| bool | isScummvmKorTarget () |
| bool | hasLocalizer () |
| bool | towns_isRectInStringBox (int x1, int y1, int x2, int y2) |
Public Member Functions inherited from Engine | |
| MetaEngine * | getMetaEngine () const |
| void | setMetaEngine (MetaEngine *metaEngine) |
| PauseToken | pauseEngine () |
| bool | isPaused () const |
| void | openMainMenuDialog () |
| uint32 | getTotalPlayTime () const |
| void | setTotalPlayTime (uint32 time=0) |
| Common::TimerManager * | getTimerManager () |
| Common::EventManager * | getEventManager () |
| Common::SaveFileManager * | getSaveFileManager () |
| bool | existExtractedCDAudioFiles (uint track=1) |
| bool | isDataAndCDAudioReadFromSameCD () |
| void | warnMissingExtractedCDAudio () |
| void | handleAutoSave () |
| void | saveAutosaveIfEnabled () |
| virtual bool | canSaveAutosaveCurrently () |
| virtual int | getAutosaveSlot () const |
| virtual bool | gameTypeHasAddOns () const |
| virtual bool | dirCanBeGameAddOn (const Common::FSDirectory &dir) const |
| virtual bool | dirMustBeGameAddOn (const Common::FSDirectory &dir) const |
| Common::ErrorCode | updateAddOns (const MetaEngine *metaEngine) const |
| Engine (OSystem *syst) | |
| virtual | ~Engine () |
| virtual void | initializePath (const Common::FSNode &gamePath) |
| virtual GUI::Debugger * | getDebugger () final |
| void | setDebugger (GUI::Debugger *debugger) |
| GUI::Debugger * | getOrCreateDebugger () |
| bool | enhancementEnabled (int32 cls) |
| 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 () |
Public Attributes | |
| Common::SeekableReadStream * | _hInFileTable [17] |
| Common::SeekableWriteStream * | _hOutFileTable [17] |
| Common::Rect | _defaultActorClipping |
| int | _heTimers [16] |
| uint32 | _pauseStartTime = 0 |
Public Attributes inherited from Scumm::ScummEngine | |
| IMuse * | _imuse = nullptr |
| IMuseDigital * | _imuseDigital = nullptr |
| MusicEngine * | _musicEngine = nullptr |
| Player_Towns * | _townsPlayer = nullptr |
| Sound * | _sound = nullptr |
| VerbSlot * | _verbs = nullptr |
| ObjectData * | _objs = nullptr |
| GameSettings | _game |
| uint8 | _gameMD5 [16] |
| Common::RandomSource | _rnd |
| Gdi * | _gdi = nullptr |
| ResourceManager * | _res = nullptr |
| int | _insideCreateResource = 0 |
| bool | _useOriginalGUI = true |
| bool | _enableAudioOverride = false |
| bool | _enableCOMISong = false |
| bool | _isAmigaPALSystem = false |
| bool | _quitFromScriptCmd = false |
| bool | _isHE995 = false |
| bool | _enableHECompetitiveOnlineMods = false |
| Common::Keymap * | _insaneKeymap |
| bool | _isIndy4Jap = false |
| int | _numLocalScripts = 60 |
| int | _numImages = 0 |
| int | _numRooms = 0 |
| int | _numScripts = 0 |
| int | _numSounds = 0 |
| int | _numCostumes = 0 |
| int32 | _numCharsets = 0 |
| BaseCostumeLoader * | _costumeLoader = nullptr |
| BaseCostumeRenderer * | _costumeRenderer = nullptr |
| int | _NESCostumeSet = 0 |
| byte * | _NEScostdesc = nullptr |
| byte * | _NEScostlens = nullptr |
| byte * | _NEScostoffs = nullptr |
| byte * | _NEScostdata = nullptr |
| byte | _NESPatTable [2][4096] |
| byte | _NESPalette [2][16] |
| byte | _NESBaseTiles = 0 |
| int | _NESStartStrip = 0 |
| byte | _currentRoom = 0 |
| int | _roomResource = 0 |
| bool | _egoPositioned = false |
| FilenamePattern | _filenamePattern |
| Common::Path | _containerFile |
| Common::Path | _macCursorFile |
| byte | OF_OWNER_ROOM = 0 |
| uint32 * | _classData = nullptr |
| byte | _actorToPrintStrFor = 0 |
| byte | _V1TalkingActor = 0 |
| int | _sentenceNum = 0 |
| SentenceTab | _sentence [NUM_SENTENCE] |
| StringTab | _string [6] |
| byte | _haveMsg = 0 |
| int16 | _talkDelay = 0 |
| int | _NES_lastTalkingActor = 0 |
| int | _NES_talkColor = 0 |
| int | _roomHeight = 0 |
| int | _roomWidth = 0 |
| int | _screenHeight = 0 |
| int | _screenWidth = 0 |
| VirtScreen | _virtscr [4] |
| CameraData | camera |
| bool | _cameraIsFrozen = false |
| int | _screenStartStrip = 0 |
| int | _screenEndStrip = 0 |
| int | _screenTop = 0 |
| bool | _forceBannerVirtScreen = false |
| bool | _useMacScreenCorrectHeight = true |
| int | _macScreenDrawOffset = 20 |
| Common::RenderMode | _renderMode |
| uint8 | _bytesPerPixel = 1 |
| Graphics::PixelFormat | _outputPixelFormat |
| byte | _roomPalette [256] |
| byte * | _shadowPalette = nullptr |
| bool | _skipDrawObject = 0 |
| int | _voiceMode = 0 |
| int | _soundEnabled = 0 |
| byte | _HEV7ActorPalette [256] |
| uint8 * | _hePalettes = nullptr |
| uint16 | _hePaletteSlot = 0 |
| uint16 * | _16BitPalette = nullptr |
| byte * | _verbPalette = nullptr |
| ScummEngine_v0_Delays | _V0Delay |
| uint16 | _extraBoxFlags [65] |
| CharsetRenderer * | _charset = nullptr |
| byte | _charsetColorMap [16] |
| Graphics::Surface | _textSurface |
| int | _textSurfaceMultiplier = 0 |
| bool | _isModernMacVersion = false |
| bool | _useGammaCorrection = true |
| Graphics::Surface * | _macScreen = nullptr |
| MacGui * | _macGui = nullptr |
| bool | _useMacGraphicsSmoothing = true |
| byte | _completeScreenBuffer [320 *200] |
| Common::Language | _language |
| bool | _useCJKMode = false |
| bool | _useMultiFont = false |
| int | _numLoadedFont = 0 |
| int | _2byteShadow = 0 |
| bool | _force2ByteCharHeight = false |
| int | _2byteHeight = 0 |
| int | _2byteWidth = 0 |
| int | _krStrPost = 0 |
| byte | _newLineCharacter = 0 |
| byte * | _2byteFontPtr = nullptr |
| byte * | _2byteMultiFontPtr [20] |
| int | _2byteMultiHeight [20] |
| int | _2byteMultiWidth [20] |
| int | _2byteMultiShadow [20] |
| byte | VAR_KEYPRESS = 0xFF |
| byte | VAR_SYNC = 0xFF |
| byte | VAR_EGO = 0xFF |
| byte | VAR_CAMERA_POS_X = 0xFF |
| byte | VAR_HAVE_MSG = 0xFF |
| byte | VAR_ROOM = 0xFF |
| byte | VAR_OVERRIDE = 0xFF |
| byte | VAR_MACHINE_SPEED = 0xFF |
| byte | VAR_ME = 0xFF |
| byte | VAR_NUM_ACTOR = 0xFF |
| byte | VAR_CURRENT_LIGHTS = 0xFF |
| byte | VAR_CURRENTDRIVE = 0xFF |
| byte | VAR_CURRENTDISK = 0xFF |
| byte | VAR_TMR_1 = 0xFF |
| byte | VAR_TMR_2 = 0xFF |
| byte | VAR_TMR_3 = 0xFF |
| byte | VAR_MUSIC_TIMER = 0xFF |
| byte | VAR_ACTOR_RANGE_MIN = 0xFF |
| byte | VAR_ACTOR_RANGE_MAX = 0xFF |
| byte | VAR_CAMERA_MIN_X = 0xFF |
| byte | VAR_CAMERA_MAX_X = 0xFF |
| byte | VAR_TIMER_NEXT = 0xFF |
| byte | VAR_VIRT_MOUSE_X = 0xFF |
| byte | VAR_VIRT_MOUSE_Y = 0xFF |
| byte | VAR_ROOM_RESOURCE = 0xFF |
| byte | VAR_LAST_SOUND = 0xFF |
| byte | VAR_CUTSCENEEXIT_KEY = 0xFF |
| byte | VAR_OPTIONS_KEY = 0xFF |
| byte | VAR_TALK_ACTOR = 0xFF |
| byte | VAR_CAMERA_FAST_X = 0xFF |
| byte | VAR_SCROLL_SCRIPT = 0xFF |
| byte | VAR_ENTRY_SCRIPT = 0xFF |
| byte | VAR_ENTRY_SCRIPT2 = 0xFF |
| byte | VAR_EXIT_SCRIPT = 0xFF |
| byte | VAR_EXIT_SCRIPT2 = 0xFF |
| byte | VAR_VERB_SCRIPT = 0xFF |
| byte | VAR_SENTENCE_SCRIPT = 0xFF |
| byte | VAR_INVENTORY_SCRIPT = 0xFF |
| byte | VAR_CUTSCENE_START_SCRIPT = 0xFF |
| byte | VAR_CUTSCENE_END_SCRIPT = 0xFF |
| byte | VAR_CHARINC = 0xFF |
| byte | VAR_WALKTO_OBJ = 0xFF |
| byte | VAR_DEBUGMODE = 0xFF |
| byte | VAR_HEAPSPACE = 0xFF |
| byte | VAR_RESTART_KEY = 0xFF |
| byte | VAR_PAUSE_KEY = 0xFF |
| byte | VAR_MOUSE_X = 0xFF |
| byte | VAR_MOUSE_Y = 0xFF |
| byte | VAR_TIMER = 0xFF |
| byte | VAR_TIMER_TOTAL = 0xFF |
| byte | VAR_SOUNDCARD = 0xFF |
| byte | VAR_VIDEOMODE = 0xFF |
| byte | VAR_MAINMENU_KEY = 0xFF |
| byte | VAR_FIXEDDISK = 0xFF |
| byte | VAR_CURSORSTATE = 0xFF |
| byte | VAR_USERPUT = 0xFF |
| byte | VAR_SOUNDRESULT = 0xFF |
| byte | VAR_TALKSTOP_KEY = 0xFF |
| byte | VAR_FADE_DELAY = 0xFF |
| byte | VAR_NOSUBTITLES = 0xFF |
| byte | VAR_SOUNDPARAM = 0xFF |
| byte | VAR_SOUNDPARAM2 = 0xFF |
| byte | VAR_SOUNDPARAM3 = 0xFF |
| byte | VAR_INPUTMODE = 0xFF |
| byte | VAR_MEMORY_PERFORMANCE = 0xFF |
| byte | VAR_VIDEO_PERFORMANCE = 0xFF |
| byte | VAR_ROOM_FLAG = 0xFF |
| byte | VAR_GAME_LOADED = 0xFF |
| byte | VAR_NEW_ROOM = 0xFF |
| byte | VAR_V5_TALK_STRING_Y = 0xFF |
| byte | VAR_ROOM_WIDTH = 0xFF |
| byte | VAR_ROOM_HEIGHT = 0xFF |
| byte | VAR_SUBTITLES = 0xFF |
| byte | VAR_V6_EMSSPACE = 0xFF |
| byte | VAR_CAMERA_POS_Y = 0xFF |
| byte | VAR_CAMERA_MIN_Y = 0xFF |
| byte | VAR_CAMERA_MAX_Y = 0xFF |
| byte | VAR_CAMERA_THRESHOLD_X = 0xFF |
| byte | VAR_CAMERA_THRESHOLD_Y = 0xFF |
| byte | VAR_CAMERA_SPEED_X = 0xFF |
| byte | VAR_CAMERA_SPEED_Y = 0xFF |
| byte | VAR_CAMERA_ACCEL_X = 0xFF |
| byte | VAR_CAMERA_ACCEL_Y = 0xFF |
| byte | VAR_CAMERA_DEST_X = 0xFF |
| byte | VAR_CAMERA_DEST_Y = 0xFF |
| byte | VAR_CAMERA_FOLLOWED_ACTOR = 0xFF |
| byte | VAR_VERSION_KEY = 0xFF |
| byte | VAR_DEFAULT_TALK_DELAY = 0xFF |
| byte | VAR_CUSTOMSCALETABLE = 0xFF |
| byte | VAR_BLAST_ABOVE_TEXT = 0xFF |
| byte | VAR_VOICE_MODE = 0xFF |
| byte | VAR_MUSIC_BUNDLE_LOADED = 0xFF |
| byte | VAR_VOICE_BUNDLE_LOADED = 0xFF |
| byte | VAR_LEFTBTN_DOWN = 0xFF |
| byte | VAR_RIGHTBTN_DOWN = 0xFF |
| byte | VAR_LEFTBTN_HOLD = 0xFF |
| byte | VAR_RIGHTBTN_HOLD = 0xFF |
| byte | VAR_PRE_SAVELOAD_SCRIPT = 0xFF |
| byte | VAR_POST_SAVELOAD_SCRIPT = 0xFF |
| byte | VAR_SAVELOAD_PAGE = 0xFF |
| byte | VAR_OBJECT_LABEL_FLAG = 0xFF |
| byte | VAR_CHARSET_MASK = 0xFF |
| byte | VAR_V6_SOUNDMODE = 0xFF |
| byte | VAR_CHARCOUNT = 0xFF |
| byte | VAR_VERB_ALLOWED = 0xFF |
| byte | VAR_ACTIVE_VERB = 0xFF |
| byte | VAR_ACTIVE_OBJECT1 = 0xFF |
| byte | VAR_ACTIVE_OBJECT2 = 0xFF |
| byte | VAR_ALWAYS_REDRAW_ACTORS = 0xFF |
| byte | VAR_SKIP_RESET_TALK_ACTOR = 0xFF |
| byte | VAR_SOUND_CHANNEL = 0xFF |
| byte | VAR_TALK_CHANNEL = 0xFF |
| byte | VAR_SOUND_TOKEN_OFFSET = 0xFF |
| byte | VAR_START_DYN_SOUND_CHANNELS = 0xFF |
| byte | VAR_SOUND_CALLBACK_SCRIPT = 0xFF |
| byte | VAR_EARLY_TALKIE_CALLBACK = 0xFF |
| byte | VAR_EARLY_CHAN_0_CALLBACK = 0xFF |
| byte | VAR_EARLY_CHAN_1_CALLBACK = 0xFF |
| byte | VAR_EARLY_CHAN_2_CALLBACK = 0xFF |
| byte | VAR_EARLY_CHAN_3_CALLBACK = 0xFF |
| byte | VAR_MAIN_SCRIPT = 0xFF |
| byte | VAR_DEFAULT_SCRIPT_PRIORITY = 0xFF |
| byte | VAR_LAST_SCRIPT_PRIORITY = 0xFF |
| byte | VAR_QUIT_SCRIPT = 0xFF |
| byte | VAR_ERROR_FLAG = 0xFF |
| byte | VAR_OPERATION_FAILURE = 0xFF |
| byte | VAR_COLOR_BLACK = 0xFF |
| byte | VAR_NUM_GLOBAL_OBJS = 0xFF |
| byte | VAR_LAST_FRAME_BURN_TIME = 0xFF |
| byte | VAR_LAST_FRAME_SCUMM_TIME = 0xFF |
| byte | VAR_WINDEX_RUNNING = 0xFF |
| byte | _townsPaletteFlags = 0 |
| byte | _townsCharsetColorMap [16] |
Public Attributes inherited from Engine | |
| OSystem * | _system |
| Audio::Mixer * | _mixer |
Protected Types | |
| enum | SubOpType { SO_ACTOR_DEFAULT_CLIPPED = 30, SO_BACKGROUND_ON = 218, SO_BACKGROUND_OFF = 219, SO_ROOM_COPY_PALETTE = 220, SO_ROOM_SAVEGAME_BY_NAME = 221, SO_SOUND_START_VOLUME = 222, SO_SOUND_VOLUME_RAMP = 223, SO_SOUND_FREQUENCY = 224, SO_TALKIE = 225, SO_OBJECT_ORDER = 234, SO_ROOM_PALETTE_IN_ROOM = 236, SO_COLOR_LIST = 249 } |
Protected Types inherited from Scumm::ScummEngine_v6 | |
| enum | ArrayType { kBitArray = 1, kNibbleArray = 2, kByteArray = 3, kStringArray = 4, kIntArray = 5, kDwordArray = 6 } |
| enum | SubOpType { SO_AT = 65, SO_COLOR = 66, SO_CLIPPED = 67, SO_CENTER = 69, SO_LEFT = 71, SO_OVERHEAD = 72, SO_MUMBLE = 74, SO_TEXTSTRING = 75, SO_COSTUME = 76, SO_STEP_DIST = 77, SO_SOUND = 78, SO_WALK_ANIMATION = 79, SO_TALK_ANIMATION = 80, SO_STAND_ANIMATION = 81, SO_ANIMATION = 82, SO_DEFAULT = 83, SO_ELEVATION = 84, SO_ANIMATION_DEFAULT = 85, SO_PALETTE = 86, SO_TALK_COLOR = 87, SO_ACTOR_NAME = 88, SO_INIT_ANIMATION = 89, SO_ACTOR_WIDTH = 91, SO_SCALE = 92, SO_NEVER_ZCLIP = 93, SO_ALWAYS_ZCLIP = 94, SO_IGNORE_BOXES = 95, SO_FOLLOW_BOXES = 96, SO_ANIMATION_SPEED = 97, SO_SHADOW = 98, SO_TEXT_OFFSET = 99, SO_LOAD_SCRIPT = 100, SO_LOAD_SOUND = 101, SO_LOAD_COSTUME = 102, SO_LOAD_ROOM = 103, SO_NUKE_SCRIPT = 104, SO_NUKE_SOUND = 105, SO_NUKE_COSTUME = 106, SO_NUKE_ROOM = 107, SO_LOCK_SCRIPT = 108, SO_LOCK_SOUND = 109, SO_LOCK_COSTUME = 110, SO_LOCK_ROOM = 111, SO_UNLOCK_SCRIPT = 112, SO_UNLOCK_SOUND = 113, SO_UNLOCK_COSTUME = 114, SO_UNLOCK_ROOM = 115, SO_CLEAR_HEAP = 116, SO_LOAD_CHARSET = 117, SO_NUKE_CHARSET = 118, SO_LOAD_OBJECT = 119, SO_VERB_IMAGE = 124, SO_VERB_NAME = 125, SO_VERB_COLOR = 126, SO_VERB_HICOLOR = 127, SO_VERB_AT = 128, SO_VERB_ON = 129, SO_VERB_OFF = 130, SO_VERB_DELETE = 131, SO_VERB_NEW = 132, SO_VERB_DIMCOLOR = 133, SO_VERB_DIM = 134, SO_VERB_KEY = 135, SO_VERB_CENTER = 136, SO_VERB_NAME_STR = 137, SO_VERB_IMAGE_IN_ROOM = 139, SO_VERB_BAKCOLOR = 140, SO_SAVE_VERBS = 141, SO_RESTORE_VERBS = 142, SO_DELETE_VERBS = 143, SO_CURSOR_ON = 144, SO_CURSOR_OFF = 145, SO_USERPUT_ON = 146, SO_USERPUT_OFF = 147, SO_CURSOR_SOFT_ON = 148, SO_CURSOR_SOFT_OFF = 149, SO_USERPUT_SOFT_ON = 150, SO_USERPUT_SOFT_OFF = 151, SO_CURSOR_IMAGE = 153, SO_CURSOR_HOTSPOT = 154, SO_CHARSET_SET = 156, SO_CHARSET_COLOR = 157, SO_RESTART = 158, SO_PAUSE = 159, SO_QUIT = 160, SO_WAIT_FOR_ACTOR = 168, SO_WAIT_FOR_MESSAGE = 169, SO_WAIT_FOR_CAMERA = 170, SO_WAIT_FOR_SENTENCE = 171, SO_ROOM_SCROLL = 172, SO_ROOM_SCREEN = 174, SO_ROOM_PALETTE = 175, SO_ROOM_SHAKE_ON = 176, SO_ROOM_SHAKE_OFF = 177, SO_ROOM_INTENSITY = 179, SO_ROOM_SAVEGAME = 180, SO_ROOM_FADE = 181, SO_RGB_ROOM_INTENSITY = 182, SO_ROOM_SHADOW = 183, SO_SAVE_STRING = 184, SO_LOAD_STRING = 185, SO_ROOM_TRANSFORM = 186, SO_CYCLE_SPEED = 187, SO_VERB_INIT = 196, SO_ACTOR_INIT = 197, SO_ACTOR_VARIABLE = 198, SO_INT_ARRAY = 199, SO_BIT_ARRAY = 200, SO_NIBBLE_ARRAY = 201, SO_BYTE_ARRAY = 202, SO_STRING_ARRAY = 203, SO_UNDIM_ARRAY = 204, SO_ASSIGN_STRING = 205, SO_ASSIGN_INT_LIST = 208, SO_ASSIGN_2DIM_LIST = 212, SO_ROOM_NEW_PALETTE = 213, SO_CURSOR_TRANSPARENT = 214, SO_ACTOR_IGNORE_TURNS_ON = 215, SO_ACTOR_IGNORE_TURNS_OFF = 216, SO_NEW = 217, SO_ALWAYS_ZCLIP_FT_DEMO = 225, SO_WAIT_FOR_ANIMATION = 226, SO_ACTOR_DEPTH = 227, SO_ACTOR_WALK_SCRIPT = 228, SO_ACTOR_STOP = 229, SO_ACTOR_FACE = 230, SO_ACTOR_TURN = 231, SO_WAIT_FOR_TURN = 232, SO_ACTOR_WALK_PAUSE = 233, SO_ACTOR_WALK_RESUME = 234, SO_ACTOR_TALK_SCRIPT = 235, SO_BASEOP = 254, SO_END = 255 } |
Protected Member Functions | |
| void | setupOpcodes () override |
| void | saveLoadWithSerializer (Common::Serializer &s) override |
| void | localizeArray (int slot, byte scriptSlot) |
| void | redimArray (int arrayId, int newX, int newY, int d) |
| int | readFileToArray (int slot, int32 size) |
| void | writeFileFromArray (int slot, int resID) |
| int | virtScreenSave (byte *dst, int x1, int y1, int x2, int y2) |
| void | virtScreenLoad (int resIdx, int x1, int y1, int x2, int y2) |
| void | decodeParseString (int a, int b) override |
| void | swapObjects (int object1, int object2) |
| Common::Path | convertFilePath (const byte *src) |
| Common::String | convertSavePath (const byte *src) |
| Common::String | convertSavePathOld (const byte *src) |
| Common::SeekableReadStream * | openFileForReading (const byte *fileName) |
| Common::SeekableReadStream * | openSaveFileForReading (const byte *fileName) |
| Common::SeekableWriteStream * | openSaveFileForWriting (const byte *fileName) |
| Common::SeekableWriteStream * | openSaveFileForAppending (const byte *fileName) |
| void | deleteSaveFile (const byte *fileName) |
| void | renameSaveFile (const byte *from, const byte *to) |
| void | pauseEngineIntern (bool pause) override |
| Common::SeekableReadStream * | openSaveFileForReading (int slot, bool compat, Common::String &fileName) override |
| Common::SeekableWriteStream * | openSaveFileForWriting (int slot, bool compat, Common::String &fileName) override |
| void | o60_setState () |
| void | o60_roomOps () |
| void | o60_actorOps () |
| void | o60_kernelSetFunctions () |
| void | o60_kernelGetFunctions () |
| void | o60_openFile () |
| void | o60_closeFile () |
| void | o60_deleteFile () |
| void | o60_readFile () |
| void | o60_rename () |
| void | o60_writeFile () |
| void | o60_soundOps () |
| void | o60_isSoundRunning () |
| void | o60_seekFilePos () |
| void | o60_localizeArrayToScript () |
| void | o60_redimArray () |
| void | o60_readFilePos () |
Protected Member Functions inherited from Scumm::ScummEngine_v6 | |
| void | setupOpcodes () override |
| void | scummLoop_handleSaveLoad () override |
| void | scummLoop_handleActors () override |
| void | processKeyboard (Common::KeyState lastKeyHit) override |
| void | setupScummVars () override |
| void | readArrayFromIndexFile () override |
| byte * | getStringAddress (ResId idx) override |
| void | readMAXS (int blockSize) override |
| void | palManipulateInit (int resID, int start, int end, int time) override |
| void | drawDirtyScreenParts () override |
| int | getStackList (int *args, uint maxnum) |
| int | popRoomAndObj (int *room) |
| ArrayHeader * | getArray (int array) |
| byte * | defineArray (int array, int type, int dim2, int dim1) |
| int | findFreeArrayId () |
| virtual int | readArray (int array, int index, int base) |
| virtual void | writeArray (int array, int index, int base, int value) |
| void | shuffleArray (int num, int minIdx, int maxIdx) |
| void | setDefaultCursor () override |
| void | setCursorTransparency (int a) override |
| void | setCursorHotspot (int x, int y) override |
| virtual void | setCursorFromImg (uint img, uint room, uint imgindex) |
| void | useIm01Cursor (const byte *im, int w, int h) |
| void | useBompCursor (const byte *im, int w, int h) |
| void | grabCursor (int x, int y, int w, int h) |
| void | setCursorFromBuffer (const byte *ptr, int width, int height, int pitch, bool preventScale=false) override |
| void | ditherCursor () |
| virtual void | drawBlastTexts () |
| virtual void | removeBlastTexts () |
| void | enqueueObject (int objectNumber, int objectX, int objectY, int objectWidth, int objectHeight, int scaleX, int scaleY, int image, int mode) |
| void | drawBlastObjects () |
| void | drawBlastObject (BlastObject *eo) |
| void | restoreBlastObjectRect (Common::Rect r) |
| void | clearDrawQueues () override |
| int | getBannerColor (int bannerId) override |
| const char * | getGUIString (int stringId) override |
| void | setSkipVideo (int value) override |
| void | setUpMainMenuControls () override |
| void | akos_queCommand (byte cmd, Actor *a, int param_1, int param_2) |
| virtual void | akos_processQueue () |
| void | processActors () override |
| int | getSpecialBox (int x, int y) |
| int | getDistanceBetween (bool is_obj_1, int b, int c, bool is_obj_2, int e, int f) |
| void | o6_setBlastObjectWindow () |
| void | o6_pushByte () |
| void | o6_pushWord () |
| void | o6_pushByteVar () |
| void | o6_pushWordVar () |
| void | o6_byteArrayRead () |
| void | o6_wordArrayRead () |
| void | o6_byteArrayIndexedRead () |
| void | o6_wordArrayIndexedRead () |
| void | o6_dup () |
| void | o6_pop () |
| void | o6_not () |
| void | o6_eq () |
| void | o6_neq () |
| void | o6_gt () |
| void | o6_lt () |
| void | o6_le () |
| void | o6_ge () |
| void | o6_add () |
| void | o6_sub () |
| void | o6_mul () |
| void | o6_div () |
| void | o6_land () |
| void | o6_lor () |
| void | o6_writeByteVar () |
| void | o6_writeWordVar () |
| void | o6_byteArrayWrite () |
| void | o6_wordArrayWrite () |
| void | o6_byteArrayIndexedWrite () |
| void | o6_wordArrayIndexedWrite () |
| void | o6_byteVarInc () |
| void | o6_wordVarInc () |
| void | o6_byteArrayInc () |
| void | o6_wordArrayInc () |
| void | o6_byteVarDec () |
| void | o6_wordVarDec () |
| void | o6_byteArrayDec () |
| void | o6_wordArrayDec () |
| void | o6_if () |
| void | o6_ifNot () |
| void | o6_jump () |
| void | o6_startScript () |
| void | o6_startScriptQuick () |
| void | o6_startObject () |
| void | o6_drawObject () |
| void | o6_drawObjectAt () |
| void | o6_stopObjectCode () |
| void | o6_endCutscene () |
| void | o6_cutscene () |
| void | o6_stopMusic () |
| void | o6_freezeUnfreeze () |
| void | o6_cursorCommand () |
| void | o6_breakHere () |
| void | o6_ifClassOfIs () |
| void | o6_setClass () |
| void | o6_getState () |
| void | o6_setState () |
| void | o6_setOwner () |
| void | o6_getOwner () |
| void | o6_startSound () |
| void | o6_stopSound () |
| void | o6_startMusic () |
| void | o6_stopObjectScript () |
| void | o6_panCameraTo () |
| void | o6_actorFollowCamera () |
| void | o6_setCameraAt () |
| void | o6_loadRoom () |
| void | o6_stopScript () |
| void | o6_walkActorToObj () |
| void | o6_walkActorTo () |
| void | o6_putActorAtXY () |
| void | o6_putActorAtObject () |
| void | o6_faceActor () |
| void | o6_animateActor () |
| void | o6_doSentence () |
| void | o6_pickupObject () |
| void | o6_loadRoomWithEgo () |
| void | o6_getRandomNumber () |
| void | o6_getRandomNumberRange () |
| void | o6_getActorMoving () |
| void | o6_isScriptRunning () |
| void | o6_getActorRoom () |
| void | o6_getObjectX () |
| void | o6_getObjectY () |
| void | o6_getObjectOldDir () |
| void | o6_getObjectNewDir () |
| void | o6_getActorWalkBox () |
| void | o6_getActorCostume () |
| void | o6_findInventory () |
| void | o6_getInventoryCount () |
| void | o6_getVerbFromXY () |
| void | o6_beginOverride () |
| void | o6_endOverride () |
| void | o6_setObjectName () |
| void | o6_isSoundRunning () |
| void | o6_setBoxFlags () |
| void | o6_createBoxMatrix () |
| void | o6_resourceRoutines () |
| void | o6_roomOps () |
| void | o6_actorOps () |
| void | o6_verbOps () |
| void | o6_getActorFromXY () |
| void | o6_findObject () |
| void | o6_pseudoRoom () |
| void | o6_getActorElevation () |
| void | o6_getVerbEntrypoint () |
| void | o6_arrayOps () |
| void | o6_saveRestoreVerbs () |
| void | o6_drawBox () |
| void | o6_getActorWidth () |
| void | o6_wait () |
| void | o6_getActorScaleX () |
| void | o6_getActorAnimCounter () |
| void | o6_soundKludge () |
| void | o6_isAnyOf () |
| void | o6_systemOps () |
| void | o6_isActorInBox () |
| void | o6_delay () |
| void | o6_delaySeconds () |
| void | o6_delayMinutes () |
| void | o6_stopSentence () |
| void | o6_printLine () |
| void | o6_printText () |
| void | o6_printDebug () |
| void | o6_printSystem () |
| void | o6_printActor () |
| void | o6_printEgo () |
| void | o6_talkActor () |
| void | o6_talkEgo () |
| void | o6_dimArray () |
| void | o6_dummy () |
| void | o6_startObjectQuick () |
| void | o6_startScriptQuick2 () |
| void | o6_dim2dimArray () |
| void | o6_abs () |
| void | o6_distObjectObject () |
| void | o6_distObjectPt () |
| void | o6_distPtPt () |
| virtual void | o6_kernelSetFunctions () |
| void | o6_delayFrames () |
| void | o6_pickOneOf () |
| void | o6_pickOneOfDefault () |
| void | o6_jumpToScript () |
| void | o6_isRoomScriptRunning () |
| void | o6_kernelGetFunctions () |
| void | o6_getAnimateVariable () |
| void | o6_drawBlastObject () |
| void | o6_getActorLayer () |
| void | o6_stampObject () |
| void | o6_bor () |
| void | o6_band () |
| void | o6_stopTalking () |
| void | o6_findAllObjects () |
| void | o6_pickVarRandom () |
| void | o6_getDateTime () |
| void | o6_getPixel () |
| void | o6_setBoxSet () |
| void | o6_shuffle () |
| void | o6_animateActorApplyEnhancements (int &act, int &anim) |
Protected Member Functions inherited from Scumm::ScummEngine | |
| virtual void | setupScumm (const Common::Path &macResourceFile) |
| virtual void | resetScummVars () |
| void | setVideoModeVarToCurrentConfig () |
| void | setSoundCardVarToCurrentConfig () |
| void | setupCharsetRenderer (const Common::Path &macFontFile) |
| void | setupCostumeRenderer () |
| virtual void | loadLanguageBundle () |
| void | loadCJKFont () |
| void | loadKorFont () |
| void | setupMusic (int midi) |
| void | setTalkSpeed (int talkspeed) |
| int | getTalkSpeed () |
| virtual void | scummLoop (int delta) |
| virtual void | scummLoop_updateScummVars () |
| virtual void | scummLoop_handleDrawing () |
| virtual void | scummLoop_handleEffects () |
| virtual void | scummLoop_handleSound () |
| virtual void | runBootscript () |
| virtual void | terminateSaveMenuScript () |
| virtual void | parseEvent (Common::Event event) |
| void | waitForTimer (int quarterFrames, bool freezeMacGui=false) |
| void | setTimerAndShakeFrequency () |
| uint32 | getIntegralTime (double fMsecs) |
| virtual void | processInput () |
| virtual void | clearClickedStatus () |
| virtual void | updateCursor () |
| virtual void | animateCursor () |
| virtual void | updatePalette () |
| virtual void | resetCursors () |
| void | confirmExitDialog () |
| void | confirmRestartDialog () |
| void | pauseDialog () |
| void | messageDialog (const Common::U32String &message) |
| void | versionDialog () |
| virtual void | setSnailCursor () |
| void | initBanners () |
| Common::KeyState | showBannerAndPause (int bannerId, int32 waitTime, const char *msg,...) |
| Common::KeyState | showOldStyleBannerAndPause (const char *msg, int color, int32 waitTime) |
| Common::KeyState | printMessageAndPause (const char *msg, int color, int32 waitTime, bool drawOnSentenceLine) |
| void | clearBanner () |
| void | setBannerColors (int bannerId, byte r, byte g, byte b) |
| void | setUpInternalGUIControl (int id, int normalFillColor, int normalTextColor, int topLineColor, int bottomLineColor, int leftLineColor, int rightLineColor, int highlightedTextColor, int highlightedFillColor, int anchorPointX, int anchorPointY, int x, int y, const char *label, bool centerFlag, bool unknownFlag) |
| void | drawInternalGUIControl (int id, bool highlightColor) |
| int | getInternalGUIControlFromCoordinates (int x, int y) |
| virtual bool | isSmushActive () |
| virtual bool | isInsaneActive () |
| virtual void | queryQuit (bool returnToLauncher) |
| virtual void | queryRestart () |
| void | waitForBannerInput (int32 waitTime, Common::KeyState &ks, bool &leftBtnClicked, bool &rightBtnClicked, bool handleMouseWheel=false) |
| virtual int | getGUIStringHeight (const char *str) |
| virtual int | getGUIStringWidth (const char *str) |
| virtual void | drawGUIText (const char *buttonString, Common::Rect *clipRect, int textXPos, int textYPos, int textColor, bool centerFlag) |
| void | getSliderString (int stringId, int value, char *sliderString, int size) |
| virtual int | getMusicVolume () |
| virtual int | getSpeechVolume () |
| virtual int | getSFXVolume () |
| virtual void | setMusicVolume (int volume) |
| virtual void | setSpeechVolume (int volume) |
| virtual void | setSFXVolume (int volume) |
| virtual void | toggleVoiceMode () |
| virtual void | handleLoadDuringSmush () |
| void | showMainMenu () |
| void | setUpMainMenuControlsSegaCD () |
| void | setUpMainMenuControlsIndy4Jap () |
| void | drawMainMenuControls () |
| void | drawMainMenuControlsSegaCD () |
| void | updateMainMenuControls () |
| void | updateMainMenuControlsSegaCD () |
| void | drawMainMenuTitle (const char *title) |
| bool | executeMainMenuOperation (int op, int mouseX, int mouseY, bool &hasLoadedState) |
| bool | executeMainMenuOperationSegaCD (int op, int mouseX, int mouseY, bool &hasLoadedState) |
| bool | shouldHighlightLabelAndWait (int clickedControl) |
| void | fillSavegameLabels () |
| bool | canWriteGame (int slotId) |
| bool | userWriteLabelRoutine (Common::KeyState &ks, bool &leftMsClicked, bool &rightMsClicked) |
| void | saveCursorPreMenu () |
| void | restoreCursorPostMenu () |
| void | saveSurfacesPreGUI () |
| void | restoreSurfacesPostGUI () |
| void | showDraftsInventory () |
| void | setUpDraftsInventory () |
| void | drawDraftsInventory () |
| bool | saveState (Common::SeekableWriteStream *out, bool writeHeader=true) |
| bool | saveState (int slot, bool compat, Common::String &fileName) |
| bool | loadState (int slot, bool compat) |
| bool | loadState (int slot, bool compat, Common::String &fileName) |
| void | saveLoadWithSerializer (Common::Serializer &s) override |
| void | saveResource (Common::Serializer &ser, ResType type, ResId idx) |
| void | loadResource (Common::Serializer &ser, ResType type, ResId idx) |
| void | loadResourceOLD (Common::Serializer &ser, ResType type, ResId idx) |
| virtual int | checkSoundEngineSaveDataSize (Serializer &s) |
| void | copyHeapSaveGameToFile (int slot, const char *saveName) |
| bool | changeSavegameName (int slot, char *newName) |
| Common::String | makeSavegameName (int slot, bool temporary) const |
| int | getKeyState (int key) |
| int | getActionState (ScummAction action) |
| void | saveInfos (Common::WriteStream *file) |
| bool | currentScriptSlotIs (uint16 script) const |
| void | executeOpcode (byte i) |
| const char * | getOpcodeDesc (byte i) |
| void | initializeLocals (int slot, int *vars) |
| int | getScriptSlot () |
| void | startScene (int room, Actor *a, int b) |
| bool | startManiac () |
| void | runObjectScript (int script, int entry, bool freezeResistant, bool recursive, int *vars, int slot=-1, int cycle=0) |
| void | runScriptNested (int script) |
| void | executeScript () |
| void | updateScriptPtr () |
| virtual void | runInventoryScript (int i) |
| virtual void | runInventoryScriptEx (int i) |
| virtual void | checkAndRunSentenceScript () |
| void | runExitScript () |
| void | runEntryScript () |
| void | runQuitScript () |
| void | runAllScripts () |
| void | freezeScripts (int scr) |
| void | unfreezeScripts () |
| bool | isScriptInUse (int script) const |
| bool | isRoomScriptRunning (int script) const |
| bool | isScriptRunning (int script) const |
| void | killAllScriptsExceptCurrent () |
| void | killScriptsAndResources () |
| void | decreaseScriptDelay (int amount) |
| void | stopObjectCode () |
| void | stopObjectScript (int script) |
| void | getScriptBaseAddress () |
| void | resetScriptPointer () |
| int | getVerbEntrypoint (int obj, int entry) |
| void | refreshScriptPointer () |
| byte | fetchScriptByte () |
| virtual uint | fetchScriptWord () |
| virtual int | fetchScriptWordSigned () |
| uint | fetchScriptDWord () |
| int | fetchScriptDWordSigned () |
| void | ignoreScriptWord () |
| void | ignoreScriptByte () |
| void | push (int a) |
| int | pop () |
| virtual int | readVar (uint var) |
| virtual void | writeVar (uint var, int value) |
| virtual void | resetSentence () |
| virtual void | beginCutscene (int *args) |
| virtual void | endCutscene () |
| void | abortCutscene () |
| void | beginOverride () |
| void | endOverride () |
| void | copyScriptString (byte *dst) |
| int | resStrLen (const byte *src) |
| void | doSentence (int c, int b, int a) |
| virtual void | allocateArrays () |
| void | openRoom (int room) |
| void | closeRoom () |
| void | deleteRoomOffsets () |
| virtual void | readRoomsOffsets () |
| void | askForDisk (const Common::Path &filename, int disknum) |
| bool | openResourceFile (const Common::Path &filename, byte encByte) |
| void | loadPtrToResource (ResType type, ResId idx, const byte *ptr) |
| virtual int | readResTypeList (ResType type) |
| int | loadResource (ResType type, ResId idx) |
| int | getResourceRoomNr (ResType type, ResId idx) |
| virtual uint32 | getResourceRoomOffset (ResType type, ResId idx) |
| int | readSoundResource (ResId idx) |
| int | readSoundResourceSmallHeader (ResId idx) |
| bool | isResourceInUse (ResType type, ResId idx) const |
| virtual void | setupRoomSubBlocks () |
| virtual void | resetRoomSubBlocks () |
| virtual void | clearRoomObjects () |
| virtual void | resetRoomObjects () |
| virtual void | resetRoomObject (ObjectData *od, const byte *room, const byte *searchptr=NULL) |
| virtual void | readGlobalObjects () |
| virtual void | readIndexFile () |
| virtual void | readIndexBlock (uint32 block, uint32 itemsize) |
| virtual void | loadCharset (int i) |
| void | nukeCharset (int i) |
| void | markObjectRectAsDirty (int obj) |
| virtual void | loadFlObject (uint object, uint room) |
| void | nukeFlObjects (int min, int max) |
| int | findFlObjectSlot () |
| int | findLocalObjectSlot () |
| void | addObjectToInventory (uint obj, uint room) |
| void | updateObjectStates () |
| void | putClass (int obj, int cls, bool set) |
| int | getState (int obj) |
| void | putState (int obj, int state) |
| void | setObjectState (int obj, int state, int x, int y) |
| int | getOwner (int obj) const |
| void | putOwner (int obj, int owner) |
| void | setOwnerOf (int obj, int owner) |
| void | clearOwnerOf (int obj) |
| int | getObjectRoom (int obj) const |
| virtual bool | objIsActor (int obj) |
| virtual int | objToActor (int obj) |
| virtual int | actorToObj (int actor) |
| int | getObjX (int obj) |
| int | getObjY (int obj) |
| void | getObjectWidth (int object, int &width) |
| void | getObjectXYPos (int object, int &x, int &y) |
| void | getObjectXYPos (int object, int &x, int &y, int &dir) |
| void | getObjectXYPos (int object, int &x, int &y, int &dir, int &width) |
| int | getObjOldDir (int obj) |
| int | getObjNewDir (int obj) |
| int | getObjectIndex (int object) const |
| int | getObjectImageCount (int object) |
| int | whereIsObject (int object) const |
| int | findObject (int x, int y) |
| void | findObjectInRoom (FindObjectInRoom *fo, byte findWhat, uint object, uint room) |
| int | getObjActToObjActDist (int a, int b) |
| const byte * | getObjOrActorName (int obj) |
| void | setObjectName (int obj) |
| void | addObjectToDrawQue (int object) |
| void | removeObjectFromDrawQue (int object) |
| void | clearDrawObjectQueue () |
| void | processDrawQue () |
| uint32 | getOBCDOffs (int object) const |
| byte * | getOBCDFromObject (int obj, bool v0CheckInventory=true) |
| const byte * | getOBIMFromObjectData (const ObjectData &od) |
| const byte * | getObjectImage (const byte *ptr, int state) |
| virtual int | getObjectIdFromOBIM (const byte *obim) |
| virtual void | handleMouseOver (bool updateInventory) |
| virtual void | redrawVerbs () |
| virtual void | checkExecVerbs () |
| void | verbMouseOver (int verb) |
| int | findVerbAtPos (int x, int y) const |
| virtual void | drawVerb (int verb, int mode, Common::TextToSpeechManager::Action ttsAction=Common::TextToSpeechManager::INTERRUPT) |
| virtual void | runInputScript (int clickArea, int val, int mode) |
| void | restoreVerbBG (int verb) |
| void | drawVerbBitmap (int verb, int x, int y) |
| int | getVerbSlot (int id, int mode) const |
| void | killVerb (int slot) |
| void | setVerbObject (uint room, uint object, uint verb) |
| void | walkActors () |
| void | playActorSounds () |
| void | redrawAllActors () |
| virtual void | setActorRedrawFlags () |
| void | putActors () |
| void | showActors () |
| void | resetV1ActorTalkColor () |
| virtual void | resetActorBgs () |
| void | processUpperActors () |
| virtual int | getActorFromPos (int x, int y) |
| virtual void | setBuiltinCursor (int index) |
| void | initScreens (int b, int h) |
| void | initVirtScreen (VirtScreenNumber slot, int top, int width, int height, bool twobufs, bool scrollable) |
| void | initBGBuffers (int height) |
| void | initCycl (const byte *ptr) |
| void | decodeNESBaseTiles () |
| void | drawObject (int obj, int scrollType) |
| void | drawRoomObjects (int arg) |
| void | drawRoomObject (int i, int arg) |
| void | drawBox (int x, int y, int x2, int y2, int color) |
| void | drawLine (int x1, int y1, int x2, int y2, int color) |
| void | drawPixel (VirtScreen *vs, int x, int y, int16 color, bool useBackbuffer=false) |
| void | moveScreen (int dx, int dy, int height) |
| void | restoreBackground (Common::Rect rect, byte backcolor=0) |
| void | redrawBGStrip (int start, int num) |
| virtual void | redrawBGAreas () |
| void | cameraMoved () |
| void | setCameraAtEx (int at) |
| virtual void | setCameraAt (int pos_x, int pos_y) |
| virtual void | setCameraFollows (Actor *a, bool setCamera=false) |
| virtual void | moveCamera () |
| virtual void | panCameraTo (int x, int y) |
| void | clampCameraPos (Common::Point *pt) |
| void | actorFollowCamera (int act) |
| const byte * | getPalettePtr (int palindex, int room) |
| void | setPaletteFromTable (const byte *ptr, int numcolor, int firstIndex=0) |
| void | resetPalette (bool isBootUp=false) |
| void | setCurrentPalette (int pal) |
| void | setRoomPalette (int pal, int room) |
| void | setPCEPaletteFromPtr (const byte *ptr) |
| void | setAmigaPaletteFromPtr (const byte *ptr) |
| virtual void | setPaletteFromPtr (const byte *ptr, int numcolor=-1) |
| void | setV1ColorTable (int renderMode) |
| virtual void | setPalColor (int index, int r, int g, int b) |
| void | setDirtyColors (int min, int max) |
| const byte * | findPalInPals (const byte *pal, int index) |
| void | swapPalColors (int a, int b) |
| virtual void | copyPalColor (int dst, int src) |
| void | cyclePalette () |
| void | stopCycle (int i) |
| void | palManipulate () |
| uint32 | findClosestPaletteColor (byte *palette, int paletteLength, byte r, byte g, byte b) |
| void | applyGrayscaleToPaletteRange (int min, int max) |
| bool | haveToApplyMonkey1PaletteFix () |
| void | moveMemInPalRes (int start, int end, byte direction) |
| void | setShadowPalette (int slot, int redScale, int greenScale, int blueScale, int startColor, int endColor) |
| void | setShadowPalette (int redScale, int greenScale, int blueScale, int startColor, int endColor, int start, int end) |
| virtual void | darkenPalette (int redScale, int greenScale, int blueScale, int startColor, int endColor) |
| void | updateDirtyScreen (VirtScreenNumber slot) |
| void | drawStripToScreen (VirtScreen *vs, int x, int width, int top, int bottom) |
| void | mac_markScreenAsDirty (int x, int y, int w, int h) |
| void | mac_drawStripToScreen (VirtScreen *vs, int top, int x, int y, int width, int height) |
| void | mac_drawIndy3TextBox () |
| void | mac_undrawIndy3TextBox () |
| void | mac_undrawIndy3CreditsText () |
| void | mac_drawBufferToScreen (const byte *buffer, int pitch, int x, int y, int width, int height, bool epxRectangleExpansion=true) |
| void | mac_updateCompositeBuffer (const byte *buffer, int pitch, int x, int y, int width, int height) |
| void | mac_blitDoubleResImage (const byte *buffer, int pitch, int x, int y, int width, int height) |
| void | mac_applyDoubleResToBuffer (const byte *inputBuffer, byte *outputBuffer, int width, int height, int inputPitch, int outputPitch) |
| void | mac_blitEPXImage (const byte *buffer, int pitch, int x, int y, int width, int height, bool epxRectangleExpansion=true) |
| void | mac_applyEPXToBuffer (const byte *inputBuffer, byte *outputBuffer, int width, int height, int inputPitch, int outputPitch, int xOffset, int yOffset, int bufferWidth, int bufferHeight) |
| void | mac_scaleCursor (byte *&outCursor, int &outHotspotX, int &outHotspotY, int &outWidth, int &outHeight) |
| void | mac_toggleSmoothing () |
| Common::KeyState | mac_showOldStyleBannerAndPause (const char *msg, int32 waitTime) |
| const byte * | postProcessDOSGraphics (VirtScreen *vs, int &pitch, int &x, int &y, int &width, int &height) const |
| const byte * | ditherVGAtoEGA (int &pitch, int &x, int &y, int &width, int &height) const |
| void | fadeIn (int effect) |
| void | fadeOut (int effect) |
| void | dissolveEffectSelector () |
| void | transitionEffect (int a) |
| void | dissolveEffect (int width, int height) |
| void | scrollEffect (int dir) |
| void | updateScreenShakeEffect () |
| void | setShake (int mode) |
| void | upgradeGfxUsageBits () |
| void | setGfxUsageBit (int strip, int bit) |
| void | clearGfxUsageBit (int strip, int bit) |
| bool | testGfxUsageBit (int strip, int bit) |
| bool | testGfxAnyUsageBits (int strip) |
| bool | testGfxObjectUsageBits (int strip) |
| bool | testGfxOtherUsageBits (int strip, int bit) |
| void | amigaPaletteFindFirstUsedColor () |
| void | mapRoomPalette (int idx) |
| int | remapRoomPaletteColor (int r, int g, int b) |
| void | mapVerbPalette (int idx) |
| int | remapVerbPaletteColor (int r, int g, int b) |
| void | setScaleSlot (int slot, int x1, int y1, int scale1, int x2, int y2, int scale2) |
| void | setBoxScaleSlot (int box, int slot) |
| void | convertScaleTableToScaleSlot (int slot) |
| void | calcItineraryMatrix (byte *itineraryMatrix, int num) |
| void | createBoxMatrix () |
| virtual bool | areBoxesNeighbors (int i, int j) |
| void | restoreCharsetBg () |
| void | clearCharsetMask () |
| void | clearTextSurface () |
| virtual void | initCharset (int charset) |
| virtual void | printString (int m, const byte *msg) |
| virtual bool | handleNextCharsetCode (Actor *a, int *c) |
| virtual void | drawSentence () |
| virtual void | displayDialog () |
| int | countNumberOfWaits () |
| bool | newLine () |
| void | drawString (int a, const byte *msg, Common::TextToSpeechManager::Action ttsAction=Common::TextToSpeechManager::QUEUE) |
| virtual void | fakeBidiString (byte *ltext, bool ignoreVerb, int ltextSize) const |
| void | wrapSegaCDText () |
| void | debugMessage (const byte *msg) |
| virtual void | showMessageDialog (const byte *msg) |
| void | sayText (const Common::String &text, Common::TextToSpeechManager::Action action=Common::TextToSpeechManager::QUEUE) const |
| void | stopTextToSpeech () const |
| void | sayButtonText () |
| virtual int | convertMessageToString (const byte *msg, byte *dst, int dstSize) |
| int | convertIntMessage (byte *dst, int dstSize, int var) |
| int | convertVerbMessage (byte *dst, int dstSize, int var) |
| int | convertNameMessage (byte *dst, int dstSize, int var) |
| int | convertStringMessage (byte *dst, int dstSize, int var) |
| void | towns_drawStripToScreen (VirtScreen *vs, int dstX, int dstY, int srcX, int srcY, int w, int h) |
| void | towns_fillTopLayerRect (int x1, int y1, int x2, int y2, int col) |
| void | towns_swapVirtScreenArea (VirtScreen *vs, int x, int y, int w, int h) |
| void | towns_clearStrip (int strip) |
| void | towns_setupPalCycleField (int x1, int y1, int x2, int y2) |
| void | towns_processPalCycleField () |
| void | towns_resetPalCycleFields () |
| void | towns_restoreCharsetBg () |
| void | towns_scriptScrollEffect (int dir) |
| void | requestScroll (int dir) |
| void | scrollLeft () |
| void | scrollRight () |
| void | towns_waitForScroll (int waitForDirection, int threshold=0) |
| void | towns_updateGfx () |
Protected Member Functions inherited from Engine | |
| virtual int | runDialog (GUI::Dialog &dialog) |
| void | defaultSyncSoundSettings () |
Additional Inherited Members | |
Public Types inherited from Engine | |
| enum | EngineFeature { kSupportsSubtitleOptions, kSupportsReturnToLauncher, kSupportsLoadingDuringRuntime, kSupportsSavingDuringRuntime, kSupportsChangingOptionsDuringRuntime, kSupportsArbitraryResolutions, kSupportsHelp, kSupportsQuitDialogOverride } |
Static Public Member Functions inherited from Scumm::ScummEngine | |
| static Common::String | makeSavegameName (const Common::String &target, int slot, bool temporary) |
| static bool | querySaveMetaInfos (const char *target, int slot, int heversion, Common::String &desc, Graphics::Surface *&thumbnail, SaveStateMetaInfos *&timeInfos) |
Static Public Member Functions inherited from Engine | |
| static void | quitGame () |
| static bool | shouldQuit () |
| static bool | warnUserAboutUnsupportedGame (Common::String msg=Common::String()) |
| static bool | warnUserAboutUnsupportedAddOn (Common::String addOnName) |
| static void | errorAddingAddOnWithoutBaseGame (Common::String addOnName, Common::String gameId) |
| static void | errorUnsupportedGame (Common::String extraMsg) |
Static Protected Member Functions inherited from Scumm::ScummEngine | |
| static bool | loadInfos (Common::SeekableReadStream *file, SaveStateMetaInfos *stuff) |
Protected Attributes inherited from Scumm::ScummEngine_v6 | |
| struct Scumm::ScummEngine_v6::ArrayHeader | PACKED_STRUCT |
| int | _blastObjectQueuePos |
| int | _blastObjectRectsQueue = 0 |
| BlastObject | _blastObjectQueue [200] |
| Common::Rect | _blastObjectsRectsToBeRestored [200] |
| struct { | |
| int16 cmd | |
| int16 actor | |
| int16 param1 | |
| int16 param2 | |
| } | _akosQueue [32] |
| int16 | _akosQueuePos |
| byte | _curActor |
| int | _curVerb |
| int | _curVerbSlot |
| bool | _forcedWaitForMessage |
| bool | _skipVideo |
| byte | VAR_VIDEONAME |
| byte | VAR_RANDOM_NR |
| byte | VAR_STRING2DRAW |
| byte | VAR_TIMEDATE_YEAR |
| byte | VAR_TIMEDATE_MONTH |
| byte | VAR_TIMEDATE_DAY |
| byte | VAR_TIMEDATE_HOUR |
| byte | VAR_TIMEDATE_MINUTE |
| byte | VAR_TIMEDATE_SECOND |
Protected Attributes inherited from Scumm::ScummEngine | |
| VirtualMachineState | vm |
| bool | _needsSoundUnpause = false |
| uint32 | _lastWaitTime |
| double | _msecFractParts = 0.0 |
| Dialog * | _pauseDialog = nullptr |
| Dialog * | _messageDialog = nullptr |
| Dialog * | _versionDialog = nullptr |
| int32 | _bannerColors [50] |
| byte * | _bannerMem = nullptr |
| uint32 | _bannerMemSize = 0 |
| int | _bannerSaveYStart = 0 |
| bool | _messageBannerActive = false |
| bool | _comiQuitMenuIsOpen = false |
| bool | _closeBannerAndQueryQuitFlag = false |
| byte * | _textSurfBannerMem = nullptr |
| uint32 | _textSurfBannerMemSize = 0 |
| InternalGUIControl | _internalGUIControls [30] |
| const char | _emptyMsg [1] = {'\0'} |
| const char | _uncheckedBox [2] = {' ', '\0'} |
| const char | _checkedBox [2] = {'x', '\0'} |
| const char | _arrowUp [2] = {'\x18', '\0'} |
| const char | _arrowDown [2] = {'\x19', '\0'} |
| const char | _arrowLeft [2] = {'\x3c', '\0'} |
| const char | _arrowRight [2] = {'\x3d', '\0'} |
| Common::StringArray | _savegameNames |
| int | _menuPage = 0 |
| int | _mainMenuSavegameLabel = 1 |
| int | _curDisplayedSaveSlotPage = 0 |
| int | _firstSaveStateOfList = 0 |
| bool | _mainMenuIsActive = false |
| bool | _quitByGUIPrompt = false |
| char | _mainMenuMusicSlider [17] |
| char | _mainMenuSpeechSlider [17] |
| char | _mainMenuSfxSlider [17] |
| char | _mainMenuTextSpeedSlider [17] |
| char | _mainMenuSegaCDPasscode [5] |
| int | _spooledMusicIsToBeEnabled = 1 |
| int | _saveScriptParam = 0 |
| int | _guiCursorAnimCounter = 0 |
| int | _v5VoiceMode = 0 |
| int | _internalSpeakerSoundsAreOn = 1 |
| int | _guiMouseFlag = 1 |
| int | _guiJoystickFlag = 1 |
| bool | _mixerMutedByGUI = false |
| Graphics::Surface | _savegameThumbnail |
| byte * | _tempTextSurface = nullptr |
| byte * | _tempMainSurface = nullptr |
| byte * | _tempVerbSurface = nullptr |
| bool | _postGUICharMask = false |
| byte * | _curGrabbedCursor = nullptr |
| int8 | _oldCursorState = 0 |
| int | _curCursorState = 0 |
| int | _curCursorWidth = 0 |
| int | _curCursorHeight = 0 |
| int | _curCursorHotspotX = 0 |
| int | _curCursorHotspotY = 0 |
| byte | _fastMode = 0 |
| byte | _numActors = 0 |
| Actor ** | _actors = nullptr |
| Actor ** | _sortedActors = nullptr |
| byte * | _arraySlot = nullptr |
| uint16 * | _inventory = nullptr |
| uint16 * | _newNames = nullptr |
| int16 | _varwatch = 0 |
| int32 * | _roomVars = nullptr |
| int32 * | _scummVars = nullptr |
| byte * | _bitVars = nullptr |
| int | _numVariables = 0 |
| int | _numBitVariables = 0 |
| int | _numLocalObjects = 0 |
| int | _numGlobalObjects = 0 |
| int | _numArray = 0 |
| int | _numVerbs = 0 |
| int | _numFlObject = 0 |
| int | _numInventory = 0 |
| int | _numNewNames = 0 |
| int | _numGlobalScripts = 0 |
| int | _numRoomVariables = 0 |
| int | _numPalettes = 0 |
| int | _numSprites = 0 |
| int | _numTalkies = 0 |
| int | _numWindows = 0 |
| int | _HEHeapSize = 0 |
| int | _curPalIndex = 0 |
| Common::KeyState | _keyPressed |
| bool | _keyDownMap [512] |
| bool | _actionMap [kScummActionCount] |
| Common::Point | _mouse |
| Common::Point | _virtualMouse |
| uint16 | _mouseAndKeyboardStat = 0 |
| byte | _leftBtnPressed = 0 |
| byte | _rightBtnPressed = 0 |
| int | _mouseWheelFlag = 0 |
| bool | _setupIsComplete = false |
| uint32 | _lastInputScriptTime = 0 |
| int | _bootParam = 0 |
| bool | _dumpScripts = false |
| bool | _hexdumpScripts = false |
| bool | _showStack = false |
| bool | _debugMode = false |
| byte | _saveLoadFlag = 0 |
| byte | _saveLoadSlot = 0 |
| uint32 | _lastSaveTime = 0 |
| bool | _saveTemporaryState = false |
| bool | _pauseSoundsDuringSave = true |
| bool | _loadFromLauncher = false |
| bool | _videoModeChanged = false |
| Common::String | _saveLoadFileName |
| Common::String | _saveLoadDescription |
| uint32 | _localScriptOffsets [1024] |
| const byte * | _scriptPointer = nullptr |
| const byte * | _scriptOrgPointer = nullptr |
| const byte *const * | _lastCodePtr = nullptr |
| byte | _opcode = 0 |
| bool | _debug = false |
| byte | _currentScript = 0xFF |
| int | _scummStackPos = 0 |
| int | _vmStack [256] |
| char | _engineVersionString [50] |
| char | _dataFileVersionString [50] |
| OpcodeEntry | _opcodes [256] |
| BaseScummFile * | _fileHandle = nullptr |
| uint32 | _fileOffset = 0 |
| int | _resourceHeaderSize = 8 |
| byte | _resourceMapper [128] |
| const byte * | _resourceLastSearchBuf |
| uint32 | _resourceLastSearchSize |
| Common::Mutex | _resourceAccessMutex |
| int | _lastLoadedRoom = 0 |
| byte * | _objectOwnerTable = nullptr |
| byte * | _objectRoomTable = nullptr |
| byte * | _objectStateTable = nullptr |
| int | _numObjectsInRoom = 0 |
| uint16 | _verbMouseOver = 0 |
| int8 | _userPut = 0 |
| uint16 | _userState = 0 |
| uint16 | _screenB = 0 |
| uint16 | _screenH = 0 |
| ColorCycle | _colorCycle [16] |
| uint8 | _colorUsedByCycle [256] |
| Graphics::PaletteLookup | _pl |
| uint32 | _ENCD_offs = 0 |
| uint32 | _EXCD_offs = 0 |
| uint32 | _CLUT_offs = 0 |
| uint32 | _EPAL_offs = 0 |
| uint32 | _IM00_offs = 0 |
| uint32 | _PALS_offs = 0 |
| bool | _fullRedraw = false |
| bool | _bgNeedsRedraw = false |
| bool | _screenEffectFlag = false |
| bool | _completeScreenRedraw = false |
| bool | _disableFadeInEffect = false |
| struct { | |
| int hotspotX | |
| int hotspotY | |
| int width | |
| int height | |
| byte animate | |
| byte animateIndex | |
| int8 state | |
| } | _cursor |
| byte | _grabbedCursor [16384] |
| byte | _macGrabbedCursor [16384 *4] |
| byte | _currentCursor = 0 |
| byte | _newEffect = 0 |
| byte | _switchRoomEffect2 = 0 |
| byte | _switchRoomEffect = 0 |
| bool | _doEffect = false |
| bool | _snapScroll = false |
| byte * | _compositeBuf |
| byte * | _hercCGAScaleBuf = nullptr |
| bool | _enableEGADithering = false |
| bool | _supportsEGADithering = false |
| bool | _enableSegaShadowMode = false |
| bool | _shakeEnabled = false |
| bool | _shakeTempSavedState = false |
| uint | _shakeFrame = 0 |
| uint32 | _shakeNextTick = 0 |
| uint32 | _shakeTickCounter = 0 |
| double | _shakeTimerRate |
| double | _timerFrequency |
| int | _drawObjectQueNr = 0 |
| byte | _drawObjectQue [200] |
| uint32 | gfxUsageBits [410 *3] |
| int | _shadowPaletteSize = 0 |
| byte | _currentPalette [3 *256] |
| byte | _darkenPalette [3 *256] |
| int | _paletteChangedCounter = 1 |
| int | _palDirtyMin = 0 |
| int | _palDirtyMax = 0 |
| byte | _palManipStart = 0 |
| byte | _palManipEnd = 0 |
| uint16 | _palManipCounter = 0 |
| byte * | _palManipPalette = nullptr |
| byte * | _palManipIntermediatePal = nullptr |
| bool | _haveActorSpeechMsg = false |
| bool | _useTalkAnims = false |
| uint16 | _defaultTextSpeed = 0 |
| int | _saveSound = 0 |
| bool | _native_mt32 = false |
| bool | _copyProtection = false |
| bool | _shadowPalRemap = false |
| uint16 | _amigaFirstUsedColor = 0 |
| byte | _amigaPalette [3 *64] |
| byte * | _egaColorMap [2] |
| ScaleSlot | _scaleSlots [20] |
| byte | _charsetColor = 0 |
| byte | _charsetData [23][16] |
| int | _charsetBufPos = 0 |
| byte | _charsetBuffer [512] |
| bool | _keepText = false |
| byte | _msgCount = 0 |
| int | _nextLeft = 0 |
| int | _nextTop = 0 |
| Localizer * | _localizer = nullptr |
| bool | _voiceNextString = false |
| bool | _checkPreviousSaid = false |
| bool | _voicePassHelpButtons = false |
| int | _previousVerb = -1 |
| int | _previousControl = -1 |
| Common::String | _previousSaid |
| Common::String | _passHelpButtons [6] |
| Common::Rect | _cyclRects [10] |
| int | _numCyclRects = 0 |
| int | _scrollRequest = 0 |
| int | _scrollDeltaAdjust = 0 |
| bool | _scrollNeedDeltaAdjust = 0 |
| int | _refreshDuration [20] |
| int | _refreshArrayPos = 0 |
| bool | _refreshNeedCatchUp = false |
| bool | _enableSmoothScrolling = false |
| bool | _forceFMTownsHiResMode = false |
| uint32 | _scrollTimer = 0 |
| uint32 | _scrollDestOffset = 0 |
| uint16 | _scrollFeedStrips [3] |
| Common::Rect | _curStringRect |
| byte | _townsOverrideShadowColor = 0 |
| byte | _textPalette [48] |
| byte | _townsClearLayerFlag = 1 |
| byte | _townsActiveLayerFlags = 3 |
| TownsScreen * | _townsScreen = nullptr |
Protected Attributes inherited from Engine | |
| Common::TimerManager * | _timer |
| Common::EventManager * | _eventMan |
| Common::SaveFileManager * | _saveFileMan |
| GUI::Dialog * | _mainMenuDialog |
| const Common::String | _targetName |
| int32 | _activeEnhancements = kEnhGameBreakingBugFixes |
Static Protected Attributes inherited from Scumm::ScummEngine | |
| static const uint8 | _townsLayer2Mask [] |
|
overrideprotectedvirtual |
Actual implementation of pauseEngine by subclasses.
Reimplemented from Engine.