From 4bb82a8dae26e8bd56a8bc943c97959d37fb36ea Mon Sep 17 00:00:00 2001 From: lolbot-iichan Date: Sat, 29 Jun 2019 18:01:39 +0300 Subject: WINTERMUTE: Add dummy implementation of Directory global object Source: http://docs.dead-code.org/wme/generated/scripting_ref_directory.html --- engines/wintermute/base/base_game.cpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'engines/wintermute/base/base_game.cpp') diff --git a/engines/wintermute/base/base_game.cpp b/engines/wintermute/base/base_game.cpp index 576f8e60ba..0c9862fa0d 100644 --- a/engines/wintermute/base/base_game.cpp +++ b/engines/wintermute/base/base_game.cpp @@ -105,6 +105,7 @@ BaseGame::BaseGame(const Common::String &targetName) : BaseObject(this), _target _keyboardState = nullptr; _mathClass = nullptr; + _directoryClass = nullptr; _debugLogFile = nullptr; _debugDebugMode = false; @@ -244,6 +245,7 @@ BaseGame::~BaseGame() { delete _cachedThumbnail; delete _mathClass; + delete _directoryClass; delete _transMgr; delete _scEngine; @@ -261,6 +263,7 @@ BaseGame::~BaseGame() { _cachedThumbnail = nullptr; _mathClass = nullptr; + _directoryClass = nullptr; _transMgr = nullptr; _scEngine = nullptr; @@ -415,6 +418,11 @@ bool BaseGame::initialize1() { break; } + _directoryClass = makeSXDirectory(this); + if (_directoryClass == nullptr) { + break; + } + #if EXTENDED_DEBUGGER_ENABLED _scEngine = new DebuggableScEngine(this); #else @@ -451,6 +459,7 @@ bool BaseGame::initialize1() { return STATUS_OK; } else { delete _mathClass; + delete _directoryClass; delete _keyboardState; delete _transMgr; delete _surfaceStorage; @@ -2746,6 +2755,16 @@ bool BaseGame::externalCall(ScScript *script, ScStack *stack, ScStack *thisStack stack->pushNULL(); } + ////////////////////////////////////////////////////////////////////////// + // Directory + ////////////////////////////////////////////////////////////////////////// + else if (strcmp(name, "Directory") == 0) { + thisObj = thisStack->getTop(); + + thisObj->setNative(makeSXDirectory(_gameRef)); + stack->pushNULL(); + } + ////////////////////////////////////////////////////////////////////////// // Date ////////////////////////////////////////////////////////////////////////// -- cgit v1.2.3