diff options
author | Thierry Crozat | 2017-11-01 01:00:50 +0000 |
---|---|---|
committer | Thierry Crozat | 2018-01-23 02:15:36 +0000 |
commit | f98fcd139b61b2816b30c405ac103dd8e3c5c495 (patch) | |
tree | 389e2fba59883ab619a78e61c6376ff3f5cb5a3f /engines/supernova/state.cpp | |
parent | 29397932af20e43ff63a8d551ead01333cc9db0e (diff) | |
download | scummvm-rg350-f98fcd139b61b2816b30c405ac103dd8e3c5c495.tar.gz scummvm-rg350-f98fcd139b61b2816b30c405ac103dd8e3c5c495.tar.bz2 scummvm-rg350-f98fcd139b61b2816b30c405ac103dd8e3c5c495.zip |
SUPERNOVA: Fix screen shake
OSystem::setShakePos(int) can only take positive offset (as documented).
Passing a negative offset caused memory issues in the drawing code and
some random crashes.
Diffstat (limited to 'engines/supernova/state.cpp')
-rw-r--r-- | engines/supernova/state.cpp | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/engines/supernova/state.cpp b/engines/supernova/state.cpp index 646bdaa0b4..812cf1a0af 100644 --- a/engines/supernova/state.cpp +++ b/engines/supernova/state.cpp @@ -1030,15 +1030,12 @@ void GameManager::handleTime() { } void GameManager::screenShake() { - // STUB for (int i = 0; i < 12; ++i) { - _vm->_system->setShakePos(4); + _vm->_system->setShakePos(8); wait2(1); - _vm->_system->setShakePos(-4); + _vm->_system->setShakePos(0); wait2(1); } - - _vm->_system->setShakePos(0); } void GameManager::shock() { |