diff options
-rw-r--r-- | engines/hopkins/computer.cpp | 8 | ||||
-rw-r--r-- | engines/hopkins/computer.h | 3 | ||||
-rw-r--r-- | engines/hopkins/hopkins.cpp | 21 | ||||
-rw-r--r-- | engines/hopkins/hopkins.h | 2 |
4 files changed, 16 insertions, 18 deletions
diff --git a/engines/hopkins/computer.cpp b/engines/hopkins/computer.cpp index 5ace29bb41..824d52249c 100644 --- a/engines/hopkins/computer.cpp +++ b/engines/hopkins/computer.cpp @@ -35,7 +35,9 @@ namespace Hopkins { -ComputerManager::ComputerManager() { +ComputerManager::ComputerManager(HopkinsEngine *vm) { + _vm = vm; + for (int i = 0; i < 50; i++) { _menuText[i]._actvFl = false; _menuText[i]._lineSize = 0; @@ -58,10 +60,6 @@ ComputerManager::ComputerManager() { _lastBreakoutMoveSpeed = 0; } -void ComputerManager::setParent(HopkinsEngine *vm) { - _vm = vm; -} - /** * Sets up textual entry mode. Used by the code for Hopkins computer. */ diff --git a/engines/hopkins/computer.h b/engines/hopkins/computer.h index b46fdd16b0..154921631e 100644 --- a/engines/hopkins/computer.h +++ b/engines/hopkins/computer.h @@ -98,8 +98,7 @@ private: void displayScoreChar(int charPos, int charDisp); public: - ComputerManager(); - void setParent(HopkinsEngine *vm); + ComputerManager(HopkinsEngine *vm); void showComputer(ComputerEnum mode); }; diff --git a/engines/hopkins/hopkins.cpp b/engines/hopkins/hopkins.cpp index dba9e0bd78..bfa00be3e6 100644 --- a/engines/hopkins/hopkins.cpp +++ b/engines/hopkins/hopkins.cpp @@ -41,9 +41,9 @@ HopkinsEngine::HopkinsEngine(OSystem *syst, const HopkinsGameDescription *gameDe _gameDescription(gameDesc), _randomSource("Hopkins") { g_vm = this; _animationManager = new AnimationManager(this); + _computerManager = new ComputerManager(this); _debugger.setParent(this); - _computerManager.setParent(this); _dialogsManager.setParent(this); _eventsManager.setParent(this); _fileManager.setParent(this); @@ -60,6 +60,7 @@ HopkinsEngine::HopkinsEngine(OSystem *syst, const HopkinsGameDescription *gameDe } HopkinsEngine::~HopkinsEngine() { + delete _computerManager; delete _animationManager; } @@ -337,7 +338,7 @@ bool HopkinsEngine::runWin95Demo() { _globals._saveData->_data[svLastPrevScreenId] = _globals._screenId; _globals._screenId = 113; _globals._saveData->_data[svLastScreenId] = _globals._screenId; - _computerManager.showComputer(COMPUTER_HOPKINS); + _computerManager->showComputer(COMPUTER_HOPKINS); _graphicsManager.lockScreen(); _graphicsManager.clearScreen(); _graphicsManager.unlockScreen(); @@ -354,7 +355,7 @@ bool HopkinsEngine::runWin95Demo() { _globals._screenId = 114; _globals._saveData->_data[svLastScreenId] = _globals._screenId; _globals._exitId = 0; - _computerManager.showComputer(COMPUTER_SAMANTHA); + _computerManager->showComputer(COMPUTER_SAMANTHA); _graphicsManager.lockScreen(); _graphicsManager.clearScreen(); _graphicsManager.unlockScreen(); @@ -366,7 +367,7 @@ bool HopkinsEngine::runWin95Demo() { _globals._saveData->_data[svLastPrevScreenId] = _globals._screenId; _globals._screenId = 115; _globals._saveData->_data[svLastScreenId] = _globals._screenId; - _computerManager.showComputer(COMPUTER_PUBLIC); + _computerManager->showComputer(COMPUTER_PUBLIC); _graphicsManager.lockScreen(); _graphicsManager.clearScreen(); _graphicsManager.unlockScreen(); @@ -654,7 +655,7 @@ bool HopkinsEngine::runLinuxDemo() { _globals._saveData->_data[svLastPrevScreenId] = _globals._screenId; _globals._screenId = 113; _globals._saveData->_data[svLastScreenId] = 113; - _computerManager.showComputer(COMPUTER_HOPKINS); + _computerManager->showComputer(COMPUTER_HOPKINS); _graphicsManager.lockScreen(); _graphicsManager.clearScreen(); @@ -672,7 +673,7 @@ bool HopkinsEngine::runLinuxDemo() { _globals._saveData->_data[svLastPrevScreenId] = _globals._screenId; _globals._screenId = 114; _globals._saveData->_data[svLastScreenId] = 114; - _computerManager.showComputer(COMPUTER_SAMANTHA); + _computerManager->showComputer(COMPUTER_SAMANTHA); _graphicsManager.lockScreen(); _graphicsManager.clearScreen(); _graphicsManager.unlockScreen(); @@ -684,7 +685,7 @@ bool HopkinsEngine::runLinuxDemo() { _globals._saveData->_data[svLastPrevScreenId] = _globals._screenId; _globals._screenId = 115; _globals._saveData->_data[svLastScreenId] = 115; - _computerManager.showComputer(COMPUTER_PUBLIC); + _computerManager->showComputer(COMPUTER_PUBLIC); _graphicsManager.lockScreen(); _graphicsManager.clearScreen(); _graphicsManager.unlockScreen(); @@ -1442,7 +1443,7 @@ bool HopkinsEngine::runFull() { _globals._saveData->_data[svLastPrevScreenId] = _globals._prevScreenId; _globals._saveData->_data[svLastScreenId] = _globals._screenId; _globals._exitId = 0; - _computerManager.showComputer(COMPUTER_HOPKINS); + _computerManager->showComputer(COMPUTER_HOPKINS); _graphicsManager.lockScreen(); _graphicsManager.clearScreen(); _graphicsManager.unlockScreen(); @@ -1459,7 +1460,7 @@ bool HopkinsEngine::runFull() { _globals._screenId = 114; _globals._saveData->_data[svLastPrevScreenId] = _globals._prevScreenId; _globals._saveData->_data[svLastScreenId] = _globals._screenId; - _computerManager.showComputer(COMPUTER_SAMANTHA); + _computerManager->showComputer(COMPUTER_SAMANTHA); _graphicsManager.lockScreen(); _graphicsManager.clearScreen(); _graphicsManager.unlockScreen(); @@ -1471,7 +1472,7 @@ bool HopkinsEngine::runFull() { _globals._saveData->_data[svLastPrevScreenId] = _globals._prevScreenId; _globals._saveData->_data[svLastScreenId] = _globals._screenId; _globals._exitId = 0; - _computerManager.showComputer(COMPUTER_PUBLIC); + _computerManager->showComputer(COMPUTER_PUBLIC); _graphicsManager.lockScreen(); _graphicsManager.clearScreen(); _graphicsManager.unlockScreen(); diff --git a/engines/hopkins/hopkins.h b/engines/hopkins/hopkins.h index 2252b6b1f7..ab98b9e120 100644 --- a/engines/hopkins/hopkins.h +++ b/engines/hopkins/hopkins.h @@ -144,7 +144,7 @@ protected: public: Debugger _debugger; AnimationManager *_animationManager; - ComputerManager _computerManager; + ComputerManager *_computerManager; DialogsManager _dialogsManager; EventsManager _eventsManager; FontManager _fontManager; |