ScummVM API documentation
Adl::AdlEngine_v2 Class Reference
Inheritance diagram for Adl::AdlEngine_v2:
Adl::AdlEngine Engine Adl::AdlEngine_v3 Adl::AdlEngine_v4 Adl::AdlEngine_v5

Protected Member Functions

 AdlEngine_v2 (OSystem *syst, const AdlGameDescription *gd)
 
void setupOpcodeTables () override
 
void initState () override
 
byte roomArg (byte room) const override
 
void advanceClock () override
 
void printString (const Common::String &str) override
 
Common::String loadMessage (uint idx) const override
 
void drawItems () override
 
void drawItem (Item &item, const Common::Point &pos) override
 
void loadRoom (byte roomNr) override
 
void showRoom () override
 
void takeItem (byte noun) override
 
bool canSaveGameStateCurrently (Common::U32String *msg=nullptr) override
 
void mapExeStrings (const Common::StringArray &strings)
 
void insertDisk (byte volume)
 
virtual DataBlockPtr readDataBlockPtr (Common::ReadStream &f) const
 
virtual void adjustDataBlockPtr (byte &track, byte &sector, byte &offset, byte &size) const
 
void loadItems (Common::ReadStream &stream)
 
void loadRooms (Common::ReadStream &stream, byte count)
 
void loadMessages (Common::ReadStream &stream, byte count)
 
void loadPictures (Common::ReadStream &stream)
 
void loadItemPictures (Common::ReadStream &stream, byte count)
 
virtual bool isInventoryFull ()
 
int askForSlot (const Common::String &question)
 
void checkTextOverflow (char c)
 
void handleTextOverflow ()
 
virtual int o_isFirstTime (ScriptEnv &e)
 
virtual int o_isRandomGT (ScriptEnv &e)
 
virtual int o_isNounNotInRoom (ScriptEnv &e)
 
virtual int o_isCarryingSomething (ScriptEnv &e)
 
int o_moveItem (ScriptEnv &e) override
 
int o_setCurPic (ScriptEnv &e) override
 
int o_setPic (ScriptEnv &e) override
 
virtual int o_moveAllItems (ScriptEnv &e)
 
int o_save (ScriptEnv &e) override
 
int o_restore (ScriptEnv &e) override
 
int o_placeItem (ScriptEnv &e) override
 
virtual int o_tellTime (ScriptEnv &e)
 
virtual int o_setRoomFromVar (ScriptEnv &e)
 
virtual int o_initDisk (ScriptEnv &e)
 
- Protected Member Functions inherited from Adl::AdlEngine
 AdlEngine (OSystem *syst, const AdlGameDescription *gd)
 
Common::Error loadGameState (int slot) override
 
Common::Error saveGameState (int slot, const Common::String &desc, bool isAutosave=false) override
 
Common::String getSaveStateName (int slot) const override
 
int getAutosaveSlot () const override
 
Common::Path getDiskImageName (byte volume) const
 
GameType getGameType () const
 
GameVersion getGameVersion () const
 
Common::Language getLanguage () const
 
virtual void gameLoop ()
 
virtual void loadState (Common::ReadStream &stream)
 
virtual void saveState (Common::WriteStream &stream)
 
Common::String readString (Common::ReadStream &stream, byte until=0) const
 
Common::String readStringAt (Common::SeekableReadStream &stream, uint offset, byte until=0) const
 
void extractExeStrings (Common::ReadStream &stream, uint16 printAddr, Common::StringArray &strings) const
 
virtual void printMessage (uint idx)
 
virtual Common::String getItemDescription (const Item &item) const
 
void delay (uint32 ms) const
 
virtual Common::String getLine ()
 
Common::String inputString (byte prompt=0) const
 
byte inputKey (bool showCursor=true) const
 
void waitKey (uint32 ms=0, Common::KeyCode keycode=Common::KEYCODE_INVALID) const
 
virtual void getInput (uint &verb, uint &noun)
 
Common::String getWord (const Common::String &line, uint &index) const
 
virtual Common::String formatVerbError (const Common::String &verb) const
 
virtual Common::String formatNounError (const Common::String &verb, const Common::String &noun) const
 
void loadWords (Common::ReadStream &stream, WordMap &map, Common::StringArray &pri, uint count=0) const
 
void readCommands (Common::ReadStream &stream, Commands &commands)
 
void removeCommand (Commands &commands, uint idx)
 
CommandgetCommand (Commands &commands, uint idx)
 
void checkInput (byte verb, byte noun)
 
virtual bool isInputValid (byte verb, byte noun, bool &is_any)
 
virtual bool isInputValid (const Commands &commands, byte verb, byte noun, bool &is_any)
 
virtual void applyRoomWorkarounds (byte roomNr)
 
virtual void applyRegionWorkarounds ()
 
virtual void switchRoom (byte roomNr)
 
void loadDroppedItemOffsets (Common::ReadStream &stream, byte count)
 
template<class T >
Opcode opcode (int(T::*f)(ScriptEnv &))
 
virtual int o_isItemInRoom (ScriptEnv &e)
 
virtual int o_isMovesGT (ScriptEnv &e)
 
virtual int o_isVarEQ (ScriptEnv &e)
 
virtual int o_isCurPicEQ (ScriptEnv &e)
 
virtual int o_isItemPicEQ (ScriptEnv &e)
 
virtual int o_varAdd (ScriptEnv &e)
 
virtual int o_varSub (ScriptEnv &e)
 
virtual int o_varSet (ScriptEnv &e)
 
virtual int o_listInv (ScriptEnv &e)
 
virtual int o_setRoom (ScriptEnv &e)
 
virtual int o_printMsg (ScriptEnv &e)
 
virtual int o_setLight (ScriptEnv &e)
 
virtual int o_setDark (ScriptEnv &e)
 
virtual int o_restart (ScriptEnv &e)
 
virtual int o_quit (ScriptEnv &e)
 
virtual int o_setItemPic (ScriptEnv &e)
 
virtual int o_resetPic (ScriptEnv &e)
 
virtual int o_takeItem (ScriptEnv &e)
 
virtual int o_dropItem (ScriptEnv &e)
 
virtual int o_setRoomPic (ScriptEnv &e)
 
virtual int goDirection (ScriptEnv &e, Direction D)
 
int o_goNorth (ScriptEnv &e)
 
int o_goSouth (ScriptEnv &e)
 
int o_goEast (ScriptEnv &e)
 
int o_goWest (ScriptEnv &e)
 
int o_goUp (ScriptEnv &e)
 
int o_goDown (ScriptEnv &e)
 
void drawPic (byte pic, Common::Point pos=Common::Point()) const
 
bool playTones (const Tones &tones, bool isMusic, bool allowSkip=false) const
 
const RegiongetRegion (uint i) const
 
RegiongetRegion (uint i)
 
const RoomgetRoom (uint i) const
 
RoomgetRoom (uint i)
 
const RegiongetCurRegion () const
 
RegiongetCurRegion ()
 
const RoomgetCurRoom () const
 
RoomgetCurRoom ()
 
const ItemgetItem (uint i) const
 
ItemgetItem (uint i)
 
byte getVar (uint i) const
 
void setVar (uint i, byte value)
 
virtual void dropItem (byte noun)
 
bool matchCommand (ScriptEnv &env) const
 
void doActions (ScriptEnv &env)
 
bool doOneCommand (const Commands &commands, byte verb, byte noun)
 
void doAllCommands (const Commands &commands, byte verb, byte noun)
 
virtual ScriptEnvcreateScriptEnv (const Command &cmd, byte room, byte verb, byte noun)
 
Common::String itemStr (uint i) const
 
Common::String roomStr (uint i) const
 
Common::String itemRoomStr (uint i) const
 
Common::String verbStr (uint i) const
 
Common::String nounStr (uint i) const
 
Common::String msgStr (uint i) const
 
Common::String dirStr (Direction dir) const
 
bool op_debug (const char *fmt,...) const
 
- Protected Member Functions inherited from Engine
virtual int runDialog (GUI::Dialog &dialog)
 
void defaultSyncSoundSettings ()
 
virtual void pauseEngineIntern (bool pause)
 

Protected Attributes

struct {
   Common::String   time
 
   Common::String   saveInsert
 
   Common::String   saveReplace
 
   Common::String   restoreInsert
 
   Common::String   restoreReplace
 
_strings_v2
 
uint _maxLines
 
DiskImage_disk
 
byte _currentVolume
 
Common::Array< DataBlockPtr_itemPics
 
bool _itemRemoved
 
byte _roomOnScreen
 
byte _picOnScreen
 
byte _itemsOnScreen
 
Common::Array< byte > _brokenRooms
 
- Protected Attributes inherited from Adl::AdlEngine
Common::DumpFile_dumpFile
 
Display_display
 
GraphicsMan_graphics
 
bool _textMode
 
Common::Array< Opcode_condOpcodes
 
Common::Array< Opcode_actOpcodes
 
Common::Array< DataBlockPtr_messages
 
PictureMap _pictures
 
Common::Array< Common::Point_itemOffsets
 
Commands _roomCommands
 
Commands _globalCommands
 
RoomData _roomData
 
WordMap _verbs
 
WordMap _nouns
 
Common::StringArray _priVerbs
 
Common::StringArray _priNouns
 
struct {
   Common::String   enterCommand
 
   Common::String   verbError
 
   Common::String   nounError
 
   Common::String   playAgain
 
   Common::String   pressReturn
 
   Common::String   lineFeeds
 
_strings
 
uint32 _verbErrorPos
 
uint32 _nounErrorPos
 
struct {
   uint   cantGoThere
 
   uint   dontUnderstand
 
   uint   itemDoesntMove
 
   uint   itemNotHere
 
   uint   thanksForPlaying
 
_messageIds
 
State _state
 
uint _linesPrinted
 
bool _isRestarting
 
bool _isRestoring
 
bool _isQuitting
 
bool _canSaveNow
 
bool _canRestoreNow
 
bool _abortScript
 
Common::RandomSource_random
 
const AdlGameDescription_gameDescription
 
Common::File_inputScript
 
uint _scriptDelay
 
bool _scriptPaused
 
- Protected Attributes inherited from Engine
Common::TimerManager_timer
 
Common::EventManager_eventMan
 
Common::SaveFileManager_saveFileMan
 
GUI::Dialog_mainMenuDialog
 
const Common::String _targetName
 

Additional Inherited Members

- Public Types inherited from Engine
enum  EngineFeature {
  kSupportsSubtitleOptions, kSupportsReturnToLauncher, kSupportsLoadingDuringRuntime, kSupportsSavingDuringRuntime,
  kSupportsChangingOptionsDuringRuntime, kSupportsArbitraryResolutions, kSupportsHelp, kSupportsQuitDialogOverride
}
 
- Public Member Functions inherited from Adl::AdlEngine
bool pollEvent (Common::Event &event) const
 
void bell (uint count=1) const
 
- 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 syncSoundSettings ()
 
virtual void applyGameSettings ()
 
virtual void flipMute ()
 
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 ()
 
- 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 Engine
OSystem_system
 
Audio::Mixer_mixer
 
- Protected Types inherited from Adl::AdlEngine
typedef Common::SharedPtr< Common::Functor1< ScriptEnv &, int > > Opcode
 
- Static Protected Member Functions inherited from Adl::AdlEngine
static Common::String toAscii (const Common::String &str)
 

Member Function Documentation

◆ canSaveGameStateCurrently()

bool Adl::AdlEngine_v2::canSaveGameStateCurrently ( Common::U32String msg = nullptr)
overrideprotectedvirtual

Indicate whether a game state can be saved.

Parameters
msgOptional pointer to message explaining why it is disabled

Reimplemented from Adl::AdlEngine.


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