From 1b9807b312172b0cb31b2eb83b8afc5fd23f97f5 Mon Sep 17 00:00:00 2001 From: johndoe123 Date: Wed, 14 Nov 2012 18:09:46 +0000 Subject: NEVERHOOD: Remove more old comments - Add the remaining idle stuff to Klayman --- engines/neverhood/diskplayerscene.cpp | 2 -- engines/neverhood/gamemodule.cpp | 5 +++-- engines/neverhood/graphics.cpp | 1 - engines/neverhood/klayman.cpp | 19 +++++++++++++++++-- engines/neverhood/klayman.h | 2 ++ engines/neverhood/module1800.cpp | 1 - 6 files changed, 22 insertions(+), 8 deletions(-) diff --git a/engines/neverhood/diskplayerscene.cpp b/engines/neverhood/diskplayerscene.cpp index 572074bd18..d6d4de1a68 100644 --- a/engines/neverhood/diskplayerscene.cpp +++ b/engines/neverhood/diskplayerscene.cpp @@ -25,8 +25,6 @@ namespace Neverhood { -// TODO: Maybe move hash tables into neverhood.dat - static const uint32 kDiskplayerPaletteFileHashes[] = { 0x03B78240, 0x34B32B08, diff --git a/engines/neverhood/gamemodule.cpp b/engines/neverhood/gamemodule.cpp index bd671ee3a0..956d969a6c 100644 --- a/engines/neverhood/gamemodule.cpp +++ b/engines/neverhood/gamemodule.cpp @@ -373,8 +373,9 @@ void GameModule::startup() { createModule(2700, -1); #endif #if 1 - _vm->gameState().sceneNum = 1; - createModule(2800, -1); + _vm->gameState().sceneNum = 4; + _vm->gameState().which = 1; + createModule(1800, -1); #endif #if 0 _vm->gameState().sceneNum = 0; diff --git a/engines/neverhood/graphics.cpp b/engines/neverhood/graphics.cpp index 81cec9f46d..2a8f543587 100644 --- a/engines/neverhood/graphics.cpp +++ b/engines/neverhood/graphics.cpp @@ -34,7 +34,6 @@ BaseSurface::BaseSurface(NeverhoodEngine *vm, int priority, int16 width, int16 h _drawRect.y = 0; _drawRect.width = width; _drawRect.height = height; - // TODO: Check if _sysRect is needed at all in the reimplementation... _sysRect.x = 0; _sysRect.y = 0; _sysRect.width = (width + 3) & 0xFFFC; // align by 4 bytes diff --git a/engines/neverhood/klayman.cpp b/engines/neverhood/klayman.cpp index 782c376bd4..9673adc6f8 100644 --- a/engines/neverhood/klayman.cpp +++ b/engines/neverhood/klayman.cpp @@ -53,6 +53,11 @@ static const KlaymanIdleTableItem klaymanTable4[] = { {1, &Klayman::stDoIdleHeadOff}, }; +static const KlaymanIdleTableItem klaymanIdleTable1002[] = { + {1, &Klayman::stDoIdlePickEar}, + {2, &Klayman::stIdleWonderAbout} +}; + // Klayman Klayman::Klayman(NeverhoodEngine *vm, Entity *parentScene, int16 x, int16 y, int surfacePriority, int objectPriority, NRectArray *clipRects) @@ -268,6 +273,16 @@ uint32 Klayman::hmIdleHeadOff(int messageNum, const MessageParam ¶m, Entity return messageResult; } +void Klayman::stIdleWonderAbout() { + _status2 = 1; + _acceptInput = true; + startAnimation(0xD820A114, 0, -1); + SetUpdateHandler(&Klayman::update); + SetMessageHandler(&Klayman::hmLowLevelAnimation); + SetSpriteUpdate(NULL); + NextState(&Klayman::stStandAround); +} + void Klayman::stSitIdleTeleporter() { _status2 = 0; _acceptInput = true; @@ -3421,7 +3436,7 @@ KmScene1002::KmScene1002(NeverhoodEngine *vm, Entity *parentScene, int16 x, int1 void KmScene1002::xUpdate() { if (_x >= 250 && _x <= 435 && _y >= 420) { if (_idleTableNum == 0) { - // TODO setKlaymanIdleTable(stru_4B44C8); + setKlaymanIdleTable(klaymanIdleTable1002, ARRAYSIZE(klaymanIdleTable1002)); _idleTableNum = 1; } } else if (_idleTableNum == 1) { @@ -3670,7 +3685,7 @@ uint32 KmScene1109::xHandleMessage(int messageNum, const MessageParam ¶m) { KmScene1201::KmScene1201(NeverhoodEngine *vm, Entity *parentScene, int16 x, int16 y) : Klayman(vm, parentScene, x, y, 1000, 1000) { - // TODO setKlaymanIdleTable(dword_4AEF10, 3); + setKlaymanIdleTable(klaymanTable4, ARRAYSIZE(klaymanTable4)); _flagF6 = true; } diff --git a/engines/neverhood/klayman.h b/engines/neverhood/klayman.h index ab2c5235d4..443bb97b2b 100644 --- a/engines/neverhood/klayman.h +++ b/engines/neverhood/klayman.h @@ -77,6 +77,8 @@ public: void stIdleHeadOff(); uint32 hmIdleHeadOff(int messageNum, const MessageParam ¶m, Entity *sender); + void stIdleWonderAbout(); + void stDoIdleTeleporterHands(); void stIdleTeleporterHands(); diff --git a/engines/neverhood/module1800.cpp b/engines/neverhood/module1800.cpp index 30bffb9a79..dc5f94270c 100644 --- a/engines/neverhood/module1800.cpp +++ b/engines/neverhood/module1800.cpp @@ -163,7 +163,6 @@ void Module1800::updateScene() { case 8: // NOTE: After Klayman jumped into the hole and died... leaveModule(1); - // TODO GameState stuff // Restarts the game? break; case 1009: leaveModule(0); -- cgit v1.2.3