aboutsummaryrefslogtreecommitdiff
path: root/engines/hopkins
diff options
context:
space:
mode:
authorPaul Gilbert2013-03-12 21:44:36 -0400
committerPaul Gilbert2013-03-12 21:44:36 -0400
commit3a48420c90605eecbd820c61468bbc508f7d50e2 (patch)
tree35b140eb66610b39e9c8560e83306d9c23fa9eb2 /engines/hopkins
parent408345ebabe803f239e85d32a0627f5ca5c7b46b (diff)
downloadscummvm-rg350-3a48420c90605eecbd820c61468bbc508f7d50e2.tar.gz
scummvm-rg350-3a48420c90605eecbd820c61468bbc508f7d50e2.tar.bz2
scummvm-rg350-3a48420c90605eecbd820c61468bbc508f7d50e2.zip
HOPKINS: Dirty rect fix for Breakout game
Diffstat (limited to 'engines/hopkins')
-rw-r--r--engines/hopkins/computer.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/hopkins/computer.cpp b/engines/hopkins/computer.cpp
index b1f71cdcd3..2a882a9a53 100644
--- a/engines/hopkins/computer.cpp
+++ b/engines/hopkins/computer.cpp
@@ -556,8 +556,10 @@ void ComputerManager::displayGamesSubMenu() {
_breakoutSpr = _vm->_fileManager.loadFile("CASSE.SPR");
loadHiscore();
setModeVGA256();
+
newLevel();
- _vm->_graphicsManager.resetDirtyRects();
+ _vm->_graphicsManager.DD_VBL();
+
playBreakout();
_vm->_graphicsManager.resetDirtyRects();
_breakoutSpr = _vm->_globals.freeMemory(_breakoutSpr);
@@ -642,12 +644,15 @@ void ComputerManager::newLevel() {
_breakoutLevel = (int16 *)_vm->_fileManager.loadFile(file);
displayBricks();
+
_vm->_objectsManager.addStaticSprite(_breakoutSpr, Common::Point(150, 192), 0, 13, 0, false, 0, 0);
_vm->_objectsManager.addStaticSprite(_breakoutSpr, Common::Point(164, 187), 1, 14, 0, false, 0, 0);
+
_ballPosition = Common::Point(164, 187);
_padPositionX = 150;
_vm->_objectsManager.animateSprite(0);
_vm->_objectsManager.animateSprite(1);
+
_vm->_eventsManager.mouseOn();
_vm->_soundManager.playSample(3, 5);
}