diff options
author | Ľubomír Remák | 2018-04-04 20:39:08 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2018-08-25 23:12:01 +0200 |
commit | 9af3d8a2381fe7c7440330a9aa338f51cd734990 (patch) | |
tree | ad625f243021ba15b19475597e14ad3d2b09484a /engines/mutationofjb/game.cpp | |
parent | 9a3a66ab685c33dab1a85cf2aae73d1df7e45c29 (diff) | |
download | scummvm-rg350-9af3d8a2381fe7c7440330a9aa338f51cd734990.tar.gz scummvm-rg350-9af3d8a2381fe7c7440330a9aa338f51cd734990.tar.bz2 scummvm-rg350-9af3d8a2381fe7c7440330a9aa338f51cd734990.zip |
MUTATIONOFJB: Implement UI for inventory.
Diffstat (limited to 'engines/mutationofjb/game.cpp')
-rw-r--r-- | engines/mutationofjb/game.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/engines/mutationofjb/game.cpp b/engines/mutationofjb/game.cpp index a46ca63965..b7f1893198 100644 --- a/engines/mutationofjb/game.cpp +++ b/engines/mutationofjb/game.cpp @@ -35,7 +35,7 @@ namespace MutationOfJB { Game::Game(MutationOfJBEngine *vm) -: _vm(vm), _delayedLocalScript(nullptr), _scriptExecCtx(*this) { +: _vm(vm), _delayedLocalScript(nullptr), _gui(*this, _vm->getScreen()), _scriptExecCtx(*this) { _gameData = new GameData; loadGameData(false); @@ -48,6 +48,8 @@ Game::Game(MutationOfJBEngine *vm) _localScript = nullptr; _room = new Room(this, _vm->getScreen()); + _gui.init(); + changeScene(13, false); // Initial scene. } @@ -84,6 +86,10 @@ bool Game::loadGameData(bool partB) { } Script *Game::changeSceneLoadScript(uint8 sceneId, bool partB) { + if (isCurrentSceneMap()) { + _gui.markInventoryDirty(); + } + _gameData->_lastScene = _gameData->_currentScene; _gameData->_currentScene = sceneId; _gameData->_partB = partB; @@ -165,6 +171,12 @@ void Game::update() { _localScript = _delayedLocalScript; _delayedLocalScript = nullptr; } + + _gui.update(); +} + +Gui &Game::getGui() { + return _gui; } } |