diff options
author | Johannes Schickel | 2006-01-03 19:03:09 +0000 |
---|---|---|
committer | Johannes Schickel | 2006-01-03 19:03:09 +0000 |
commit | f046a14bb22f1d6c138ed82efa03d5ff89ae85e0 (patch) | |
tree | d22406fef62e5982865fccede353ce8658e793a5 /kyra/kyra.cpp | |
parent | 025aa4dbb4f714ad88c469411265be8ddd28fd2e (diff) | |
download | scummvm-rg350-f046a14bb22f1d6c138ed82efa03d5ff89ae85e0.tar.gz scummvm-rg350-f046a14bb22f1d6c138ed82efa03d5ff89ae85e0.tar.bz2 scummvm-rg350-f046a14bb22f1d6c138ed82efa03d5ff89ae85e0.zip |
Fixed some bugs with the timers.
also implemented: cmd_dispelMagicAnimation and cmd_runWSAFrames
and implemented color fading of the kyragem in room 210.
svn-id: r19898
Diffstat (limited to 'kyra/kyra.cpp')
-rw-r--r-- | kyra/kyra.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/kyra/kyra.cpp b/kyra/kyra.cpp index 422b3da563..2a5e8be8ae 100644 --- a/kyra/kyra.cpp +++ b/kyra/kyra.cpp @@ -295,7 +295,7 @@ int KyraEngine::init(GameDetector &detector) { assert(_sprites); _seq = new SeqPlayer(this, _system); assert(_seq); - _animator = new ScreenAnimator(this); + _animator = new ScreenAnimator(this, _system); assert(_animator); _animator->init(5, 11, 12); assert(*_animator); @@ -623,7 +623,7 @@ void KyraEngine::delay(uint32 amount, bool update) { _animator->updateAllObjectShapes(); if (_currentCharacter->sceneId == 210) { - //XXX + _animator->updateKyragemFading(); } if (amount > 0) { @@ -668,6 +668,10 @@ void KyraEngine::mainLoop() { while (!_quitFlag) { int32 frameTime = (int32)_system->getMillis(); + if (_currentCharacter->sceneId == 210) { + _animator->updateKyragemFading(); + // XXX + } if (_brandonStatusBit & 2) { if (_brandonStatusBit0x02Flag) @@ -780,10 +784,10 @@ void KyraEngine::delayWithTicks(int ticks) { while (_system->getMillis() < nextTime) { _sprites->updateSceneAnims(); _animator->updateAllObjectShapes(); - //if (_currentCharacter->sceneId == 210) { - // updateKyragemFading(); + if (_currentCharacter->sceneId == 210) { + _animator->updateKyragemFading(); // seq_playEnd(); - //} + } } } @@ -2066,7 +2070,7 @@ void KyraEngine::setCharacterPositionWithUpdate(int character) { updateTextFade(); if (_currentCharacter->sceneId == 210) { - // XXX game_updateKyragemFading + _animator->updateKyragemFading(); } } @@ -4892,7 +4896,7 @@ int KyraEngine::processSceneChange(int *table, int unk1, int frameReset) { _animator->updateAllObjectShapes(); updateTextFade(); if (_currentCharacter->sceneId == 210) { - // XXX updateKyragemFading + _animator->updateKyragemFading(); // XXX playEnd // XXX } |