From 83390027c2b594f42165777610fbb14ee01eea17 Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Tue, 18 Mar 2008 17:00:26 +0000 Subject: - Implemented opcodes: -> 12: o2_setCharacterFacing -> 14: o2_moveCharacter -> 61: o2_loadZShapes -> 83: o2_setPathfinderFlag -> 90: o2_setSceneAnimPos -> 160: o2_updateTwoSceneAnims - Implemented dino riding sequence - Fixed bug in KyraEngine_v2::initSceneScreen which caused some gfx glitches svn-id: r31183 --- engines/kyra/kyra_v2.cpp | 45 +++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 41 insertions(+), 4 deletions(-) (limited to 'engines/kyra/kyra_v2.cpp') diff --git a/engines/kyra/kyra_v2.cpp b/engines/kyra/kyra_v2.cpp index 01c9c21a7b..b009b31f0f 100644 --- a/engines/kyra/kyra_v2.cpp +++ b/engines/kyra/kyra_v2.cpp @@ -397,10 +397,10 @@ void KyraEngine_v2::runLoop() { if (_system->getMillis() > _nextIdleAnim) showIdleAnim(); - //if (queryGameFlag(0x159) { - // sub_C86A(); - // resetGameFlag(0x159); - //} + if (queryGameFlag(0x159)) { + dinoRide(); + resetGameFlag(0x159); + } if (queryGameFlag(0x124) && !queryGameFlag(0x125)) { _mainCharacter.animFrame = 32; @@ -2134,6 +2134,43 @@ void KyraEngine_v2::listItemsInCauldron() { #pragma mark - +void KyraEngine_v2::dinoRide() { + _mainCharX = _mainCharY = -1; + + setGameFlag(0x15A); + enterNewScene(41, -1, 0, 0, 0); + resetGameFlag(0x15A); + + setGameFlag(0x15B); + enterNewScene(39, -1, 0, 0, 0); + resetGameFlag(0x15B); + + setGameFlag(0x16F); + + setGameFlag(0x15C); + enterNewScene(42, -1, 0, 0, 0); + resetGameFlag(0x15C); + + setGameFlag(0x15D); + enterNewScene(39, -1, 0, 0, 0); + resetGameFlag(0x15D); + + setGameFlag(0x15E); + enterNewScene(40, -1, 0, 0, 0); + resetGameFlag(0x15E); + + _mainCharX = 262; + _mainCharY = 28; + _mainCharacter.facing = 5; + _mainCharacter.animFrame = _characterFrameTable[5]; + enterNewScene(39, 4, 0, 0, 0); + setHandItem(0x61); + _screen->showMouse(); + resetGameFlag(0x159); +} + +#pragma mark - + void KyraEngine_v2::registerDefaultSettings() { KyraEngine::registerDefaultSettings(); -- cgit v1.2.3