From e6171c4ea03bb0d68b5c2f7cc51a93c680ca75f9 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Sun, 4 Oct 2020 22:25:19 +0200 Subject: [PATCH] NMI: g_fp -> g_nmi --- engines/ngi/anihandler.cpp | 8 +- engines/ngi/behavior.cpp | 12 +- engines/ngi/floaters.cpp | 24 +- engines/ngi/fullpipe/scene01.cpp | 22 +- engines/ngi/fullpipe/scene02.cpp | 52 +-- engines/ngi/fullpipe/scene03.cpp | 70 +-- engines/ngi/fullpipe/scene04.cpp | 264 +++++------ engines/ngi/fullpipe/scene05.cpp | 100 ++--- engines/ngi/fullpipe/scene06.cpp | 206 ++++----- engines/ngi/fullpipe/scene07.cpp | 46 +- engines/ngi/fullpipe/scene08.cpp | 226 +++++----- engines/ngi/fullpipe/scene09.cpp | 124 +++--- engines/ngi/fullpipe/scene10.cpp | 60 +-- engines/ngi/fullpipe/scene11.cpp | 200 ++++----- engines/ngi/fullpipe/scene12.cpp | 32 +- engines/ngi/fullpipe/scene13.cpp | 82 ++-- engines/ngi/fullpipe/scene14.cpp | 210 ++++----- engines/ngi/fullpipe/scene15.cpp | 90 ++-- engines/ngi/fullpipe/scene16.cpp | 112 ++--- engines/ngi/fullpipe/scene17.cpp | 106 ++--- engines/ngi/fullpipe/scene18and19.cpp | 202 ++++----- engines/ngi/fullpipe/scene20.cpp | 80 ++-- engines/ngi/fullpipe/scene21.cpp | 60 +-- engines/ngi/fullpipe/scene22.cpp | 146 +++---- engines/ngi/fullpipe/scene23.cpp | 114 ++--- engines/ngi/fullpipe/scene24.cpp | 58 +-- engines/ngi/fullpipe/scene25.cpp | 264 +++++------ engines/ngi/fullpipe/scene26.cpp | 146 +++---- engines/ngi/fullpipe/scene27.cpp | 120 ++--- engines/ngi/fullpipe/scene28.cpp | 182 ++++---- engines/ngi/fullpipe/scene29.cpp | 194 ++++----- engines/ngi/fullpipe/scene30.cpp | 62 +-- engines/ngi/fullpipe/scene31.cpp | 30 +- engines/ngi/fullpipe/scene32.cpp | 112 ++--- engines/ngi/fullpipe/scene33.cpp | 84 ++-- engines/ngi/fullpipe/scene34.cpp | 178 ++++---- engines/ngi/fullpipe/scene35.cpp | 100 ++--- engines/ngi/fullpipe/scene36.cpp | 36 +- engines/ngi/fullpipe/scene37.cpp | 90 ++-- engines/ngi/fullpipe/scene38.cpp | 76 ++-- engines/ngi/fullpipe/sceneDbg.cpp | 26 +- engines/ngi/fullpipe/sceneFinal.cpp | 54 +-- engines/ngi/fullpipe/sceneIntro.cpp | 14 +- engines/ngi/fullpipe/sceneIntroDemo.cpp | 10 +- engines/ngi/gameloader.cpp | 116 ++--- engines/ngi/gfx.cpp | 86 ++-- engines/ngi/input.cpp | 24 +- engines/ngi/interaction.cpp | 18 +- engines/ngi/inventory.cpp | 20 +- engines/ngi/lift.cpp | 4 +- engines/ngi/messagehandlers.cpp | 252 +++++------ engines/ngi/messages.cpp | 112 ++--- engines/ngi/modal.cpp | 554 ++++++++++++------------ engines/ngi/motion.cpp | 16 +- engines/ngi/ngi.cpp | 12 +- engines/ngi/ngi.h | 2 +- engines/ngi/ngiarchive.cpp | 4 +- engines/ngi/scene.cpp | 102 ++--- engines/ngi/scenes.cpp | 22 +- engines/ngi/sound.cpp | 58 +-- engines/ngi/stateloader.cpp | 34 +- engines/ngi/statesaver.cpp | 4 +- engines/ngi/statics.cpp | 58 +-- engines/ngi/utils.cpp | 14 +- 64 files changed, 2998 insertions(+), 2998 deletions(-) diff --git a/engines/ngi/anihandler.cpp b/engines/ngi/anihandler.cpp index 6a83b33284e..c11bacb9a77 100644 --- a/engines/ngi/anihandler.cpp +++ b/engines/ngi/anihandler.cpp @@ -61,7 +61,7 @@ MessageQueue *AniHandler::makeQueue(StaticANIObject *ani, int staticsIndex, int, #endif if (stid == staticsIndex) - return new MessageQueue(g_fp->_globalMessageQueueList->compact()); + return new MessageQueue(g_nmi->_globalMessageQueueList->compact()); int startidx = getStaticsIndexById(idx, stid); int endidx = getStaticsIndexById(idx, staticsIndex); @@ -75,7 +75,7 @@ MessageQueue *AniHandler::makeQueue(StaticANIObject *ani, int staticsIndex, int, if (!_items[idx].subItems[subidx].movement) return 0; - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); Common::Point point; ExCommand *ex; @@ -166,7 +166,7 @@ void AniHandler::resetData(int objId) { _items[idx].movements1.clear(); _items[idx].movements2.clear(); - StaticANIObject *obj = g_fp->_currentScene->getStaticANIObject1ById(objId, -1); + StaticANIObject *obj = g_nmi->_currentScene->getStaticANIObject1ById(objId, -1); if (!obj) return; @@ -350,7 +350,7 @@ MessageQueue *AniHandler::makeRunQueue(MakeQueueStruct *mkQueue) { else x2.y = (dy1 - py * y1) / abs(dy1 - py * y1); - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); ExCommand2 *ex2; for (int i = subIdx; i != st2idx;) { diff --git a/engines/ngi/behavior.cpp b/engines/ngi/behavior.cpp index a71a13c8167..c341b5842ee 100644 --- a/engines/ngi/behavior.cpp +++ b/engines/ngi/behavior.cpp @@ -130,7 +130,7 @@ void BehaviorManager::updateBehavior(BehaviorInfo &behaviorInfo, BehaviorAnim &e mq->sendNextCommand(); bhi._flags &= 0xFFFFFFFD; - } else if (behaviorInfo._counter >= bhi._delay && bhi._percent && g_fp->_rnd.getRandomNumber(32767) <= entry._behaviorMoves[i]._percent) { + } else if (behaviorInfo._counter >= bhi._delay && bhi._percent && g_nmi->_rnd.getRandomNumber(32767) <= entry._behaviorMoves[i]._percent) { MessageQueue *mq = new MessageQueue(bhi._messageQueue, 0, 1); mq->sendNextCommand(); @@ -147,7 +147,7 @@ void BehaviorManager::updateStaticAniBehavior(StaticANIObject &ani, int delay, c MessageQueue *mq = 0; if (beh._flags & 1) { - uint rnd = g_fp->_rnd.getRandomNumber(32767); + uint rnd = g_nmi->_rnd.getRandomNumber(32767); uint runPercent = 0; for (uint i = 0; i < beh._behaviorMoves.size(); i++) { if (!(beh._behaviorMoves[i]._flags & 1) && beh._behaviorMoves[i]._percent) { @@ -162,7 +162,7 @@ void BehaviorManager::updateStaticAniBehavior(StaticANIObject &ani, int delay, c for (uint i = 0; i < beh._behaviorMoves.size(); i++) { if (!(beh._behaviorMoves[i]._flags & 1) && delay >= beh._behaviorMoves[i]._delay) { if (beh._behaviorMoves[i]._percent) { - if (g_fp->_rnd.getRandomNumber(32767) <= beh._behaviorMoves[i]._percent) { + if (g_nmi->_rnd.getRandomNumber(32767) <= beh._behaviorMoves[i]._percent) { mq = new MessageQueue(beh._behaviorMoves[i]._messageQueue, 0, 1); break; } @@ -174,7 +174,7 @@ void BehaviorManager::updateStaticAniBehavior(StaticANIObject &ani, int delay, c if (mq) { mq->setParamInt(-1, ani._odelay); if (!mq->chain(&ani)) { - g_fp->_globalMessageQueueList->deleteQueueById(mq->_id); + g_nmi->_globalMessageQueueList->deleteQueueById(mq->_id); } } } @@ -269,11 +269,11 @@ void BehaviorInfo::initObjectBehavior(GameVar *var, Scene *sc, StaticANIObject * if (strcmp(var->_value.stringValue, "ROOT")) break; - GameVar *v1 = g_fp->getGameLoaderGameVar()->getSubVarByName("BEHAVIOR")->getSubVarByName(ani->getName()); + GameVar *v1 = g_nmi->getGameLoaderGameVar()->getSubVarByName("BEHAVIOR")->getSubVarByName(ani->getName()); if (v1 == var) return; - sc = g_fp->accessScene(ani->_sceneId); + sc = g_nmi->accessScene(ani->_sceneId); clear(); var = v1; _animsCount = var->getSubVarsCount(); diff --git a/engines/ngi/floaters.cpp b/engines/ngi/floaters.cpp index bfdd41cc572..b32e0086422 100644 --- a/engines/ngi/floaters.cpp +++ b/engines/ngi/floaters.cpp @@ -79,7 +79,7 @@ void Floaters::init(GameVar *var) { } void Floaters::genFlies(Scene *sc, int x, int y, int priority, int flags) { - StaticANIObject *ani = new StaticANIObject(g_fp->accessScene(SC_COMMON)->getStaticANIObject1ById(ANI_FLY, -1)); + StaticANIObject *ani = new StaticANIObject(g_nmi->accessScene(SC_COMMON)->getStaticANIObject1ById(ANI_FLY, -1)); ani->_statics = ani->getStaticsById(ST_FLY_FLY); ani->_movement = 0; @@ -98,7 +98,7 @@ void Floaters::genFlies(Scene *sc, int x, int y, int priority, int flags) { else nummoves = ani->_movement->_dynamicPhases.size(); - ani->_movement->setDynamicPhaseIndex(g_fp->_rnd.getRandomNumber(nummoves - 1)); + ani->_movement->setDynamicPhaseIndex(g_nmi->_rnd.getRandomNumber(nummoves - 1)); _array2.push_back(FloaterArray2()); FloaterArray2 &arr2 = _array2.back(); @@ -151,10 +151,10 @@ void Floaters::update() { if (a2.val4 == a2.val2 && a2.val5 == a2.val3) { a2.val9 = 0.0; - a2.val13 = g_fp->_rnd.getRandomNumber(200) + 20; + a2.val13 = g_nmi->_rnd.getRandomNumber(200) + 20; if (a2.fflags & 1) { - g_fp->_currentScene->deleteStaticANIObject(a2.ani); + g_nmi->_currentScene->deleteStaticANIObject(a2.ani); if (a2.ani) delete a2.ani; @@ -164,7 +164,7 @@ void Floaters::update() { i--; if (!_array2.size()) - g_fp->stopAllSoundInstances(SND_CMN_060); + g_nmi->stopAllSoundInstances(SND_CMN_060); continue; } @@ -176,7 +176,7 @@ void Floaters::update() { a2.val3 = a2.val7; } else { if (a2.fflags & 2) { - int idx1 = g_fp->_rnd.getRandomNumber(_array1.size() - 1); + int idx1 = g_nmi->_rnd.getRandomNumber(_array1.size() - 1); a2.val2 = _array1[idx1].val1; a2.val3 = _array1[idx1].val2; @@ -186,8 +186,8 @@ void Floaters::update() { const Common::Rect rect = _hRgn->getBBox(); - int x2 = rect.left + g_fp->_rnd.getRandomNumber(rect.right - rect.left); - int y2 = rect.top + g_fp->_rnd.getRandomNumber(rect.bottom - rect.top); + int x2 = rect.left + g_nmi->_rnd.getRandomNumber(rect.right - rect.left); + int y2 = rect.top + g_nmi->_rnd.getRandomNumber(rect.bottom - rect.top); if (_hRgn->pointInRegion(x2, y2)) { int dx = a2.val2 - x2; @@ -201,7 +201,7 @@ void Floaters::update() { } } - g_fp->playSound(SND_CMN_061, 0); + g_nmi->playSound(SND_CMN_061, 0); if (a2.fflags & 4) a2.countdown--; @@ -213,7 +213,7 @@ void Floaters::update() { if (!a2.ani->_movement && a2.ani->_statics->_staticsId == ST_FLY_FLY) { if (!a2.val15) { - g_fp->playSound(SND_CMN_060, 1); + g_nmi->playSound(SND_CMN_060, 1); a2.val15 = 1; } @@ -226,13 +226,13 @@ void Floaters::update() { void Floaters::stopAll() { for (uint i = 0; i < _array2.size(); i++) { FloaterArray2 &a2 = _array2[i]; - g_fp->_currentScene->deleteStaticANIObject(a2.ani); + g_nmi->_currentScene->deleteStaticANIObject(a2.ani); delete a2.ani; } _array2.clear(); - g_fp->stopAllSoundInstances(SND_CMN_060); + g_nmi->stopAllSoundInstances(SND_CMN_060); } diff --git a/engines/ngi/fullpipe/scene01.cpp b/engines/ngi/fullpipe/scene01.cpp index bb32d15d00c..58c678f4ff5 100644 --- a/engines/ngi/fullpipe/scene01.cpp +++ b/engines/ngi/fullpipe/scene01.cpp @@ -37,7 +37,7 @@ namespace NGI { void scene01_fixEntrance() { - GameVar *var = g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName("SAVEGAME"); + GameVar *var = g_nmi->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName("SAVEGAME"); if (var->getSubVarAsInt("Entrance") == TrubaLeft) var->setSubVarAsInt("Entrance", TrubaRight); } @@ -49,7 +49,7 @@ void scene01_initScene(Scene *sc, int entrance) { g_vars->scene01_picSc01Osk2 = sc->getPictureObjectById(PIC_SC1_OSK2, 0); g_vars->scene01_picSc01Osk2->_flags &= 0xFFFB; - if (g_fp->getObjectState(sO_EggCracker) == g_fp->getObjectEnumState(sO_EggCracker, sO_DidNotCrackEgg)) { + if (g_nmi->getObjectState(sO_EggCracker) == g_nmi->getObjectEnumState(sO_EggCracker, sO_DidNotCrackEgg)) { PictureObject *pic = sc->getPictureObjectById(PIC_SC1_KUCHKA, 0); if (pic) pic->_flags &= 0xFFFB; @@ -61,7 +61,7 @@ void scene01_initScene(Scene *sc, int entrance) { bootAnim->_flags &= ~0x04; } - g_fp->lift_setButton(sO_Level2, ST_LBN_2N); + g_nmi->lift_setButton(sO_Level2, ST_LBN_2N); } int sceneHandler01(ExCommand *cmd) { @@ -72,7 +72,7 @@ int sceneHandler01(ExCommand *cmd) { if (cmd->_messageNum > MSG_SC1_SHOWOSK) { if (cmd->_messageNum == MSG_SC1_UTRUBACLICK) - handleObjectInteraction(g_fp->_aniMan, g_fp->_currentScene->getPictureObjectById(PIC_SC1_LADDER, 0), 0); + handleObjectInteraction(g_nmi->_aniMan, g_nmi->_currentScene->getPictureObjectById(PIC_SC1_LADDER, 0), 0); return 0; } @@ -98,19 +98,19 @@ int sceneHandler01(ExCommand *cmd) { return 0; } - if (g_fp->_aniMan2) { - if (g_fp->_aniMan2->_ox < g_fp->_sceneRect.left + 200) { - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.left - 300; + if (g_nmi->_aniMan2) { + if (g_nmi->_aniMan2->_ox < g_nmi->_sceneRect.left + 200) { + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.left - 300; } - if (g_fp->_aniMan2->_ox > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.right + 300; + if (g_nmi->_aniMan2->_ox > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.right + 300; res = 1; } - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); return res; } diff --git a/engines/ngi/fullpipe/scene02.cpp b/engines/ngi/fullpipe/scene02.cpp index 325b24a010d..e7fb5f9e645 100644 --- a/engines/ngi/fullpipe/scene02.cpp +++ b/engines/ngi/fullpipe/scene02.cpp @@ -40,12 +40,12 @@ namespace NGI { void scene02_initScene(Scene *sc) { g_vars->scene02_guvTheDrawer = sc->getStaticANIObject1ById(ANI_DADAYASHIK, -1); - if (g_fp->getObjectState(sO_GuvTheDrawer) == g_fp->getObjectEnumState(sO_GuvTheDrawer, sO_IsSleeping)) { - Scene *s = g_fp->_currentScene; + if (g_nmi->getObjectState(sO_GuvTheDrawer) == g_nmi->getObjectEnumState(sO_GuvTheDrawer, sO_IsSleeping)) { + Scene *s = g_nmi->_currentScene; - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; g_vars->scene02_guvTheDrawer->changeStatics2(ST_DYAS_LIES); - g_fp->_currentScene = s; + g_nmi->_currentScene = s; } g_vars->scene02_boxDelay = 0; @@ -56,23 +56,23 @@ void scene02_initScene(Scene *sc) { g_vars->scene02_boxOpen = false; } else { g_vars->scene02_boxOpen = true; - g_vars->scene02_boxDelay = 100 * g_fp->_rnd.getRandomNumber(32767) + 150; + g_vars->scene02_boxDelay = 100 * g_nmi->_rnd.getRandomNumber(32767) + 150; } - g_fp->_floaters->init(g_fp->_gameLoader->_gameVar->getSubVarByName("SC_2")); + g_nmi->_floaters->init(g_nmi->_gameLoader->_gameVar->getSubVarByName("SC_2")); } void sceneHandler02_ladderClick() { - handleObjectInteraction(g_fp->_aniMan2, g_fp->_currentScene->getPictureObjectById(PIC_SC2_DTRUBA, 0), 0); + handleObjectInteraction(g_nmi->_aniMan2, g_nmi->_currentScene->getPictureObjectById(PIC_SC2_DTRUBA, 0), 0); } void sceneHandler02_showLadder() { - g_fp->_currentScene->getPictureObjectById(PIC_SC2_LADDER, 0)->_flags |= 4; + g_nmi->_currentScene->getPictureObjectById(PIC_SC2_LADDER, 0)->_flags |= 4; } void sceneHandler02_hideLadder() { - g_fp->_currentScene->getPictureObjectById(PIC_SC2_LADDER, 0)->_flags &= 0xfffb; - g_fp->_aniMan2->_priority = 25; + g_nmi->_currentScene->getPictureObjectById(PIC_SC2_LADDER, 0)->_flags &= 0xfffb; + g_nmi->_aniMan2->_priority = 25; } int sceneHandler02(ExCommand *ex) { @@ -91,7 +91,7 @@ int sceneHandler02(ExCommand *ex) { break; case MSG_SC2_PUTMANUP: - g_fp->_aniMan2->_priority = 0; + g_nmi->_aniMan2->_priority = 0; break; case MSG_SC2_HIDELADDER: @@ -99,12 +99,12 @@ int sceneHandler02(ExCommand *ex) { break; case 33: - if (g_fp->_aniMan2) { - if (g_fp->_aniMan2->_ox < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.left - 300; + if (g_nmi->_aniMan2) { + if (g_nmi->_aniMan2->_ox < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.left - 300; - if (g_fp->_aniMan2->_ox > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.right + 300; + if (g_nmi->_aniMan2->_ox > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.right + 300; res = 1; } @@ -112,24 +112,24 @@ int sceneHandler02(ExCommand *ex) { if (g_vars->scene02_boxOpen) { if (g_vars->scene02_boxDelay >= 1) { --g_vars->scene02_boxDelay; - } else if (g_fp->_floaters->_array2.size() >= 1) { - if (g_fp->_floaters->_array2[0].val5 == -50) { - g_fp->_floaters->stopAll(); + } else if (g_nmi->_floaters->_array2.size() >= 1) { + if (g_nmi->_floaters->_array2[0].val5 == -50) { + g_nmi->_floaters->stopAll(); g_vars->scene02_boxOpen = false; - g_vars->scene02_boxDelay = 100 * g_fp->_rnd.getRandomNumber(32767) + 150; + g_vars->scene02_boxDelay = 100 * g_nmi->_rnd.getRandomNumber(32767) + 150; } else { - g_fp->_floaters->_array2[0].val3 = -50; + g_nmi->_floaters->_array2[0].val3 = -50; } } else { - g_fp->_floaters->genFlies(g_fp->_currentScene, g_fp->_rnd.getRandomNumber(700) + 100, -50, 0, 0); - g_vars->scene02_boxDelay = 500 * g_fp->_rnd.getRandomNumber(32767) + 1000; + g_nmi->_floaters->genFlies(g_nmi->_currentScene, g_nmi->_rnd.getRandomNumber(700) + 100, -50, 0, 0); + g_vars->scene02_boxDelay = 500 * g_nmi->_rnd.getRandomNumber(32767) + 1000; } } - g_fp->_floaters->update(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_floaters->update(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); break; default: diff --git a/engines/ngi/fullpipe/scene03.cpp b/engines/ngi/fullpipe/scene03.cpp index 5a3c27f3046..0b59972821c 100644 --- a/engines/ngi/fullpipe/scene03.cpp +++ b/engines/ngi/fullpipe/scene03.cpp @@ -63,37 +63,37 @@ void scene03_initScene(Scene *sc) { g_vars->scene03_eggeater = sc->getStaticANIObject1ById(ANI_EGGEATER, -1); g_vars->scene03_domino = sc->getStaticANIObject1ById(ANI_DOMINO_3, -1); - GameVar *v = g_fp->_gameLoader->_gameVar->getSubVarByName("OBJSTATES")->getSubVarByName(sO_GulpedEggs); + GameVar *v = g_nmi->_gameLoader->_gameVar->getSubVarByName("OBJSTATES")->getSubVarByName(sO_GulpedEggs); g_vars->swallowedEgg1 = v->getSubVarByName(sO_Egg1); g_vars->swallowedEgg2 = v->getSubVarByName(sO_Egg2); g_vars->swallowedEgg3 = v->getSubVarByName(sO_Egg3); - g_fp->lift_setButton(sO_Level2, ST_LBN_2N); + g_nmi->lift_setButton(sO_Level2, ST_LBN_2N); - g_fp->lift_init(sc, QU_SC3_ENTERLIFT, QU_SC3_EXITLIFT); + g_nmi->lift_init(sc, QU_SC3_ENTERLIFT, QU_SC3_EXITLIFT); debugC(2, kDebugSceneLogic, "scene03: egg1: %d egg2: %d egg3: %d", g_vars->swallowedEgg1->_value.intValue, g_vars->swallowedEgg2->_value.intValue, g_vars->swallowedEgg3->_value.intValue); } void scene03_setEaterState() { - if (g_fp->getObjectState(sO_EggGulperGaveCoin) == g_fp->getObjectEnumState(sO_EggGulperGaveCoin, sO_Yes)) { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene03_eggeater, ST_EGTR_SLIM, QU_EGTR_SLIMSHOW, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene03_eggeater, ST_EGTR_MID1, QU_EGTR_MD1_SHOW, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene03_eggeater, ST_EGTR_MID2, QU_EGTR_MD2_SHOW, 0); + if (g_nmi->getObjectState(sO_EggGulperGaveCoin) == g_nmi->getObjectEnumState(sO_EggGulperGaveCoin, sO_Yes)) { + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene03_eggeater, ST_EGTR_SLIM, QU_EGTR_SLIMSHOW, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene03_eggeater, ST_EGTR_MID1, QU_EGTR_MD1_SHOW, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene03_eggeater, ST_EGTR_MID2, QU_EGTR_MD2_SHOW, 0); } } int scene03_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_cursorId == PIC_CSR_DEFAULT && g_fp->_objectIdAtCursor == PIC_SC3_DOMIN && g_vars->scene03_domino) { + if (g_nmi->_cursorId == PIC_CSR_DEFAULT && g_nmi->_objectIdAtCursor == PIC_SC3_DOMIN && g_vars->scene03_domino) { if (g_vars->scene03_domino->_flags & 4) - g_fp->_cursorId = PIC_CSR_ITN; + g_nmi->_cursorId = PIC_CSR_ITN; } - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler03_eaterFat() { @@ -117,7 +117,7 @@ void sceneHandler03_swallowEgg(int item) { g_vars->swallowedEgg3->_value.intValue = item; debugC(2, kDebugSceneLogic, "scene03: setting egg3: %d", g_vars->swallowedEgg3->_value.intValue); - g_fp->setObjectState(sO_EggGulperGaveCoin, g_fp->getObjectEnumState(sO_EggGulperGaveCoin, sO_Yes)); + g_nmi->setObjectState(sO_EggGulperGaveCoin, g_nmi->getObjectEnumState(sO_EggGulperGaveCoin, sO_Yes)); scene03_setEaterState(); } @@ -139,7 +139,7 @@ int sceneHandler03_swallowedEgg1State() { void sceneHandler03_giveCoin(ExCommand *ex) { debugC(2, kDebugSceneLogic, "scene03: giveCoin"); - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(ex->_parId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(ex->_parId); if (mq && mq->getCount() > 0) { ExCommand *ex0 = mq->getExCommandByIndex(0); @@ -163,7 +163,7 @@ void sceneHandler03_giveCoin(ExCommand *ex) { } void sceneHandler03_goLadder() { - handleObjectInteraction(g_fp->_aniMan, g_fp->_currentScene->getPictureObjectById(PIC_SC3_LADDER, 0), 0); + handleObjectInteraction(g_nmi->_aniMan, g_nmi->_currentScene->getPictureObjectById(PIC_SC3_LADDER, 0), 0); } void sceneHandler03_pushEggStack() { @@ -191,7 +191,7 @@ void sceneHandler03_releaseEgg() { void sceneHandler03_takeEgg(ExCommand *ex) { debugC(2, kDebugSceneLogic, "scene03: taking egg"); - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(ex->_parId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(ex->_parId); if (mq && mq->getCount() > 0) { ExCommand *ex0 = mq->getExCommandByIndex(0); @@ -212,7 +212,7 @@ void sceneHandler03_takeEgg(ExCommand *ex) { if (ex1->_objtype == kObjTypeObjstateCommand) { ObjstateCommand *com = static_cast(ex1); - com->_value = g_fp->getObjectEnumState(sO_EggGulper, sO_WantsNothing); + com->_value = g_nmi->getObjectEnumState(sO_EggGulper, sO_WantsNothing); } } } @@ -230,11 +230,11 @@ int sceneHandler03(ExCommand *ex) { switch (ex->_messageNum) { case MSG_LIFT_EXITLIFT: - g_fp->lift_exitSeq(ex); + g_nmi->lift_exitSeq(ex); break; case MSG_LIFT_CLOSEDOOR: - g_fp->lift_closedoorSeq(); + g_nmi->lift_closedoorSeq(); break; case MSG_SC3_ONTAKECOIN: @@ -242,7 +242,7 @@ int sceneHandler03(ExCommand *ex) { break; case MSG_LIFT_STARTEXITQUEUE: - g_fp->lift_startExitQueue(); + g_nmi->lift_startExitQueue(); break; case MSG_SC3_RELEASEEGG: @@ -250,7 +250,7 @@ int sceneHandler03(ExCommand *ex) { break; case MSG_LIFT_CLICKBUTTON: - g_fp->lift_clickButton(); + g_nmi->lift_clickButton(); break; case MSG_SC3_HIDEDOMINO: @@ -262,7 +262,7 @@ int sceneHandler03(ExCommand *ex) { break; case MSG_LIFT_GO: - g_fp->lift_goAnimation(); + g_nmi->lift_goAnimation(); break; case MSG_SC3_UTRUBACLICK: @@ -274,25 +274,25 @@ int sceneHandler03(ExCommand *ex) { break; case 64: - g_fp->lift_hoverButton(ex); + g_nmi->lift_hoverButton(ex); break; case 29: { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(ex->_sceneClickX, ex->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(ex->_sceneClickX, ex->_sceneClickY); if (ani && ani->_id == ANI_LIFTBUTTON) { - g_fp->lift_animateButton(ani); + g_nmi->lift_animateButton(ani); ex->_messageKind = 0; return 0; } - if (g_fp->_currentScene->getPictureObjectIdAtPos(ex->_sceneClickX, ex->_sceneClickY) == PIC_SC3_DOMIN) { + if (g_nmi->_currentScene->getPictureObjectIdAtPos(ex->_sceneClickX, ex->_sceneClickY) == PIC_SC3_DOMIN) { if (g_vars->scene03_domino) if (g_vars->scene03_domino->_flags & 4) - if (g_fp->_aniMan->isIdle()) - if (!(g_fp->_aniMan->_flags & 0x100) && g_fp->_msgObjectId2 != g_vars->scene03_domino->_id) { - handleObjectInteraction(g_fp->_aniMan, g_vars->scene03_domino, ex->_param); + if (g_nmi->_aniMan->isIdle()) + if (!(g_nmi->_aniMan->_flags & 0x100) && g_nmi->_msgObjectId2 != g_vars->scene03_domino->_id) { + handleObjectInteraction(g_nmi->_aniMan, g_vars->scene03_domino, ex->_param); ex->_messageKind = 0; return 0; @@ -305,19 +305,19 @@ int sceneHandler03(ExCommand *ex) { { int res = 0; - if (g_fp->_aniMan2) { - if (g_fp->_aniMan2->_ox < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.left - 300; + if (g_nmi->_aniMan2) { + if (g_nmi->_aniMan2->_ox < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.left - 300; - if (g_fp->_aniMan2->_ox > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.right + 300; + if (g_nmi->_aniMan2->_ox > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.right + 300; res = 1; } - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); return res; } diff --git a/engines/ngi/fullpipe/scene04.cpp b/engines/ngi/fullpipe/scene04.cpp index 065442de562..90e0d2e2530 100644 --- a/engines/ngi/fullpipe/scene04.cpp +++ b/engines/ngi/fullpipe/scene04.cpp @@ -56,7 +56,7 @@ void scene04_speakerCallback(int *phase) { if (scene04_speakerPhases[g_vars->scene04_speakerPhase + 6 * g_vars->scene04_speakerVariant] < 0) { g_vars->scene04_speakerPhase = 0; - g_vars->scene04_speakerVariant = g_fp->_rnd.getRandomNumber(2); + g_vars->scene04_speakerVariant = g_nmi->_rnd.getRandomNumber(2); } } else { ++g_vars->scene04_speakerPhase; @@ -129,7 +129,7 @@ void scene04_initScene(Scene *sc) { if (plank) plank->_flags |= 8; - if (g_fp->getObjectState(sO_Jar_4) == g_fp->getObjectEnumState(sO_Jar_4, sO_UpsideDown)) { + if (g_nmi->getObjectState(sO_Jar_4) == g_nmi->getObjectEnumState(sO_Jar_4, sO_UpsideDown)) { debugC(2, kDebugSceneLogic, "scene04: Jar is upside down"); g_vars->scene04_bottleObjList.clear(); @@ -193,7 +193,7 @@ void scene04_initScene(Scene *sc) { g_vars->scene04_kozyawkiAni.clear(); - g_fp->setObjectState(sO_LowerPipe, g_fp->getObjectEnumState(sO_LowerPipe, sO_IsClosed)); + g_nmi->setObjectState(sO_LowerPipe, g_nmi->getObjectEnumState(sO_LowerPipe, sO_IsClosed)); g_vars->scene04_var07 = false; g_vars->scene04_ladderClickable = false; @@ -206,7 +206,7 @@ void scene04_initScene(Scene *sc) { g_vars->scene04_bigBallCounter = 0; g_vars->scene04_bigBallFromLeft = true; - if (g_fp->getObjectState(sO_BigMumsy) != g_fp->getObjectEnumState(sO_BigMumsy, sO_IsGone)) + if (g_nmi->getObjectState(sO_BigMumsy) != g_nmi->getObjectEnumState(sO_BigMumsy, sO_IsGone)) g_vars->scene04_mamasha->hide(); g_vars->scene04_speaker = sc->getStaticANIObject1ById(ANI_SPEAKER_4, -1); @@ -218,12 +218,12 @@ void scene04_initScene(Scene *sc) { g_vars->scene04_musicStage = 0; - g_fp->initArcadeKeys("SC_4"); + g_nmi->initArcadeKeys("SC_4"); } bool sceneHandler04_friesAreWalking() { - if (g_vars->scene04_dudeOnLadder && g_fp->_aniMan->isIdle() && !(g_fp->_aniMan->_flags & 0x100)) { - int col = g_vars->scene04_ladder->collisionDetection(g_fp->_aniMan); + if (g_vars->scene04_dudeOnLadder && g_nmi->_aniMan->isIdle() && !(g_nmi->_aniMan->_flags & 0x100)) { + int col = g_vars->scene04_ladder->collisionDetection(g_nmi->_aniMan); if (col >= 3 && col <= 6 ) { Movement *koz; @@ -240,38 +240,38 @@ bool sceneHandler04_friesAreWalking() { } int scene04_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_objectIdAtCursor == PIC_SC4_LRTRUBA) { + if (g_nmi->_objectIdAtCursor == PIC_SC4_LRTRUBA) { if (!g_vars->scene04_objectIsTaken) { - g_fp->_cursorId = PIC_CSR_DEFAULT; + g_nmi->_cursorId = PIC_CSR_DEFAULT; - return g_fp->_cursorId; + return g_nmi->_cursorId; } - } else if (g_fp->_objectIdAtCursor == ANI_PLANK || g_fp->_objectIdAtCursor == PIC_SC4_PLANK) { - if (g_fp->_objectIdAtCursor == ANI_PLANK && g_fp->_cursorId != PIC_CSR_ITN) - return g_fp->_cursorId; + } else if (g_nmi->_objectIdAtCursor == ANI_PLANK || g_nmi->_objectIdAtCursor == PIC_SC4_PLANK) { + if (g_nmi->_objectIdAtCursor == ANI_PLANK && g_nmi->_cursorId != PIC_CSR_ITN) + return g_nmi->_cursorId; - if (g_fp->_objectIdAtCursor == ANI_PLANK || (g_fp->_objectIdAtCursor == PIC_SC4_PLANK && g_fp->_cursorId == PIC_CSR_DEFAULT)) { + if (g_nmi->_objectIdAtCursor == ANI_PLANK || (g_nmi->_objectIdAtCursor == PIC_SC4_PLANK && g_nmi->_cursorId == PIC_CSR_DEFAULT)) { if (sceneHandler04_friesAreWalking()) { - g_fp->_cursorId = PIC_CSR_ARCADE1; - return g_fp->_cursorId; + g_nmi->_cursorId = PIC_CSR_ARCADE1; + return g_nmi->_cursorId; } if (g_vars->scene04_soundPlaying) { - g_fp->_cursorId = PIC_CSR_DEFAULT; - return g_fp->_cursorId; + g_nmi->_cursorId = PIC_CSR_DEFAULT; + return g_nmi->_cursorId; } } } - if (g_fp->_cursorId == PIC_CSR_ITN && g_fp->_objectIdAtCursor == PIC_SC4_DOWNTRUBA) - g_fp->_cursorId = PIC_CSR_GOD; + if (g_nmi->_cursorId == PIC_CSR_ITN && g_nmi->_objectIdAtCursor == PIC_SC4_DOWNTRUBA) + g_nmi->_cursorId = PIC_CSR_GOD; - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler04_checkBigBallClick() { - StaticANIObject *ball = g_fp->_currentScene->getStaticANIObject1ById(ANI_BIGBALL, -1); + StaticANIObject *ball = g_nmi->_currentScene->getStaticANIObject1ById(ANI_BIGBALL, -1); if (ball) for (uint i = 0; i < ball->_movements.size(); i++) @@ -286,7 +286,7 @@ void sceneHandler04_clickBottle() { } void sceneHandler04_clickButton() { - StaticANIObject *but = g_fp->_currentScene->getStaticANIObject1ById(ANI_BUTTON, -1); + StaticANIObject *but = g_nmi->_currentScene->getStaticANIObject1ById(ANI_BUTTON, -1); if (but) { if (!g_vars->scene04_clock->_movement || @@ -301,22 +301,22 @@ void sceneHandler04_clickButton() { } void sceneHandler04_downLadder(int x, int y) { - g_vars->scene04_ladder->startMove(g_fp->_aniMan, x + g_vars->scene04_ladder->_ladder_field_20, y + g_vars->scene04_ladder->_ladder_field_24, 0, 0); + g_vars->scene04_ladder->startMove(g_nmi->_aniMan, x + g_vars->scene04_ladder->_ladder_field_20, y + g_vars->scene04_ladder->_ladder_field_24, 0, 0); } void sceneHandler04_walkClimbLadder(ExCommand *ex) { - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); ExCommand *ex1 = new ExCommand(ANI_MAN, 1, MV_MAN_TOLADDER, 0, 0, 0, 1, 0, 0, 0); - ex1->_param = g_fp->_aniMan->_odelay; + ex1->_param = g_nmi->_aniMan->_odelay; ex1->_excFlags |= 2; mq->addExCommandToEnd(ex1); ExCommand *ex2 = new ExCommand(ANI_MAN, 1, MV_MAN_STOPLADDER, 0, 0, 0, 1, 0, 0, 0); - ex2->_param = g_fp->_aniMan->_odelay; + ex2->_param = g_nmi->_aniMan->_odelay; ex2->_excFlags |= 2; mq->addExCommandToEnd(ex2); @@ -347,7 +347,7 @@ void sceneHandler04_walkClimbLadder(ExCommand *ex) { g_vars->scene04_ladder->_ladder_field_20 = 0; g_vars->scene04_ladder->_ladder_field_24 = -60; - g_vars->scene04_ladder->attachObject(g_fp->_aniMan); + g_vars->scene04_ladder->attachObject(g_nmi->_aniMan); if (g_vars->scene04_soundPlaying) { g_vars->scene04_ladder->_ladmovements.front()->movVars->varUpStart = MV_MAN_STARTLADDER2; @@ -361,18 +361,18 @@ void sceneHandler04_walkClimbLadder(ExCommand *ex) { g_vars->scene04_ladder->_ladmovements.front()->staticIds[2] = ST_MAN_GOLADDER; } - g_fp->_aniMan->_priority = 12; + g_nmi->_aniMan->_priority = 12; - getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId)->deactivate(); + getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId)->deactivate(); getGameLoaderInteractionController()->disableFlag24(); } void sceneHandler04_clickLadder() { - g_vars->scene04_dudePosX = g_fp->_aniMan->_ox; - g_vars->scene04_dudePosY = g_fp->_aniMan->_oy; + g_vars->scene04_dudePosX = g_nmi->_aniMan->_ox; + g_vars->scene04_dudePosY = g_nmi->_aniMan->_oy; if (g_vars->scene04_dudeOnLadder) { - if (!g_fp->_aniMan->isIdle() || (g_fp->_aniMan->_flags & 0x100)) { + if (!g_nmi->_aniMan->isIdle() || (g_nmi->_aniMan->_flags & 0x100)) { g_vars->scene04_ladderClickable = true; } else { int h3 = 3 * g_vars->scene04_ladder->_height; @@ -392,16 +392,16 @@ void sceneHandler04_clickLadder() { g_vars->scene04_ladderClickable = false; } } else { - if (g_fp->_aniMan->isIdle() && !(g_fp->_aniMan->_flags & 0x100)) { + if (g_nmi->_aniMan->isIdle() && !(g_nmi->_aniMan->_flags & 0x100)) { if (abs(1095 - g_vars->scene04_dudePosX) > 1 || abs(434 - g_vars->scene04_dudePosY) > 1) { - MessageQueue *mq = getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId)->startMove(g_fp->_aniMan, 1095, 434, 1, ST_MAN_UP); + MessageQueue *mq = getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId)->startMove(g_nmi->_aniMan, 1095, 434, 1, ST_MAN_UP); if (mq) { ExCommand *ex = new ExCommand(0, 17, MSG_SC4_CLICKLADDER, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags = 3; mq->addExCommandToEnd(ex); - postExCommand(g_fp->_aniMan->_id, 2, 1095, 434, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, 1095, 434, 0, -1); } } else { sceneHandler04_walkClimbLadder(0); @@ -411,22 +411,22 @@ void sceneHandler04_clickLadder() { } void sceneHandler04_jumpOnLadder() { - if (g_fp->_aniMan->_movement && g_fp->_aniMan->_movement->_id != MV_MAN_LOOKLADDER) + if (g_nmi->_aniMan->_movement && g_nmi->_aniMan->_movement->_id != MV_MAN_LOOKLADDER) return; - if (g_fp->_aniMan->_statics->_staticsId != ST_MAN_STANDLADDER && g_fp->_aniMan->_statics->_staticsId != ST_MAN_LADDERDOWN) + if (g_nmi->_aniMan->_statics->_staticsId != ST_MAN_STANDLADDER && g_nmi->_aniMan->_statics->_staticsId != ST_MAN_LADDERDOWN) return; - g_fp->_aniMan->changeStatics2(ST_MAN_LADDERDOWN); + g_nmi->_aniMan->changeStatics2(ST_MAN_LADDERDOWN); - g_fp->_aniMan->_flags |= 0x100; + g_nmi->_aniMan->_flags |= 0x100; AniHandler aniHandler; MakeQueueStruct mkQueue; aniHandler.attachObject(ANI_MAN); - mkQueue.ani = g_fp->_aniMan; + mkQueue.ani = g_nmi->_aniMan; mkQueue.staticsId2 = ST_MAN_ONPLANK; mkQueue.x1 = 938; mkQueue.y1 = 442; @@ -440,20 +440,20 @@ void sceneHandler04_jumpOnLadder() { if (mq) { mq->_flags |= 1; - if (!mq->chain(g_fp->_aniMan)) + if (!mq->chain(g_nmi->_aniMan)) delete mq; - g_fp->_aniMan->_priority = 10; + g_nmi->_aniMan->_priority = 10; } - g_vars->scene04_ladderOffset = g_vars->scene04_ladder->collisionDetection(g_fp->_aniMan); + g_vars->scene04_ladderOffset = g_vars->scene04_ladder->collisionDetection(g_nmi->_aniMan); } void sceneHandler04_clickPlank() { if (sceneHandler04_friesAreWalking()) sceneHandler04_jumpOnLadder(); else if (g_vars->scene04_dudeOnLadder) - g_fp->playSound(SND_4_033, 0); + g_nmi->playSound(SND_4_033, 0); else if (!g_vars->scene04_soundPlaying) chainQueue(QU_PNK_CLICK, 0); } @@ -491,7 +491,7 @@ void sceneHandler04_gotoLadder(ExCommand *ex) { aniHandler.attachObject(ANI_MAN); - mkQueue.ani = g_fp->_aniMan; + mkQueue.ani = g_nmi->_aniMan; mkQueue.staticsId2 = ST_MAN_UP; mkQueue.x1 = 1095; mkQueue.y1 = 434; @@ -517,7 +517,7 @@ void sceneHandler04_gotoLadder(ExCommand *ex) { ex2->_param = -1; mq->addExCommandToEnd(ex2); - ExCommand *ex3 = new ExCommand(g_fp->_aniMan->_id, 34, 256, 0, 0, 0, 1, 0, 0, 0); + ExCommand *ex3 = new ExCommand(g_nmi->_aniMan->_id, 34, 256, 0, 0, 0, 1, 0, 0, 0); ex3->_z = 256; ex3->_messageNum = 0; ex3->_excFlags |= 3; @@ -531,9 +531,9 @@ void sceneHandler04_gotoLadder(ExCommand *ex) { mq->setFlags(mq->getFlags() | 1); - if (mq->chain(g_fp->_aniMan)) { - g_fp->_aniMan->_priority = 12; - g_fp->_aniMan->_flags |= 0x100; + if (mq->chain(g_nmi->_aniMan)) { + g_nmi->_aniMan->_priority = 12; + g_nmi->_aniMan->_flags |= 0x100; } else { delete mq; } @@ -548,7 +548,7 @@ void sceneHandler04_lowerPlank() { void sceneHandler04_manFromBottle() { for (Common::List::iterator it = g_vars->scene04_bottleObjList.begin(); it != g_vars->scene04_bottleObjList.end(); ++it) - if (*it == g_fp->_aniMan) { + if (*it == g_nmi->_aniMan) { g_vars->scene04_bottleObjList.erase(it); g_vars->scene04_bottleWeight -= 9; break; @@ -559,15 +559,15 @@ void sceneHandler04_manFromBottle() { g_vars->scene04_ladder = 0; - getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId)->activate(); + getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId)->activate(); getGameLoaderInteractionController()->enableFlag24(); } void sceneHandler04_manToBottle() { - g_vars->scene04_bottleObjList.push_back(g_fp->_aniMan); + g_vars->scene04_bottleObjList.push_back(g_nmi->_aniMan); g_vars->scene04_springOffset = 5; g_vars->scene04_bottleWeight += 9; - g_fp->_aniMan2 = g_fp->_aniMan; + g_nmi->_aniMan2 = g_nmi->_aniMan; g_vars->scene04_dudeInBottle = 1; } @@ -709,9 +709,9 @@ MessageQueue *sceneHandler04_kozFly6(StaticANIObject *ani) { mkQueue.ani = ani; mkQueue.staticsId2 = ST_KZW_SIT; - mkQueue.x1 = 397 - 4 * g_fp->_rnd.getRandomNumber(1); + mkQueue.x1 = 397 - 4 * g_nmi->_rnd.getRandomNumber(1); mkQueue.field_1C = ani->_priority; - mkQueue.y1 = g_vars->scene04_bottle->_oy - 4 * g_fp->_rnd.getRandomNumber(1) + 109; + mkQueue.y1 = g_vars->scene04_bottle->_oy - 4 * g_nmi->_rnd.getRandomNumber(1) + 109; mkQueue.field_10 = 1; mkQueue.flags = 78; mkQueue.movementId = MV_KZW_JUMPROTATE; @@ -901,13 +901,13 @@ void sceneHandler04_shootKozyawka() { } if (g_vars->scene04_ladderOffset > 3) - g_fp->_aniMan->changeStatics1(ST_MAN_LOOKPLANK); + g_nmi->_aniMan->changeStatics1(ST_MAN_LOOKPLANK); g_vars->scene04_kozyawkaOnLadder = true; } void sceneHandler04_showCoin() { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_SC4_COIN, -1); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_SC4_COIN, -1); if (ani) { ani->show1(MV_BDG_OPEN, MV_MAN_GOU, MV_SC4_COIN_default, 0); @@ -919,13 +919,13 @@ void sceneHandler04_showCoin() { void sceneHandler04_stopSound() { g_vars->scene04_soundPlaying = false; - g_fp->stopSoundStream2(); + g_nmi->stopSoundStream2(); } void sceneHandler04_animOutOfBottle(ExCommand *ex) { - g_fp->_aniMan->changeStatics2(ST_MAN_SIT); + g_nmi->_aniMan->changeStatics2(ST_MAN_SIT); - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC4_MANFROMBOTTLE), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC4_MANFROMBOTTLE), 0, 0); if (ex) { ExCommand *newex = ex->createClone(); @@ -937,7 +937,7 @@ void sceneHandler04_animOutOfBottle(ExCommand *ex) { mq->chain(0); g_vars->scene04_dudeInBottle = false; - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 1); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 1); } void sceneHandler04_walkKozyawka() { @@ -949,7 +949,7 @@ void sceneHandler04_walkKozyawka() { g_vars->scene04_walkingKozyawka = g_vars->scene04_kozyawkiObjList.front(); g_vars->scene04_kozyawkiObjList.pop_front(); - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_KOZAW_WALK), 0, 1); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_KOZAW_WALK), 0, 1); mq->setParamInt(-1, g_vars->scene04_walkingKozyawka->_odelay); mq->chain(0); } @@ -1020,9 +1020,9 @@ void sceneHandler04_springWobble() { } void sceneHandler04_leaveScene() { - g_fp->_aniMan2 = 0; + g_nmi->_aniMan2 = 0; - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC4_MANTOBOTTLE), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC4_MANTOBOTTLE), 0, 0); ExCommand *ex = 0; for (uint i = 0; i < mq->getCount(); i++) { @@ -1043,9 +1043,9 @@ void sceneHandler04_leaveScene() { g_vars->scene04_var07 = false; g_vars->scene04_dudeOnLadder = 0; - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 0); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 0); - g_fp->updateMapPiece(PIC_MAP_P03, 1); + g_nmi->updateMapPiece(PIC_MAP_P03, 1); } void sceneHandler04_liftBottle() { @@ -1068,14 +1068,14 @@ void sceneHandler04_liftBottle() { g_vars->scene04_springOffset = 10; g_vars->scene04_bottleIsTaken = false; - g_fp->setObjectState(sO_LowerPipe, g_fp->getObjectEnumState(sO_LowerPipe, sO_IsClosed)); + g_nmi->setObjectState(sO_LowerPipe, g_nmi->getObjectEnumState(sO_LowerPipe, sO_IsClosed)); } } void sceneHandler04_startSounds(const char *snd1, const char *snd2, const char *snd3) { - g_fp->playOggSound(snd1, g_fp->_soundStream2); + g_nmi->playOggSound(snd1, g_nmi->_soundStream2); - g_fp->_stream2playing = true; + g_nmi->_stream2playing = true; g_vars->scene04_musicStage = 1; } @@ -1086,23 +1086,23 @@ void updateSound() { default: break; case 1: - if (!g_fp->_mixer->isSoundHandleActive(g_fp->_soundStream2)) { - g_fp->playOggSound("sc4_loop.ogg", g_fp->_soundStream3); + if (!g_nmi->_mixer->isSoundHandleActive(g_nmi->_soundStream2)) { + g_nmi->playOggSound("sc4_loop.ogg", g_nmi->_soundStream3); g_vars->scene04_musicStage = 2; } break; case 2: - if (!g_fp->_mixer->isSoundHandleActive(g_fp->_soundStream3)) { - if (g_fp->_stream2playing) { // Looop it - g_fp->playOggSound("sc4_loop.ogg", g_fp->_soundStream3); + if (!g_nmi->_mixer->isSoundHandleActive(g_nmi->_soundStream3)) { + if (g_nmi->_stream2playing) { // Looop it + g_nmi->playOggSound("sc4_loop.ogg", g_nmi->_soundStream3); } else { - g_fp->playOggSound("sc4_stop2.ogg", g_fp->_soundStream4); + g_nmi->playOggSound("sc4_stop2.ogg", g_nmi->_soundStream4); g_vars->scene04_musicStage = 3; } } break; case 3: - if (!g_fp->_mixer->isSoundHandleActive(g_fp->_soundStream4)) { + if (!g_nmi->_mixer->isSoundHandleActive(g_nmi->_soundStream4)) { g_vars->scene04_musicStage = 0; } break; @@ -1115,7 +1115,7 @@ void sceneHandler04_goClock() { g_vars->scene04_soundPlaying = true; g_vars->scene04_coinPut = false; - g_fp->stopAllSoundStreams(); + g_nmi->stopAllSoundStreams(); sceneHandler04_startSounds("sc4_start.ogg", "sc4_loop.ogg", "sc4_stop2.ogg"); @@ -1123,7 +1123,7 @@ void sceneHandler04_goClock() { } void sceneHandler04_bigBallOut() { - StaticANIObject *ball = g_fp->_currentScene->getStaticANIObject1ById(ANI_BIGBALL, -1); + StaticANIObject *ball = g_nmi->_currentScene->getStaticANIObject1ById(ANI_BIGBALL, -1); if (ball && ball->_flags & 4) for (uint i = 0; i < ball->_movements.size(); i++) @@ -1133,21 +1133,21 @@ void sceneHandler04_bigBallOut() { } void sceneHandler04_leaveLadder(ExCommand *ex) { - if (!g_fp->_aniMan->isIdle()) + if (!g_nmi->_aniMan->isIdle()) return; - if (!(g_fp->_aniMan->_flags & 0x100)) { - if (getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId)->_objtype == kObjTypeMctlCompound) { - MctlCompound *mc = static_cast(getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId)); + if (!(g_nmi->_aniMan->_flags & 0x100)) { + if (getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId)->_objtype == kObjTypeMctlCompound) { + MctlCompound *mc = static_cast(getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId)); - if (mc->_motionControllers[0]->_movGraphReactObj->pointInRegion(g_fp->_sceneRect.left + ex->_x, g_fp->_sceneRect.top + ex->_y)) { - if (g_vars->scene04_ladder->collisionDetection(g_fp->_aniMan)) { - MessageQueue *mq = g_vars->scene04_ladder->controllerWalkTo(g_fp->_aniMan, 0); + if (mc->_motionControllers[0]->_movGraphReactObj->pointInRegion(g_nmi->_sceneRect.left + ex->_x, g_nmi->_sceneRect.top + ex->_y)) { + if (g_vars->scene04_ladder->collisionDetection(g_nmi->_aniMan)) { + MessageQueue *mq = g_vars->scene04_ladder->controllerWalkTo(g_nmi->_aniMan, 0); if (mq) { mq->addExCommandToEnd(ex->createClone()); - if (mq->chain(g_fp->_aniMan) ) + if (mq->chain(g_nmi->_aniMan) ) ex->_messageKind = 0; else delete mq; @@ -1158,23 +1158,23 @@ void sceneHandler04_leaveLadder(ExCommand *ex) { } } } else { - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); ExCommand *ex1; - if (g_fp->_aniMan->_statics->_staticsId == ST_MAN_LADDERDOWN) { + if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN_LADDERDOWN) { ex1 = new ExCommand(ANI_MAN, 1, MV_MAN_LOOKLADDERRV, 0, 0, 0, 1, 0, 0, 0); - ex1->_param = g_fp->_aniMan->_odelay; + ex1->_param = g_nmi->_aniMan->_odelay; ex1->_excFlags |= 2; mq->addExCommandToEnd(ex1); } ex1 = new ExCommand(ANI_MAN, 1, MV_MAN_STARTLADDERD, 0, 0, 0, 1, 0, 0, 0); - ex1->_param = g_fp->_aniMan->_odelay; + ex1->_param = g_nmi->_aniMan->_odelay; ex1->_excFlags |= 2; mq->addExCommandToEnd(ex1); ex1 = new ExCommand(ANI_MAN, 1, MV_MAN_FROMLADDER, 0, 0, 0, 1, 0, 0, 0); - ex1->_param = g_fp->_aniMan->_odelay; + ex1->_param = g_nmi->_aniMan->_odelay; ex1->_excFlags |= 2; mq->addExCommandToEnd(ex1); @@ -1183,7 +1183,7 @@ void sceneHandler04_leaveLadder(ExCommand *ex) { mq->setFlags(mq->getFlags() | 1); - if (mq->chain(g_fp->_aniMan)) { + if (mq->chain(g_nmi->_aniMan)) { if (g_vars->scene04_ladder) delete g_vars->scene04_ladder; @@ -1247,13 +1247,13 @@ void sceneHandler04_putKozyawkaBack(StaticANIObject *ani) { } void sceneHandler04_bigBallWalkIn() { - StaticANIObject *ball = g_fp->_currentScene->getStaticANIObject1ById(ANI_BIGBALL, -1); + StaticANIObject *ball = g_nmi->_currentScene->getStaticANIObject1ById(ANI_BIGBALL, -1); if (g_vars->scene04_dudeOnLadder && (!ball || !(ball->_flags & 4)) - && g_vars->scene04_ladder->collisionDetection(g_fp->_aniMan) > 3) { + && g_vars->scene04_ladder->collisionDetection(g_nmi->_aniMan) > 3) { - if (!g_fp->_rnd.getRandomNumber(49)) { + if (!g_nmi->_rnd.getRandomNumber(49)) { if (g_vars->scene04_bigBallFromLeft) chainQueue(QU_BALL_WALKR, 0); else @@ -1272,7 +1272,7 @@ void sceneHandler04_takeBottle() { g_vars->scene04_bottleIsTaken = true; g_vars->scene04_hand->_priority = 5; - g_fp->setObjectState(sO_LowerPipe, g_fp->getObjectEnumState(sO_LowerPipe, sO_IsOpened)); + g_nmi->setObjectState(sO_LowerPipe, g_nmi->getObjectEnumState(sO_LowerPipe, sO_IsOpened)); } void sceneHandler04_takeKozyawka() { @@ -1301,7 +1301,7 @@ void sceneHandler04_takeKozyawka() { } void sceneHandler04_testPlank(ExCommand *ex) { - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(ex->_parId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(ex->_parId); if (!mq) return; @@ -1329,7 +1329,7 @@ void sceneHandler04_updateBottle() { } void sceneHandler04_winArcade() { - if (g_fp->getObjectState(sO_LowerPipe) == g_fp->getObjectEnumState(sO_LowerPipe, sO_IsClosed) + if (g_nmi->getObjectState(sO_LowerPipe) == g_nmi->getObjectEnumState(sO_LowerPipe, sO_IsClosed) && g_vars->scene04_soundPlaying) { g_vars->scene04_clock->changeStatics2(ST_CLK_CLOSED); g_vars->scene04_hand->changeStatics2(ST_HND_EMPTY); @@ -1347,11 +1347,11 @@ void sceneHandler04_winArcade() { g_vars->scene04_objectIsTaken = false; g_vars->scene04_soundPlaying = false; - getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId)->activate(); + getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId)->activate(); getGameLoaderInteractionController()->enableFlag24(); - g_fp->stopSoundStream2(); + g_nmi->stopSoundStream2(); } } @@ -1428,39 +1428,39 @@ int sceneHandler04(ExCommand *ex) { case 33: { - g_vars->scene04_dudePosX = g_fp->_aniMan->_ox; - g_vars->scene04_dudePosY = g_fp->_aniMan->_oy; + g_vars->scene04_dudePosX = g_nmi->_aniMan->_ox; + g_vars->scene04_dudePosY = g_nmi->_aniMan->_oy; int res = 0; - if (g_fp->_aniMan2) { - if (g_fp->_aniMan->_ox < g_fp->_sceneRect.left + 200) { - g_fp->_currentScene->_x = g_fp->_aniMan->_ox - g_fp->_sceneRect.left - 300; - g_fp->_aniMan->_ox = g_vars->scene04_dudePosX; + if (g_nmi->_aniMan2) { + if (g_nmi->_aniMan->_ox < g_nmi->_sceneRect.left + 200) { + g_nmi->_currentScene->_x = g_nmi->_aniMan->_ox - g_nmi->_sceneRect.left - 300; + g_nmi->_aniMan->_ox = g_vars->scene04_dudePosX; } - if (g_fp->_aniMan->_ox > g_fp->_sceneRect.right - 200) { - g_fp->_currentScene->_x = g_fp->_aniMan->_ox - g_fp->_sceneRect.right + 300; + if (g_nmi->_aniMan->_ox > g_nmi->_sceneRect.right - 200) { + g_nmi->_currentScene->_x = g_nmi->_aniMan->_ox - g_nmi->_sceneRect.right + 300; } res = 1; } - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); - if (g_fp->_aniMan2) { + if (g_nmi->_aniMan2) { if (g_vars->scene04_soundPlaying) { - if (g_fp->_aniMan->_movement) { - if (g_fp->_aniMan->_movement->_id == MV_MAN_TOLADDER) { - g_fp->_aniMan2 = 0; + if (g_nmi->_aniMan->_movement) { + if (g_nmi->_aniMan->_movement->_id == MV_MAN_TOLADDER) { + g_nmi->_aniMan2 = 0; - if (g_fp->_sceneRect.left > 380) - g_fp->_currentScene->_x = 380 - g_fp->_sceneRect.left; + if (g_nmi->_sceneRect.left > 380) + g_nmi->_currentScene->_x = 380 - g_nmi->_sceneRect.left; } } } } else { - if (g_fp->_aniMan->_movement && g_fp->_aniMan->_movement->_id == MV_MAN_GOD) - g_fp->_aniMan2 = g_fp->_aniMan; + if (g_nmi->_aniMan->_movement && g_nmi->_aniMan->_movement->_id == MV_MAN_GOD) + g_nmi->_aniMan2 = g_nmi->_aniMan; } sceneHandler04_springWobble(); @@ -1482,9 +1482,9 @@ int sceneHandler04(ExCommand *ex) { if (g_vars->scene04_dudeOnLadder) { if (!g_vars->scene04_soundPlaying) { - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); return res; } @@ -1495,14 +1495,14 @@ int sceneHandler04(ExCommand *ex) { } if (g_vars->scene04_soundPlaying) { - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); return res; } - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); return res; } @@ -1510,7 +1510,7 @@ int sceneHandler04(ExCommand *ex) { case 29: { - int picid = g_fp->_currentScene->getPictureObjectIdAtPos(ex->_sceneClickX, ex->_sceneClickY); + int picid = g_nmi->_currentScene->getPictureObjectIdAtPos(ex->_sceneClickX, ex->_sceneClickY); if (g_vars->scene04_dudeInBottle) { sceneHandler04_animOutOfBottle(ex); @@ -1535,7 +1535,7 @@ int sceneHandler04(ExCommand *ex) { break; } - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(ex->_sceneClickX, ex->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(ex->_sceneClickX, ex->_sceneClickY); if ((ani && ani->_id == ANI_PLANK) || picid == PIC_SC4_PLANK) { sceneHandler04_clickPlank(); @@ -1543,13 +1543,13 @@ int sceneHandler04(ExCommand *ex) { ex->_messageKind = 0; } else if (g_vars->scene04_dudeOnLadder) { sceneHandler04_leaveLadder(ex); - } else if (!ani || !canInteractAny(g_fp->_aniMan, ani, ex->_param)) { - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picid, 0); + } else if (!ani || !canInteractAny(g_nmi->_aniMan, ani, ex->_param)) { + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picid, 0); - if (!pic || !canInteractAny(g_fp->_aniMan, pic,ex->_param)) { - if ((g_fp->_sceneRect.right - ex->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) - || (ex->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) - g_fp->processArcade(ex); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic,ex->_param)) { + if ((g_nmi->_sceneRect.right - ex->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) + || (ex->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) + g_nmi->processArcade(ex); } } } diff --git a/engines/ngi/fullpipe/scene05.cpp b/engines/ngi/fullpipe/scene05.cpp index d25e3f11db2..2334dc2cd26 100644 --- a/engines/ngi/fullpipe/scene05.cpp +++ b/engines/ngi/fullpipe/scene05.cpp @@ -54,27 +54,27 @@ void scene05_initScene(Scene *sc) { g_vars->scene05_handleFlipper = 1; g_vars->scene05_floatersTicker = 1000; - Scene *oldscene = g_fp->_currentScene; + Scene *oldscene = g_nmi->_currentScene; - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; - debugC(2, kDebugSceneLogic, "scene05: Weird Wacko state: %d", g_fp->getObjectState(sO_WeirdWacko)); + debugC(2, kDebugSceneLogic, "scene05: Weird Wacko state: %d", g_nmi->getObjectState(sO_WeirdWacko)); - if (g_fp->getObjectState(sO_WeirdWacko) == g_fp->getObjectEnumState(sO_WeirdWacko, sO_InGlasses)) { + if (g_nmi->getObjectState(sO_WeirdWacko) == g_nmi->getObjectEnumState(sO_WeirdWacko, sO_InGlasses)) { debugC(2, kDebugSceneLogic, "scene05: In glasses"); g_vars->scene05_wacko->changeStatics2(ST_OTM_GLS_LEFT); g_vars->scene05_bigHatch->changeStatics2(ST_BLK_CLOSED); g_vars->scene05_handle->changeStatics2(ST_HDL_UP); g_vars->scene05_handle->_flags |= 4; - } else if (g_fp->getObjectState(sO_WeirdWacko) == g_fp->getObjectEnumState(sO_WeirdWacko, sO_WithDrawer)) { + } else if (g_nmi->getObjectState(sO_WeirdWacko) == g_nmi->getObjectEnumState(sO_WeirdWacko, sO_WithDrawer)) { debugC(2, kDebugSceneLogic, "scene05: With Drawer"); g_vars->scene05_wacko->changeStatics2(ST_OTM_BOX_LEFT); g_vars->scene05_bigHatch->changeStatics2(ST_BLK_CLOSED); g_vars->scene05_handle->changeStatics2(ST_HDL_UP); g_vars->scene05_handle->_flags |= 4; } else { - if (g_fp->getObjectState(sO_WeirdWacko) != g_fp->getObjectEnumState(sO_WeirdWacko, sO_WithPlunger)) { + if (g_nmi->getObjectState(sO_WeirdWacko) != g_nmi->getObjectEnumState(sO_WeirdWacko, sO_WithPlunger)) { debugC(2, kDebugSceneLogic, "scene05: Without plunger"); g_vars->scene05_handle->changeStatics2(ST_HDL_BROKEN); @@ -86,7 +86,7 @@ void scene05_initScene(Scene *sc) { g_vars->scene05_wacko->changeStatics2(ST_OTM_VNT_LEFT); } - g_fp->_currentScene = oldscene; + g_nmi->_currentScene = oldscene; } void sceneHandler05_makeManFlight() { @@ -97,7 +97,7 @@ void sceneHandler05_makeManFlight() { else qid = QU_SC5_MANFLY; - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(qid), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(qid), 0, 0); mq->setFlags(mq->getFlags() | 1); @@ -108,10 +108,10 @@ void sceneHandler05_makeWackoFeedback() { int staticsId1; int staticsId2; - if (g_fp->getObjectState(sO_WeirdWacko) == g_fp->getObjectEnumState(sO_WeirdWacko, sO_InGlasses)) { + if (g_nmi->getObjectState(sO_WeirdWacko) == g_nmi->getObjectEnumState(sO_WeirdWacko, sO_InGlasses)) { staticsId1 = ST_OTM_GLS_LEFT; staticsId2 = (g_vars->scene05_handle->_statics->_staticsId == ST_HDL_DOWN) ? MV_OTM_HANDLEUP : MV_OTM_HANDLEDOWN; - } else if (g_fp->getObjectState(sO_WeirdWacko) != g_fp->getObjectEnumState(sO_WeirdWacko, sO_WithDrawer)) { + } else if (g_nmi->getObjectState(sO_WeirdWacko) != g_nmi->getObjectEnumState(sO_WeirdWacko, sO_WithDrawer)) { return; } else { staticsId1 = ST_OTM_BOX_LEFT; @@ -140,9 +140,9 @@ void sceneHandler05_makeWackoFeedback() { } void sceneHandler05_resetTicks() { - if (g_fp->_aniMan->_movement && (g_fp->_aniMan->_movement->_id == MV_MANHDL_HANDLEUP - || g_fp->_aniMan->_movement->_id == MV_MANHDL_HANDLEDOWN)) - g_vars->scene05_wackoTicker = g_fp->_updateTicks; + if (g_nmi->_aniMan->_movement && (g_nmi->_aniMan->_movement->_id == MV_MANHDL_HANDLEUP + || g_nmi->_aniMan->_movement->_id == MV_MANHDL_HANDLEDOWN)) + g_vars->scene05_wackoTicker = g_nmi->_updateTicks; else g_vars->scene05_wackoTicker = 0; } @@ -151,17 +151,17 @@ void sceneHandler05_genFlies() { if (g_vars->scene05_floatersTicker <= 1000) return; - if (g_fp->_rnd.getRandomNumber(1)) { - int numFlies = g_fp->_rnd.getRandomNumber(3) + 1; + if (g_nmi->_rnd.getRandomNumber(1)) { + int numFlies = g_nmi->_rnd.getRandomNumber(3) + 1; for (int i = 0; i < numFlies; i++) { - int x = g_fp->_rnd.getRandomNumber(55) + 538; - int y = g_fp->_rnd.getRandomNumber(60) + i * 30 + 520; + int x = g_nmi->_rnd.getRandomNumber(55) + 538; + int y = g_nmi->_rnd.getRandomNumber(60) + i * 30 + 520; - g_fp->_floaters->genFlies(g_fp->_currentScene, x, y, 5, 1); - g_fp->_floaters->_array2.back().val2 = 585; - g_fp->_floaters->_array2.back().val3 = -70; - g_fp->_floaters->_array2.back().val11 = 8.0; + g_nmi->_floaters->genFlies(g_nmi->_currentScene, x, y, 5, 1); + g_nmi->_floaters->_array2.back().val2 = 585; + g_nmi->_floaters->_array2.back().val3 = -70; + g_nmi->_floaters->_array2.back().val11 = 8.0; } } @@ -169,11 +169,11 @@ void sceneHandler05_genFlies() { } void sceneHandler05_showHandle() { - g_fp->_currentScene->getStaticANIObject1ById(ANI_HANDLE, -1)->show1(-1, -1, -1, 0); + g_nmi->_currentScene->getStaticANIObject1ById(ANI_HANDLE, -1)->show1(-1, -1, -1, 0); } void sceneHandler05_handleDown() { - StaticANIObject *hatch = g_fp->_currentScene->getStaticANIObject1ById(ANI_BIGLUK, -1); + StaticANIObject *hatch = g_nmi->_currentScene->getStaticANIObject1ById(ANI_BIGLUK, -1); hatch->changeStatics2(ST_BLK_CLOSED); hatch->startAnim(MV_BLK_OPEN, 0, -1); @@ -183,11 +183,11 @@ void sceneHandler05_handleDown() { } void sceneHandler05_hideHandle() { - g_fp->_currentScene->getStaticANIObject1ById(ANI_HANDLE, -1)->hide(); + g_nmi->_currentScene->getStaticANIObject1ById(ANI_HANDLE, -1)->hide(); } void sceneHandler05_handleUp() { - StaticANIObject *hatch = g_fp->_currentScene->getStaticANIObject1ById(ANI_BIGLUK, -1); + StaticANIObject *hatch = g_nmi->_currentScene->getStaticANIObject1ById(ANI_BIGLUK, -1); hatch->changeStatics2(ST_BLK_OPEN); hatch->startAnim(MV_BLK_CLOSE, 0, -1); @@ -198,7 +198,7 @@ void sceneHandler05_handleUp() { void sceneHandler05_testHatch(ExCommand *inex) { ExCommand *ex; - if (g_fp->_currentScene->getStaticANIObject1ById(ANI_BIGLUK, -1)->_statics->_staticsId == ST_BLK_CLOSED) { + if (g_nmi->_currentScene->getStaticANIObject1ById(ANI_BIGLUK, -1)->_statics->_staticsId == ST_BLK_CLOSED) { ex = new ExCommand(SC_5, 17, 61, 0, 0, 0, 1, 0, 0, 0); ex->_param = TrubaLeft; ex->_excFlags |= 2; @@ -207,13 +207,13 @@ void sceneHandler05_testHatch(ExCommand *inex) { return; } - StaticANIObject *wacko = g_fp->_currentScene->getStaticANIObject1ById(ANI_OTMOROZ, -1); + StaticANIObject *wacko = g_nmi->_currentScene->getStaticANIObject1ById(ANI_OTMOROZ, -1); if (wacko->_movement) wacko->changeStatics2(wacko->_movement->_staticsObj2->_staticsId); - if (g_fp->getObjectState(sO_WeirdWacko) == g_fp->getObjectEnumState(sO_WeirdWacko, sO_InGlasses)) { - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(inex->_parId); + if (g_nmi->getObjectState(sO_WeirdWacko) == g_nmi->getObjectEnumState(sO_WeirdWacko, sO_InGlasses)) { + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(inex->_parId); if (mq) mq->deleteExCommandByIndex(mq->getCount() - 1, 1); @@ -223,7 +223,7 @@ void sceneHandler05_testHatch(ExCommand *inex) { if (!mq) { wacko->changeStatics2(ST_OTM_GLS_LEFT); - mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); } mq->setFlags(mq->getFlags() | 1); @@ -241,7 +241,7 @@ void sceneHandler05_testHatch(ExCommand *inex) { return; } - mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); mq->setFlags(mq->getFlags() | 1); ex = new ExCommand(ANI_OTMOROZ, 1, MV_OTM_HANDLEUP, 0, 0, 0, 1, 0, 0, 0); @@ -255,8 +255,8 @@ void sceneHandler05_testHatch(ExCommand *inex) { if (!mq->chain(wacko)) delete mq; - } else if (g_fp->getObjectState(sO_WeirdWacko) == g_fp->getObjectEnumState(sO_WeirdWacko, sO_WithDrawer)) { - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(inex->_parId); + } else if (g_nmi->getObjectState(sO_WeirdWacko) == g_nmi->getObjectEnumState(sO_WeirdWacko, sO_WithDrawer)) { + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(inex->_parId); if (mq) mq->deleteExCommandByIndex(mq->getCount() - 1, 1); @@ -265,7 +265,7 @@ void sceneHandler05_testHatch(ExCommand *inex) { mq = wacko->changeStatics1(ST_OTM_BOX_LEFT); if (!mq) { wacko->changeStatics2(ST_OTM_BOX_LEFT); - mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); } mq->setFlags(mq->getFlags() | 1); @@ -287,7 +287,7 @@ void sceneHandler05_testHatch(ExCommand *inex) { return; } - mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); mq->setFlags(mq->getFlags() | 1); ex = new ExCommand(ANI_OTMOROZ, 1, MV_OTM_BOXHANDLEUP, 0, 0, 0, 1, 0, 0, 0); @@ -320,11 +320,11 @@ int sceneHandler05(ExCommand *ex) { switch (ex->_messageNum) { case MSG_SC5_BGRSOUNDOFF: - g_fp->stopAllSoundInstances(SND_5_026); + g_nmi->stopAllSoundInstances(SND_5_026); break; case MSG_SC5_BGRSOUNDON: - g_fp->playSound(SND_5_026, 1); + g_nmi->playSound(SND_5_026, 1); break; case MSG_SC5_MAKEMANFLIGHT: @@ -332,8 +332,8 @@ int sceneHandler05(ExCommand *ex) { break; case MSG_SC5_MAKEOTMFEEDBACK: - if (!g_fp->_aniMan->_movement || (g_fp->_aniMan->_movement->_id != MV_MANHDL_HANDLEUP - && g_fp->_aniMan->_movement->_id != MV_MANHDL_HANDLEDOWN)) { + if (!g_nmi->_aniMan->_movement || (g_nmi->_aniMan->_movement->_id != MV_MANHDL_HANDLEUP + && g_nmi->_aniMan->_movement->_id != MV_MANHDL_HANDLEDOWN)) { sceneHandler05_makeWackoFeedback(); g_vars->scene05_wackoTicker = 0; } @@ -364,20 +364,20 @@ int sceneHandler05(ExCommand *ex) { case 33: { int res = 0; - if (g_fp->_aniMan2) { - if (g_fp->_aniMan2->_ox < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.left - 300; + if (g_nmi->_aniMan2) { + if (g_nmi->_aniMan2->_ox < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.left - 300; - if (g_fp->_aniMan2->_ox > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.right + 300; + if (g_nmi->_aniMan2->_ox > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.right + 300; res = 1; } if (g_vars->scene05_wackoTicker) { - if ((g_fp->_updateTicks - g_vars->scene05_wackoTicker) > 62) { - if (!g_fp->_aniMan->_movement || (g_fp->_aniMan->_movement->_id != MV_MANHDL_HANDLEUP - && g_fp->_aniMan->_movement->_id != MV_MANHDL_HANDLEDOWN)) { + if ((g_nmi->_updateTicks - g_vars->scene05_wackoTicker) > 62) { + if (!g_nmi->_aniMan->_movement || (g_nmi->_aniMan->_movement->_id != MV_MANHDL_HANDLEUP + && g_nmi->_aniMan->_movement->_id != MV_MANHDL_HANDLEDOWN)) { if (g_vars->scene05_handleFlipper % 2) sceneHandler05_makeWackoFeedback(); @@ -390,11 +390,11 @@ int sceneHandler05(ExCommand *ex) { ++g_vars->scene05_floatersTicker; - g_fp->_floaters->update(); + g_nmi->_floaters->update(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); return res; } diff --git a/engines/ngi/fullpipe/scene06.cpp b/engines/ngi/fullpipe/scene06.cpp index 33dd9b89ebd..d7867765b22 100644 --- a/engines/ngi/fullpipe/scene06.cpp +++ b/engines/ngi/fullpipe/scene06.cpp @@ -38,53 +38,53 @@ namespace NGI { void scene06_initMumsy() { - g_vars->scene06_mumsyJumpFw = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene06_mumsy, ST_MOM_STANDS, QU_MOM_JUMPFW); - g_vars->scene06_mumsyJumpBk = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene06_mumsy, ST_MOM_STANDS, QU_MOM_JUMPBK); + g_vars->scene06_mumsyJumpFw = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene06_mumsy, ST_MOM_STANDS, QU_MOM_JUMPFW); + g_vars->scene06_mumsyJumpBk = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene06_mumsy, ST_MOM_STANDS, QU_MOM_JUMPBK); g_vars->scene06_mumsyJumpFwPercent = g_vars->scene06_mumsyJumpFw->_percent; g_vars->scene06_mumsyJumpBkPercent = g_vars->scene06_mumsyJumpBk->_percent; } int scene06_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); if (g_vars->scene06_arcadeEnabled) { if (g_vars->scene06_aimingBall) { - g_fp->_cursorId = PIC_CSR_ARCADE2_D; + g_nmi->_cursorId = PIC_CSR_ARCADE2_D; return PIC_CSR_ARCADE2_D; } - if (g_fp->_aniMan == g_fp->_objectAtCursor) { - if (g_fp->_aniMan->_statics->_staticsId == ST_MAN6_BALL && g_fp->_cursorId == PIC_CSR_DEFAULT) { - g_fp->_cursorId = PIC_CSR_ITN; + if (g_nmi->_aniMan == g_nmi->_objectAtCursor) { + if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN6_BALL && g_nmi->_cursorId == PIC_CSR_DEFAULT) { + g_nmi->_cursorId = PIC_CSR_ITN; return PIC_CSR_ITN; } - } else if (g_fp->_objectAtCursor && g_fp->_objectAtCursor == g_vars->scene06_currentBall - && g_fp->_cursorId == PIC_CSR_DEFAULT) { - g_fp->_cursorId = PIC_CSR_ITN; + } else if (g_nmi->_objectAtCursor && g_nmi->_objectAtCursor == g_vars->scene06_currentBall + && g_nmi->_cursorId == PIC_CSR_DEFAULT) { + g_nmi->_cursorId = PIC_CSR_ITN; } } - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler06_setExits(Scene *sc) { MotionController *mc = getSc2MctlCompoundBySceneId(sc->_sceneId); - mc->enableLinks(sO_CloseThing, (g_fp->getObjectState(sO_BigMumsy) != g_fp->getObjectEnumState(sO_BigMumsy, sO_IsGone))); + mc->enableLinks(sO_CloseThing, (g_nmi->getObjectState(sO_BigMumsy) != g_nmi->getObjectEnumState(sO_BigMumsy, sO_IsGone))); mc->enableLinks(sO_CloseThing2, g_vars->scene06_arcadeEnabled); } void sceneHandler06_winArcade() { - g_fp->setObjectState(sO_BigMumsy, g_fp->getObjectEnumState(sO_BigMumsy, sO_IsGone)); + g_nmi->setObjectState(sO_BigMumsy, g_nmi->getObjectEnumState(sO_BigMumsy, sO_IsGone)); - if (g_fp->getObjectState(sO_ClockAxis) == g_fp->getObjectEnumState(sO_ClockAxis, sO_IsNotAvailable)) - g_fp->setObjectState(sO_ClockAxis, g_fp->getObjectEnumState(sO_ClockAxis, sO_WithoutHandle)); + if (g_nmi->getObjectState(sO_ClockAxis) == g_nmi->getObjectEnumState(sO_ClockAxis, sO_IsNotAvailable)) + g_nmi->setObjectState(sO_ClockAxis, g_nmi->getObjectEnumState(sO_ClockAxis, sO_WithoutHandle)); if (g_vars->scene06_arcadeEnabled) { - g_fp->_aniMan->_callback2 = 0; // Really NULL + g_nmi->_aniMan->_callback2 = 0; // Really NULL - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); if (g_vars->scene06_someBall) { g_vars->scene06_someBall->_flags &= 0xFFFB; @@ -116,7 +116,7 @@ void sceneHandler06_winArcade() { g_vars->scene06_mumsy->_flags &= 0xFFFB; - sceneHandler06_setExits(g_fp->_currentScene); + sceneHandler06_setExits(g_nmi->_currentScene); getCurrSceneSc2MotionController()->activate(); getGameLoaderInteractionController()->enableFlag24(); @@ -126,7 +126,7 @@ void sceneHandler06_enableDrops() { chainQueue(QU_SC6_DROPS, 0); g_vars->scene06_mumsy->changeStatics2(ST_MOM_SITS); - g_fp->setObjectState(sO_BigMumsy, g_fp->getObjectEnumState(sO_BigMumsy, sO_IsPlaying)); + g_nmi->setObjectState(sO_BigMumsy, g_nmi->getObjectEnumState(sO_BigMumsy, sO_IsPlaying)); chainQueue(QU_MOM_STANDUP, 1); @@ -136,7 +136,7 @@ void sceneHandler06_enableDrops() { g_vars->scene06_mumsyNumBalls = 0; g_vars->scene06_mumsyGotBall = false; - sceneHandler06_setExits(g_fp->_currentScene); + sceneHandler06_setExits(g_nmi->_currentScene); } void sceneHandler06_mumsyBallTake() { @@ -162,7 +162,7 @@ void sceneHandler06_mumsyBallTake() { break; } - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); ExCommand *ex = new ExCommand(ANI_MAMASHA, 2, 50, 0, 0, 0, 1, 0, 0, 0); @@ -170,10 +170,10 @@ void sceneHandler06_mumsyBallTake() { mq->addExCommandToEnd(ex); if (g_vars->scene06_mumsyNumBalls >= 5) { - g_fp->setObjectState(sO_BigMumsy, g_fp->getObjectEnumState(sO_BigMumsy, sO_IsGone)); + g_nmi->setObjectState(sO_BigMumsy, g_nmi->getObjectEnumState(sO_BigMumsy, sO_IsGone)); - if (g_fp->getObjectState(sO_ClockAxis) == g_fp->getObjectEnumState(sO_ClockAxis, sO_IsNotAvailable)) - g_fp->setObjectState(sO_ClockAxis, g_fp->getObjectEnumState(sO_ClockAxis, sO_WithoutHandle)); + if (g_nmi->getObjectState(sO_ClockAxis) == g_nmi->getObjectEnumState(sO_ClockAxis, sO_IsNotAvailable)) + g_nmi->setObjectState(sO_ClockAxis, g_nmi->getObjectEnumState(sO_ClockAxis, sO_WithoutHandle)); ex = new ExCommand(ANI_MAMASHA, 1, momAni, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags |= 2; @@ -230,29 +230,29 @@ void sceneHandler06_mumsyBallTake() { g_vars->scene06_mumsyNumBalls = 0; g_vars->scene06_arcadeEnabled = false; - g_fp->_aniMan2 = 0; + g_nmi->_aniMan2 = 0; } void sceneHandler06_spinHandle() { - int tummy = g_fp->getObjectState(sO_TummyTrampie); + int tummy = g_nmi->getObjectState(sO_TummyTrampie); - if (tummy == g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsEating)) - g_fp->setObjectState(sO_TummyTrampie, g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsSleeping)); - else if (tummy == g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsSleeping)) - g_fp->setObjectState(sO_TummyTrampie, g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsDrinking)); - else if (tummy == g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsDrinking)) - g_fp->setObjectState(sO_TummyTrampie, g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsScratchingBelly)); - else if (tummy == g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsScratchingBelly)) - g_fp->setObjectState(sO_TummyTrampie, g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsEating)); + if (tummy == g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsEating)) + g_nmi->setObjectState(sO_TummyTrampie, g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsSleeping)); + else if (tummy == g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsSleeping)) + g_nmi->setObjectState(sO_TummyTrampie, g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsDrinking)); + else if (tummy == g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsDrinking)) + g_nmi->setObjectState(sO_TummyTrampie, g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsScratchingBelly)); + else if (tummy == g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsScratchingBelly)) + g_nmi->setObjectState(sO_TummyTrampie, g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsEating)); } void sceneHandler06_uPipeClick() { if (getGameLoaderInteractionController()->_flag24) - handleObjectInteraction(g_fp->_aniMan2, g_fp->_currentScene->getPictureObjectById(PIC_SC6_LADDER, 0), 0); + handleObjectInteraction(g_nmi->_aniMan2, g_nmi->_currentScene->getPictureObjectById(PIC_SC6_LADDER, 0), 0); } void sceneHandler06_buttonPush() { - g_vars->scene06_invHandle = g_fp->_currentScene->getStaticANIObject1ById(ANI_INV_HANDLE, -1); + g_vars->scene06_invHandle = g_nmi->_currentScene->getStaticANIObject1ById(ANI_INV_HANDLE, -1); if (g_vars->scene06_invHandle) if (g_vars->scene06_invHandle->_flags & 4) @@ -265,7 +265,7 @@ void sceneHandler06_showNextBall() { if (g_vars->scene06_balls.size()) { g_vars->scene06_currentBall = g_vars->scene06_balls.remove_at(0); - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC6_SHOWNEXTBALL), 0, 1); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC6_SHOWNEXTBALL), 0, 1); mq->setParamInt(-1, g_vars->scene06_currentBall->_odelay); mq->chain(0); @@ -281,10 +281,10 @@ void sceneHandler06_installHandle() { int sceneHandler06_updateScreenCallback() { int res; - res = g_fp->drawArcadeOverlay(g_vars->scene06_arcadeEnabled); + res = g_nmi->drawArcadeOverlay(g_vars->scene06_arcadeEnabled); if (!res) - g_fp->_updateScreenCallback = 0; + g_nmi->_updateScreenCallback = 0; return res; } @@ -293,13 +293,13 @@ void sceneHandler06_startAiming() { if (g_vars->scene06_currentBall) { g_vars->scene06_currentBall->hide(); - g_fp->_aniMan->startAnim(MV_MAN6_TAKEBALL, 0, -1); + g_nmi->_aniMan->startAnim(MV_MAN6_TAKEBALL, 0, -1); g_vars->scene06_ballInHands = g_vars->scene06_currentBall; g_vars->scene06_currentBall = 0; if (getCurrSceneSc2MotionController()->_isEnabled) - g_fp->_updateScreenCallback = sceneHandler06_updateScreenCallback; + g_nmi->_updateScreenCallback = sceneHandler06_updateScreenCallback; getCurrSceneSc2MotionController()->deactivate(); getGameLoaderInteractionController()->disableFlag24(); @@ -310,18 +310,18 @@ void sceneHandler06_startAiming() { void sceneHandler06_takeBall() { if (g_vars->scene06_currentBall && !g_vars->scene06_currentBall->_movement && g_vars->scene06_currentBall->_statics->_staticsId == ST_NBL_NORM) { - if (abs(1158 - g_fp->_aniMan->_ox) > 1 - || abs(452 - g_fp->_aniMan->_oy) > 1 - || g_fp->_aniMan->_movement - || g_fp->_aniMan->_statics->_staticsId != (0x4000 | ST_MAN_RIGHT)) { - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, 1158, 452, 1, (0x4000 | ST_MAN_RIGHT)); + if (abs(1158 - g_nmi->_aniMan->_ox) > 1 + || abs(452 - g_nmi->_aniMan->_oy) > 1 + || g_nmi->_aniMan->_movement + || g_nmi->_aniMan->_statics->_staticsId != (0x4000 | ST_MAN_RIGHT)) { + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, 1158, 452, 1, (0x4000 | ST_MAN_RIGHT)); if (mq) { ExCommand *ex = new ExCommand(0, 17, MSG_SC6_TAKEBALL, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags |= 3; mq->addExCommandToEnd(ex); - postExCommand(g_fp->_aniMan->_id, 2, 1158, 452, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, 1158, 452, 0, -1); } } else { sceneHandler06_startAiming(); @@ -331,18 +331,18 @@ void sceneHandler06_takeBall() { void sceneHandler06_aiming() { if (g_vars->scene06_ballInHands) { - g_vars->scene06_ballDeltaX = 4 * g_fp->_aniMan->_movement->_currDynamicPhaseIndex + 16; - g_vars->scene06_ballDeltaY = 5 * (g_fp->_aniMan->_movement->_currDynamicPhaseIndex + 4); + g_vars->scene06_ballDeltaX = 4 * g_nmi->_aniMan->_movement->_currDynamicPhaseIndex + 16; + g_vars->scene06_ballDeltaY = 5 * (g_nmi->_aniMan->_movement->_currDynamicPhaseIndex + 4); - if (g_fp->_aniMan->_movement->_currDynamicPhaseIndex < 4) { - g_fp->_aniMan->_movement->setDynamicPhaseIndex(11); + if (g_nmi->_aniMan->_movement->_currDynamicPhaseIndex < 4) { + g_nmi->_aniMan->_movement->setDynamicPhaseIndex(11); g_vars->scene06_aimingBall = false; return; } - g_fp->_aniMan->_movement->setDynamicPhaseIndex(9); + g_nmi->_aniMan->_movement->setDynamicPhaseIndex(9); } g_vars->scene06_aimingBall = false; @@ -352,7 +352,7 @@ void sceneHandler06_ballStartFly() { if (g_vars->scene06_ballInHands) { g_vars->scene06_flyingBall = g_vars->scene06_ballInHands; g_vars->scene06_ballInHands = 0; - g_vars->scene06_flyingBall->show1(g_fp->_aniMan->_ox - 60, g_fp->_aniMan->_oy - 60, -1, 0); + g_vars->scene06_flyingBall->show1(g_nmi->_aniMan->_ox - 60, g_nmi->_aniMan->_oy - 60, -1, 0); g_vars->scene06_flyingBall->_priority = 27; } @@ -360,10 +360,10 @@ void sceneHandler06_ballStartFly() { void sceneHandler06_throwCallback(int *arg) { if (g_vars->scene06_aimingBall) { - int dist = (g_fp->_mouseVirtY - g_vars->scene06_sceneClickY) - * (g_fp->_mouseVirtY - g_vars->scene06_sceneClickY) - + (g_fp->_mouseVirtX - g_vars->scene06_sceneClickX) - * (g_fp->_mouseVirtX - g_vars->scene06_sceneClickX); + int dist = (g_nmi->_mouseVirtY - g_vars->scene06_sceneClickY) + * (g_nmi->_mouseVirtY - g_vars->scene06_sceneClickY) + + (g_nmi->_mouseVirtX - g_vars->scene06_sceneClickX) + * (g_nmi->_mouseVirtX - g_vars->scene06_sceneClickX); *arg = (int)(sqrt((double)dist) * 0.1); @@ -377,15 +377,15 @@ void sceneHandler06_throwCallback(int *arg) { } void sceneHandler06_throwBall() { - g_fp->_aniMan->_callback2 = sceneHandler06_throwCallback; - g_fp->_aniMan->startAnim(MV_MAN6_THROWBALL, 0, -1); + g_nmi->_aniMan->_callback2 = sceneHandler06_throwCallback; + g_nmi->_aniMan->startAnim(MV_MAN6_THROWBALL, 0, -1); g_vars->scene06_aimingBall = true; } void sceneHandler06_eggieWalk() { - if (15 - g_vars->scene06_numBallsGiven >= 4 && !g_fp->_rnd.getRandomNumber(9)) { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_EGGIE, -1); + if (15 - g_vars->scene06_numBallsGiven >= 4 && !g_nmi->_rnd.getRandomNumber(9)) { + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_EGGIE, -1); if (!ani || !(ani->_flags & 4)) { if (g_vars->scene06_eggieDirection) @@ -411,7 +411,7 @@ void sceneHandler06_fallBall() { g_vars->scene06_flyingBall->setOXY(g_vars->scene06_ballX, g_vars->scene06_ballY); - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC6_FALLBALL), 0, 1); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC6_FALLBALL), 0, 1); mq->setParamInt(-1, g_vars->scene06_flyingBall->_odelay); mq->chain(0); @@ -521,19 +521,19 @@ void scene06_initScene(Scene *sc) { g_vars->scene06_balls.push_back(ball2); } - if (g_fp->getObjectState(sO_BigMumsy) == g_fp->getObjectEnumState(sO_BigMumsy, sO_IsPlaying)) - g_fp->setObjectState(sO_BigMumsy, g_fp->getObjectEnumState(sO_BigMumsy, sO_IsSleeping)); + if (g_nmi->getObjectState(sO_BigMumsy) == g_nmi->getObjectEnumState(sO_BigMumsy, sO_IsPlaying)) + g_nmi->setObjectState(sO_BigMumsy, g_nmi->getObjectEnumState(sO_BigMumsy, sO_IsSleeping)); - if (g_fp->getObjectState(sO_BigMumsy) != g_fp->getObjectEnumState(sO_BigMumsy, sO_IsSleeping)) + if (g_nmi->getObjectState(sO_BigMumsy) != g_nmi->getObjectEnumState(sO_BigMumsy, sO_IsSleeping)) g_vars->scene06_mumsy->hide(); - g_fp->lift_setButton(sO_Level3, ST_LBN_3N); - g_fp->lift_init(sc, QU_SC6_ENTERLIFT, QU_SC6_EXITLIFT); - g_fp->initArcadeKeys("SC_6"); + g_nmi->lift_setButton(sO_Level3, ST_LBN_3N); + g_nmi->lift_init(sc, QU_SC6_ENTERLIFT, QU_SC6_EXITLIFT); + g_nmi->initArcadeKeys("SC_6"); sceneHandler06_setExits(sc); - g_fp->setArcadeOverlay(PIC_CSR_ARCADE2); + g_nmi->setArcadeOverlay(PIC_CSR_ARCADE2); } int sceneHandler06(ExCommand *ex) { @@ -542,11 +542,11 @@ int sceneHandler06(ExCommand *ex) { switch(ex->_messageNum) { case MSG_LIFT_CLOSEDOOR: - g_fp->lift_closedoorSeq(); + g_nmi->lift_closedoorSeq(); break; case MSG_LIFT_EXITLIFT: - g_fp->lift_exitSeq(ex); + g_nmi->lift_exitSeq(ex); break; case MSG_CMN_WINARCADE: @@ -554,18 +554,18 @@ int sceneHandler06(ExCommand *ex) { break; case MSG_LIFT_STARTEXITQUEUE: - g_fp->lift_startExitQueue(); + g_nmi->lift_startExitQueue(); break; case MSG_SC6_RESTORESCROLL: - g_fp->_aniMan2 = g_fp->_aniMan; + g_nmi->_aniMan2 = g_nmi->_aniMan; getCurrSceneSc2MotionController()->activate(); getGameLoaderInteractionController()->enableFlag24(); - sceneHandler06_setExits(g_fp->_currentScene); + sceneHandler06_setExits(g_nmi->_currentScene); break; case MSG_SC6_STARTDROPS: - if (g_fp->getObjectState(sO_BigMumsy) == g_fp->getObjectEnumState(sO_BigMumsy, sO_IsSleeping)) + if (g_nmi->getObjectState(sO_BigMumsy) == g_nmi->getObjectEnumState(sO_BigMumsy, sO_IsSleeping)) sceneHandler06_enableDrops(); break; @@ -587,7 +587,7 @@ int sceneHandler06(ExCommand *ex) { break; case MSG_LIFT_CLICKBUTTON: - g_fp->lift_clickButton(); + g_nmi->lift_clickButton(); break; case MSG_SPINHANDLE: @@ -595,7 +595,7 @@ int sceneHandler06(ExCommand *ex) { break; case MSG_LIFT_GO: - g_fp->lift_goAnimation(); + g_nmi->lift_goAnimation(); break; case MSG_SC6_UTRUBACLICK: @@ -619,7 +619,7 @@ int sceneHandler06(ExCommand *ex) { break; case 64: - g_fp->lift_hoverButton(ex); + g_nmi->lift_hoverButton(ex); break; case MSG_SC6_TAKEBALL: @@ -640,11 +640,11 @@ int sceneHandler06(ExCommand *ex) { case 29: { - StaticANIObject *st = g_fp->_currentScene->getStaticANIObjectAtPos(ex->_sceneClickX, ex->_sceneClickY); + StaticANIObject *st = g_nmi->_currentScene->getStaticANIObjectAtPos(ex->_sceneClickX, ex->_sceneClickY); if (st) { if (!g_vars->scene06_arcadeEnabled && st->_id == ANI_LIFTBUTTON) { - g_fp->lift_animateButton(st); + g_nmi->lift_animateButton(st); ex->_messageKind = 0; return 0; } @@ -654,7 +654,7 @@ int sceneHandler06(ExCommand *ex) { sceneHandler06_takeBall(); ex->_messageKind = 0; - } else if (g_vars->scene06_ballInHands && g_fp->_aniMan == st && !g_fp->_aniMan->_movement && g_fp->_aniMan->_statics->_staticsId == ST_MAN6_BALL) { + } else if (g_vars->scene06_ballInHands && g_nmi->_aniMan == st && !g_nmi->_aniMan->_movement && g_nmi->_aniMan->_statics->_staticsId == ST_MAN6_BALL) { g_vars->scene06_sceneClickX = ex->_sceneClickX; g_vars->scene06_sceneClickY = ex->_sceneClickY; @@ -662,15 +662,15 @@ int sceneHandler06(ExCommand *ex) { } } - if (!st || !canInteractAny(g_fp->_aniMan, st, ex->_param)) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(ex->_sceneClickX, ex->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + if (!st || !canInteractAny(g_nmi->_aniMan, st, ex->_param)) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(ex->_sceneClickX, ex->_sceneClickY); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); - if (!pic || !canInteractAny(g_fp->_aniMan, pic, ex->_param)) { - if ((g_fp->_sceneRect.right - ex->_sceneClickX < 47 - && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) - || (ex->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) { - g_fp->processArcade(ex); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, ex->_param)) { + if ((g_nmi->_sceneRect.right - ex->_sceneClickX < 47 + && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) + || (ex->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) { + g_nmi->processArcade(ex); return 0; } } @@ -682,34 +682,34 @@ int sceneHandler06(ExCommand *ex) { { int res = 0; - if (g_fp->_aniMan2) { - int ox = g_fp->_aniMan2->_ox; - int oy = g_fp->_aniMan2->_oy; + if (g_nmi->_aniMan2) { + int ox = g_nmi->_aniMan2->_ox; + int oy = g_nmi->_aniMan2->_oy; g_vars->scene06_manX = ox; g_vars->scene06_manY = oy; if (g_vars->scene06_arcadeEnabled && oy <= 470 && ox >= 1088) { - if (ox < g_fp->_sceneRect.left + 600) { - g_fp->_currentScene->_x = ox - g_fp->_sceneRect.left - 700; + if (ox < g_nmi->_sceneRect.left + 600) { + g_nmi->_currentScene->_x = ox - g_nmi->_sceneRect.left - 700; ox = g_vars->scene06_manX; } - if (ox > g_fp->_sceneRect.right - 50) - g_fp->_currentScene->_x = ox - g_fp->_sceneRect.right + 70; + if (ox > g_nmi->_sceneRect.right - 50) + g_nmi->_currentScene->_x = ox - g_nmi->_sceneRect.right + 70; } else { - if (ox < g_fp->_sceneRect.left + 200) { - g_fp->_currentScene->_x = ox - g_fp->_sceneRect.left - 300; + if (ox < g_nmi->_sceneRect.left + 200) { + g_nmi->_currentScene->_x = ox - g_nmi->_sceneRect.left - 300; ox = g_vars->scene06_manX; } - if (ox > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = ox - g_fp->_sceneRect.right + 300; + if (ox > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = ox - g_nmi->_sceneRect.right + 300; } res = 1; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } if (g_vars->scene06_arcadeEnabled) { if (g_vars->scene06_mumsyPos > -3) @@ -755,8 +755,8 @@ int sceneHandler06(ExCommand *ex) { && !g_vars->scene06_mumsy->_movement && !g_vars->scene06_mumsyGotBall) sceneHandler06_mumsyBallTake(); - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); return res; } diff --git a/engines/ngi/fullpipe/scene07.cpp b/engines/ngi/fullpipe/scene07.cpp index f1dce3eab88..10a8675af61 100644 --- a/engines/ngi/fullpipe/scene07.cpp +++ b/engines/ngi/fullpipe/scene07.cpp @@ -39,24 +39,24 @@ void scene07_initScene(Scene *sc) { g_vars->scene07_lukePercent = 0; g_vars->scene07_plusMinus = sc->getStaticANIObject1ById(ANI_PLUSMINUS, -1); - if (g_fp->getObjectState(sO_Guard_1) == g_fp->getObjectEnumState(sO_Guard_1, sO_Off)) + if (g_nmi->getObjectState(sO_Guard_1) == g_nmi->getObjectEnumState(sO_Guard_1, sO_Off)) g_vars->scene07_plusMinus->_statics = g_vars->scene07_plusMinus->getStaticsById(ST_PMS_MINUS); else g_vars->scene07_plusMinus->_statics = g_vars->scene07_plusMinus->getStaticsById(ST_PMS_PLUS); - if (g_fp->getObjectState(sO_HareTheNooksiter) == g_fp->getObjectEnumState(sO_HareTheNooksiter, sO_WithoutHandle)) { - Scene *oldsc = g_fp->_currentScene; + if (g_nmi->getObjectState(sO_HareTheNooksiter) == g_nmi->getObjectEnumState(sO_HareTheNooksiter, sO_WithoutHandle)) { + Scene *oldsc = g_nmi->_currentScene; - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; sc->getStaticANIObject1ById(ANI_CORNERSITTER, -1)->changeStatics2(ST_CST_HANDLELESS); - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; } } void sceneHandler07_openLuke() { - StaticANIObject *luke = g_fp->_currentScene->getStaticANIObject1ById(ANI_LUKE, -1); + StaticANIObject *luke = g_nmi->_currentScene->getStaticANIObject1ById(ANI_LUKE, -1); luke->changeStatics2(ST_LUK_OPEN); luke->show1(-1, -1, -1, 0); @@ -64,40 +64,40 @@ void sceneHandler07_openLuke() { if (g_vars->scene07_lukeAnim) { g_vars->scene07_lukeAnim->_percent = g_vars->scene07_lukePercent; } else { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_CORNERSITTER, -1); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_CORNERSITTER, -1); - g_vars->scene07_lukeAnim = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(ani, ST_CST_HANDLELESS, QU_CST_CLOSELUKE); + g_vars->scene07_lukeAnim = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(ani, ST_CST_HANDLELESS, QU_CST_CLOSELUKE); g_vars->scene07_lukeAnim->_percent = g_vars->scene07_lukePercent; } } void sceneHandler07_closeLuke() { - g_fp->_currentScene->getStaticANIObject1ById(ANI_LUKE, -1)->changeStatics2(ST_LUK_CLOSED); + g_nmi->_currentScene->getStaticANIObject1ById(ANI_LUKE, -1)->changeStatics2(ST_LUK_CLOSED); if (!g_vars->scene07_lukeAnim) { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_CORNERSITTER, -1); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_CORNERSITTER, -1); - g_vars->scene07_lukeAnim = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(ani, ST_CST_HANDLELESS, QU_CST_CLOSELUKE); + g_vars->scene07_lukeAnim = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(ani, ST_CST_HANDLELESS, QU_CST_CLOSELUKE); } g_vars->scene07_lukePercent = g_vars->scene07_lukeAnim->_percent; g_vars->scene07_lukeAnim->_percent = 0; - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_HOOLIGAN, -1); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_HOOLIGAN, -1); ani->changeStatics2(ST_HGN_LUKE); ani->show1(-1, -1, -1, 0); } void sceneHandler07_hideLuke() { - g_fp->_currentScene->getStaticANIObject1ById(ANI_LUKE, -1)->hide(); + g_nmi->_currentScene->getStaticANIObject1ById(ANI_LUKE, -1)->hide(); - Movement *mov = g_fp->_currentScene->getStaticANIObject1ById(ANI_CORNERSITTER, -1)->_movement; + Movement *mov = g_nmi->_currentScene->getStaticANIObject1ById(ANI_CORNERSITTER, -1)->_movement; if (mov) { if (mov->_id == MV_CST_CLOSELUKE) { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_HOOLIGAN, -1); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_HOOLIGAN, -1); ani->changeStatics2(ST_HGN_LOOK); ani->_flags &= 0xFFFB; @@ -106,14 +106,14 @@ void sceneHandler07_hideLuke() { } void sceneHandler07_showBox() { - StaticANIObject *box = g_fp->_currentScene->getStaticANIObject1ById(ANI_SC7_BOX, -1); + StaticANIObject *box = g_nmi->_currentScene->getStaticANIObject1ById(ANI_SC7_BOX, -1); box->show1(492, 474, MV_SC7_BOX_default, 0); box->_priority = 25; } void sceneHandler07_hideBox() { - g_fp->_currentScene->getStaticANIObject1ById(ANI_SC7_BOX, -1)->hide(); + g_nmi->_currentScene->getStaticANIObject1ById(ANI_SC7_BOX, -1)->hide(); } int sceneHandler07(ExCommand *ex) { @@ -153,17 +153,17 @@ int sceneHandler07(ExCommand *ex) { { int res = 0; - if (g_fp->_aniMan2) { - if (g_fp->_aniMan2->_ox < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.left - 300; + if (g_nmi->_aniMan2) { + if (g_nmi->_aniMan2->_ox < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.left - 300; - if (g_fp->_aniMan2->_ox > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.right + 300; + if (g_nmi->_aniMan2->_ox > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.right + 300; res = 1; } - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); return res; } diff --git a/engines/ngi/fullpipe/scene08.cpp b/engines/ngi/fullpipe/scene08.cpp index ac4085d4fb7..d018be2cdd3 100644 --- a/engines/ngi/fullpipe/scene08.cpp +++ b/engines/ngi/fullpipe/scene08.cpp @@ -52,28 +52,28 @@ void scene08_initScene(Scene *sc) { g_vars->scene08_stairsOffset = -37; g_vars->scene08_snoringCountdown = -1; - Scene *oldsc = g_fp->_currentScene; - g_fp->_currentScene = sc; + Scene *oldsc = g_nmi->_currentScene; + g_nmi->_currentScene = sc; - int batuta = g_fp->getObjectState(sO_TummyTrampie); + int batuta = g_nmi->getObjectState(sO_TummyTrampie); MovGraphLink *lock = getSc2MctlCompoundBySceneId(sc->_sceneId)->getLinkByName(sO_CloseThing); if (lock) lock->_flags &= 0xDFFFFFFF; - if (batuta == g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsEating)) { + if (batuta == g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsEating)) { g_vars->scene08_batuta->changeStatics2(ST_BTT_SPOON); - } else if (batuta == g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsDrinking)) { + } else if (batuta == g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsDrinking)) { g_vars->scene08_batuta->changeStatics2(ST_BTT_NOSPOON); g_vars->scene08_clock->startAnim(MV_CLK8_GO, 0, -1); g_vars->scene08_clock->_movement->setDynamicPhaseIndex(3); - } else if (batuta== g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsScratchingBelly)) { + } else if (batuta== g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsScratchingBelly)) { g_vars->scene08_batuta->changeStatics2(ST_BTT_CHESHET); g_vars->scene08_clock->startAnim(MV_CLK8_GO, 0, -1); g_vars->scene08_clock->_movement->setDynamicPhaseIndex(8); - } else if (batuta == g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsSleeping)) { + } else if (batuta == g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsSleeping)) { g_vars->scene08_batuta->changeStatics2(ST_BTT_SLEEPS); g_vars->scene08_clock->startAnim(MV_CLK8_GO, 0, -1); @@ -87,7 +87,7 @@ void scene08_initScene(Scene *sc) { g_vars->scene08_clock->_callback2 = scene08_clockCallback; - if (g_fp->getObjectState(sO_StairsUp_8) == g_fp->getObjectEnumState(sO_StairsUp_8, sO_Broken)) { + if (g_nmi->getObjectState(sO_StairsUp_8) == g_nmi->getObjectEnumState(sO_StairsUp_8, sO_Broken)) { g_vars->scene08_stairsVisible = false; sc->getPictureObjectById(PIC_SC8_LADDER, 0)->_flags &= 0xFFFB; @@ -99,52 +99,52 @@ void scene08_initScene(Scene *sc) { sc->getPictureObjectById(PIC_SC8_ARCADENOW, 0)->_flags &= 0xFFFB; - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; - g_fp->_floaters->init(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_8")); - g_fp->_floaters->genFlies(sc, 100, 100, 0, 0); + g_nmi->_floaters->init(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_8")); + g_nmi->_floaters->genFlies(sc, 100, 100, 0, 0); - g_fp->setArcadeOverlay(PIC_CSR_ARCADE3); + g_nmi->setArcadeOverlay(PIC_CSR_ARCADE3); } void scene08_setupMusic() { - if (g_fp->getObjectState(sO_TummyTrampie) == g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsSleeping)) - g_fp->playTrack(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_8"), "MUSIC_ARCADE", 1); + if (g_nmi->getObjectState(sO_TummyTrampie) == g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsSleeping)) + g_nmi->playTrack(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_8"), "MUSIC_ARCADE", 1); } int scene08_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); if (g_vars->scene08_inArcade) { if (g_vars->scene08_onBelly) { - if (g_fp->_objectIdAtCursor == PIC_SC8_LADDERD && g_fp->_cursorId == PIC_CSR_ITN) - g_fp->_cursorId = PIC_CSR_GOU; + if (g_nmi->_objectIdAtCursor == PIC_SC8_LADDERD && g_nmi->_cursorId == PIC_CSR_ITN) + g_nmi->_cursorId = PIC_CSR_GOU; } else { - g_fp->_cursorId = -1; + g_nmi->_cursorId = -1; } } else { - if (g_fp->_objectIdAtCursor == PIC_SC8_LADDERD && g_fp->_cursorId == PIC_CSR_ITN) { - if (g_fp->_aniMan2->_oy >= 520) { - if (g_fp->_aniMan2->_oy <= 750) - g_fp->_cursorId = PIC_CSR_GOU; + if (g_nmi->_objectIdAtCursor == PIC_SC8_LADDERD && g_nmi->_cursorId == PIC_CSR_ITN) { + if (g_nmi->_aniMan2->_oy >= 520) { + if (g_nmi->_aniMan2->_oy <= 750) + g_nmi->_cursorId = PIC_CSR_GOU; } else { - g_fp->_cursorId = PIC_CSR_GOD; + g_nmi->_cursorId = PIC_CSR_GOD; } } } - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler08_enterUp() { - g_fp->_currentScene->getPictureObjectById(PIC_SC8_LADDER, 0)->_flags &= 0xFFFB; + g_nmi->_currentScene->getPictureObjectById(PIC_SC8_LADDER, 0)->_flags &= 0xFFFB; - g_fp->_aniMan->changeStatics2(ST_MAN8_HANDSUP); - g_fp->_aniMan->setOXY(386, 236); - g_fp->_aniMan->_priority = 10; - g_fp->_aniMan->_flags = 4; + g_nmi->_aniMan->changeStatics2(ST_MAN8_HANDSUP); + g_nmi->_aniMan->setOXY(386, 236); + g_nmi->_aniMan->_priority = 10; + g_nmi->_aniMan->_flags = 4; - chainObjQueue(g_fp->_aniMan, QU_SC8_FINISH, 1); + chainObjQueue(g_nmi->_aniMan, QU_SC8_FINISH, 1); g_vars->scene08_inAir = false; } @@ -152,21 +152,21 @@ void sceneHandler08_enterUp() { void sceneHandler08_winArcade() { if (g_vars->scene08_inArcade) { g_vars->scene08_inArcade = false; - g_fp->_sceneRect.top = 0; - g_fp->_sceneRect.bottom = 600; + g_nmi->_sceneRect.top = 0; + g_nmi->_sceneRect.bottom = 600; sceneHandler08_enterUp(); } } void sceneHandler08_hideLadder() { - g_fp->_currentScene->getPictureObjectById(PIC_SC8_LADDER_D, 0)->_flags &= 0xFFFB; + g_nmi->_currentScene->getPictureObjectById(PIC_SC8_LADDER_D, 0)->_flags &= 0xFFFB; } void sceneHandler08_arcadeNow() { MovGraphLink *lnk = getCurrSceneSc2MotionController()->getLinkByName(sO_Stairway); - g_fp->setObjectState(sO_TummyTrampie, g_fp->getObjectEnumState(sO_TummyTrampie, sO_IsSleeping)); + g_nmi->setObjectState(sO_TummyTrampie, g_nmi->getObjectEnumState(sO_TummyTrampie, sO_IsSleeping)); g_vars->scene08_batuta->changeStatics2(ST_BTT_SLEEPS); @@ -193,9 +193,9 @@ int sceneHandler08_calcOffset(int off, int flag) { } void sceneHandler08_pushCallback(int *par) { - int y = g_fp->_aniMan->_oy + g_fp->_aniMan->getSomeXY().y; + int y = g_nmi->_aniMan->_oy + g_nmi->_aniMan->getSomeXY().y; - if (g_fp->_aniMan->_statics && g_fp->_aniMan->_statics->_staticsId == ST_MAN8_FLYDOWN) + if (g_nmi->_aniMan->_statics && g_nmi->_aniMan->_statics->_staticsId == ST_MAN8_FLYDOWN) y -= 25; *par = (y - 703) / 10; @@ -212,10 +212,10 @@ void sceneHandler08_pushCallback(int *par) { int sceneHandler08_updateScreenCallback() { int res; - res = g_fp->drawArcadeOverlay(g_vars->scene08_inArcade); + res = g_nmi->drawArcadeOverlay(g_vars->scene08_inArcade); if (!res) - g_fp->_updateScreenCallback = 0; + g_nmi->_updateScreenCallback = 0; return res; } @@ -236,40 +236,40 @@ void sceneHandler08_startArcade() { g_vars->scene08_vmyats->_priority = 29; g_vars->scene08_vmyats->_callback2 = sceneHandler08_pushCallback; - g_fp->_aniMan = g_fp->_currentScene->getStaticANIObject1ById(ANI_MAN, -1); + g_nmi->_aniMan = g_nmi->_currentScene->getStaticANIObject1ById(ANI_MAN, -1); g_vars->scene08_manOffsetY = 15; - g_fp->_currentScene->_y = 0; + g_nmi->_currentScene->_y = 0; - g_fp->_updateScreenCallback = sceneHandler08_updateScreenCallback; + g_nmi->_updateScreenCallback = sceneHandler08_updateScreenCallback; } void sceneHandler08_airMoves() { - if (g_fp->_aniMan->isIdle() && !(g_fp->_aniMan->_flags & 0x100)) { - int x = g_fp->_aniMan->_ox; - int y = g_fp->_aniMan->_oy; + if (g_nmi->_aniMan->isIdle() && !(g_nmi->_aniMan->_flags & 0x100)) { + int x = g_nmi->_aniMan->_ox; + int y = g_nmi->_aniMan->_oy; Common::Point point; - if (703 - g_fp->_aniMan->getSomeXY().y - y < 150) { - if (g_fp->_aniMan->_statics) { - if (g_fp->_aniMan->_statics->_staticsId == ST_MAN8_FLYDOWN) { + if (703 - g_nmi->_aniMan->getSomeXY().y - y < 150) { + if (g_nmi->_aniMan->_statics) { + if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN8_FLYDOWN) { y -= 25; - g_fp->_aniMan->setOXY(x, y); + g_nmi->_aniMan->setOXY(x, y); } } - g_fp->_aniMan->changeStatics2(ST_MAN8_STAND); - g_fp->_aniMan->setOXY(380, y); - g_fp->_aniMan->startAnim(MV_MAN8_JUMP, 0, -1); + g_nmi->_aniMan->changeStatics2(ST_MAN8_STAND); + g_nmi->_aniMan->setOXY(380, y); + g_nmi->_aniMan->startAnim(MV_MAN8_JUMP, 0, -1); - } else if (g_fp->_aniMan->_statics) { - if (g_fp->_aniMan->_statics->_staticsId == ST_MAN8_FLYUP) { - g_fp->_aniMan->startAnim(MV_MAN8_DRYGUP, 0, -1); + } else if (g_nmi->_aniMan->_statics) { + if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN8_FLYUP) { + g_nmi->_aniMan->startAnim(MV_MAN8_DRYGUP, 0, -1); - } else if (g_fp->_aniMan->_statics->_staticsId == ST_MAN8_FLYDOWN) { - g_fp->_aniMan->startAnim(MV_MAN8_DRYGDOWN, 0, -1); + } else if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN8_FLYDOWN) { + g_nmi->_aniMan->startAnim(MV_MAN8_DRYGDOWN, 0, -1); } } } @@ -283,14 +283,14 @@ void sceneHandler08_finishArcade() { } void sceneHandler08_jumpOff(ExCommand *cmd) { - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); mq->addExCommandToEnd(cmd->createClone()); mq->setFlags(mq->getFlags() | 1); - g_fp->_globalMessageQueueList->addMessageQueue(mq); + g_nmi->_globalMessageQueueList->addMessageQueue(mq); - g_fp->_aniMan->startAnim(MV_MAN8_JUMPOFF, mq->_id, -1); + g_nmi->_aniMan->startAnim(MV_MAN8_JUMPOFF, mq->_id, -1); sceneHandler08_finishArcade(); } @@ -301,7 +301,7 @@ void sceneHandler08_standUp() { } void sceneHandler08_jumpLogic(ExCommand *cmd) { - if (g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC8_LADDERD) { + if (g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC8_LADDERD) { sceneHandler08_jumpOff(cmd); cmd->_messageKind = 0; @@ -311,32 +311,32 @@ void sceneHandler08_jumpLogic(ExCommand *cmd) { } void sceneHandler08_badLuck() { - g_fp->_currentScene->getPictureObjectById(PIC_SC8_LADDER, 0)->_flags &= 0xFFFB; + g_nmi->_currentScene->getPictureObjectById(PIC_SC8_LADDER, 0)->_flags &= 0xFFFB; - g_fp->_aniMan->changeStatics2(ST_MAN8_HANDSUP); - g_fp->_aniMan->setOXY(376, 280); - g_fp->_aniMan->_priority = 10; + g_nmi->_aniMan->changeStatics2(ST_MAN8_HANDSUP); + g_nmi->_aniMan->setOXY(376, 280); + g_nmi->_aniMan->_priority = 10; - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); - ExCommand *ex = new ExCommand(g_fp->_aniMan->_id, 1, MV_MAN8_BADLUCK, 0, 0, 0, 1, 0, 0, 0); + ExCommand *ex = new ExCommand(g_nmi->_aniMan->_id, 1, MV_MAN8_BADLUCK, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags |= 2; - ex->_param = g_fp->_aniMan->_odelay; + ex->_param = g_nmi->_aniMan->_odelay; mq->addExCommandToEnd(ex); mq->setFlags(mq->getFlags() | 1); mq->chain(0); - g_fp->setObjectState(sO_StairsUp_8, g_fp->getObjectEnumState(sO_StairsUp_8, sO_NotBroken)); + g_nmi->setObjectState(sO_StairsUp_8, g_nmi->getObjectEnumState(sO_StairsUp_8, sO_NotBroken)); g_vars->scene08_inAir = false; } void sceneHandler08_sitDown() { - g_fp->_aniMan->setOXY(380, g_fp->_aniMan->_oy); + g_nmi->_aniMan->setOXY(380, g_nmi->_aniMan->_oy); - g_fp->_aniMan->changeStatics2(ST_MAN8_FLYDOWN); - g_fp->_aniMan->startAnim(MV_MAN8_SITDOWN, 0, -1); + g_nmi->_aniMan->changeStatics2(ST_MAN8_FLYDOWN); + g_nmi->_aniMan->startAnim(MV_MAN8_SITDOWN, 0, -1); g_vars->scene08_vmyats->changeStatics2(ST_VMT_MIN); g_vars->scene08_vmyats->hide(); @@ -347,18 +347,18 @@ void sceneHandler08_sitDown() { void sceneHandler08_calcFlight() { Common::Point point; - int y = g_vars->scene08_manOffsetY + g_fp->_aniMan->_oy; + int y = g_vars->scene08_manOffsetY + g_nmi->_aniMan->_oy; - g_fp->_aniMan->setOXY(g_fp->_aniMan->_ox, y); + g_nmi->_aniMan->setOXY(g_nmi->_aniMan->_ox, y); g_vars->scene08_manOffsetY += 2; if (g_vars->scene08_manOffsetY < g_vars->scene08_stairsOffset) g_vars->scene08_manOffsetY = g_vars->scene08_stairsOffset; - y = y + g_fp->_aniMan->getSomeXY().y; + y = y + g_nmi->_aniMan->getSomeXY().y; - if (g_fp->_aniMan->_statics && g_fp->_aniMan->_statics->_staticsId == ST_MAN8_FLYDOWN) + if (g_nmi->_aniMan->_statics && g_nmi->_aniMan->_statics->_staticsId == ST_MAN8_FLYDOWN) y -= 25; if (y <= g_vars->scene08_vmyats->_oy) { @@ -370,23 +370,23 @@ void sceneHandler08_calcFlight() { g_vars->scene08_vmyats->startAnim(MV_VMT_DEF, 0, -1); } - if (g_fp->_aniMan->_oy <= 280 && g_vars->scene08_stairsVisible - && g_fp->_aniMan->_statics && g_fp->_aniMan->_statics->_staticsId == ST_MAN8_HANDSUP) { + if (g_nmi->_aniMan->_oy <= 280 && g_vars->scene08_stairsVisible + && g_nmi->_aniMan->_statics && g_nmi->_aniMan->_statics->_staticsId == ST_MAN8_HANDSUP) { sceneHandler08_badLuck(); - } else if (g_fp->_aniMan->_oy > 236 || g_vars->scene08_stairsVisible - || !g_fp->_aniMan->_statics || g_fp->_aniMan->_statics->_staticsId != ST_MAN8_HANDSUP) { - if (g_fp->_aniMan->_movement || g_fp->_aniMan->_oy < 660 + } else if (g_nmi->_aniMan->_oy > 236 || g_vars->scene08_stairsVisible + || !g_nmi->_aniMan->_statics || g_nmi->_aniMan->_statics->_staticsId != ST_MAN8_HANDSUP) { + if (g_nmi->_aniMan->_movement || g_nmi->_aniMan->_oy < 660 || (g_vars->scene08_vmyats->_movement && g_vars->scene08_vmyats->_movement->_currDynamicPhaseIndex > 0) || abs(g_vars->scene08_manOffsetY) > 2) { - if (g_vars->scene08_manOffsetY >= 0 && !g_fp->_aniMan->_movement) { - if (g_fp->_aniMan->_statics->_staticsId == ST_MAN8_HANDSUP) - g_fp->_aniMan->startAnim(MV_MAN8_HANDSDOWN, 0, -1); + if (g_vars->scene08_manOffsetY >= 0 && !g_nmi->_aniMan->_movement) { + if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN8_HANDSUP) + g_nmi->_aniMan->startAnim(MV_MAN8_HANDSDOWN, 0, -1); else - g_fp->_aniMan->changeStatics2(ST_MAN8_FLYDOWN); + g_nmi->_aniMan->changeStatics2(ST_MAN8_FLYDOWN); } - if (g_fp->_aniMan->_oy < 500 && !g_fp->_aniMan->_movement && g_fp->_aniMan->_statics->_staticsId == ST_MAN8_FLYUP && g_vars->scene08_manOffsetY < 0) - g_fp->_aniMan->startAnim(MV_MAN8_HANDSUP, 0, -1); + if (g_nmi->_aniMan->_oy < 500 && !g_nmi->_aniMan->_movement && g_nmi->_aniMan->_statics->_staticsId == ST_MAN8_FLYUP && g_vars->scene08_manOffsetY < 0) + g_nmi->_aniMan->startAnim(MV_MAN8_HANDSUP, 0, -1); } else { sceneHandler08_sitDown(); } @@ -397,22 +397,22 @@ void sceneHandler08_calcFlight() { void sceneHandler08_checkEndArcade() { if (g_vars->scene08_flyingUp) { - int x = g_fp->_aniMan->_ox; - int y = g_vars->scene08_manOffsetY + g_fp->_aniMan->_oy; + int x = g_nmi->_aniMan->_ox; + int y = g_vars->scene08_manOffsetY + g_nmi->_aniMan->_oy; - if (!((g_vars->scene08_manOffsetY + g_fp->_aniMan->_oy) % 3)) + if (!((g_vars->scene08_manOffsetY + g_nmi->_aniMan->_oy) % 3)) g_vars->scene08_manOffsetY--; - g_fp->_aniMan->setOXY(x, y); + g_nmi->_aniMan->setOXY(x, y); if (y < 80) { sceneHandler08_finishArcade(); - if (g_fp->isDemo() && g_fp->getLanguage() == Common::DE_DEU) { + if (g_nmi->isDemo() && g_nmi->getLanguage() == Common::DE_DEU) { ModalDemo *demo = new ModalDemo; demo->launch(); - g_fp->_modalObject = demo; + g_nmi->_modalObject = demo; return; } @@ -487,52 +487,52 @@ int sceneHandler08(ExCommand *cmd) { { int res = 0; - if (g_fp->_aniMan2) { + if (g_nmi->_aniMan2) { if (g_vars->scene08_inArcade) { - int scHeight = g_fp->_sceneRect.bottom - g_fp->_sceneRect.top; + int scHeight = g_nmi->_sceneRect.bottom - g_nmi->_sceneRect.top; - if (g_fp->_aniMan2->_oy < g_fp->_sceneRect.top + 200) { - g_fp->_sceneRect.top = g_fp->_aniMan2->_oy - 200; + if (g_nmi->_aniMan2->_oy < g_nmi->_sceneRect.top + 200) { + g_nmi->_sceneRect.top = g_nmi->_aniMan2->_oy - 200; - if (g_fp->_sceneRect.top < 0) - g_fp->_sceneRect.top = 0; + if (g_nmi->_sceneRect.top < 0) + g_nmi->_sceneRect.top = 0; - g_fp->_sceneRect.bottom = scHeight + g_fp->_sceneRect.top; + g_nmi->_sceneRect.bottom = scHeight + g_nmi->_sceneRect.top; } - if (g_fp->_aniMan2->_oy > g_fp->_sceneRect.bottom - 350) { - g_fp->_sceneRect.bottom = g_fp->_aniMan2->_oy + 350; - g_fp->_sceneRect.top = g_fp->_aniMan2->_oy + 350 - scHeight; + if (g_nmi->_aniMan2->_oy > g_nmi->_sceneRect.bottom - 350) { + g_nmi->_sceneRect.bottom = g_nmi->_aniMan2->_oy + 350; + g_nmi->_sceneRect.top = g_nmi->_aniMan2->_oy + 350 - scHeight; } } else { - if (g_fp->_aniMan2->_ox < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.left - 300; + if (g_nmi->_aniMan2->_ox < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.left - 300; - if (g_fp->_aniMan2->_ox > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.right + 300; + if (g_nmi->_aniMan2->_ox > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.right + 300; res = 1; } } - g_fp->_floaters->update(); + g_nmi->_floaters->update(); if (g_vars->scene08_inArcade) { if (g_vars->scene08_inAir) sceneHandler08_calcFlight(); } else { - Movement *mov = g_fp->_aniMan->_movement; + Movement *mov = g_nmi->_aniMan->_movement; if (mov) { if (mov->_id == MV_MAN_TOLADDERD && mov->_currDynamicPhaseIndex == 8) - g_fp->_aniMan->_priority = 2; + g_nmi->_aniMan->_priority = 2; if (mov && mov->_id == MV_MAN_FROMLADDERUP && mov->_currDynamicPhaseIndex == 13) - g_fp->_aniMan->_priority = 20; + g_nmi->_aniMan->_priority = 20; } - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); } if (g_vars->scene08_flyingUp) @@ -542,7 +542,7 @@ int sceneHandler08(ExCommand *cmd) { g_vars->scene08_snoringCountdown--; if (!g_vars->scene08_snoringCountdown) { - g_fp->playSound(SND_8_014, 0); + g_nmi->playSound(SND_8_014, 0); g_vars->scene08_snoringCountdown = 71; } diff --git a/engines/ngi/fullpipe/scene09.cpp b/engines/ngi/fullpipe/scene09.cpp index d69c014ef38..358d97e3f5b 100644 --- a/engines/ngi/fullpipe/scene09.cpp +++ b/engines/ngi/fullpipe/scene09.cpp @@ -45,12 +45,12 @@ struct Hanger { void scene09_setupGrit(Scene *sc) { if (g_vars->scene09_grit->_statics->_staticsId == ST_GRT9_GRIT) { if (!getGameLoaderInventory()->getCountItemsWithId(ANI_INV_COIN)) { - if (g_fp->getObjectState(sO_CoinSlot_1) == g_fp->getObjectEnumState(sO_CoinSlot_1, sO_Empty) + if (g_nmi->getObjectState(sO_CoinSlot_1) == g_nmi->getObjectEnumState(sO_CoinSlot_1, sO_Empty) && (g_vars->swallowedEgg1->_value.intValue == ANI_INV_EGGBOOT || g_vars->swallowedEgg2->_value.intValue == ANI_INV_EGGBOOT || g_vars->swallowedEgg3->_value.intValue == ANI_INV_EGGBOOT)) { - Scene *oldsc = g_fp->_currentScene; - g_fp->_currentScene = sc; + Scene *oldsc = g_nmi->_currentScene; + g_nmi->_currentScene = sc; g_vars->scene09_grit->changeStatics2(ST_GRT9_NORM); - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; } } } @@ -121,9 +121,9 @@ void scene09_initScene(Scene *sc) { delete newball1; - g_fp->setObjectState(sO_RightStairs_9, g_fp->getObjectEnumState(sO_RightStairs_9, sO_IsClosed)); + g_nmi->setObjectState(sO_RightStairs_9, g_nmi->getObjectEnumState(sO_RightStairs_9, sO_IsClosed)); - GameVar *eggvar = g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName(sO_GulpedEggs); + GameVar *eggvar = g_nmi->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName(sO_GulpedEggs); g_vars->swallowedEgg1 = eggvar->getSubVarByName(sO_Egg1); g_vars->swallowedEgg2 = eggvar->getSubVarByName(sO_Egg2); @@ -131,38 +131,38 @@ void scene09_initScene(Scene *sc) { scene09_setupGrit(sc); - g_fp->initArcadeKeys("SC_9"); + g_nmi->initArcadeKeys("SC_9"); - g_fp->lift_setButton(sO_Level1, ST_LBN_1N); + g_nmi->lift_setButton(sO_Level1, ST_LBN_1N); - g_fp->setArcadeOverlay(PIC_CSR_ARCADE4); + g_nmi->setArcadeOverlay(PIC_CSR_ARCADE4); } int sceneHandler09_updateScreenCallback() { - int res = g_fp->drawArcadeOverlay(g_fp->_objectIdAtCursor == ANI_VISUNCHIK || g_vars->scene09_interactingHanger >= 0); + int res = g_nmi->drawArcadeOverlay(g_nmi->_objectIdAtCursor == ANI_VISUNCHIK || g_vars->scene09_interactingHanger >= 0); if (!res) - g_fp->_updateScreenCallback = 0; + g_nmi->_updateScreenCallback = 0; return res; } int scene09_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); if (g_vars->scene09_interactingHanger < 0) { - if (g_fp->_objectIdAtCursor == ANI_VISUNCHIK) { - if (g_fp->_cursorId == PIC_CSR_ITN) - g_fp->_updateScreenCallback = sceneHandler09_updateScreenCallback; + if (g_nmi->_objectIdAtCursor == ANI_VISUNCHIK) { + if (g_nmi->_cursorId == PIC_CSR_ITN) + g_nmi->_updateScreenCallback = sceneHandler09_updateScreenCallback; } else { - if (g_fp->_objectIdAtCursor == PIC_SC9_LADDER_R && g_fp->_cursorId == PIC_CSR_ITN) - g_fp->_cursorId = (g_vars->scene09_dudeY < 350) ? PIC_CSR_GOD : PIC_CSR_GOU; + if (g_nmi->_objectIdAtCursor == PIC_SC9_LADDER_R && g_nmi->_cursorId == PIC_CSR_ITN) + g_nmi->_cursorId = (g_vars->scene09_dudeY < 350) ? PIC_CSR_GOD : PIC_CSR_GOU; } } else { - g_fp->_cursorId = PIC_CSR_ITN; + g_nmi->_cursorId = PIC_CSR_ITN; } - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler09_winArcade() { @@ -170,17 +170,17 @@ void sceneHandler09_winArcade() { g_vars->scene09_gulper->changeStatics2(ST_GLT_SIT); g_vars->scene09_gulper->startAnim(MV_GLT_FLYAWAY, 0, -1); - g_fp->setObjectState(sO_Jug, g_fp->getObjectEnumState(sO_Jug, sO_Unblocked)); - g_fp->setObjectState(sO_RightStairs_9, g_fp->getObjectEnumState(sO_RightStairs_9, sO_IsOpened)); + g_nmi->setObjectState(sO_Jug, g_nmi->getObjectEnumState(sO_Jug, sO_Unblocked)); + g_nmi->setObjectState(sO_RightStairs_9, g_nmi->getObjectEnumState(sO_RightStairs_9, sO_IsOpened)); g_vars->scene09_gulperIsPresent = false; } } void sceneHandler09_startAuntie() { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_TTA9_GOL), 0, 1); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_TTA9_GOL), 0, 1); - mq->getExCommandByIndex(0)->_x = g_fp->_sceneRect.right + 30; + mq->getExCommandByIndex(0)->_x = g_nmi->_sceneRect.right + 30; mq->chain(0); } @@ -199,30 +199,30 @@ void sceneHandler09_spitterClick() { g_vars->scene09_spitter->setPicAniInfo(info); - if (ABS(x - g_fp->_aniMan->_ox) > 1 || ABS(y - g_fp->_aniMan->_oy) > 1) { - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, x, y, 1, ST_MAN_UP); + if (ABS(x - g_nmi->_aniMan->_ox) > 1 || ABS(y - g_nmi->_aniMan->_oy) > 1) { + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, x, y, 1, ST_MAN_UP); if (mq) { ExCommand *ex = new ExCommand(0, 17, MSG_SC9_PLVCLICK, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags = 2; mq->addExCommandToEnd(ex); - postExCommand(g_fp->_aniMan->_id, 2, x, y, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, x, y, 0, -1); } } else { - if (!g_fp->_aniMan->_movement) { + if (!g_nmi->_aniMan->_movement) { g_vars->scene09_spitter->changeStatics2(ST_PLV_SIT); g_vars->scene09_spitter->hide(); - g_fp->_aniMan->startAnim(MV_MAN9_SHOOT, 0, -1); + g_nmi->_aniMan->startAnim(MV_MAN9_SHOOT, 0, -1); - g_fp->stopAllSoundInstances(SND_9_006); + g_nmi->stopAllSoundInstances(SND_9_006); } - g_fp->_aniMan2 = 0; + g_nmi->_aniMan2 = 0; - if (g_fp->_sceneRect.left < 800) - g_fp->_currentScene->_x = 800 - g_fp->_sceneRect.left; + if (g_nmi->_sceneRect.left < 800) + g_nmi->_currentScene->_x = 800 - g_nmi->_sceneRect.left; } } } @@ -249,8 +249,8 @@ void sceneHandler09_eatBall() { mq->addExCommandToEnd(ex); } - g_fp->setObjectState(sO_Jug, g_fp->getObjectEnumState(sO_Jug, sO_Unblocked)); - g_fp->setObjectState(sO_RightStairs_9, g_fp->getObjectEnumState(sO_RightStairs_9, sO_IsOpened)); + g_nmi->setObjectState(sO_Jug, g_nmi->getObjectEnumState(sO_Jug, sO_Unblocked)); + g_nmi->setObjectState(sO_RightStairs_9, g_nmi->getObjectEnumState(sO_RightStairs_9, sO_IsOpened)); g_vars->scene09_gulperIsPresent = false; } @@ -267,7 +267,7 @@ void sceneHandler09_showBall() { g_vars->scene09_flyingBalls.insert_at(0, ani); - ani->show1(g_fp->_aniMan->_ox + 94, g_fp->_aniMan->_oy - 162, MV_BALL9_EXPLODE, 0); + ani->show1(g_nmi->_aniMan->_ox + 94, g_nmi->_aniMan->_oy - 162, MV_BALL9_EXPLODE, 0); } } @@ -323,7 +323,7 @@ void sceneHandler09_collideBall(uint num) { if (g_vars->scene09_gulper) { g_vars->scene09_gulper->changeStatics2(ST_GLT_SIT); - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC9_EATBALL), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC9_EATBALL), 0, 0); mq->setFlags(mq->getFlags() | 1); @@ -340,7 +340,7 @@ void sceneHandler09_ballExplode(uint num) { g_vars->scene09_flyingBalls.remove_at(num); - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC9_BALLEXPLODE), 0, 1); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC9_BALLEXPLODE), 0, 1); mq->setParamInt(-1, ball->_odelay); @@ -399,7 +399,7 @@ void sceneHandler09_hangerStartCycle() { if (ani->_movement) { ani->startAnim(MV_VSN_CYCLE2, 0, -1); g_vars->scene09_hangers[g_vars->scene09_interactingHanger]->field_8 = 0; - g_vars->scene09_hangers[g_vars->scene09_interactingHanger]->phase = g_vars->scene09_intHangerPhase + (g_fp->_mouseScreenPos.y - g_vars->scene09_clickY) / 2; + g_vars->scene09_hangers[g_vars->scene09_interactingHanger]->phase = g_vars->scene09_intHangerPhase + (g_nmi->_mouseScreenPos.y - g_vars->scene09_clickY) / 2; if (g_vars->scene09_intHangerMaxPhase != -1000 && g_vars->scene09_hangers[g_vars->scene09_interactingHanger]->phase != g_vars->scene09_intHangerMaxPhase) { ExCommand *ex = new ExCommand(0, 35, SND_9_019, 0, 0, 0, 1, 0, 0, 0); @@ -463,8 +463,8 @@ int sceneHandler09(ExCommand *cmd) { break; case 367: - if (g_fp->isDemo() && g_fp->getLanguage() == Common::RU_RUS) { - g_fp->_needRestart = true; + if (g_nmi->isDemo() && g_nmi->getLanguage() == Common::RU_RUS) { + g_nmi->_needRestart = true; return 0; } break; @@ -473,23 +473,23 @@ int sceneHandler09(ExCommand *cmd) { { int res = 0; - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - g_vars->scene09_dudeY = g_fp->_aniMan2->_oy; + g_vars->scene09_dudeY = g_nmi->_aniMan2->_oy; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - g_fp->_sceneRect.left - 300; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - g_nmi->_sceneRect.left - 300; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x - g_fp->_sceneRect.right + 300; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x - g_nmi->_sceneRect.right + 300; res = 1; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } else { - if (g_fp->_aniMan->_movement && g_fp->_aniMan->_movement->_id != MV_MAN9_SHOOT) - g_fp->_aniMan2 = g_fp->_aniMan; + if (g_nmi->_aniMan->_movement && g_nmi->_aniMan->_movement->_id != MV_MAN9_SHOOT) + g_nmi->_aniMan2 = g_nmi->_aniMan; } sceneHandler09_cycleHangers(); @@ -499,9 +499,9 @@ int sceneHandler09(ExCommand *cmd) { if (g_vars->scene09_interactingHanger >= 0) sceneHandler09_hangerStartCycle(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); return res; } @@ -521,7 +521,7 @@ int sceneHandler09(ExCommand *cmd) { case 29: { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(g_nmi->_sceneRect.left + cmd->_x, g_nmi->_sceneRect.top + cmd->_y); if (ani) { if (ani->_id == ANI_PLEVATEL) { @@ -565,18 +565,18 @@ int sceneHandler09(ExCommand *cmd) { } } - if (g_vars->scene09_dudeIsOnLadder && g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC9_LADDER_R - && !cmd->_param && !g_fp->_aniMan->_movement) { - handleObjectInteraction(g_fp->_aniMan, g_fp->_currentScene->getPictureObjectById(PIC_SC9_LADDER_R, 0), 0); + if (g_vars->scene09_dudeIsOnLadder && g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC9_LADDER_R + && !cmd->_param && !g_nmi->_aniMan->_movement) { + handleObjectInteraction(g_nmi->_aniMan, g_nmi->_currentScene->getPictureObjectById(PIC_SC9_LADDER_R, 0), 0); } - if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_param)) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + if (!ani || !canInteractAny(g_nmi->_aniMan, ani, cmd->_param)) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); - if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_param)) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) - g_fp->processArcade(cmd); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, cmd->_param)) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) + g_nmi->processArcade(cmd); } } } diff --git a/engines/ngi/fullpipe/scene10.cpp b/engines/ngi/fullpipe/scene10.cpp index d4eb84dcfe3..cb086281f9c 100644 --- a/engines/ngi/fullpipe/scene10.cpp +++ b/engines/ngi/fullpipe/scene10.cpp @@ -42,10 +42,10 @@ void scene10_initScene(Scene *sc) { g_vars->scene10_inflater = sc->getStaticANIObject1ById(ANI_NADUVATEL, -1); g_vars->scene10_ladder = sc->getPictureObjectById(PIC_SC10_LADDER, 0); - g_fp->lift_setButton(sO_Level1, ST_LBN_1N); - g_fp->lift_init(sc, QU_SC10_ENTERLIFT, QU_SC10_EXITLIFT); + g_nmi->lift_setButton(sO_Level1, ST_LBN_1N); + g_nmi->lift_init(sc, QU_SC10_ENTERLIFT, QU_SC10_EXITLIFT); - if (g_fp->getObjectState(sO_Inflater) == g_fp->getObjectEnumState(sO_Inflater, sO_WithGum)) { + if (g_nmi->getObjectState(sO_Inflater) == g_nmi->getObjectEnumState(sO_Inflater, sO_WithGum)) { g_vars->scene10_hasGum = 1; } else { g_vars->scene10_hasGum = 0; @@ -60,18 +60,18 @@ bool sceneHandler10_inflaterIsBlind() { } int scene10_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_objectIdAtCursor == ANI_PACHKA || g_fp->_objectIdAtCursor == ANI_GUM) { - if (g_fp->_cursorId == PIC_CSR_ITN) { + if (g_nmi->_objectIdAtCursor == ANI_PACHKA || g_nmi->_objectIdAtCursor == ANI_GUM) { + if (g_nmi->_cursorId == PIC_CSR_ITN) { if (g_vars->scene10_hasGum) - g_fp->_cursorId = (sceneHandler10_inflaterIsBlind() != 0) ? PIC_CSR_ITN_GREEN : PIC_CSR_ITN_RED; + g_nmi->_cursorId = (sceneHandler10_inflaterIsBlind() != 0) ? PIC_CSR_ITN_GREEN : PIC_CSR_ITN_RED; else - g_fp->_cursorId = PIC_CSR_DEFAULT; + g_nmi->_cursorId = PIC_CSR_DEFAULT; } } - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler10_clickGum() { @@ -81,14 +81,14 @@ void sceneHandler10_clickGum() { int x = g_vars->scene10_gum->_ox - 139; int y = g_vars->scene10_gum->_oy - 48; - if (abs(x - g_fp->_aniMan->_ox) > 1 || abs(y - g_fp->_aniMan->_oy) > 1) { - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, x, y, 1, ST_MAN_RIGHT); + if (abs(x - g_nmi->_aniMan->_ox) > 1 || abs(y - g_nmi->_aniMan->_oy) > 1) { + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, x, y, 1, ST_MAN_RIGHT); if (mq) { ExCommand *ex = new ExCommand(0, 17, MSG_SC10_CLICKGUM, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags = 2; mq->addExCommandToEnd(ex); - postExCommand(g_fp->_aniMan->_id, 2, x, y, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, x, y, 0, -1); } } else { g_vars->scene10_hasGum = 0; @@ -99,7 +99,7 @@ void sceneHandler10_clickGum() { } else { g_vars->scene10_inflater->changeStatics2(ST_NDV_SIT); - if (g_fp->getObjectState(sO_Inflater) == g_fp->getObjectEnumState(sO_Inflater, sO_WithGum)) + if (g_nmi->getObjectState(sO_Inflater) == g_nmi->getObjectEnumState(sO_Inflater, sO_WithGum)) g_vars->scene10_inflater->startAnim(MV_NDV_DENIES, 0, -1); else g_vars->scene10_inflater->startAnim(MV_NDV_DENY_NOGUM, 0, -1); @@ -128,19 +128,19 @@ int sceneHandler10(ExCommand *ex) { switch(ex->_messageNum) { case MSG_LIFT_CLOSEDOOR: - g_fp->lift_closedoorSeq(); + g_nmi->lift_closedoorSeq(); break; case MSG_LIFT_EXITLIFT: - g_fp->lift_exitSeq(ex); + g_nmi->lift_exitSeq(ex); break; case MSG_LIFT_STARTEXITQUEUE: - g_fp->lift_startExitQueue(); + g_nmi->lift_startExitQueue(); break; case MSG_LIFT_CLICKBUTTON: - g_fp->lift_clickButton(); + g_nmi->lift_clickButton(); break; case MSG_SC10_LADDERTOBACK: @@ -152,7 +152,7 @@ int sceneHandler10(ExCommand *ex) { break; case MSG_LIFT_GO: - g_fp->lift_goAnimation(); + g_nmi->lift_goAnimation(); break; case MSG_SC10_CLICKGUM: @@ -170,22 +170,22 @@ int sceneHandler10(ExCommand *ex) { break; case 64: - g_fp->lift_hoverButton(ex); + g_nmi->lift_hoverButton(ex); break; case 29: { - if (g_fp->_currentScene->getPictureObjectIdAtPos(ex->_sceneClickX, ex->_sceneClickY) == PIC_SC10_LADDER) { - handleObjectInteraction(g_fp->_aniMan, g_fp->_currentScene->getPictureObjectById(PIC_SC10_DTRUBA, 0), ex->_param); + if (g_nmi->_currentScene->getPictureObjectIdAtPos(ex->_sceneClickX, ex->_sceneClickY) == PIC_SC10_LADDER) { + handleObjectInteraction(g_nmi->_aniMan, g_nmi->_currentScene->getPictureObjectById(PIC_SC10_DTRUBA, 0), ex->_param); ex->_messageKind = 0; return 0; } - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(ex->_sceneClickX, ex->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(ex->_sceneClickX, ex->_sceneClickY); if (ani && ani->_id == ANI_LIFTBUTTON) { - g_fp->lift_animateButton(ani); + g_nmi->lift_animateButton(ani); ex->_messageKind = 0; return 0; @@ -197,18 +197,18 @@ int sceneHandler10(ExCommand *ex) { { int res = 0; - if (g_fp->_aniMan2) { - if (g_fp->_aniMan2->_ox < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.left - 300; + if (g_nmi->_aniMan2) { + if (g_nmi->_aniMan2->_ox < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.left - 300; - if (g_fp->_aniMan2->_ox > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.right + 300; + if (g_nmi->_aniMan2->_ox > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.right + 300; res = 1; } - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); return res; } diff --git a/engines/ngi/fullpipe/scene11.cpp b/engines/ngi/fullpipe/scene11.cpp index bb59ec029b7..a2a44d551e4 100644 --- a/engines/ngi/fullpipe/scene11.cpp +++ b/engines/ngi/fullpipe/scene11.cpp @@ -82,15 +82,15 @@ void scene11_dudeSwingCallback(int *arg) { if ((oldarg >= 45) != (*arg >= 45) && g_vars->scene11_arcadeIsOn) { if (oldarg >= *arg) - g_fp->playSound(SND_11_031, 0); + g_nmi->playSound(SND_11_031, 0); else - g_fp->playSound(SND_11_020, 0); + g_nmi->playSound(SND_11_020, 0); } } void scene11_setupMusic() { - if (g_fp->getObjectState(sO_DudeHasJumped) == g_fp->getObjectEnumState(sO_DudeHasJumped, sO_Yes)) - g_fp->playTrack(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_11"), "MUSIC2", 1); + if (g_nmi->getObjectState(sO_DudeHasJumped) == g_nmi->getObjectEnumState(sO_DudeHasJumped, sO_Yes)) + g_nmi->playTrack(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_11"), "MUSIC2", 1); } void scene11_initScene(Scene *sc) { @@ -120,14 +120,14 @@ void scene11_initScene(Scene *sc) { g_vars->scene11_swingDirection = 0; g_vars->scene11_swingDirectionPrevTurn = 0; - Scene *oldsc = g_fp->_currentScene; + Scene *oldsc = g_nmi->_currentScene; - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; - int swingie = g_fp->getObjectState(sO_Swingie); + int swingie = g_nmi->getObjectState(sO_Swingie); - if (swingie == g_fp->getObjectEnumState(sO_Swingie, sO_IsSwinging) - || swingie == g_fp->getObjectEnumState(sO_Swingie, sO_IsSwingingWithBoot)) { + if (swingie == g_nmi->getObjectEnumState(sO_Swingie, sO_IsSwinging) + || swingie == g_nmi->getObjectEnumState(sO_Swingie, sO_IsSwingingWithBoot)) { g_vars->scene11_swingIsSwinging = true; g_vars->scene11_swingieStands = false; @@ -136,8 +136,8 @@ void scene11_initScene(Scene *sc) { getCurrSceneSc2MotionController()->enableLinks(sO_CloseThing3, 0); getCurrSceneSc2MotionController()->replaceNodeX(805, 905); getSc2MctlCompoundBySceneId(sc->_sceneId)->replaceNodeX(303, 353); - } else if (swingie == g_fp->getObjectEnumState(sO_Swingie, sO_IsStandingInBoots) - || swingie == g_fp->getObjectEnumState(sO_Swingie, sO_IsStandingInCorner)) { + } else if (swingie == g_nmi->getObjectEnumState(sO_Swingie, sO_IsStandingInBoots) + || swingie == g_nmi->getObjectEnumState(sO_Swingie, sO_IsStandingInCorner)) { g_vars->scene11_swingIsSwinging = false; g_vars->scene11_swingieStands = true; @@ -151,7 +151,7 @@ void scene11_initScene(Scene *sc) { g_vars->scene11_swingIsSwinging = false; g_vars->scene11_swingieStands = false; - if (swingie == g_fp->getObjectEnumState(sO_Swingie, sO_IsSitting)) { + if (swingie == g_nmi->getObjectEnumState(sO_Swingie, sO_IsSitting)) { g_vars->scene11_swingie->_movement = 0; g_vars->scene11_swingie->_statics = g_vars->scene11_swingie->getStaticsById(ST_SWR_SIT); g_vars->scene11_swingie->setOXY(144, 389); @@ -178,10 +178,10 @@ void scene11_initScene(Scene *sc) { g_vars->scene11_dudeOnSwing->_flags |= 4; } - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; - g_fp->initArcadeKeys("SC_11"); - g_fp->setArcadeOverlay(PIC_CSR_ARCADE5); + g_nmi->initArcadeKeys("SC_11"); + g_nmi->setArcadeOverlay(PIC_CSR_ARCADE5); } void sceneHandler11_restartMan() { @@ -194,13 +194,13 @@ void sceneHandler11_restartMan() { } void sceneHandler11_hitMan() { - if (g_fp->_aniMan->_ox > 345 && g_fp->_aniMan->_ox < 355) { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT); + if (g_nmi->_aniMan->_ox > 345 && g_nmi->_aniMan->_ox < 355) { + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT); - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC11_MANFALL), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC11_MANFALL), 0, 0); mq->setFlags(mq->getFlags() | 1); - if (!mq->chain(g_fp->_aniMan)) + if (!mq->chain(g_nmi->_aniMan)) delete mq; getCurrSceneSc2MotionController()->replaceNodeX(353, 303); @@ -208,22 +208,22 @@ void sceneHandler11_hitMan() { } int scene11_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); if (g_vars->scene11_arcadeIsOn) { - if (g_fp->_cursorId != PIC_CSR_DEFAULT_INV && g_fp->_cursorId != PIC_CSR_ITN_INV) - g_fp->_cursorId = -1; - } else if (g_vars->scene11_swingie == g_fp->_objectAtCursor && g_fp->_inventory->getSelectedItemId() == ANI_INV_BOOT) - g_fp->_cursorId = PIC_CSR_ITN_INV; + if (g_nmi->_cursorId != PIC_CSR_DEFAULT_INV && g_nmi->_cursorId != PIC_CSR_ITN_INV) + g_nmi->_cursorId = -1; + } else if (g_vars->scene11_swingie == g_nmi->_objectAtCursor && g_nmi->_inventory->getSelectedItemId() == ANI_INV_BOOT) + g_nmi->_cursorId = PIC_CSR_ITN_INV; - return g_fp->_cursorId; + return g_nmi->_cursorId; } int sceneHandler11_updateScreenCallback() { - int res = g_fp->drawArcadeOverlay(g_vars->scene11_arcadeIsOn); + int res = g_nmi->drawArcadeOverlay(g_vars->scene11_arcadeIsOn); if (!res) - g_fp->_updateScreenCallback = 0; + g_nmi->_updateScreenCallback = 0; return res; } @@ -236,13 +236,13 @@ void sceneHandler11_manToSwing() { getCurrSceneSc2MotionController()->deactivate(); getGameLoaderInteractionController()->disableFlag24(); - g_fp->_aniMan2->hide(); + g_nmi->_aniMan2->hide(); g_vars->scene11_swingCounter = 0; g_vars->scene11_swingInertia = 0.01; //1.9849218; g_vars->scene11_dudeOnSwing->_flags &= 0xFFFB; - g_vars->scene11_dudeOnSwing = g_fp->_currentScene->getStaticANIObject1ById(ANI_MAN11, -1); + g_vars->scene11_dudeOnSwing = g_nmi->_currentScene->getStaticANIObject1ById(ANI_MAN11, -1); g_vars->scene11_dudeOnSwing->_statics = g_vars->scene11_dudeOnSwing->getStaticsById(ST_MAN11_EMPTY); g_vars->scene11_dudeOnSwing->_movement = 0; g_vars->scene11_dudeOnSwing->show1(690, 215, MV_MAN11_SWING_0, 0); @@ -250,12 +250,12 @@ void sceneHandler11_manToSwing() { g_vars->scene11_dudeOnSwing->startAnim(MV_MAN11_SWING_0, 0, -1); g_vars->scene11_dudeOnSwing->_movement->setDynamicPhaseIndex(45); - g_vars->scene11_aniHandler.attachObject(g_fp->_aniMan->_id); + g_vars->scene11_aniHandler.attachObject(g_nmi->_aniMan->_id); - g_fp->_currentScene->_x = 1400 - g_fp->_sceneRect.right; + g_nmi->_currentScene->_x = 1400 - g_nmi->_sceneRect.right; g_vars->scene11_scrollIsEnabled = true; - g_fp->_updateScreenCallback = sceneHandler11_updateScreenCallback; + g_nmi->_updateScreenCallback = sceneHandler11_updateScreenCallback; } void sceneHandler11_putABoot() { @@ -268,9 +268,9 @@ void sceneHandler11_putABoot() { } void sceneHandler11_putBoot() { - if (abs(353 - g_fp->_aniMan->_ox) > 1 || abs(498 - g_fp->_aniMan->_oy) > 1 - || g_fp->_aniMan->_movement || g_fp->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) { - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, 353, 498, 1, ST_MAN_RIGHT); + if (abs(353 - g_nmi->_aniMan->_ox) > 1 || abs(498 - g_nmi->_aniMan->_oy) > 1 + || g_nmi->_aniMan->_movement || g_nmi->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) { + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, 353, 498, 1, ST_MAN_RIGHT); if (mq) { ExCommand *ex = new ExCommand(0, 17, MSG_SC11_PUTBOOT, 0, 0, 0, 1, 0, 0, 0); @@ -278,7 +278,7 @@ void sceneHandler11_putBoot() { mq->addExCommandToEnd(ex); - postExCommand(g_fp->_aniMan->_id, 2, 353, 498, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, 353, 498, 0, -1); } } else { sceneHandler11_putABoot(); @@ -286,7 +286,7 @@ void sceneHandler11_putBoot() { } void sceneHandler11_showSwing() { - g_vars->scene11_dudeOnSwing = g_fp->_currentScene->getStaticANIObject1ById(ANI_KACHELI, -1); + g_vars->scene11_dudeOnSwing = g_nmi->_currentScene->getStaticANIObject1ById(ANI_KACHELI, -1); g_vars->scene11_dudeOnSwing->_statics = g_vars->scene11_dudeOnSwing->getStaticsById(ST_KCH_0); g_vars->scene11_dudeOnSwing->_movement = 0; g_vars->scene11_dudeOnSwing->show1(691, 371, MV_KCH_START, 0); @@ -306,30 +306,30 @@ void sceneHandler11_jumpFromSwing() { g_vars->scene11_swingSpeed = 0.0; g_vars->scene11_swingAngle = 0.0; - g_vars->scene11_dudeOnSwing = g_fp->_currentScene->getStaticANIObject1ById(ANI_MAN11, -1); + g_vars->scene11_dudeOnSwing = g_nmi->_currentScene->getStaticANIObject1ById(ANI_MAN11, -1); g_vars->scene11_dudeOnSwing->_flags &= 0xFFFB; - g_vars->scene11_dudeOnSwing = g_fp->_currentScene->getStaticANIObject1ById(ANI_KACHELI, -1); + g_vars->scene11_dudeOnSwing = g_nmi->_currentScene->getStaticANIObject1ById(ANI_KACHELI, -1); g_vars->scene11_dudeOnSwing->changeStatics2(ST_KCH_STATIC); g_vars->scene11_dudeOnSwing->setOXY(691, 371); g_vars->scene11_dudeOnSwing->_priority = 20; g_vars->scene11_dudeOnSwing->_flags |= 4; - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); - ExCommand *ex = new ExCommand(g_fp->_aniMan->_id, 34, 256, 0, 0, 0, 1, 0, 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); + ExCommand *ex = new ExCommand(g_nmi->_aniMan->_id, 34, 256, 0, 0, 0, 1, 0, 0, 0); ex->_z = 256; ex->_messageNum = 0; ex->_excFlags |= 3; mq->addExCommandToEnd(ex); mq->setFlags(mq->getFlags() | 1); - g_fp->_globalMessageQueueList->addMessageQueue(mq); + g_nmi->_globalMessageQueueList->addMessageQueue(mq); - g_fp->_aniMan->_flags |= 0x104; - g_fp->_aniMan->changeStatics2(ST_MAN11_SWING); - g_fp->_aniMan->setOXY(685, 373); - g_fp->_aniMan->startAnim(MV_MAN11_JUMPFROMSWING, mq->_id, -1); + g_nmi->_aniMan->_flags |= 0x104; + g_nmi->_aniMan->changeStatics2(ST_MAN11_SWING); + g_nmi->_aniMan->setOXY(685, 373); + g_nmi->_aniMan->startAnim(MV_MAN11_JUMPFROMSWING, mq->_id, -1); - g_fp->_aniMan2 = g_fp->_aniMan; + g_nmi->_aniMan2 = g_nmi->_aniMan; } void sceneHandler11_swing0() { @@ -384,7 +384,7 @@ void sceneHandler11_emptySwing() { g_vars->scene11_dudeOnSwing->stopAnim_maybe(); g_vars->scene11_dudeOnSwing->hide(); - g_vars->scene11_dudeOnSwing = g_fp->_currentScene->getStaticANIObject1ById(ANI_KACHELI, -1); + g_vars->scene11_dudeOnSwing = g_nmi->_currentScene->getStaticANIObject1ById(ANI_KACHELI, -1); g_vars->scene11_dudeOnSwing->show1(-1, -1, -1, 0); g_vars->scene11_dudeOnSwing->changeStatics2(ST_KCH_EMPTY); g_vars->scene11_dudeOnSwing->startAnim(MV_KCH_MOVE2, 0, -1); @@ -398,12 +398,12 @@ void sceneHandler11_jumpHitAndWin() { sceneHandler11_emptySwing(); - g_fp->_aniMan->show1(690 - (int)(sin(g_vars->scene11_swingAngle) * -267.0), 215 - (int)(cos(g_vars->scene11_swingAngle) * -267.0), + g_nmi->_aniMan->show1(690 - (int)(sin(g_vars->scene11_swingAngle) * -267.0), 215 - (int)(cos(g_vars->scene11_swingAngle) * -267.0), MV_MAN11_JUMPHIT, 0); - g_fp->_aniMan->_priority = 10; + g_nmi->_aniMan->_priority = 10; mkQueue.field_1C = 10; - mkQueue.ani = g_fp->_aniMan; + mkQueue.ani = g_nmi->_aniMan; mkQueue.staticsId2 = ST_MAN_1PIX; mkQueue.x1 = 1400; mkQueue.y1 = 0; @@ -427,14 +427,14 @@ void sceneHandler11_jumpHitAndWin() { mq->addExCommandToEnd(ex); - if (!mq->chain(g_fp->_aniMan)) + if (!mq->chain(g_nmi->_aniMan)) delete mq; - if (g_fp->getObjectState(sO_Swingie) == g_fp->getObjectEnumState(sO_Swingie, sO_IsStandingInCorner)) - g_fp->setObjectState(sO_Swingie, g_fp->getObjectEnumState(sO_Swingie, sO_IsSitting)); + if (g_nmi->getObjectState(sO_Swingie) == g_nmi->getObjectEnumState(sO_Swingie, sO_IsStandingInCorner)) + g_nmi->setObjectState(sO_Swingie, g_nmi->getObjectEnumState(sO_Swingie, sO_IsSitting)); - g_fp->setObjectState(sO_DudeHasJumped, g_fp->getObjectEnumState(sO_DudeHasJumped, sO_Yes)); + g_nmi->setObjectState(sO_DudeHasJumped, g_nmi->getObjectEnumState(sO_DudeHasJumped, sO_Yes)); } } @@ -443,12 +443,12 @@ void sceneHandler11_jumpOver(double angle) { sceneHandler11_emptySwing(); - g_fp->_aniMan->show1(690 - (int)(sin(g_vars->scene11_swingAngle) * -267.0), 215 - (int)(cos(g_vars->scene11_swingAngle) * -267.0), + g_nmi->_aniMan->show1(690 - (int)(sin(g_vars->scene11_swingAngle) * -267.0), 215 - (int)(cos(g_vars->scene11_swingAngle) * -267.0), MV_MAN11_JUMPOVER, 0); - g_fp->_aniMan->_priority = 0; + g_nmi->_aniMan->_priority = 0; mkQueue.staticsId2 = ST_MAN_1PIX; - mkQueue.ani = g_fp->_aniMan; + mkQueue.ani = g_nmi->_aniMan; mkQueue.x1 = 1163; mkQueue.y1 = 837 - (int)(angle * 153.0); mkQueue.field_1C = 0; @@ -466,7 +466,7 @@ void sceneHandler11_jumpOver(double angle) { mq->addExCommandToEnd(ex); - if (!mq->chain(g_fp->_aniMan)) + if (!mq->chain(g_nmi->_aniMan)) delete mq; } } @@ -483,12 +483,12 @@ void sceneHandler11_jumpHit(double angle) { angle = 0.0; } - g_fp->_aniMan->show1(690 - (int)(sin(g_vars->scene11_swingAngle) * -267.0), 215 - (int)(cos(g_vars->scene11_swingAngle) * -267.0), + g_nmi->_aniMan->show1(690 - (int)(sin(g_vars->scene11_swingAngle) * -267.0), 215 - (int)(cos(g_vars->scene11_swingAngle) * -267.0), MV_MAN11_JUMPOVER, 0); - g_fp->_aniMan->_priority = 0; + g_nmi->_aniMan->_priority = 0; mkQueue.staticsId2 = ST_MAN_1PIX; - mkQueue.ani = g_fp->_aniMan; + mkQueue.ani = g_nmi->_aniMan; mkQueue.x1 = 1017 - (int)(angle * -214.0); mkQueue.y1 = 700; mkQueue.field_1C = 0; @@ -506,7 +506,7 @@ void sceneHandler11_jumpHit(double angle) { mq->addExCommandToEnd(ex); - if (!mq->chain(g_fp->_aniMan)) + if (!mq->chain(g_nmi->_aniMan)) delete mq; } @@ -544,14 +544,14 @@ void sceneHandler11_setSwingDirection() { } void sceneHandler11_swingieSit() { - if (g_fp->getObjectState(sO_Swingie) == g_fp->getObjectEnumState(sO_Swingie, sO_IsStandingInBoots)) { + if (g_nmi->getObjectState(sO_Swingie) == g_nmi->getObjectEnumState(sO_Swingie, sO_IsStandingInBoots)) { g_vars->scene11_swingIsSwinging = false; g_vars->scene11_swingieStands = false; g_vars->scene11_swingie->changeStatics2(ST_SWR_SIT); g_vars->scene11_swingie->setOXY(144, 389); - g_fp->setObjectState(sO_Swingie, g_fp->getObjectEnumState(sO_Swingie, sO_IsSitting)); + g_nmi->setObjectState(sO_Swingie, g_nmi->getObjectEnumState(sO_Swingie, sO_IsSitting)); getCurrSceneSc2MotionController()->enableLinks(sO_CloseThing1, 0); getCurrSceneSc2MotionController()->enableLinks(sO_CloseThing2, 0); @@ -560,7 +560,7 @@ void sceneHandler11_swingieSit() { } void sceneHandler11_swingieJumpDown() { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SWR_JUMPDOWN), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SWR_JUMPDOWN), 0, 0); mq->setFlags(mq->getFlags() | 1); @@ -569,7 +569,7 @@ void sceneHandler11_swingieJumpDown() { g_vars->scene11_swingIsSwinging = false; g_vars->scene11_swingieStands = true; - g_vars->scene11_swingieScreenEdge = g_fp->_sceneRect.left; + g_vars->scene11_swingieScreenEdge = g_nmi->_sceneRect.left; getCurrSceneSc2MotionController()->enableLinks(sO_CloseThing1, 0); getCurrSceneSc2MotionController()->enableLinks(sO_CloseThing2, 1); @@ -584,7 +584,7 @@ void sceneHandler11_winArcade() { sceneHandler11_emptySwing(); - g_fp->_gameLoader->preloadScene(SC_11, TrubaRight); + g_nmi->_gameLoader->preloadScene(SC_11, TrubaRight); } } @@ -598,14 +598,14 @@ int sceneHandler11(ExCommand *cmd) { break; case MSG_SC11_SITSWINGER: - if (g_fp->getObjectState(sO_Swingie) == g_fp->getObjectEnumState(sO_Swingie, sO_IsStandingInBoots) - || g_fp->getObjectState(sO_Swingie) == g_fp->getObjectEnumState(sO_Swingie, sO_IsStandingInCorner)) { - g_fp->setObjectState(sO_Swingie, g_fp->getObjectEnumState(sO_Swingie, sO_IsSitting)); + if (g_nmi->getObjectState(sO_Swingie) == g_nmi->getObjectEnumState(sO_Swingie, sO_IsStandingInBoots) + || g_nmi->getObjectState(sO_Swingie) == g_nmi->getObjectEnumState(sO_Swingie, sO_IsStandingInCorner)) { + g_nmi->setObjectState(sO_Swingie, g_nmi->getObjectEnumState(sO_Swingie, sO_IsSitting)); } break; case MSG_SC11_MANCRY: - g_fp->playSound(g_vars->scene11_crySound, 0); + g_nmi->playSound(g_vars->scene11_crySound, 0); g_vars->scene11_crySound = 0; break; @@ -640,46 +640,46 @@ int sceneHandler11(ExCommand *cmd) { { int res = 0; - if (g_fp->_aniMan2) { + if (g_nmi->_aniMan2) { int x, y; - x = g_fp->_aniMan2->_ox; - y = g_fp->_aniMan2->_oy; + x = g_nmi->_aniMan2->_ox; + y = g_nmi->_aniMan2->_oy; g_vars->scene11_dudeX = x; g_vars->scene11_dudeY = y; if (g_vars->scene11_scrollIsEnabled) { - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x - g_fp->_sceneRect.right + 200; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x - g_nmi->_sceneRect.right + 200; } else if (g_vars->scene11_scrollIsMaximized) { - g_fp->_currentScene->_x = g_fp->_sceneWidth - x; + g_nmi->_currentScene->_x = g_nmi->_sceneWidth - x; if (g_vars->scene11_dudeX < 910) g_vars->scene11_scrollIsMaximized = false; } else { - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - g_fp->_sceneRect.left - 300; - else if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x - g_fp->_sceneRect.right + 300; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - g_nmi->_sceneRect.left - 300; + else if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x - g_nmi->_sceneRect.right + 300; - if (y < g_fp->_sceneRect.top + 200) - g_fp->_currentScene->_y = y - g_fp->_sceneRect.top - 300; - if (y > g_fp->_sceneRect.bottom - 300) - g_fp->_currentScene->_y = y - g_fp->_sceneRect.bottom + 300; + if (y < g_nmi->_sceneRect.top + 200) + g_nmi->_currentScene->_y = y - g_nmi->_sceneRect.top - 300; + if (y > g_nmi->_sceneRect.bottom - 300) + g_nmi->_currentScene->_y = y - g_nmi->_sceneRect.bottom + 300; if (x >= 940) g_vars->scene11_scrollIsMaximized = true; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } res = 1; } if (g_vars->scene11_swingieStands) { - if (g_fp->_sceneRect.left >= 534 && g_vars->scene11_swingieScreenEdge < 534) + if (g_nmi->_sceneRect.left >= 534 && g_vars->scene11_swingieScreenEdge < 534) sceneHandler11_swingieSit(); - g_vars->scene11_swingieScreenEdge = g_fp->_sceneRect.left; + g_vars->scene11_swingieScreenEdge = g_nmi->_sceneRect.left; } if (g_vars->scene11_arcadeIsOn) { @@ -726,15 +726,15 @@ int sceneHandler11(ExCommand *cmd) { } } - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); return res; } break; case 29: if (g_vars->scene11_swingIsSwinging) { - if (g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y) == g_vars->scene11_swingie + if (g_nmi->_currentScene->getStaticANIObjectAtPos(g_nmi->_sceneRect.left + cmd->_x, g_nmi->_sceneRect.top + cmd->_y) == g_vars->scene11_swingie && cmd->_param == ANI_INV_BOOT) sceneHandler11_putBoot(); } else { @@ -748,16 +748,16 @@ int sceneHandler11(ExCommand *cmd) { if (!g_vars->scene11_arcadeIsOn) { LABEL_69: - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_param)) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + if (!ani || !canInteractAny(g_nmi->_aniMan, ani, cmd->_param)) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); - if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_param)) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) - || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) { - g_fp->processArcade(cmd); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, cmd->_param)) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) + || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) { + g_nmi->processArcade(cmd); break; } diff --git a/engines/ngi/fullpipe/scene12.cpp b/engines/ngi/fullpipe/scene12.cpp index 7d64581315f..8cd3b2d9250 100644 --- a/engines/ngi/fullpipe/scene12.cpp +++ b/engines/ngi/fullpipe/scene12.cpp @@ -36,35 +36,35 @@ namespace NGI { void scene12_initScene(Scene *sc) { - GameVar *var = g_fp->getGameLoaderGameVar()->getSubVarByName("SC_12"); - g_fp->_floaters->init(var); + GameVar *var = g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_12"); + g_nmi->_floaters->init(var); - g_vars->scene12_fly = g_fp->getObjectState(sO_Fly_12); + g_vars->scene12_fly = g_nmi->getObjectState(sO_Fly_12); if (g_vars->scene12_fly) - g_vars->scene12_flyCountdown = g_fp->_rnd.getRandomNumber(600) + 600; + g_vars->scene12_flyCountdown = g_nmi->_rnd.getRandomNumber(600) + 600; - g_fp->setObjectState(sO_Fly_12, g_fp->_rnd.getRandomNumber(1)); + g_nmi->setObjectState(sO_Fly_12, g_nmi->_rnd.getRandomNumber(1)); } void sceneHandler12_updateFloaters() { - g_fp->_floaters->genFlies(g_fp->_currentScene, 397, -50, 100, 6); + g_nmi->_floaters->genFlies(g_nmi->_currentScene, 397, -50, 100, 6); - g_fp->_floaters->_array2[0].countdown = g_fp->_rnd.getRandomNumber(6) + 4; - g_fp->_floaters->_array2[0].val6 = 397; - g_fp->_floaters->_array2[0].val7 = -50; + g_nmi->_floaters->_array2[0].countdown = g_nmi->_rnd.getRandomNumber(6) + 4; + g_nmi->_floaters->_array2[0].val6 = 397; + g_nmi->_floaters->_array2[0].val7 = -50; } int sceneHandler12(ExCommand *cmd) { int res = 0; if (cmd->_messageKind == 17 && cmd->_messageNum == 33) { - if (g_fp->_aniMan2) { - if (g_fp->_aniMan2->_ox < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.left - 300; + if (g_nmi->_aniMan2) { + if (g_nmi->_aniMan2->_ox < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.left - 300; - if (g_fp->_aniMan2->_ox > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = g_fp->_aniMan2->_ox - g_fp->_sceneRect.right + 300; + if (g_nmi->_aniMan2->_ox > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = g_nmi->_aniMan2->_ox - g_nmi->_sceneRect.right + 300; res = 1; } @@ -74,9 +74,9 @@ int sceneHandler12(ExCommand *cmd) { if (!g_vars->scene12_flyCountdown) sceneHandler12_updateFloaters(); - g_fp->_floaters->update(); + g_nmi->_floaters->update(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); } return res; diff --git a/engines/ngi/fullpipe/scene13.cpp b/engines/ngi/fullpipe/scene13.cpp index 41240c81571..73bb38084a1 100644 --- a/engines/ngi/fullpipe/scene13.cpp +++ b/engines/ngi/fullpipe/scene13.cpp @@ -49,16 +49,16 @@ void scene13_initScene(Scene *sc) { g_vars->scene13_guardDirection = true; MovGraphLink *lnk = getSc2MctlCompoundBySceneId(sc->_sceneId)->getLinkByName(sO_Bridge); - Scene *oldsc = g_fp->_currentScene; + Scene *oldsc = g_nmi->_currentScene; - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; - if (g_fp->getObjectState(sO_Bridge) == g_fp->getObjectEnumState(sO_Bridge, sO_Convoluted)) { + if (g_nmi->getObjectState(sO_Bridge) == g_nmi->getObjectEnumState(sO_Bridge, sO_Convoluted)) { g_vars->scene13_bridge->changeStatics2(ST_BDG_CLOSED); lnk->_flags |= 0x20000000u; - g_fp->playSound(SND_13_018, 1); + g_nmi->playSound(SND_13_018, 1); g_vars->scene13_whirlgig->_callback2 = 0; // Really NULL } else { @@ -73,14 +73,14 @@ void scene13_initScene(Scene *sc) { if (g_vars->scene13_whirlgig->_movement) g_vars->scene13_whirlgig->_movement->setDynamicPhaseIndex(30); - g_fp->playSound(SND_13_037, 1); + g_nmi->playSound(SND_13_037, 1); } g_vars->scene13_bridge->_flags &= 0xFFFD; - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; - g_fp->initArcadeKeys("SC_13"); + g_nmi->initArcadeKeys("SC_13"); } void sceneHandler13_openBridge() { @@ -164,18 +164,18 @@ void sceneHandler13_closeFast() { void sceneHandler13_stopWhirlgig() { g_vars->scene13_whirlgig->_callback2 = scene13_whirlgigCallback; - g_fp->stopAllSoundInstances(SND_13_018); - g_fp->playSound(SND_13_033, 0); - g_fp->playSound(SND_13_037, 1); + g_nmi->stopAllSoundInstances(SND_13_018); + g_nmi->playSound(SND_13_033, 0); + g_nmi->playSound(SND_13_037, 1); } void sceneHandler13_startWhirlgig() { g_vars->scene13_whirlgig->_callback2 = 0; // Really NULL - g_fp->playSound(SND_13_018, 1); - g_fp->playSound(SND_13_034, 0); + g_nmi->playSound(SND_13_018, 1); + g_nmi->playSound(SND_13_034, 0); - g_fp->stopAllSoundInstances(SND_13_037); + g_nmi->stopAllSoundInstances(SND_13_037); } void sceneHandler13_openFast() { @@ -185,14 +185,14 @@ void sceneHandler13_openFast() { } void sceneHandler13_uneatGum() { - BehaviorMove *beh = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_CHEW); + BehaviorMove *beh = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_CHEW); if (beh) { beh->_percent = 0; beh->_delay = 36; } - beh = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_PLUU); + beh = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_PLUU); if (beh) { beh->_percent = 0; beh->_delay = 36; @@ -200,7 +200,7 @@ void sceneHandler13_uneatGum() { } void sceneHandler13_eatGum() { - BehaviorMove *beh = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_CHEW); + BehaviorMove *beh = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_CHEW); if (beh) { beh->_percent = 10922; @@ -212,7 +212,7 @@ void sceneHandler13_updateBridge() { MovGraphLink *lnk = getCurrSceneSc2MotionController()->getLinkByName(sO_Bridge); if (lnk) { - if (g_fp->getObjectState(sO_Bridge) == g_fp->getObjectEnumState(sO_Bridge, sO_Convoluted)) + if (g_nmi->getObjectState(sO_Bridge) == g_nmi->getObjectEnumState(sO_Bridge, sO_Convoluted)) lnk->_flags |= 0x20000000; else lnk->_flags &= 0xDFFFFFFF; @@ -236,11 +236,11 @@ void sceneHandler13_setBehFlag(BehaviorMove *beh, bool flag) { } void sceneHandler13_walkForward(bool flag) { - BehaviorMove *beh = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_RTOL); + BehaviorMove *beh = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT, QU_STR_RTOL); sceneHandler13_setBehFlag(beh, flag); - beh = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_LEFT, QU_STR_TURNR); + beh = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_LEFT, QU_STR_TURNR); sceneHandler13_setBehFlag(beh, flag); @@ -248,11 +248,11 @@ void sceneHandler13_walkForward(bool flag) { } void sceneHandler13_walkBackward(bool flag) { - BehaviorMove *beh = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT|0x4000, QU_STR_LTOR); + BehaviorMove *beh = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_RIGHT|0x4000, QU_STR_LTOR); sceneHandler13_setBehFlag(beh, flag); - beh = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_LEFT|0x4000, QU_STR_TURNR_L); + beh = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene13_guard, ST_STR_LEFT|0x4000, QU_STR_TURNR_L); sceneHandler13_setBehFlag(beh, flag); @@ -318,17 +318,17 @@ int sceneHandler13(ExCommand *cmd) { case 29: { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_param)) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + if (!ani || !canInteractAny(g_nmi->_aniMan, ani, cmd->_param)) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); - if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_param)) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 - && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) - || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) { - g_fp->processArcade(cmd); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, cmd->_param)) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 + && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) + || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) { + g_nmi->processArcade(cmd); } } } @@ -340,19 +340,19 @@ int sceneHandler13(ExCommand *cmd) { int res = 0; int x; - if (g_fp->_aniMan2) { - x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + x = g_nmi->_aniMan2->_ox; g_vars->scene13_dudeX = x; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - g_fp->_sceneRect.left - 300; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - g_nmi->_sceneRect.left - 300; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x - g_fp->_sceneRect.right + 300; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x - g_nmi->_sceneRect.right + 300; res = 1; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } else { x = g_vars->scene13_dudeX; } @@ -364,8 +364,8 @@ int sceneHandler13(ExCommand *cmd) { g_vars->scene13_guardDirection = false; - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); return res; } @@ -376,8 +376,8 @@ int sceneHandler13(ExCommand *cmd) { g_vars->scene13_guardDirection = true; } - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); return res; } diff --git a/engines/ngi/fullpipe/scene14.cpp b/engines/ngi/fullpipe/scene14.cpp index 03ce6bf878b..a510547a532 100644 --- a/engines/ngi/fullpipe/scene14.cpp +++ b/engines/ngi/fullpipe/scene14.cpp @@ -50,7 +50,7 @@ void scene14_initScene(Scene *sc) { g_vars->scene14_flyingBall = 0; g_vars->scene14_balls.clear(); - if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_In_14)) { + if (g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_In_14)) { g_vars->scene14_grandmaIsHere = true; StaticANIObject *ball = sc->getStaticANIObject1ById(ANI_BALL14, -1); @@ -71,44 +71,44 @@ void scene14_initScene(Scene *sc) { g_vars->scene14_grandma->hide(); } - g_fp->lift_setButton(sO_Level4, ST_LBN_4N); - g_fp->lift_init(sc, QU_SC14_ENTERLIFT, QU_SC14_EXITLIFT); + g_nmi->lift_setButton(sO_Level4, ST_LBN_4N); + g_nmi->lift_init(sc, QU_SC14_ENTERLIFT, QU_SC14_EXITLIFT); - g_fp->initArcadeKeys("SC_14"); - g_fp->setArcadeOverlay(PIC_CSR_ARCADE6); + g_nmi->initArcadeKeys("SC_14"); + g_nmi->setArcadeOverlay(PIC_CSR_ARCADE6); } void scene14_setupMusic() { if (!g_vars->scene14_grandmaIsHere) - g_fp->playTrack(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_14"), "MUSIC2", 0); + g_nmi->playTrack(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_14"), "MUSIC2", 0); } int scene14_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); if (g_vars->scene14_arcadeIsOn) { if (g_vars->scene14_dudeIsKicking) { - g_fp->_cursorId = PIC_CSR_ARCADE2_D; + g_nmi->_cursorId = PIC_CSR_ARCADE2_D; } else { - if (g_fp->_aniMan != g_fp->_objectAtCursor || g_fp->_aniMan->_movement || g_fp->_cursorId != PIC_CSR_DEFAULT) { - if (g_fp->_cursorId != PIC_CSR_DEFAULT_INV && g_fp->_cursorId != PIC_CSR_ITN_INV) { - g_fp->_cursorId = PIC_CSR_DEFAULT; + if (g_nmi->_aniMan != g_nmi->_objectAtCursor || g_nmi->_aniMan->_movement || g_nmi->_cursorId != PIC_CSR_DEFAULT) { + if (g_nmi->_cursorId != PIC_CSR_DEFAULT_INV && g_nmi->_cursorId != PIC_CSR_ITN_INV) { + g_nmi->_cursorId = PIC_CSR_DEFAULT; } } else { - g_fp->_cursorId = PIC_CSR_ITN; + g_nmi->_cursorId = PIC_CSR_ITN; } } } - return g_fp->_cursorId; + return g_nmi->_cursorId; } int sceneHandler14_updateScreenCallback() { int res; - res = g_fp->drawArcadeOverlay(g_vars->scene14_arcadeIsOn); + res = g_nmi->drawArcadeOverlay(g_vars->scene14_arcadeIsOn); if (!res) - g_fp->_updateScreenCallback = 0; + g_nmi->_updateScreenCallback = 0; return res; } @@ -132,7 +132,7 @@ void sceneHandler14_showBallGrandmaDive() { g_vars->scene14_flyingBall = 0; } - g_fp->_aniMan2 = g_fp->_aniMan; + g_nmi->_aniMan2 = g_nmi->_aniMan; } void sceneHandler14_showBallGrandmaHit() { @@ -140,7 +140,7 @@ void sceneHandler14_showBallGrandmaHit() { g_vars->scene14_flyingBall->show1(g_vars->scene14_grandmaX + 190, g_vars->scene14_grandmaY + 56, MV_BAL14_TOGMA, 0); g_vars->scene14_flyingBall->_priority = 27; - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); ExCommand *ex = new ExCommand(ANI_BALL14, 1, MV_BAL14_TOGMA, 0, 0, 0, 1, 0, 0, 0); ex->_param = g_vars->scene14_flyingBall->_odelay; @@ -162,12 +162,12 @@ void sceneHandler14_showBallGrandmaHit() { void sceneHandler14_exitScene() { g_vars->scene14_arcadeIsOn = false; - if (g_fp->_aniMan->_movement) - g_fp->_aniMan->_movement->gotoLastFrame(); + if (g_nmi->_aniMan->_movement) + g_nmi->_aniMan->_movement->gotoLastFrame(); - g_fp->_aniMan->stopAnim_maybe(); + g_nmi->_aniMan->stopAnim_maybe(); - handleObjectInteraction(g_fp->_aniMan, g_fp->_currentScene->getPictureObjectById(PIC_SC14_RTRUBA, 0), 0); + handleObjectInteraction(g_nmi->_aniMan, g_nmi->_currentScene->getPictureObjectById(PIC_SC14_RTRUBA, 0), 0); g_vars->scene14_grandma->changeStatics2(ST_GMA_SIT); @@ -182,7 +182,7 @@ void sceneHandler14_showBallMan() { g_vars->scene14_flyingBall->show1(g_vars->scene14_dudeX - 166, g_vars->scene14_dudeY + 40, MV_BAL14_TOGMA, 0); g_vars->scene14_flyingBall->_priority = 27; - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); ExCommand *ex = new ExCommand(ANI_BALL14, 1, MV_BAL14_TOGMA, 0, 0, 0, 1, 0, 0, 0); ex->_param = g_vars->scene14_flyingBall->_odelay; @@ -266,8 +266,8 @@ void sceneHandler14_showBallFly() { } void sceneHandler14_grandmaJump() { - BehaviorMove *beh1 = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene14_grandma, ST_GMA_SIT, QU_GMA_JUMPFW); - BehaviorMove *beh2 = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene14_grandma, ST_GMA_SIT, QU_GMA_JUMPBK); + BehaviorMove *beh1 = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene14_grandma, ST_GMA_SIT, QU_GMA_JUMPFW); + BehaviorMove *beh2 = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene14_grandma, ST_GMA_SIT, QU_GMA_JUMPBK); if (beh1) { if (beh2) { @@ -286,18 +286,18 @@ void sceneHandler14_endArcade() { getGameLoaderInteractionController()->enableFlag24(); getCurrSceneSc2MotionController()->activate(); - BehaviorMove *beh = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene14_grandma, ST_GMA_SIT, QU_GMA_BLINK); + BehaviorMove *beh = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene14_grandma, ST_GMA_SIT, QU_GMA_BLINK); if (beh) beh->_percent = 327; - beh = g_fp->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene14_grandma, ST_GMA_SIT, QU_GMA_THROW); + beh = g_nmi->_behaviorManager->getBehaviorMoveByMessageQueueDataId(g_vars->scene14_grandma, ST_GMA_SIT, QU_GMA_THROW); if (beh) beh->_percent = 0; g_vars->scene14_sceneDeltaX = 200; g_vars->scene14_sceneDeltaY = 200; - g_fp->_aniMan2 = g_fp->_aniMan; + g_nmi->_aniMan2 = g_nmi->_aniMan; g_vars->scene14_sceneDiffX = 300; g_vars->scene14_sceneDiffY = 300; @@ -306,7 +306,7 @@ void sceneHandler14_endArcade() { void sceneHandler14_winArcade() { if (g_vars->scene14_arcadeIsOn) { if (g_vars->scene14_dudeIsKicking) { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); g_vars->scene14_dudeIsKicking = false; } @@ -324,18 +324,18 @@ void sceneHandler14_winArcade() { g_vars->scene14_grandmaIsHere = false; - if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_In_14)) { - g_fp->setObjectState(sO_Grandma, g_fp->getObjectEnumState(sO_Grandma, sO_In_15)); + if (g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_In_14)) { + g_nmi->setObjectState(sO_Grandma, g_nmi->getObjectEnumState(sO_Grandma, sO_In_15)); g_vars->scene14_grandma->changeStatics2(ST_GMA_SIT); g_vars->scene14_grandma->_flags &= 0xFFFB; } - if (g_fp->_currentScene->_messageQueueId) { - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(g_fp->_currentScene->_messageQueueId); + if (g_nmi->_currentScene->_messageQueueId) { + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(g_nmi->_currentScene->_messageQueueId); if (mq) delete mq; - g_fp->_currentScene->_messageQueueId = 0; + g_nmi->_currentScene->_messageQueueId = 0; } } } @@ -359,16 +359,16 @@ void sceneHandler14_startArcade() { g_vars->scene14_arcadeIsOn = true; g_vars->scene14_dudeCanKick = true; - if (g_fp->_aniMan->_movement) { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); - g_fp->_aniMan->setOXY(1237, 451); - g_fp->_aniMan->_priority = 25; + if (g_nmi->_aniMan->_movement) { + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->setOXY(1237, 451); + g_nmi->_aniMan->_priority = 25; } getCurrSceneSc2MotionController()->deactivate(); getGameLoaderInteractionController()->disableFlag24(); - g_fp->_aniMan2 = 0; + g_nmi->_aniMan2 = 0; g_vars->scene14_sceneDeltaX = 50; g_vars->scene14_sceneDiffX = 100; g_vars->scene14_hitsLeft = 4; @@ -376,29 +376,29 @@ void sceneHandler14_startArcade() { chainQueue(QU_SC14_STARTARCADE, 0); - g_fp->_updateScreenCallback = sceneHandler14_updateScreenCallback; + g_nmi->_updateScreenCallback = sceneHandler14_updateScreenCallback; } void sceneHandler14_clearCallback() { - g_fp->_aniMan->_callback2 = 0; // Really NULL + g_nmi->_aniMan->_callback2 = 0; // Really NULL g_vars->scene14_dudeIsKicking = false; } void sceneHandler14_kickAnimation() { - if (g_fp->_aniMan->_movement) { + if (g_nmi->_aniMan->_movement) { sceneHandler14_clearCallback(); if (g_vars->scene14_flyingBall && g_vars->scene14_dudeX - g_vars->scene14_flyingBall->_ox < 180) { - g_fp->_aniMan->changeStatics2(g_fp->_aniMan->_movement->_staticsObj2->_staticsId); - g_fp->_aniMan->startAnim(MV_MAN14_KICK, 0, -1); + g_nmi->_aniMan->changeStatics2(g_nmi->_aniMan->_movement->_staticsObj2->_staticsId); + g_nmi->_aniMan->startAnim(MV_MAN14_KICK, 0, -1); g_vars->scene14_ballIsFlying = false; g_vars->scene14_flyingBall->stopAnim_maybe(); g_vars->scene14_flyingBall->hide(); } else { - g_fp->_aniMan->changeStatics2(g_fp->_aniMan->_movement->_staticsObj2->_staticsId); - g_fp->_aniMan->startAnim(MV_MAN14_KICKAIR, 0, -1); + g_nmi->_aniMan->changeStatics2(g_nmi->_aniMan->_movement->_staticsObj2->_staticsId); + g_nmi->_aniMan->startAnim(MV_MAN14_KICKAIR, 0, -1); } } } @@ -407,10 +407,10 @@ void sceneHandler14_declineCallback(int *arg) { Common::Point point; if (g_vars->scene14_dudeIsKicking) { - *arg = (int)(sqrt((double)(g_fp->_mouseVirtY - g_vars->scene14_mouseCursorPos.y) - * (g_fp->_mouseVirtY - g_vars->scene14_mouseCursorPos.y) - + (g_fp->_mouseVirtX - g_vars->scene14_mouseCursorPos.x) - * (g_fp->_mouseVirtX - g_vars->scene14_mouseCursorPos.x)) * 0.1); + *arg = (int)(sqrt((double)(g_nmi->_mouseVirtY - g_vars->scene14_mouseCursorPos.y) + * (g_nmi->_mouseVirtY - g_vars->scene14_mouseCursorPos.y) + + (g_nmi->_mouseVirtX - g_vars->scene14_mouseCursorPos.x) + * (g_nmi->_mouseVirtX - g_vars->scene14_mouseCursorPos.x)) * 0.1); if (*arg > 11) *arg = 11; @@ -420,12 +420,12 @@ void sceneHandler14_declineCallback(int *arg) { } void sceneHandler14_dudeDecline() { - g_vars->scene14_mouseCursorPos.x = g_fp->_mouseVirtX; - g_vars->scene14_mouseCursorPos.y = g_fp->_mouseVirtY; + g_vars->scene14_mouseCursorPos.x = g_nmi->_mouseVirtX; + g_vars->scene14_mouseCursorPos.y = g_nmi->_mouseVirtY; - g_fp->_aniMan->_callback2 = sceneHandler14_declineCallback; - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); - g_fp->_aniMan->startAnim(MV_MAN14_DECLINE, 0, -1); + g_nmi->_aniMan->_callback2 = sceneHandler14_declineCallback; + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->startAnim(MV_MAN14_DECLINE, 0, -1); g_vars->scene14_dudeIsKicking = true; } @@ -439,7 +439,7 @@ bool sceneHandler14_arcadeProcessClick(ExCommand *cmd) { if (g_vars->scene14_pink) { if (g_vars->scene14_pink->_flags & 4) { if (cmd->_sceneClickX < g_vars->scene14_pink->_ox + 40) { - handleObjectInteraction(g_fp->_aniMan, g_vars->scene14_pink, 0); + handleObjectInteraction(g_nmi->_aniMan, g_vars->scene14_pink, 0); cmd->_messageKind = 0; return true; } @@ -458,7 +458,7 @@ bool sceneHandler14_arcadeProcessClick(ExCommand *cmd) { if (cmd->_sceneClickX > 1237) return false; - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, 1237, 451, 1, 0); + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, 1237, 451, 1, 0); if (!mq) return false; @@ -469,7 +469,7 @@ bool sceneHandler14_arcadeProcessClick(ExCommand *cmd) { mq->addExCommandToEnd(ex); mq->setFlags(mq->getFlags() | 1); - postExCommand(g_fp->_aniMan->_id, 2, 1237, 451, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, 1237, 451, 0, -1); cmd->_messageKind = 0; @@ -498,7 +498,7 @@ void sceneHandler14_passToGrandma() { g_vars->scene14_flyingBall->stopAnim_maybe(); g_vars->scene14_flyingBall->_priority = 27; - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); ExCommand *ex = new ExCommand(ANI_BALL14, 1, MV_BAL14_FALL, 0, 0, 0, 1, 0, 0, 0); ex->_param = g_vars->scene14_flyingBall->_odelay; @@ -538,17 +538,17 @@ void sceneHandler14_grandmaJumpThrow() { mq->chain(0); g_vars->scene14_dude2X += 71; - g_fp->_currentScene->_x = 71; + g_nmi->_currentScene->_x = 71; - g_fp->_aniMan2 = g_fp->_aniMan; + g_nmi->_aniMan2 = g_nmi->_aniMan; } void sceneHandler14_dudeFall() { - if (!g_fp->_aniMan->_movement || g_fp->_aniMan->_movement->_id != MV_MAN14_FALL) { + if (!g_nmi->_aniMan->_movement || g_nmi->_aniMan->_movement->_id != MV_MAN14_FALL) { sceneHandler14_clearCallback(); - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); - g_fp->_aniMan->startAnim(MV_MAN14_FALL, 0, -1); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->startAnim(MV_MAN14_FALL, 0, -1); g_vars->scene14_flyingBall->stopAnim_maybe(); g_vars->scene14_flyingBall->hide(); @@ -558,13 +558,13 @@ void sceneHandler14_dudeFall() { } void sceneHandler14_grandmaStepForward() { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); - g_fp->_aniMan->startAnim(MV_MAN14_STEPFW, 0, -1); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->startAnim(MV_MAN14_STEPFW, 0, -1); g_vars->scene14_dude2X -= 71; - g_fp->_currentScene->_x = -71; - g_fp->_aniMan2 = g_vars->scene14_grandma; + g_nmi->_currentScene->_x = -71; + g_nmi->_aniMan2 = g_vars->scene14_grandma; } void sceneHandler14_arcadeLogic() { @@ -580,7 +580,7 @@ void sceneHandler14_arcadeLogic() { sceneHandler14_clearCallback(); g_vars->scene14_dudeCanKick = false; - g_fp->_aniMan2 = 0; + g_nmi->_aniMan2 = 0; chainQueue(QU_SC14_WINARCADE, 1); @@ -591,7 +591,7 @@ void sceneHandler14_arcadeLogic() { g_vars->scene14_grandma->changeStatics2(ST_GMA_SIT); if (g_vars->scene14_hitsLeft != 3 || g_vars->scene14_pink) { - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); ex = new ExCommand(ANI_GRANDMA, 1, MV_GMA_BACKOFF, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags |= 2; @@ -603,7 +603,7 @@ void sceneHandler14_arcadeLogic() { mq->chain(0); } else { - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); ex = new ExCommand(ANI_GRANDMA, 1, MV_GMA_BACKOFF2, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags |= 2; @@ -666,7 +666,7 @@ int sceneHandler14(ExCommand *cmd) { break; case MSG_LIFT_CLICKBUTTON: - g_fp->lift_clickButton(); + g_nmi->lift_clickButton(); break; case MSG_SC14_SHOWBALLGMAHIT: @@ -686,7 +686,7 @@ int sceneHandler14(ExCommand *cmd) { break; case MSG_LIFT_GO: - g_fp->lift_goAnimation(); + g_nmi->lift_goAnimation(); break; case MSG_SC14_GMAJUMP: @@ -694,20 +694,20 @@ int sceneHandler14(ExCommand *cmd) { break; case MSG_LIFT_CLOSEDOOR: - g_fp->lift_closedoorSeq(); + g_nmi->lift_closedoorSeq(); break; case MSG_LIFT_EXITLIFT: - g_fp->lift_exitSeq(cmd); + g_nmi->lift_exitSeq(cmd); break; case MSG_LIFT_STARTEXITQUEUE: - g_fp->lift_startExitQueue(); + g_nmi->lift_startExitQueue(); break; case MSG_SC14_RESTORESCROLL: - g_fp->_aniMan2 = g_fp->_aniMan; - g_fp->_scrollSpeed = 8; + g_nmi->_aniMan2 = g_nmi->_aniMan; + g_nmi->_scrollSpeed = 8; break; case MSG_CMN_WINARCADE: @@ -715,9 +715,9 @@ int sceneHandler14(ExCommand *cmd) { break; case MSG_SC14_SCROLLLEFT: - g_fp->_aniMan2 = 0; - g_fp->_currentScene->_x = -g_fp->_sceneRect.left; - g_fp->_scrollSpeed = 24; + g_nmi->_aniMan2 = 0; + g_nmi->_currentScene->_x = -g_nmi->_sceneRect.left; + g_nmi->_scrollSpeed = 24; break; case MSG_SC14_SHOWBALLLAST: @@ -735,7 +735,7 @@ int sceneHandler14(ExCommand *cmd) { break; case MSG_SC14_GMATOTRUBA: - g_fp->_currentScene->_x = -g_fp->_sceneRect.left; + g_nmi->_currentScene->_x = -g_nmi->_sceneRect.left; break; case MSG_SC14_STARTARCADE: @@ -749,22 +749,22 @@ int sceneHandler14(ExCommand *cmd) { break; case 64: - g_fp->lift_hoverButton(cmd); + g_nmi->lift_hoverButton(cmd); break; case 33: { - Movement *mov = g_fp->_aniMan->_movement; + Movement *mov = g_nmi->_aniMan->_movement; if (mov) { g_vars->scene14_dudeX = mov->_ox; g_vars->scene14_dudeY = mov->_oy; if (mov->_id == MV_MAN14_KICK) - g_vars->scene14_dudeX = mov->_ox + 2 * g_fp->_aniMan->_movement->_currDynamicPhaseIndex; + g_vars->scene14_dudeX = mov->_ox + 2 * g_nmi->_aniMan->_movement->_currDynamicPhaseIndex; } else { - g_vars->scene14_dudeX = g_fp->_aniMan->_ox; - g_vars->scene14_dudeY = g_fp->_aniMan->_oy; + g_vars->scene14_dudeX = g_nmi->_aniMan->_ox; + g_vars->scene14_dudeY = g_nmi->_aniMan->_oy; } mov = g_vars->scene14_grandma->_movement; @@ -776,26 +776,26 @@ int sceneHandler14(ExCommand *cmd) { g_vars->scene14_grandmaY = g_vars->scene14_grandma->_oy; } - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; g_vars->scene14_dude2X = x; - if (x < g_fp->_sceneRect.left + g_vars->scene14_sceneDeltaX) { - g_fp->_currentScene->_x = x - g_vars->scene14_sceneDiffX - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + g_vars->scene14_sceneDeltaX) { + g_nmi->_currentScene->_x = x - g_vars->scene14_sceneDiffX - g_nmi->_sceneRect.left; x = g_vars->scene14_dude2X; } - if (x > g_fp->_sceneRect.right - g_vars->scene14_sceneDeltaX) - g_fp->_currentScene->_x = x + g_vars->scene14_sceneDiffX - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - g_vars->scene14_sceneDeltaX) + g_nmi->_currentScene->_x = x + g_vars->scene14_sceneDiffX - g_nmi->_sceneRect.right; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } if (g_vars->scene14_ballIsFlying) sceneHandler14_animateBall(); - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); } break; @@ -812,28 +812,28 @@ int sceneHandler14(ExCommand *cmd) { case 29: if (g_vars->scene14_arcadeIsOn) { - if (g_vars->scene14_dudeCanKick && g_fp->_aniMan->isPixelHitAtPos(cmd->_sceneClickX, cmd->_sceneClickY) && !g_fp->_aniMan->_movement) { + if (g_vars->scene14_dudeCanKick && g_nmi->_aniMan->isPixelHitAtPos(cmd->_sceneClickX, cmd->_sceneClickY) && !g_nmi->_aniMan->_movement) { sceneHandler14_dudeDecline(); break; } } else { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); if (ani && ani->_id == ANI_LIFTBUTTON) { - g_fp->lift_animateButton(ani); + g_nmi->lift_animateButton(ani); cmd->_messageKind = 0; break; } - if (!sceneHandler14_arcadeProcessClick(cmd) && (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_param))) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + if (!sceneHandler14_arcadeProcessClick(cmd) && (!ani || !canInteractAny(g_nmi->_aniMan, ani, cmd->_param))) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); - if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_param)) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) - || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) { - g_fp->processArcade(cmd); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, cmd->_param)) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) + || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) { + g_nmi->processArcade(cmd); sceneHandler14_arcadeProcessClick(cmd); break; } diff --git a/engines/ngi/fullpipe/scene15.cpp b/engines/ngi/fullpipe/scene15.cpp index 424e9293e54..c63b73b6c81 100644 --- a/engines/ngi/fullpipe/scene15.cpp +++ b/engines/ngi/fullpipe/scene15.cpp @@ -41,40 +41,40 @@ void scene15_initScene(Scene *sc) { StaticANIObject *grandma = sc->getStaticANIObject1ById(ANI_GRANDMA_ASS, -1); - Scene *oldsc = g_fp->_currentScene; - g_fp->_currentScene = sc; + Scene *oldsc = g_nmi->_currentScene; + g_nmi->_currentScene = sc; - int grandmaState = g_fp->getObjectState(sO_Grandma); + int grandmaState = g_nmi->getObjectState(sO_Grandma); - if (grandmaState == g_fp->getObjectEnumState(sO_Grandma, sO_In_15)) { + if (grandmaState == g_nmi->getObjectEnumState(sO_Grandma, sO_In_15)) { grandma->changeStatics2(ST_GMS_BOOT); grandma->setOXY(97, 399); - g_fp->setObjectState(sO_LeftPipe_15, g_fp->getObjectEnumState(sO_LeftPipe_15, sO_IsClosed)); - } else if (grandmaState == g_fp->getObjectEnumState(sO_Grandma, sO_In_15_1)) { + g_nmi->setObjectState(sO_LeftPipe_15, g_nmi->getObjectEnumState(sO_LeftPipe_15, sO_IsClosed)); + } else if (grandmaState == g_nmi->getObjectEnumState(sO_Grandma, sO_In_15_1)) { grandma->changeStatics2(ST_GMS_BOOT); grandma->setOXY(86, 399); - g_fp->setObjectState(sO_LeftPipe_15, g_fp->getObjectEnumState(sO_LeftPipe_15, sO_IsClosed)); - } else if (grandmaState == g_fp->getObjectEnumState(sO_Grandma, sO_In_15_2)) { + g_nmi->setObjectState(sO_LeftPipe_15, g_nmi->getObjectEnumState(sO_LeftPipe_15, sO_IsClosed)); + } else if (grandmaState == g_nmi->getObjectEnumState(sO_Grandma, sO_In_15_2)) { grandma->changeStatics2(ST_GMS_BOOT); grandma->setOXY(71, 399); - g_fp->setObjectState(sO_LeftPipe_15, g_fp->getObjectEnumState(sO_LeftPipe_15, sO_IsClosed)); - } else if (grandmaState == g_fp->getObjectEnumState(sO_Grandma, sO_In_15_3)) { + g_nmi->setObjectState(sO_LeftPipe_15, g_nmi->getObjectEnumState(sO_LeftPipe_15, sO_IsClosed)); + } else if (grandmaState == g_nmi->getObjectEnumState(sO_Grandma, sO_In_15_3)) { grandma->changeStatics2(ST_GMS_BOOT); grandma->setOXY(49, 399); - g_fp->setObjectState(sO_LeftPipe_15, g_fp->getObjectEnumState(sO_LeftPipe_15, sO_IsClosed)); - } else if (grandmaState == g_fp->getObjectEnumState(sO_Grandma, sO_WithoutBoot)) { + g_nmi->setObjectState(sO_LeftPipe_15, g_nmi->getObjectEnumState(sO_LeftPipe_15, sO_IsClosed)); + } else if (grandmaState == g_nmi->getObjectEnumState(sO_Grandma, sO_WithoutBoot)) { grandma->changeStatics2(ST_GMS_BOOT); grandma->setOXY(97, 399); grandma->changeStatics2(ST_GMS_BOOTLESS2); - g_fp->setObjectState(sO_LeftPipe_15, g_fp->getObjectEnumState(sO_LeftPipe_15, sO_IsClosed)); + g_nmi->setObjectState(sO_LeftPipe_15, g_nmi->getObjectEnumState(sO_LeftPipe_15, sO_IsClosed)); } else { grandma->hide(); - g_fp->setObjectState(sO_LeftPipe_15, g_fp->getObjectEnumState(sO_LeftPipe_15, sO_IsOpened)); + g_nmi->setObjectState(sO_LeftPipe_15, g_nmi->getObjectEnumState(sO_LeftPipe_15, sO_IsOpened)); } g_vars->scene15_plusminus = sc->getStaticANIObject1ById(ANI_PLUSMINUS, -1); - if (g_fp->getObjectState(sO_Guard_2) == g_fp->getObjectEnumState(sO_Guard_2, sO_Off)) + if (g_nmi->getObjectState(sO_Guard_2) == g_nmi->getObjectEnumState(sO_Guard_2, sO_Off)) g_vars->scene15_plusminus->_statics = g_vars->scene15_plusminus->getStaticsById(ST_PMS_MINUS); else g_vars->scene15_plusminus->_statics = g_vars->scene15_plusminus->getStaticsById(ST_PMS_PLUS); @@ -82,22 +82,22 @@ void scene15_initScene(Scene *sc) { g_vars->scene15_ladder = sc->getPictureObjectById(PIC_SC15_LADDER, 0); g_vars->scene15_boot = sc->getStaticANIObject1ById(ANI_BOOT_15, -1); - if (g_fp->getObjectState(sO_Boot_15) != g_fp->getObjectEnumState(sO_Boot_15, sO_IsPresent)) + if (g_nmi->getObjectState(sO_Boot_15) != g_nmi->getObjectEnumState(sO_Boot_15, sO_IsPresent)) g_vars->scene15_boot->_flags &= 0xFFFB; - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; - g_fp->lift_setButton(sO_Level5, ST_LBN_5N); - g_fp->lift_init(sc, QU_SC15_ENTERLIFT, QU_SC15_EXITLIFT); + g_nmi->lift_setButton(sO_Level5, ST_LBN_5N); + g_nmi->lift_init(sc, QU_SC15_ENTERLIFT, QU_SC15_EXITLIFT); } int scene15_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_cursorId == PIC_CSR_ITN && g_fp->_objectIdAtCursor == PIC_SC15_LTRUBA) - g_fp->_cursorId = PIC_CSR_GOL; + if (g_nmi->_cursorId == PIC_CSR_ITN && g_nmi->_objectIdAtCursor == PIC_SC15_LTRUBA) + g_nmi->_cursorId = PIC_CSR_GOL; - return g_fp->_cursorId; + return g_nmi->_cursorId; } int sceneHandler15(ExCommand *cmd) { @@ -106,15 +106,15 @@ int sceneHandler15(ExCommand *cmd) { switch(cmd->_messageNum) { case MSG_LIFT_CLOSEDOOR: - g_fp->lift_closedoorSeq(); + g_nmi->lift_closedoorSeq(); break; case MSG_LIFT_EXITLIFT: - g_fp->lift_exitSeq(cmd); + g_nmi->lift_exitSeq(cmd); break; case MSG_LIFT_STARTEXITQUEUE: - g_fp->lift_startExitQueue(); + g_nmi->lift_startExitQueue(); break; case MSG_SC4_HIDEBOOT: @@ -122,16 +122,16 @@ int sceneHandler15(ExCommand *cmd) { break; case MSG_SC15_STOPCHANTING: - g_fp->stopAllSoundInstances(SND_15_001); + g_nmi->stopAllSoundInstances(SND_15_001); g_vars->scene15_chantingCountdown = 120; break; case MSG_SC15_ASSDRYG: - if (g_fp->_rnd.getRandomNumber(1)) { - g_fp->playSound(SND_15_011, 0); + if (g_nmi->_rnd.getRandomNumber(1)) { + g_nmi->playSound(SND_15_011, 0); } else { - g_fp->playSound(SND_15_006, 0); + g_nmi->playSound(SND_15_006, 0); } break; @@ -140,11 +140,11 @@ int sceneHandler15(ExCommand *cmd) { break; case MSG_LIFT_GO: - g_fp->lift_goAnimation(); + g_nmi->lift_goAnimation(); break; case MSG_LIFT_CLICKBUTTON: - g_fp->lift_clickButton(); + g_nmi->lift_clickButton(); break; case MSG_SC15_PULL: @@ -156,22 +156,22 @@ int sceneHandler15(ExCommand *cmd) { break; case 64: - g_fp->lift_hoverButton(cmd); + g_nmi->lift_hoverButton(cmd); break; case 29: { - if (g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC15_LADDER) { - handleObjectInteraction(g_fp->_aniMan, g_fp->_currentScene->getPictureObjectById(PIC_SC15_DTRUBA, 0), cmd->_param); + if (g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC15_LADDER) { + handleObjectInteraction(g_nmi->_aniMan, g_nmi->_currentScene->getPictureObjectById(PIC_SC15_DTRUBA, 0), cmd->_param); cmd->_messageKind = 0; return 0; } - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); if (ani && ani->_id == ANI_LIFTBUTTON) { - g_fp->lift_animateButton(ani); + g_nmi->lift_animateButton(ani); cmd->_messageKind = 0; } @@ -183,24 +183,24 @@ int sceneHandler15(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; } if (g_vars->scene15_chantingCountdown > 0) { g_vars->scene15_chantingCountdown--; if (!g_vars->scene15_chantingCountdown) - g_fp->playSound(SND_15_001, 1); + g_nmi->playSound(SND_15_001, 1); } - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); break; default: diff --git a/engines/ngi/fullpipe/scene16.cpp b/engines/ngi/fullpipe/scene16.cpp index 1f9c83e3e26..456b2712f14 100644 --- a/engines/ngi/fullpipe/scene16.cpp +++ b/engines/ngi/fullpipe/scene16.cpp @@ -48,7 +48,7 @@ void scene16_initScene(Scene *sc) { g_vars->scene16_girlIsLaughing = false; g_vars->scene16_sound = SND_16_034; - if (g_fp->getObjectState(sO_Bridge) == g_fp->getObjectEnumState(sO_Bridge, sO_Convoluted)) { + if (g_nmi->getObjectState(sO_Bridge) == g_nmi->getObjectEnumState(sO_Bridge, sO_Convoluted)) { g_vars->scene16_placeIsOccupied = true; StaticANIObject *boy[2]; @@ -80,24 +80,24 @@ void scene16_initScene(Scene *sc) { idx = 0; } } else { - g_fp->setObjectState(sO_Girl, g_fp->getObjectEnumState(sO_Girl, sO_IsSwinging)); + g_nmi->setObjectState(sO_Girl, g_nmi->getObjectEnumState(sO_Girl, sO_IsSwinging)); g_vars->scene16_placeIsOccupied = false; - StaticANIObject *ani = new StaticANIObject(g_fp->accessScene(SC_COMMON)->getStaticANIObject1ById(ANI_BEARDED_CMN, -1)); + StaticANIObject *ani = new StaticANIObject(g_nmi->accessScene(SC_COMMON)->getStaticANIObject1ById(ANI_BEARDED_CMN, -1)); ani->_movement = 0; ani->_statics = ani->_staticsList[0]; sc->addStaticANIObject(ani, 1); } - if (g_fp->getObjectState(sO_Girl) == g_fp->getObjectEnumState(sO_Girl, sO_IsLaughing)) { + if (g_nmi->getObjectState(sO_Girl) == g_nmi->getObjectEnumState(sO_Girl, sO_IsLaughing)) { StaticANIObject *girl = sc->getStaticANIObject1ById(ANI_GIRL, -1); girl->show1(554, 432, MV_GRL_LAUGH_POPA, 0); girl->_priority = 20; } - if (g_fp->getObjectState(sO_Cup) == g_fp->getObjectEnumState(sO_Cup, sO_In_16)) { + if (g_nmi->getObjectState(sO_Cup) == g_nmi->getObjectEnumState(sO_Cup, sO_In_16)) { g_vars->scene16_mug->_statics = g_vars->scene16_mug->getStaticsById(ST_MUG_EMPTY); g_vars->scene16_mug->_movement = 0; g_vars->scene16_mug->setOXY(409, 459); @@ -107,17 +107,17 @@ void scene16_initScene(Scene *sc) { } int scene16_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_objectIdAtCursor == PIC_SC16_TUMBA) { - if (g_fp->_cursorId == PIC_CSR_DEFAULT) - g_fp->_cursorId = PIC_CSR_ITN; + if (g_nmi->_objectIdAtCursor == PIC_SC16_TUMBA) { + if (g_nmi->_cursorId == PIC_CSR_DEFAULT) + g_nmi->_cursorId = PIC_CSR_ITN; } else { - if (g_fp->_objectIdAtCursor == ANI_MUG && g_fp->_cursorId == PIC_CSR_ITN && g_vars->scene16_mug->_statics->_staticsId == ST_MUG_FULL) - g_fp->_cursorId = PIC_CSR_ITN_GREEN; + if (g_nmi->_objectIdAtCursor == ANI_MUG && g_nmi->_cursorId == PIC_CSR_ITN && g_vars->scene16_mug->_statics->_staticsId == ST_MUG_FULL) + g_nmi->_cursorId = PIC_CSR_ITN_GREEN; } - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler16_laughSound() { @@ -140,12 +140,12 @@ void sceneHandler16_laughSound() { g_vars->scene16_sound = snd; - g_fp->playSound(snd, 0); + g_nmi->playSound(snd, 0); } void sceneHandler16_showBearded() { - if (g_fp->getObjectState(sO_Bridge) == g_fp->getObjectEnumState(sO_Bridge, sO_Unconvoluted)) { - StaticANIObject *brd = g_fp->_currentScene->getStaticANIObject1ById(ANI_BEARDED_CMN, -1); + if (g_nmi->getObjectState(sO_Bridge) == g_nmi->getObjectEnumState(sO_Bridge, sO_Unconvoluted)) { + StaticANIObject *brd = g_nmi->_currentScene->getStaticANIObject1ById(ANI_BEARDED_CMN, -1); if (!brd || !(brd->_flags & 4)) chainQueue(QU_BRD16_STARTBEARDED, 0); @@ -161,13 +161,13 @@ void sceneHandler16_fillMug() { g_vars->scene16_jettie->_priority = 2; g_vars->scene16_jettie->startAnim(MV_JTI_FLOWIN, 0, -1); - if (g_fp->_aniMan->_movement) { - if (g_fp->_aniMan->_movement->_id == MV_MAN16_TAKEMUG) { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT); + if (g_nmi->_aniMan->_movement) { + if (g_nmi->_aniMan->_movement->_id == MV_MAN16_TAKEMUG) { + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT); g_vars->scene16_mug->show1(-1, -1, -1, 0); - g_fp->setObjectState(sO_Cup, g_fp->getObjectEnumState(sO_Cup, sO_DudeHas)); + g_nmi->setObjectState(sO_Cup, g_nmi->getObjectEnumState(sO_Cup, sO_DudeHas)); } } return; @@ -180,7 +180,7 @@ void sceneHandler16_fillMug() { g_vars->scene16_jettie->startAnim(MV_JTI_FLOWBY, 0, -1); if (g_vars->scene16_walkingBoy) { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC16_BOYOUT), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC16_BOYOUT), 0, 1); mq->setParamInt(-1, g_vars->scene16_walkingBoy->_odelay); if (mq->chain(g_vars->scene16_walkingBoy)) @@ -189,7 +189,7 @@ void sceneHandler16_fillMug() { if (!g_vars->scene16_walkingGirl) return; - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC16_GIRLOUT), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC16_GIRLOUT), 0, 1); mq->setParamInt(-1, g_vars->scene16_walkingGirl->_odelay); if (mq->chain(g_vars->scene16_walkingGirl)) @@ -207,7 +207,7 @@ void sceneHandler16_fillMug() { StaticANIObject *ani; if (g_vars->scene16_walkingBoy) { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC16_BOYOUT), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC16_BOYOUT), 0, 1); mq->setParamInt(-1, g_vars->scene16_walkingBoy->_odelay); @@ -216,7 +216,7 @@ void sceneHandler16_fillMug() { if (!g_vars->scene16_walkingGirl) return; - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC16_GIRLOUT), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC16_GIRLOUT), 0, 1); mq->setParamInt(-1, g_vars->scene16_walkingGirl->_odelay); ani = g_vars->scene16_walkingGirl; @@ -227,17 +227,17 @@ void sceneHandler16_fillMug() { } void sceneHandler16_startLaugh() { - StaticANIObject *girl = g_fp->_currentScene->getStaticANIObject1ById(ANI_GIRL, -1); + StaticANIObject *girl = g_nmi->_currentScene->getStaticANIObject1ById(ANI_GIRL, -1); girl->changeStatics2(ST_GRL_STAND); - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC16_GIRLLAUGH), 0, 1); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC16_GIRLLAUGH), 0, 1); mq->setParamInt(-1, girl->_odelay); mq->setFlags(mq->getFlags() | 1); mq->chain(0); - g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->setSubVarAsInt(sO_DudeSwinged, 0); + g_nmi->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->setSubVarAsInt(sO_DudeSwinged, 0); g_vars->scene16_girlIsLaughing = true; } @@ -252,12 +252,12 @@ void sceneHandler16_drink() { ExCommand *ex; if (g_vars->scene16_walkingBoy) { - g_fp->_aniMan->_flags |= 0x180; + g_nmi->_aniMan->_flags |= 0x180; g_vars->scene16_walkingBoy->changeStatics2(ST_BOY_STAND); g_vars->scene16_walkingBoy->queueMessageQueue(0); - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC16_BOYKICK), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC16_BOYKICK), 0, 1); mq->setParamInt(-1, g_vars->scene16_walkingBoy->_odelay); @@ -270,9 +270,9 @@ void sceneHandler16_drink() { mq->setFlags(mq->getFlags() | 1); mq->chain(0); } else { - g_fp->_aniMan->_flags |= 0x100; + g_nmi->_aniMan->_flags |= 0x100; - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC16_MANDRINK), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC16_MANDRINK), 0, 1); ex = new ExCommand(ANI_MAN, 34, 256, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags |= 3u; @@ -283,12 +283,12 @@ void sceneHandler16_drink() { mq->setFlags(mq->getFlags() | 1); mq->chain(0); - g_fp->_currentScene->getStaticANIObject1ById(ANI_GIRL, -1)->changeStatics2(ST_GRL_STAND); + g_nmi->_currentScene->getStaticANIObject1ById(ANI_GIRL, -1)->changeStatics2(ST_GRL_STAND); } - g_fp->_currentScene->getStaticANIObject1ById(ANI_WIRE16, -1)->show1(-1, -1, -1, 0); + g_nmi->_currentScene->getStaticANIObject1ById(ANI_WIRE16, -1)->show1(-1, -1, -1, 0); } else { - chainObjQueue(g_fp->_aniMan, QU_SC16_TAKEMUG, 1); + chainObjQueue(g_nmi->_aniMan, QU_SC16_TAKEMUG, 1); } } } @@ -297,16 +297,16 @@ void sceneHandler16_drink() { } void sceneHandler16_mugClick() { - if (abs(310 - g_fp->_aniMan->_ox) >= 1 || abs(449 - g_fp->_aniMan->_oy) >= 1 - || g_fp->_aniMan->_movement || g_fp->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) { - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, 310, 449, 1, ST_MAN_RIGHT); + if (abs(310 - g_nmi->_aniMan->_ox) >= 1 || abs(449 - g_nmi->_aniMan->_oy) >= 1 + || g_nmi->_aniMan->_movement || g_nmi->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) { + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, 310, 449, 1, ST_MAN_RIGHT); if (mq) { ExCommand *ex = new ExCommand(0, 17, MSG_SC16_MUGCLICK, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags = 2; mq->addExCommandToEnd(ex); - postExCommand(g_fp->_aniMan->_id, 2, 310, 449, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, 310, 449, 0, -1); } } else { sceneHandler16_drink(); @@ -314,8 +314,8 @@ void sceneHandler16_mugClick() { } void sceneHandler16_showMan() { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT); - g_fp->_aniMan->show1(-1, -1, -1, 0); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT); + g_nmi->_aniMan->show1(-1, -1, -1, 0); g_vars->scene16_mug->show1(-1, -1, -1, 0); } @@ -325,8 +325,8 @@ void sceneHandler16_showMug() { } void sceneHandler16_hideMan() { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT); - g_fp->_aniMan->hide(); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT); + g_nmi->_aniMan->hide(); g_vars->scene16_mug->hide(); } @@ -360,7 +360,7 @@ void sceneHandler16_putOnWheel() { MessageQueue *mq; if (ani->_id == ANI_BOY) { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC16_GOBOY), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC16_GOBOY), 0, 1); mq->setParamInt(-1, ani->_odelay); mq->chain(0); @@ -368,8 +368,8 @@ void sceneHandler16_putOnWheel() { g_vars->scene16_walkingBoy = ani; g_vars->scene16_walkingGirl = 0; } else if (ani->_id == ANI_GIRL) { - if (g_fp->getObjectState(sO_Girl) == g_fp->getObjectEnumState(sO_Girl, sO_IsSwinging)) { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC16_GOGIRL), 0, 1); + if (g_nmi->getObjectState(sO_Girl) == g_nmi->getObjectEnumState(sO_Girl, sO_IsSwinging)) { + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC16_GOGIRL), 0, 1); mq->setParamInt(-1, ani->_odelay); mq->chain(0); @@ -382,7 +382,7 @@ void sceneHandler16_putOnWheel() { } void sceneHandler16_girlROTFL() { - StaticANIObject *girl = g_fp->_currentScene->getStaticANIObject1ById(ANI_GIRL, -1); + StaticANIObject *girl = g_nmi->_currentScene->getStaticANIObject1ById(ANI_GIRL, -1); girl->changeStatics2(ST_GRL_LAUGH); girl->startAnim(MV_GRL_FALL, 0, -1); @@ -416,7 +416,7 @@ int sceneHandler16(ExCommand *cmd) { break; case MSG_SC16_MUGCLICK: - if (!g_fp->_aniMan->isIdle() || g_fp->_aniMan->_flags & 0x100) { + if (!g_nmi->_aniMan->isIdle() || g_nmi->_aniMan->_flags & 0x100) { cmd->_messageKind = 0; } else { sceneHandler16_mugClick(); @@ -448,14 +448,14 @@ int sceneHandler16(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; } if (g_vars->scene16_placeIsOccupied) { @@ -469,13 +469,13 @@ int sceneHandler16(ExCommand *cmd) { } if (g_vars->scene16_girlIsLaughing) { - if (g_fp->_aniMan->_movement) - if (g_fp->_aniMan->_movement->_id == MV_MAN_TURN_RL) + if (g_nmi->_aniMan->_movement) + if (g_nmi->_aniMan->_movement->_id == MV_MAN_TURN_RL) sceneHandler16_girlROTFL(); } - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); break; diff --git a/engines/ngi/fullpipe/scene17.cpp b/engines/ngi/fullpipe/scene17.cpp index 0957d641a2e..d91e6c2d3b5 100644 --- a/engines/ngi/fullpipe/scene17.cpp +++ b/engines/ngi/fullpipe/scene17.cpp @@ -45,53 +45,53 @@ void scene17_initScene(Scene *sc) { } void scene17_restoreState() { - if (g_fp->getObjectState(sO_UsherHand) == g_fp->getObjectEnumState(sO_UsherHand, sO_WithCoin)) { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_ASK, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_TOCYCLE, 0); + if (g_nmi->getObjectState(sO_UsherHand) == g_nmi->getObjectEnumState(sO_UsherHand, sO_WithCoin)) { + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_ASK, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_TOCYCLE, 0); g_vars->scene17_handPhase = false; } else { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_ASK, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_TOCYCLE, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_ASK, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_TOCYCLE, 1); g_vars->scene17_handPhase = true; } - g_fp->_floaters->init(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_17")); + g_nmi->_floaters->init(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_17")); - g_vars->scene17_flyState = g_fp->getObjectState(sO_Fly_17); + g_vars->scene17_flyState = g_nmi->getObjectState(sO_Fly_17); if (g_vars->scene17_flyState <= 0 ) { - g_vars->scene17_flyCountdown = g_fp->_rnd.getRandomNumber(600) + 600; + g_vars->scene17_flyCountdown = g_nmi->_rnd.getRandomNumber(600) + 600; - g_vars->scene17_flyState = g_fp->_rnd.getRandomNumber(4) + 1; + g_vars->scene17_flyState = g_nmi->_rnd.getRandomNumber(4) + 1; } - g_fp->setObjectState(sO_Fly_17, g_vars->scene17_flyState - 1); + g_nmi->setObjectState(sO_Fly_17, g_vars->scene17_flyState - 1); } int scene17_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_objectIdAtCursor != PIC_SC17_RTRUBA2 && g_fp->_objectIdAtCursor != PIC_SC17_RTRUBA) - return g_fp->_cursorId; + if (g_nmi->_objectIdAtCursor != PIC_SC17_RTRUBA2 && g_nmi->_objectIdAtCursor != PIC_SC17_RTRUBA) + return g_nmi->_cursorId; if (!g_vars->scene17_handPhase) - return g_fp->_cursorId; + return g_nmi->_cursorId; - int item = g_fp->_inventory->getSelectedItemId(); + int item = g_nmi->_inventory->getSelectedItemId(); - if ((g_fp->_cursorId != PIC_CSR_DEFAULT_INV || item != ANI_INV_COIN) && item != ANI_INV_BOOT && item != ANI_INV_HAMMER) + if ((g_nmi->_cursorId != PIC_CSR_DEFAULT_INV || item != ANI_INV_COIN) && item != ANI_INV_BOOT && item != ANI_INV_HAMMER) ; // empty else - g_fp->_cursorId = PIC_CSR_ITN_INV; + g_nmi->_cursorId = PIC_CSR_ITN_INV; - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler17_drop() { - StaticANIObject *mug = g_fp->_currentScene->getStaticANIObject1ById(ANI_MUG_17, -1); - StaticANIObject *jet = g_fp->_currentScene->getStaticANIObject1ById(ANI_JET_17, -1); + StaticANIObject *mug = g_nmi->_currentScene->getStaticANIObject1ById(ANI_MUG_17, -1); + StaticANIObject *jet = g_nmi->_currentScene->getStaticANIObject1ById(ANI_JET_17, -1); if (mug && mug->_flags & 4) { mug->changeStatics2(ST_MUG17_EMPTY); @@ -103,9 +103,9 @@ void sceneHandler17_drop() { } void sceneHandler17_fillBottle() { - StaticANIObject *bottle = g_fp->_currentScene->getStaticANIObject1ById(ANI_INV_BOTTLE, -1); - StaticANIObject *mug = g_fp->_currentScene->getStaticANIObject1ById(ANI_MUG_17, -1); - StaticANIObject *boot = g_fp->_currentScene->getStaticANIObject1ById(ANI_BOOT_17, -1); + StaticANIObject *bottle = g_nmi->_currentScene->getStaticANIObject1ById(ANI_INV_BOTTLE, -1); + StaticANIObject *mug = g_nmi->_currentScene->getStaticANIObject1ById(ANI_MUG_17, -1); + StaticANIObject *boot = g_nmi->_currentScene->getStaticANIObject1ById(ANI_BOOT_17, -1); if (bottle && (bottle->_flags & 4)) chainQueue(QU_SC17_FILLBOTTLE, 1); @@ -131,7 +131,7 @@ void sceneHandler17_showBottle() { } void sceneHandler17_hideSugar() { - StaticANIObject *sugar = g_fp->_currentScene->getStaticANIObject1ById(ANI_INV_SUGAR, -1); + StaticANIObject *sugar = g_nmi->_currentScene->getStaticANIObject1ById(ANI_INV_SUGAR, -1); if (sugar) sugar->hide(); @@ -144,7 +144,7 @@ void sceneHandler17_showSugar() { } void sceneHandler17_moonshineFill() { - StaticANIObject *moonshiner = g_fp->_currentScene->getStaticANIObject1ById(ANI_SAMOGONSHCHIK, -1); + StaticANIObject *moonshiner = g_nmi->_currentScene->getStaticANIObject1ById(ANI_SAMOGONSHCHIK, -1); if (!(moonshiner->_flags & 0x80)) { moonshiner->changeStatics2(ST_SMG_SIT); @@ -155,11 +155,11 @@ void sceneHandler17_moonshineFill() { } void sceneHandler17_updateFlies() { - g_fp->_floaters->genFlies(g_fp->_currentScene, 239, -50, 20, 4); + g_nmi->_floaters->genFlies(g_nmi->_currentScene, 239, -50, 20, 4); - g_fp->_floaters->_array2[0].countdown = g_fp->_rnd.getRandomNumber(5) + 6; - g_fp->_floaters->_array2[0].val6 = 239; - g_fp->_floaters->_array2[0].val7 = -50; + g_nmi->_floaters->_array2[0].countdown = g_nmi->_rnd.getRandomNumber(5) + 6; + g_nmi->_floaters->_array2[0].val6 = 239; + g_nmi->_floaters->_array2[0].val7 = -50; } @@ -173,14 +173,14 @@ int sceneHandler17(ExCommand *cmd) { break; case MSG_SC17_UPDATEHAND: - if (g_fp->getObjectState(sO_UsherHand) == g_fp->getObjectEnumState(sO_UsherHand, sO_WithCoin)) { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_ASK, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_TOCYCLE, 0); + if (g_nmi->getObjectState(sO_UsherHand) == g_nmi->getObjectEnumState(sO_UsherHand, sO_WithCoin)) { + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_ASK, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_TOCYCLE, 0); g_vars->scene17_handPhase = false; } else { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_ASK, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_TOCYCLE, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_ASK, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_TOCYCLE, 1); g_vars->scene17_handPhase = true; } @@ -208,14 +208,14 @@ int sceneHandler17(ExCommand *cmd) { case 29: { - int pic = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + int pic = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); if (pic == PIC_SC17_RTRUBA2 || pic == PIC_SC17_RTRUBA) { if (cmd->_param == ANI_INV_COIN || cmd->_param == ANI_INV_BOOT || cmd->_param == ANI_INV_HAMMER) { if (g_vars->scene17_handPhase) { - if (g_fp->_aniMan->isIdle()) { - if (!(g_fp->_aniMan->_flags & 0x100)) { - handleObjectInteraction(g_fp->_aniMan, g_vars->scene17_hand, cmd->_param); + if (g_nmi->_aniMan->isIdle()) { + if (!(g_nmi->_aniMan->_flags & 0x100)) { + handleObjectInteraction(g_nmi->_aniMan, g_vars->scene17_hand, cmd->_param); break; } } @@ -230,19 +230,19 @@ int sceneHandler17(ExCommand *cmd) { int x = g_vars->scene17_sceneEdgeX; g_vars->scene17_sceneOldEdgeX = g_vars->scene17_sceneEdgeX; - if (g_fp->_aniMan2) { - x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + x = g_nmi->_aniMan2->_ox; g_vars->scene17_sceneEdgeX = x; - if (x < g_fp->_sceneRect.left + 200) { - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) { + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; x = g_vars->scene17_sceneEdgeX; } - if (x > g_fp->_sceneRect.right - 200) { - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) { + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; x = g_vars->scene17_sceneEdgeX; } } @@ -254,13 +254,13 @@ int sceneHandler17(ExCommand *cmd) { if (g_vars->scene17_handPhase) { if (g_vars->scene17_sceneOldEdgeX < 410 && x >= 410) { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_TOCYCLE, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_ATTRACT, QU_HND17_ATTRACT, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_ASK, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_TOCYCLE, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_ATTRACT, QU_HND17_ATTRACT, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_ASK, 1); } else if (g_vars->scene17_sceneOldEdgeX > 410 && x <= 410) { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_TOCYCLE, 1); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_ATTRACT, QU_HND17_ATTRACT, 1); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_ASK, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_TOCYCLE, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_ATTRACT, QU_HND17_ATTRACT, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene17_hand, ST_HND17_EMPTY, QU_HND17_ASK, 0); } } @@ -269,11 +269,11 @@ int sceneHandler17(ExCommand *cmd) { if (!g_vars->scene17_flyCountdown) sceneHandler17_updateFlies(); - g_fp->_floaters->update(); + g_nmi->_floaters->update(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); } break; diff --git a/engines/ngi/fullpipe/scene18and19.cpp b/engines/ngi/fullpipe/scene18and19.cpp index 90682e0ccf7..f3d6ddeb6e7 100644 --- a/engines/ngi/fullpipe/scene18and19.cpp +++ b/engines/ngi/fullpipe/scene18and19.cpp @@ -51,14 +51,14 @@ struct Swinger { void scene18_preload() { - g_fp->_scene3 = 0; + g_nmi->_scene3 = 0; - for (SceneTagList::iterator s = g_fp->_gameProject->_sceneTagList->begin(); s != g_fp->_gameProject->_sceneTagList->end(); ++s) { + for (SceneTagList::iterator s = g_nmi->_gameProject->_sceneTagList->begin(); s != g_nmi->_gameProject->_sceneTagList->end(); ++s) { if (s->_sceneId == SC_18) { - g_fp->_scene3 = s->_scene; + g_nmi->_scene3 = s->_scene; s->_scene = 0; - g_fp->_scene3->getStaticANIObject1ById(ANI_WHIRLIGIG_18, -1)->freeMovementsPixelData(); + g_nmi->_scene3->getStaticANIObject1ById(ANI_WHIRLIGIG_18, -1)->freeMovementsPixelData(); break; } @@ -66,19 +66,19 @@ void scene18_preload() { } void scene18_setupEntrance() { - GameVar *var = g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName("SAVEGAME"); + GameVar *var = g_nmi->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName("SAVEGAME"); if (var->getSubVarAsInt("Entrance") == TrubaRight) var->setSubVarAsInt("Entrance", TrubaLeft); } void scene19_setSugarState(Scene *sc) { - if (g_fp->getObjectState(sO_Sugar) != g_fp->getObjectEnumState(sO_Sugar, sO_Present)) { - Scene *oldsc = g_fp->_currentScene; + if (g_nmi->getObjectState(sO_Sugar) != g_nmi->getObjectEnumState(sO_Sugar, sO_Present)) { + Scene *oldsc = g_nmi->_currentScene; - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; sc->getStaticANIObject1ById(ANI_CORDIE, -1)->changeStatics2(ST_CDI_EMPTY2); - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; } } @@ -92,14 +92,14 @@ void scene19_setMovements(Scene *sc, int entranceId) { for (uint i = 0; i < g_vars->scene18_swingers.size(); i++) { if (!g_vars->scene18_enteredTrubaRight && (g_vars->scene18_swingers[i]->sflags & 0x20)) { - Scene *oldsc = g_fp->_currentScene; + Scene *oldsc = g_nmi->_currentScene; g_vars->scene18_swingers[i]->sflags = 1; - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; g_vars->scene18_swingers[i]->ani->changeStatics2(ST_KSL_NORM); g_vars->scene18_swingers[i]->ani->_priority = 30; - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; } sc->deleteStaticANIObject(g_vars->scene18_swingers[i]->ani); @@ -127,10 +127,10 @@ void scene19_setMovements(Scene *sc, int entranceId) { } void scene19_preload() { - for (SceneTagList::iterator s = g_fp->_gameProject->_sceneTagList->begin(); s != g_fp->_gameProject->_sceneTagList->end(); ++s) { + for (SceneTagList::iterator s = g_nmi->_gameProject->_sceneTagList->begin(); s != g_nmi->_gameProject->_sceneTagList->end(); ++s) { if (s->_sceneId == SC_18) { delete s->_scene; - s->_scene = g_fp->_scene3; + s->_scene = g_nmi->_scene3; break; } @@ -142,8 +142,8 @@ void scene18_setupSwingers(StaticANIObject *ani, Scene *sc) { g_vars->scene18_swingers.clear(); - Scene *oldsc = g_fp->_currentScene; - g_fp->_currentScene = sc; + Scene *oldsc = g_nmi->_currentScene; + g_nmi->_currentScene = sc; for (int i = 0; i < 8; i++) { swinger = new Swinger; @@ -181,12 +181,12 @@ void scene18_setupSwingers(StaticANIObject *ani, Scene *sc) { else ani->startAnim(MV_KSL_SWING, 0, -1); - ani->_movement->setDynamicPhaseIndex(g_fp->_rnd.getRandomNumber(17)); + ani->_movement->setDynamicPhaseIndex(g_nmi->_rnd.getRandomNumber(17)); g_vars->scene18_swingers.push_back(swinger); } - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; } void scene18_initScene1(Scene *sc) { @@ -195,7 +195,7 @@ void scene18_initScene1(Scene *sc) { int oldx = g_vars->scene18_wheelCenterX; int oldy = g_vars->scene18_wheelCenterY; - g_vars->scene18_girlIsSwinging = (g_fp->getObjectState(sO_Girl) == g_fp->getObjectEnumState(sO_Girl, sO_IsSwinging)); + g_vars->scene18_girlIsSwinging = (g_nmi->getObjectState(sO_Girl) == g_nmi->getObjectEnumState(sO_Girl, sO_IsSwinging)); if (sc->_sceneId == SC_18) { g_vars->scene18_whirlgig = sc->getStaticANIObject1ById(ANI_WHIRLIGIG_18, -1); @@ -254,7 +254,7 @@ void scene18_initScene1(Scene *sc) { sndid = SND_18_010; } - g_fp->playSound(sndid, 1); + g_nmi->playSound(sndid, 1); g_vars->scene18_boy->getPicAniInfo(info); sc->addStaticANIObject(g_vars->scene18_boy, 1); @@ -292,11 +292,11 @@ void scene18_initScene1(Scene *sc) { if (g_vars->scene18_enteredTrubaRight) { if (sc->_sceneId == SC_19) - g_fp->_aniMan2 = 0; + g_nmi->_aniMan2 = 0; else - g_fp->_aniMan2 = g_vars->scene18_swingers[g_vars->scene18_manWheelPosTo]->ani; + g_nmi->_aniMan2 = g_vars->scene18_swingers[g_vars->scene18_manWheelPosTo]->ani; } else { - g_fp->_aniMan2 = g_fp->_aniMan; + g_nmi->_aniMan2 = g_nmi->_aniMan; } } @@ -309,14 +309,14 @@ void scene18_initScene2(Scene *sc) { armchair->loadMovementsPixelData(); - g_vars->scene18_girlIsSwinging = (g_fp->getObjectState(sO_Girl) == g_fp->getObjectEnumState(sO_Girl, sO_IsSwinging)); + g_vars->scene18_girlIsSwinging = (g_nmi->getObjectState(sO_Girl) == g_nmi->getObjectEnumState(sO_Girl, sO_IsSwinging)); - if (g_fp->getObjectState(sO_Bridge) == g_fp->getObjectEnumState(sO_Bridge, sO_Convoluted)) { + if (g_nmi->getObjectState(sO_Bridge) == g_nmi->getObjectEnumState(sO_Bridge, sO_Convoluted)) { g_vars->scene18_bridgeIsConvoluted = true; - g_fp->playSound(SND_18_006, 1); + g_nmi->playSound(SND_18_006, 1); } else { g_vars->scene18_bridgeIsConvoluted = false; - g_fp->playSound(SND_18_010, 1); + g_nmi->playSound(SND_18_010, 1); } scene18_setupSwingers(armchair, sc); @@ -341,61 +341,61 @@ void scene18_initScene2(Scene *sc) { g_vars->scene18_girlJumpX = 283; g_vars->scene18_girlJumpY = -350; - g_fp->initArcadeKeys("SC_18"); + g_nmi->initArcadeKeys("SC_18"); } void scene19_initScene2() { - g_fp->_aniMan2 = 0; + g_nmi->_aniMan2 = 0; } int scene18_updateCursor() { if (g_vars->scene18_enteredTrubaRight) { - g_fp->_cursorId = PIC_CSR_DEFAULT; + g_nmi->_cursorId = PIC_CSR_DEFAULT; } else { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_cursorId == PIC_CSR_ITN) { - if (g_fp->_objectIdAtCursor == PIC_SC18_LADDER1) { - g_fp->_cursorId = (g_vars->scene18_manY <= 250) ? PIC_CSR_GOD : PIC_CSR_GOU; - } else if (g_fp->_objectIdAtCursor == PIC_SC18_LADDER2 || g_fp->_objectIdAtCursor == PIC_SC18_LADDER3) { - g_fp->_cursorId = PIC_CSR_GOU; + if (g_nmi->_cursorId == PIC_CSR_ITN) { + if (g_nmi->_objectIdAtCursor == PIC_SC18_LADDER1) { + g_nmi->_cursorId = (g_vars->scene18_manY <= 250) ? PIC_CSR_GOD : PIC_CSR_GOU; + } else if (g_nmi->_objectIdAtCursor == PIC_SC18_LADDER2 || g_nmi->_objectIdAtCursor == PIC_SC18_LADDER3) { + g_nmi->_cursorId = PIC_CSR_GOU; } - } else if (g_fp->_cursorId == PIC_CSR_DEFAULT && g_fp->_objectIdAtCursor == PIC_SC18_DOMIN && g_vars->scene18_domino && (g_vars->scene18_domino->_flags & 4)) { - g_fp->_cursorId = PIC_CSR_ITN; + } else if (g_nmi->_cursorId == PIC_CSR_DEFAULT && g_nmi->_objectIdAtCursor == PIC_SC18_DOMIN && g_vars->scene18_domino && (g_vars->scene18_domino->_flags & 4)) { + g_nmi->_cursorId = PIC_CSR_ITN; } } - return g_fp->_cursorId; + return g_nmi->_cursorId; } int scene19_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_objectIdAtCursor == PIC_SC19_RTRUBA31) - g_fp->_cursorId = g_vars->scene19_enteredTruba3 ? PIC_CSR_GOR : PIC_CSR_DEFAULT; + if (g_nmi->_objectIdAtCursor == PIC_SC19_RTRUBA31) + g_nmi->_cursorId = g_vars->scene19_enteredTruba3 ? PIC_CSR_GOR : PIC_CSR_DEFAULT; - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler18_clickBoard() { - if (ABS(967 - g_fp->_aniMan->_ox) > 1 || ABS(379 - g_fp->_aniMan->_oy) > 1 || g_fp->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) { - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, 967, 379, 1, ST_MAN_RIGHT); + if (ABS(967 - g_nmi->_aniMan->_ox) > 1 || ABS(379 - g_nmi->_aniMan->_oy) > 1 || g_nmi->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) { + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, 967, 379, 1, ST_MAN_RIGHT); ExCommand *ex = new ExCommand(0, 17, MSG_SC18_MANREADY, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags = 2; mq->addExCommandToEnd(ex); - postExCommand(g_fp->_aniMan->_id, 2, 967, 379, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, 967, 379, 0, -1); } else { g_vars->scene18_manIsReady = true; } } void sceneHandler18_showManJumpTo() { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT); - g_fp->_aniMan->_flags &= 0xFFFB; - g_fp->_aniMan->_flags &= 0xFEFF; + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT); + g_nmi->_aniMan->_flags &= 0xFFFB; + g_nmi->_aniMan->_flags &= 0xFEFF; g_vars->scene18_swingers[g_vars->scene18_manWheelPosTo]->sflags = 0x20; g_vars->scene18_swingers[g_vars->scene18_manWheelPosTo]->ani->changeStatics2(ST_KSL_JUMPMAN); @@ -405,7 +405,7 @@ void sceneHandler18_showManJumpTo() { g_vars->scene18_manIsReady = false; g_vars->scene18_enteredTrubaRight = true; - g_fp->_aniMan2 = g_vars->scene18_swingers[g_vars->scene18_manWheelPosTo]->ani; + g_nmi->_aniMan2 = g_vars->scene18_swingers[g_vars->scene18_manWheelPosTo]->ani; } void sceneHandler18and19_showManJump() { @@ -419,8 +419,8 @@ void sceneHandler18and19_showManJump() { y = g_vars->scene18_swingers[g_vars->scene18_manWheelPos]->ani->_oy; } - g_fp->_aniMan->show1(x + 62, y + 5, MV_MAN18_JUMPTOTRUBA, 0); - g_fp->_aniMan->_priority = 35; + g_nmi->_aniMan->show1(x + 62, y + 5, MV_MAN18_JUMPTOTRUBA, 0); + g_nmi->_aniMan->_priority = 35; int mqid = 0; @@ -433,9 +433,9 @@ void sceneHandler18and19_showManJump() { } if (mqid) { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(mqid), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(mqid), 0, 0); - g_fp->_aniMan2 = g_fp->_aniMan; + g_nmi->_aniMan2 = g_nmi->_aniMan; g_vars->scene18_enteredTrubaRight = false; mq->setFlags(mq->getFlags() | 1); @@ -537,10 +537,10 @@ void sceneHandler18and19_girlJumpTo() { } void sceneHandler18and19_manStandArmchair() { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT); - g_fp->_aniMan->_flags |= 0x100; - g_fp->_aniMan->_priority = 35; - g_fp->_aniMan->startAnim(MV_MAN18_STANDKRESLO, 0, -1); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT); + g_nmi->_aniMan->_flags |= 0x100; + g_nmi->_aniMan->_priority = 35; + g_nmi->_aniMan->startAnim(MV_MAN18_STANDKRESLO, 0, -1); } void sceneHandler18and19_drawRiders() { @@ -637,11 +637,11 @@ void sceneHandler18and19_drawRiders() { if ((int)i == g_vars->scene18_manWheelPosTo) { if (swinger->angle >= Common::deg2rad(170.0) && oldangle < Common::deg2rad(170.0)) { - g_fp->_gameLoader->preloadScene(SC_18, TrubaRight); + g_nmi->_gameLoader->preloadScene(SC_18, TrubaRight); } else if (swinger->angle >= Common::deg2rad(25.0) && oldangle < Common::deg2rad(25.0)) { - g_fp->_gameLoader->preloadScene(SC_19, TrubaRight); + g_nmi->_gameLoader->preloadScene(SC_19, TrubaRight); } else if (swinger->angle >= Common::deg2rad(270.0) && oldangle < Common::deg2rad(270.0)) { - g_fp->_sceneRect.translate(1200, 0); + g_nmi->_sceneRect.translate(1200, 0); } } @@ -732,26 +732,26 @@ int sceneHandler18(ExCommand *cmd) { break; } - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_param)) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + if (!ani || !canInteractAny(g_nmi->_aniMan, ani, cmd->_param)) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); if (pic && pic->_id == PIC_SC18_DOMIN && g_vars->scene18_domino - && (g_vars->scene18_domino->_flags & 4) && g_fp->_aniMan->isIdle()) { - if (!(g_fp->_aniMan->_flags & 0x100) && g_fp->_msgObjectId2 != g_vars->scene18_domino->_id) { - handleObjectInteraction(g_fp->_aniMan, g_vars->scene18_domino, cmd->_param); + && (g_vars->scene18_domino->_flags & 4) && g_nmi->_aniMan->isIdle()) { + if (!(g_nmi->_aniMan->_flags & 0x100) && g_nmi->_msgObjectId2 != g_vars->scene18_domino->_id) { + handleObjectInteraction(g_nmi->_aniMan, g_vars->scene18_domino, cmd->_param); cmd->_messageKind = 0; break; } } - if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_param)) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) - || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) { - g_fp->processArcade(cmd); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, cmd->_param)) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) + || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) { + g_nmi->processArcade(cmd); g_vars->scene18_manIsReady = false; @@ -763,21 +763,21 @@ int sceneHandler18(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - g_vars->scene18_manY = g_fp->_aniMan2->_oy; + g_vars->scene18_manY = g_nmi->_aniMan2->_oy; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } - if (g_vars->scene18_manIsReady && g_fp->_aniMan->_movement) + if (g_vars->scene18_manIsReady && g_nmi->_aniMan->_movement) g_vars->scene18_manIsReady = false; if (g_vars->scene18_bridgeIsConvoluted) { @@ -788,7 +788,7 @@ int sceneHandler18(ExCommand *cmd) { if (!g_vars->scene18_whirlgig->_movement) { g_vars->scene18_whirlgig->startAnim(MV_WHR18_SPIN, 0, -1); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); break; } @@ -796,7 +796,7 @@ int sceneHandler18(ExCommand *cmd) { sceneHandler18and19_animateRiders(); } - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); break; @@ -808,10 +808,10 @@ int sceneHandler18(ExCommand *cmd) { } void sceneHandler19_updateNumRides() { - int numRides = g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarAsInt(sO_DudeSwinged) + 1; + int numRides = g_nmi->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarAsInt(sO_DudeSwinged) + 1; if (numRides > 1) { - g_fp->setObjectState(sO_Girl, g_fp->getObjectEnumState(sO_Girl, sO_IsSwinging)); + g_nmi->setObjectState(sO_Girl, g_nmi->getObjectEnumState(sO_Girl, sO_IsSwinging)); g_vars->scene18_kidIsOnWheel = 1; g_vars->scene18_girlIsOnWheel++; @@ -819,7 +819,7 @@ void sceneHandler19_updateNumRides() { numRides = 0; } - g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->setSubVarAsInt(sO_DudeSwinged, numRides); + g_nmi->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->setSubVarAsInt(sO_DudeSwinged, numRides); } int sceneHandler19(ExCommand *cmd) { @@ -853,7 +853,7 @@ int sceneHandler19(ExCommand *cmd) { case 29: if (g_vars->scene18_enteredTrubaRight) { - switch (g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY)) { + switch (g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY)) { case PIC_SC19_RTRUBA1: g_vars->scene18_jumpDistance = 1; g_vars->scene18_jumpAngle = 331; @@ -880,12 +880,12 @@ int sceneHandler19(ExCommand *cmd) { } } else { if (g_vars->scene19_enteredTruba3) { - if (g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC19_RTRUBA3) { - if (g_fp->_aniMan->isIdle()) { - if (!(g_fp->_aniMan->_flags & 0x100)) { - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(PIC_SC19_RTRUBA31, 0); + if (g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC19_RTRUBA3) { + if (g_nmi->_aniMan->isIdle()) { + if (!(g_nmi->_aniMan->_flags & 0x100)) { + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(PIC_SC19_RTRUBA31, 0); - handleObjectInteraction(g_fp->_aniMan, pic, cmd->_param); + handleObjectInteraction(g_nmi->_aniMan, pic, cmd->_param); break; } } @@ -895,16 +895,16 @@ int sceneHandler19(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - g_vars->scene18_manY = g_fp->_aniMan2->_oy; + g_vars->scene18_manY = g_nmi->_aniMan2->_oy; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; } if (g_vars->scene18_bridgeIsConvoluted) { @@ -916,7 +916,7 @@ int sceneHandler19(ExCommand *cmd) { if (!g_vars->scene18_whirlgig->_movement) { g_vars->scene18_whirlgig->startAnim(MV_WHR19_SPIN, 0, -1); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); break; } @@ -924,7 +924,7 @@ int sceneHandler19(ExCommand *cmd) { sceneHandler18and19_animateRiders(); } - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); break; diff --git a/engines/ngi/fullpipe/scene20.cpp b/engines/ngi/fullpipe/scene20.cpp index a2427b9496e..497a031eaf4 100644 --- a/engines/ngi/fullpipe/scene20.cpp +++ b/engines/ngi/fullpipe/scene20.cpp @@ -39,11 +39,11 @@ namespace NGI { void scene20_setExits(Scene *sc) { int thingpar; - if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_OnStool) - || g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_OnTheFloor)) + if (g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_OnStool) + || g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_OnTheFloor)) thingpar = 1; - else if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_NearPipe) - || g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_NearPipeWithStool)) { + else if (g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_NearPipe) + || g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_NearPipeWithStool)) { getSc2MctlCompoundBySceneId(sc->_sceneId)->enableLinks(sO_CloseThing, 1); getSc2MctlCompoundBySceneId(sc->_sceneId)->enableLinks(sO_CloseThing2, 1); getSc2MctlCompoundBySceneId(sc->_sceneId)->enableLinks(sO_CloseThing3, 0); @@ -59,21 +59,21 @@ void scene20_setExits(Scene *sc) { } void scene20_initScene(Scene *sc) { - Scene *oldsc = g_fp->_currentScene; + Scene *oldsc = g_nmi->_currentScene; g_vars->scene20_grandma = sc->getStaticANIObject1ById(ANI_GRANDMA_20, -1); - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; - if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_OnTheFloor)) - g_fp->setObjectState(sO_Grandma, g_fp->getObjectEnumState(sO_Grandma, sO_NearPipe)); + if (g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_OnTheFloor)) + g_nmi->setObjectState(sO_Grandma, g_nmi->getObjectEnumState(sO_Grandma, sO_NearPipe)); - if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_OnStool)) { + if (g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_OnStool)) { g_vars->scene20_grandma->changeStatics2(ST_GMA20_STOOL); - } else if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_OnTheFloor)) { + } else if (g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_OnTheFloor)) { g_vars->scene20_grandma->changeStatics2(ST_GMA20_FLOOR); - } else if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_NearPipe) - || g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_NearPipeWithStool)) { + } else if (g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_NearPipe) + || g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_NearPipeWithStool)) { g_vars->scene20_grandma->changeStatics2(ST_GMA20_STAND); } else { g_vars->scene20_grandma->hide(); @@ -81,38 +81,38 @@ void scene20_initScene(Scene *sc) { scene20_setExits(sc); - g_fp->_floaters->init(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_20")); + g_nmi->_floaters->init(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_20")); for (int i = 0; i < 3; i++) { - g_fp->_floaters->genFlies(sc, g_fp->_rnd.getRandomNumber(101) + 70, g_fp->_rnd.getRandomNumber(51) + 175, 100, 0); - g_fp->_floaters->_array2[g_fp->_floaters->_array2.size() - 1].val13 = g_fp->_rnd.getRandomNumber(9); + g_nmi->_floaters->genFlies(sc, g_nmi->_rnd.getRandomNumber(101) + 70, g_nmi->_rnd.getRandomNumber(51) + 175, 100, 0); + g_nmi->_floaters->_array2[g_nmi->_floaters->_array2.size() - 1].val13 = g_nmi->_rnd.getRandomNumber(9); } - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; - g_vars->scene20_fliesCountdown = g_fp->_rnd.getRandomNumber(200) + 400; + g_vars->scene20_fliesCountdown = g_nmi->_rnd.getRandomNumber(200) + 400; } void sceneHandler20_updateFlies() { - int sz = g_fp->_floaters->_array2.size(); + int sz = g_nmi->_floaters->_array2.size(); if (sz < 3) { - g_fp->_floaters->genFlies(g_fp->_currentScene, 253, 650, 200, 0); - g_fp->_floaters->_array2[sz - 1].val2 = 250; - g_fp->_floaters->_array2[sz - 1].val3 = 200; + g_nmi->_floaters->genFlies(g_nmi->_currentScene, 253, 650, 200, 0); + g_nmi->_floaters->_array2[sz - 1].val2 = 250; + g_nmi->_floaters->_array2[sz - 1].val3 = 200; } else { - int idx = g_fp->_rnd.getRandomNumber(sz); + int idx = g_nmi->_rnd.getRandomNumber(sz); - g_fp->_floaters->_array2[idx].countdown = 0; - g_fp->_floaters->_array2[idx].fflags |= 4u; - g_fp->_floaters->_array2[idx].val2 = 250; - g_fp->_floaters->_array2[idx].val3 = 200; - g_fp->_floaters->_array2[idx].val6 = 253; - g_fp->_floaters->_array2[idx].val7 = 650; - g_fp->_floaters->_array2[idx].ani->_priority = 200; + g_nmi->_floaters->_array2[idx].countdown = 0; + g_nmi->_floaters->_array2[idx].fflags |= 4u; + g_nmi->_floaters->_array2[idx].val2 = 250; + g_nmi->_floaters->_array2[idx].val3 = 200; + g_nmi->_floaters->_array2[idx].val6 = 253; + g_nmi->_floaters->_array2[idx].val7 = 650; + g_nmi->_floaters->_array2[idx].ani->_priority = 200; } - g_vars->scene20_fliesCountdown = g_fp->_rnd.getRandomNumber(200) + 400; + g_vars->scene20_fliesCountdown = g_nmi->_rnd.getRandomNumber(200) + 400; } int sceneHandler20(ExCommand *cmd) { @@ -121,18 +121,18 @@ int sceneHandler20(ExCommand *cmd) { switch (cmd->_messageNum) { case MSG_SC20_UPDATELOCKABLE: - scene20_setExits(g_fp->_currentScene); + scene20_setExits(g_nmi->_currentScene); break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; } --g_vars->scene20_fliesCountdown; @@ -140,11 +140,11 @@ int sceneHandler20(ExCommand *cmd) { if (g_vars->scene20_fliesCountdown <= 0) sceneHandler20_updateFlies(); - g_fp->_floaters->update(); + g_nmi->_floaters->update(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); break; diff --git a/engines/ngi/fullpipe/scene21.cpp b/engines/ngi/fullpipe/scene21.cpp index a8049264a02..2099135b454 100644 --- a/engines/ngi/fullpipe/scene21.cpp +++ b/engines/ngi/fullpipe/scene21.cpp @@ -37,12 +37,12 @@ namespace NGI { void scene21_initScene(Scene *sc) { - Scene *oldsc = g_fp->_currentScene; + Scene *oldsc = g_nmi->_currentScene; g_vars->scene21_giraffeBottom = sc->getStaticANIObject1ById(ANI_GIRAFFE_BOTTOM, -1); - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; - if (g_fp->getObjectState(sO_LowerPipe_21) == g_fp->getObjectEnumState(sO_LowerPipe_21, sO_IsOpened)) { + if (g_nmi->getObjectState(sO_LowerPipe_21) == g_nmi->getObjectEnumState(sO_LowerPipe_21, sO_IsOpened)) { g_vars->scene21_giraffeBottom->changeStatics2(ST_GRFB_HANG); g_vars->scene21_pipeIsOpen = true; g_vars->scene21_wigglePos = 0.0; @@ -52,18 +52,18 @@ void scene21_initScene(Scene *sc) { } else { g_vars->scene21_pipeIsOpen = false; } - g_fp->_currentScene = oldsc; - g_fp->initArcadeKeys("SC_21"); + g_nmi->_currentScene = oldsc; + g_nmi->initArcadeKeys("SC_21"); } int scene21_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_cursorId == PIC_CSR_ITN && g_fp->_objectIdAtCursor == PIC_SC21_DTRUBA) + if (g_nmi->_cursorId == PIC_CSR_ITN && g_nmi->_objectIdAtCursor == PIC_SC21_DTRUBA) - g_fp->_cursorId = PIC_CSR_GOD; + g_nmi->_cursorId = PIC_CSR_GOD; - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler21_doWiggle() { @@ -86,50 +86,50 @@ int sceneHandler21(ExCommand *cmd) { switch (cmd->_messageNum) { case MSG_SC21_UPDATEASS: - if (g_fp->getObjectState(sO_LowerPipe_21) == g_fp->getObjectEnumState(sO_LowerPipe_21, sO_IsOpened)) { + if (g_nmi->getObjectState(sO_LowerPipe_21) == g_nmi->getObjectEnumState(sO_LowerPipe_21, sO_IsOpened)) { g_vars->scene21_giraffeBottom->changeStatics2(ST_GRFB_HANG); g_vars->scene21_giraffeBottom->setOXY(g_vars->scene21_giraffeBottomX, g_vars->scene21_giraffeBottomY); g_vars->scene21_giraffeBottom->changeStatics2(ST_GRFB_SIT); g_vars->scene21_pipeIsOpen = false; - g_fp->setObjectState(sO_LowerPipe_21, g_fp->getObjectEnumState(sO_LowerPipe_21, sO_IsClosed)); + g_nmi->setObjectState(sO_LowerPipe_21, g_nmi->getObjectEnumState(sO_LowerPipe_21, sO_IsClosed)); } break; case 29: { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_param)) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + if (!ani || !canInteractAny(g_nmi->_aniMan, ani, cmd->_param)) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); - if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_param) ) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) - || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) - g_fp->processArcade(cmd); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, cmd->_param) ) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) + || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) + g_nmi->processArcade(cmd); } } } break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x <= g_fp->_sceneWidth - 460) { - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x <= g_nmi->_sceneWidth - 460) { + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; } else { - g_fp->_currentScene->_x = g_fp->_sceneWidth - x; + g_nmi->_currentScene->_x = g_nmi->_sceneWidth - x; } - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } if (g_vars->scene21_pipeIsOpen && !g_vars->scene21_wiggleTrigger) @@ -137,8 +137,8 @@ int sceneHandler21(ExCommand *cmd) { g_vars->scene21_wiggleTrigger = !g_vars->scene21_wiggleTrigger; - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); break; diff --git a/engines/ngi/fullpipe/scene22.cpp b/engines/ngi/fullpipe/scene22.cpp index 8b937ac9dbd..5447219669e 100644 --- a/engines/ngi/fullpipe/scene22.cpp +++ b/engines/ngi/fullpipe/scene22.cpp @@ -39,19 +39,19 @@ namespace NGI { void scene22_initScene(Scene *sc) { g_vars->scene22_bag = sc->getStaticANIObject1ById(ANI_MESHOK, -1); - Scene *oldsc = g_fp->_currentScene; - g_fp->_currentScene = sc; + Scene *oldsc = g_nmi->_currentScene; + g_nmi->_currentScene = sc; g_vars->scene22_giraffeMiddle = sc->getStaticANIObject1ById(ANI_GIRAFFE_MIDDLE, -1); g_vars->scene22_dudeIsOnStool = false; g_vars->scene22_interactionIsDisabled = false; g_vars->scene22_craneIsOut = true; - if (g_fp->getObjectState(sO_Bag_22) == g_fp->getObjectEnumState(sO_Bag_22, sO_NotFallen)) + if (g_nmi->getObjectState(sO_Bag_22) == g_nmi->getObjectEnumState(sO_Bag_22, sO_NotFallen)) g_vars->scene22_numBagFalls = 0; - else if (g_fp->getObjectState(sO_Bag_22) == g_fp->getObjectEnumState(sO_Bag_22, sO_FallenOnce)) + else if (g_nmi->getObjectState(sO_Bag_22) == g_nmi->getObjectEnumState(sO_Bag_22, sO_FallenOnce)) g_vars->scene22_numBagFalls = 1; - else if ( g_fp->getObjectState(sO_Bag_22) == g_fp->getObjectEnumState(sO_Bag_22, sO_FallenTwice)) + else if ( g_nmi->getObjectState(sO_Bag_22) == g_nmi->getObjectEnumState(sO_Bag_22, sO_FallenTwice)) g_vars->scene22_numBagFalls = 2; else { g_vars->scene22_numBagFalls = 3; @@ -59,44 +59,44 @@ void scene22_initScene(Scene *sc) { } - if ( g_fp->getObjectState(sO_LowerPipe_21) == g_fp->getObjectEnumState(sO_LowerPipe_21, sO_IsOpened)) + if ( g_nmi->getObjectState(sO_LowerPipe_21) == g_nmi->getObjectEnumState(sO_LowerPipe_21, sO_IsOpened)) g_vars->scene22_giraffeMiddle->changeStatics2(ST_GRFM_AFTER); else g_vars->scene22_giraffeMiddle->changeStatics2(ST_GRFM_NORM); - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; - g_fp->initArcadeKeys("SC_22"); + g_nmi->initArcadeKeys("SC_22"); } int scene22_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_objectIdAtCursor != ANI_HANDLE_L) - return g_fp->_cursorId; + if (g_nmi->_objectIdAtCursor != ANI_HANDLE_L) + return g_nmi->_cursorId; - int sel = g_fp->_inventory->getSelectedItemId(); + int sel = g_nmi->_inventory->getSelectedItemId(); if (!sel) { - g_fp->_cursorId = PIC_CSR_ITN; - return g_fp->_cursorId; + g_nmi->_cursorId = PIC_CSR_ITN; + return g_nmi->_cursorId; } if (g_vars->scene22_dudeIsOnStool || (sel != ANI_INV_STOOL && sel != ANI_INV_BOX)) ; //empty else - g_fp->_cursorId = PIC_CSR_ITN_INV; + g_nmi->_cursorId = PIC_CSR_ITN_INV; - return g_fp->_cursorId; + return g_nmi->_cursorId; } void scene22_setBagState() { if (g_vars->scene22_craneIsOut) { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene22_bag, ST_MSH_SIT, QU_MSH_CRANEOUT, 1); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene22_bag, ST_MSH_SIT, QU_MSH_MOVE, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene22_bag, ST_MSH_SIT, QU_MSH_CRANEOUT, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene22_bag, ST_MSH_SIT, QU_MSH_MOVE, 0); } else { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene22_bag, ST_MSH_SIT, QU_MSH_CRANEOUT, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene22_bag, ST_MSH_SIT, QU_MSH_MOVE, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene22_bag, ST_MSH_SIT, QU_MSH_CRANEOUT, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene22_bag, ST_MSH_SIT, QU_MSH_MOVE, 1); } } @@ -105,7 +105,7 @@ void sceneHandler22_showStool() { } void sceneHandler22_hideStool() { - g_fp->_currentScene->getStaticANIObject1ById(ANI_TABURETTE, -1)->hide(); + g_nmi->_currentScene->getStaticANIObject1ById(ANI_TABURETTE, -1)->hide(); } void sceneHandler22_handleDown() { @@ -130,28 +130,28 @@ void sceneHandler22_handleDown() { if (g_vars->scene22_numBagFalls) { if (g_vars->scene22_numBagFalls == 1) { - state = g_fp->getObjectEnumState(sO_Bag_22, sO_FallenOnce); + state = g_nmi->getObjectEnumState(sO_Bag_22, sO_FallenOnce); } else if (g_vars->scene22_numBagFalls == 2) { - state = g_fp->getObjectEnumState(sO_Bag_22, sO_FallenTwice); + state = g_nmi->getObjectEnumState(sO_Bag_22, sO_FallenTwice); } else { - state = g_fp->getObjectEnumState(sO_Bag_22, sO_BrushHasFallen); + state = g_nmi->getObjectEnumState(sO_Bag_22, sO_BrushHasFallen); } } else { - state = g_fp->getObjectEnumState(sO_Bag_22, sO_NotFallen); + state = g_nmi->getObjectEnumState(sO_Bag_22, sO_NotFallen); } - g_fp->setObjectState(sO_Bag_22, state); + g_nmi->setObjectState(sO_Bag_22, state); } g_vars->scene22_craneIsOut = true; - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene22_bag, ST_MSH_SIT, QU_MSH_CRANEOUT, 1); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene22_bag, ST_MSH_SIT, QU_MSH_MOVE, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene22_bag, ST_MSH_SIT, QU_MSH_CRANEOUT, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene22_bag, ST_MSH_SIT, QU_MSH_MOVE, 0); } void sceneHandler22_fromStool(ExCommand *cmd) { - if (g_fp->_aniMan->isIdle() && !(g_fp->_aniMan->_flags & 0x100)) { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC22_FROMSTOOL), 0, 0); + if (g_nmi->_aniMan->isIdle() && !(g_nmi->_aniMan->_flags & 0x100)) { + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC22_FROMSTOOL), 0, 0); mq->addExCommandToEnd(cmd->createClone()); mq->setFlags(mq->getFlags() | 1); @@ -165,10 +165,10 @@ void sceneHandler22_stoolLogic(ExCommand *cmd) { int xpos; int manId; - if (g_fp->_aniMan->isIdle() && !(g_fp->_aniMan->_flags & 0x100)) { + if (g_nmi->_aniMan->isIdle() && !(g_nmi->_aniMan->_flags & 0x100)) { if (cmd->_param == ANI_INV_STOOL) { - if (abs(841 - g_fp->_aniMan->_ox) <= 1) { - if (abs(449 - g_fp->_aniMan->_oy) <= 1) { + if (abs(841 - g_nmi->_aniMan->_ox) <= 1) { + if (abs(449 - g_nmi->_aniMan->_oy) <= 1) { chainQueue(QU_SC22_PUTSTOOL, 1); g_vars->scene22_interactionIsDisabled = true; @@ -179,11 +179,11 @@ void sceneHandler22_stoolLogic(ExCommand *cmd) { } if (cmd->_param == ANI_INV_BOX) { - ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_TABURETTE, -1); + ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_TABURETTE, -1); if (!ani || !(ani->_flags & 4)) { - if (abs(841 - g_fp->_aniMan->_ox) <= 1) { - if (abs(449 - g_fp->_aniMan->_oy) <= 1) { - chainObjQueue(g_fp->_aniMan, QU_SC22_TRYBOX, 1); + if (abs(841 - g_nmi->_aniMan->_ox) <= 1) { + if (abs(449 - g_nmi->_aniMan->_oy) <= 1) { + chainObjQueue(g_nmi->_aniMan, QU_SC22_TRYBOX, 1); return; } } @@ -191,14 +191,14 @@ void sceneHandler22_stoolLogic(ExCommand *cmd) { xpos = 841; manId = ST_MAN_RIGHT; LABEL_31: - mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, xpos, 449, 1, manId); + mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, xpos, 449, 1, manId); if (!mq) return; mq->addExCommandToEnd(cmd->createClone()); - postExCommand(g_fp->_aniMan->_id, 2, 841, 449, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, 841, 449, 0, -1); return; } } else { @@ -206,7 +206,7 @@ void sceneHandler22_stoolLogic(ExCommand *cmd) { return; if (g_vars->scene22_dudeIsOnStool) { - if (g_fp->_aniMan->_movement) + if (g_nmi->_aniMan->_movement) return; chainQueue(QU_SC22_HANDLEDOWN, 1); @@ -215,10 +215,10 @@ void sceneHandler22_stoolLogic(ExCommand *cmd) { return; } - ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_TABURETTE, -1); + ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_TABURETTE, -1); if (ani && (ani->_flags & 4)) { - int x = g_fp->_aniMan->_ox; - int y = g_fp->_aniMan->_oy; + int x = g_nmi->_aniMan->_ox; + int y = g_nmi->_aniMan->_oy; if (sqrt((double)((841 - x) * (841 - x) + (449 - y) * (449 - y))) < sqrt((double)((1075 - x) * (1075 - x) + (449 - y) * (449 - y)))) { @@ -243,7 +243,7 @@ void sceneHandler22_stoolLogic(ExCommand *cmd) { MakeQueueStruct mkQueue; mgm.attachObject(ANI_MAN); - mkQueue.ani = g_fp->_aniMan; + mkQueue.ani = g_nmi->_aniMan; mkQueue.staticsId2 = ST_MAN_RIGHT; mkQueue.x1 = 934; mkQueue.y1 = 391; @@ -263,7 +263,7 @@ void sceneHandler22_stoolLogic(ExCommand *cmd) { delete mq; - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC22_TOSTOOL_R), 0, 0); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC22_TOSTOOL_R), 0, 0); mq->insertExCommandAt(2, ex); mq->setFlags(mq->getFlags() | 1); @@ -271,19 +271,19 @@ void sceneHandler22_stoolLogic(ExCommand *cmd) { g_vars->scene22_interactionIsDisabled = true; } else { - if (abs(1010 - g_fp->_aniMan->_ox) <= 1) { - if (abs(443 - g_fp->_aniMan->_oy) <= 1) { + if (abs(1010 - g_nmi->_aniMan->_ox) <= 1) { + if (abs(443 - g_nmi->_aniMan->_oy) <= 1) { chainQueue(QU_SC22_TRYHANDLE, 1); return; } } - mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, 1010, 443, 1, ST_MAN_UP); + mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, 1010, 443, 1, ST_MAN_UP); if (mq) { mq->addExCommandToEnd(cmd->createClone()); - postExCommand(g_fp->_aniMan->_id, 2, 1010, 443, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, 1010, 443, 0, -1); return; } } @@ -301,8 +301,8 @@ int sceneHandler22(ExCommand *cmd) { break; case MSG_SC22_CHECKGMABOOT: - if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_In_15)) { - g_fp->setObjectState(sO_Boot_15, g_fp->getObjectEnumState(sO_Boot_15, sO_IsPresent)); + if (g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_In_15)) { + g_nmi->setObjectState(sO_Boot_15, g_nmi->getObjectEnumState(sO_Boot_15, sO_IsPresent)); } break; @@ -319,13 +319,13 @@ int sceneHandler22(ExCommand *cmd) { g_vars->scene22_interactionIsDisabled = false; getCurrSceneSc2MotionController()->activate(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 1); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 1); break; case MSG_SC22_ONSTOOL: g_vars->scene22_dudeIsOnStool = true; getCurrSceneSc2MotionController()->deactivate(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 0); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 0); break; case MSG_SC22_HANDLEDOWN: @@ -334,7 +334,7 @@ int sceneHandler22(ExCommand *cmd) { case 29: if (!g_vars->scene22_interactionIsDisabled) { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); if (ani && ani->_id == ANI_HANDLE_L) { sceneHandler22_stoolLogic(cmd); @@ -342,14 +342,14 @@ int sceneHandler22(ExCommand *cmd) { } if (!g_vars->scene22_dudeIsOnStool) { - if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_param)) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + if (!ani || !canInteractAny(g_nmi->_aniMan, ani, cmd->_param)) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); - if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_param)) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) - || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) { - g_fp->processArcade(cmd); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, cmd->_param)) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) + || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) { + g_nmi->processArcade(cmd); return 0; } } @@ -357,7 +357,7 @@ int sceneHandler22(ExCommand *cmd) { return 0; } - if (g_fp->_aniMan->_statics->_staticsId == ST_MAN_RIGHT && !g_fp->_aniMan->_movement) { + if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN_RIGHT && !g_nmi->_aniMan->_movement) { sceneHandler22_fromStool(cmd); return 0; @@ -368,24 +368,24 @@ int sceneHandler22(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x <= g_fp->_sceneWidth - 460) { - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x <= g_nmi->_sceneWidth - 460) { + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; } else { - g_fp->_currentScene->_x = g_fp->_sceneWidth - x; + g_nmi->_currentScene->_x = g_nmi->_sceneWidth - x; } - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); } break; diff --git a/engines/ngi/fullpipe/scene23.cpp b/engines/ngi/fullpipe/scene23.cpp index 46506d4fa79..506aa5c8354 100644 --- a/engines/ngi/fullpipe/scene23.cpp +++ b/engines/ngi/fullpipe/scene23.cpp @@ -73,12 +73,12 @@ void scene23_initScene(Scene *sc) { g_vars->scene23_giraffeTop = sc->getStaticANIObject1ById(ANI_GIRAFFE_TOP, -1); g_vars->scene23_giraffee = sc->getStaticANIObject1ById(ANI_GIRAFFEE, -1); - g_fp->_floaters->init(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_23")); + g_nmi->_floaters->init(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_23")); - Scene *oldsc = g_fp->_currentScene; - g_fp->_currentScene = sc; + Scene *oldsc = g_nmi->_currentScene; + g_nmi->_currentScene = sc; - if (g_fp->getObjectState(sO_UpperHatch_23) == g_fp->getObjectEnumState(sO_UpperHatch_23, sO_Opened)) { + if (g_nmi->getObjectState(sO_UpperHatch_23) == g_nmi->getObjectEnumState(sO_UpperHatch_23, sO_Opened)) { sc->getPictureObjectById(PIC_SC23_BOXOPEN, 0)->_flags |= 4; sc->getPictureObjectById(PIC_SC23_BOXCLOSED, 0)->_flags &= 0xFFFB; sc->getPictureObjectById(PIC_SC23_BTN1, 0)->_flags |= 4; @@ -112,18 +112,18 @@ void scene23_initScene(Scene *sc) { sc->getStaticANIObject1ById(ANI_LUK23_U, -1)->changeStatics2(ST_LUK23U_CLOSED); - g_fp->_floaters->genFlies(sc, 600, 90, 0, 0); + g_nmi->_floaters->genFlies(sc, 600, 90, 0, 0); } - if (g_fp->getObjectState(sO_LowerHatch_23) == g_fp->getObjectEnumState(sO_LowerHatch_23, sO_Opened)) { + if (g_nmi->getObjectState(sO_LowerHatch_23) == g_nmi->getObjectEnumState(sO_LowerHatch_23, sO_Opened)) { g_vars->scene23_giraffeTop->show1(-1, -1, -1, 0); g_vars->scene23_giraffeTop->changeStatics2(ST_GRFU_UP); - if (g_fp->getObjectState(sO_LowerPipe_21) == g_fp->getObjectEnumState(sO_LowerPipe_21, sO_IsOpened)) { + if (g_nmi->getObjectState(sO_LowerPipe_21) == g_nmi->getObjectEnumState(sO_LowerPipe_21, sO_IsOpened)) { g_vars->scene23_giraffeTop->changeStatics2(ST_GRFU_KISS); g_vars->scene23_giraffee->hide(); } else { - if (g_fp->getObjectState(sO_UpperHatch_23) == g_fp->getObjectEnumState(sO_UpperHatch_23, sO_Opened) + if (g_nmi->getObjectState(sO_UpperHatch_23) == g_nmi->getObjectEnumState(sO_UpperHatch_23, sO_Opened) && (g_vars->scene23_giraffee->_flags & 4)) g_vars->scene23_giraffeTop->setOXY(614, 362); else @@ -135,7 +135,7 @@ void scene23_initScene(Scene *sc) { sc->getStaticANIObject1ById(ANI_LUK23_D, -1)->changeStatics2(ST_LUK23_OPEN); - if (g_fp->getObjectState(sO_Lever_23) == g_fp->getObjectEnumState(sO_Lever_23, sO_Taken)) + if (g_nmi->getObjectState(sO_Lever_23) == g_nmi->getObjectEnumState(sO_Lever_23, sO_Taken)) sc->getStaticANIObject1ById(ANI_INV_LEVERHANDLE, -1)->hide(); sc->getStaticANIObject1ById(ANI_HANDLE23, -1)->hide(); @@ -147,32 +147,32 @@ void scene23_initScene(Scene *sc) { sc->getStaticANIObject1ById(ANI_INV_LEVERHANDLE, -1)->hide(); } - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; } void scene23_setGiraffeState() { - if (g_fp->getObjectState(sO_UpperHatch_23) == g_fp->getObjectEnumState(sO_UpperHatch_23, sO_Opened)) { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene23_giraffeTop, ST_GRFU_UP, QU_GRFU_TURN_UL, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene23_giraffeTop, ST_GRFU_UP, QU_GRFU_TURN_UD, 0); + if (g_nmi->getObjectState(sO_UpperHatch_23) == g_nmi->getObjectEnumState(sO_UpperHatch_23, sO_Opened)) { + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene23_giraffeTop, ST_GRFU_UP, QU_GRFU_TURN_UL, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene23_giraffeTop, ST_GRFU_UP, QU_GRFU_TURN_UD, 0); } } int scene23_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_objectIdAtCursor == PIC_SC23_LADDERU) { + if (g_nmi->_objectIdAtCursor == PIC_SC23_LADDERU) { if (g_vars->scene23_topReached) - return g_fp->_cursorId; + return g_nmi->_cursorId; - g_fp->_cursorId = getGameLoaderInventory()->getSelectedItemId() ? PIC_CSR_GOU : PIC_CSR_ITN; // FIXME check + g_nmi->_cursorId = getGameLoaderInventory()->getSelectedItemId() ? PIC_CSR_GOU : PIC_CSR_ITN; // FIXME check } - if (g_fp->_objectIdAtCursor == PIC_SC23_BTN1 || g_fp->_objectIdAtCursor == PIC_SC23_BTN2 - || g_fp->_objectIdAtCursor == PIC_SC23_BTN3 || g_fp->_objectIdAtCursor == PIC_SC23_BTN4 - || g_fp->_objectIdAtCursor == ANI_CALENDWHEEL) - g_fp->_cursorId = PIC_CSR_LIFT; + if (g_nmi->_objectIdAtCursor == PIC_SC23_BTN1 || g_nmi->_objectIdAtCursor == PIC_SC23_BTN2 + || g_nmi->_objectIdAtCursor == PIC_SC23_BTN3 || g_nmi->_objectIdAtCursor == PIC_SC23_BTN4 + || g_nmi->_objectIdAtCursor == ANI_CALENDWHEEL) + g_nmi->_cursorId = PIC_CSR_LIFT; - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler23_showStool() { @@ -180,7 +180,7 @@ void sceneHandler23_showStool() { } void sceneHandler23_hideStool() { - g_fp->_currentScene->getStaticANIObject1ById(ANI_TABURETTE, -1)->hide(); + g_nmi->_currentScene->getStaticANIObject1ById(ANI_TABURETTE, -1)->hide(); } void sceneHandler23_startKiss() { @@ -288,23 +288,23 @@ void sceneHandler23_spinWheel3() { } void sceneHandler23_pushButton(ExCommand *cmd) { - if (g_fp->_aniMan->isIdle() || !(g_fp->_aniMan->_flags & 0x100)) { + if (g_nmi->_aniMan->isIdle() || !(g_nmi->_aniMan->_flags & 0x100)) { if (!g_vars->scene23_topReached) { - if (g_fp->_aniMan->_ox != 405 || g_fp->_aniMan->_oy != 220) { - if (g_fp->_aniMan->_ox != 276 || g_fp->_aniMan->_oy != 438 - || g_fp->_aniMan->_movement || g_fp->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) { - if (g_fp->_msgX == 276 && g_fp->_msgY == 438 ) + if (g_nmi->_aniMan->_ox != 405 || g_nmi->_aniMan->_oy != 220) { + if (g_nmi->_aniMan->_ox != 276 || g_nmi->_aniMan->_oy != 438 + || g_nmi->_aniMan->_movement || g_nmi->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) { + if (g_nmi->_msgX == 276 && g_nmi->_msgY == 438 ) return; - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, 276, 438, 1, ST_MAN_RIGHT); + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, 276, 438, 1, ST_MAN_RIGHT); if (mq) { mq->addExCommandToEnd(cmd->createClone()); - postExCommand(g_fp->_aniMan->_id, 2, 276, 438, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, 276, 438, 0, -1); } } else { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC23_TOCALENDAR), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC23_TOCALENDAR), 0, 0); mq->addExCommandToEnd(cmd->createClone()); mq->setFlags(mq->getFlags() | 1); @@ -318,7 +318,7 @@ void sceneHandler23_pushButton(ExCommand *cmd) { } } - if (!g_fp->_aniMan->_movement && g_fp->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER) { + if (!g_nmi->_aniMan->_movement && g_nmi->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER) { int mv = 0; switch (cmd->_messageNum) { @@ -343,7 +343,7 @@ void sceneHandler23_pushButton(ExCommand *cmd) { } if (mv) - g_fp->_aniMan->startAnim(mv, 0, -1); + g_nmi->_aniMan->startAnim(mv, 0, -1); } } @@ -375,25 +375,25 @@ void sceneHandler23_sendClick(StaticANIObject *ani) { } void sceneHandler23_checkReachingTop() { - if (g_fp->_aniMan->_movement || g_fp->_aniMan->_statics->_staticsId != ST_MAN_STANDLADDER - || g_fp->_aniMan->_ox != 405 || g_fp->_aniMan->_oy != 220) + if (g_nmi->_aniMan->_movement || g_nmi->_aniMan->_statics->_staticsId != ST_MAN_STANDLADDER + || g_nmi->_aniMan->_ox != 405 || g_nmi->_aniMan->_oy != 220) g_vars->scene23_topReached = false; else g_vars->scene23_topReached = true; } void sceneHandler23_exitCalendar() { - if (!g_fp->_aniMan->_movement && g_fp->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER - && !g_fp->_aniMan->getMessageQueue() && !(g_fp->_aniMan->_flags & 0x100)) { + if (!g_nmi->_aniMan->_movement && g_nmi->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER + && !g_nmi->_aniMan->getMessageQueue() && !(g_nmi->_aniMan->_flags & 0x100)) { chainQueue(QU_SC23_FROMCALENDAREXIT, 1); g_vars->scene23_someVar = 2; } } void sceneHandler23_fromCalendar(ExCommand *cmd) { - if (!g_fp->_aniMan->_movement && g_fp->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER - && !g_fp->_aniMan->getMessageQueue() && !(g_fp->_aniMan->_flags & 0x100)) { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC23_FROMCALENDAR), 0, 0); + if (!g_nmi->_aniMan->_movement && g_nmi->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER + && !g_nmi->_aniMan->getMessageQueue() && !(g_nmi->_aniMan->_flags & 0x100)) { + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC23_FROMCALENDAR), 0, 0); mq->addExCommandToEnd(cmd->createClone()); mq->setFlags(mq->getFlags() | 1); @@ -405,8 +405,8 @@ void sceneHandler23_fromCalendar(ExCommand *cmd) { } void sceneHandler23_fromStool(ExCommand *cmd) { - if (!g_fp->_aniMan->getMessageQueue() && !(g_fp->_aniMan->_flags & 0x100)) { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC23_FROMSTOOL), 0, 0); + if (!g_nmi->_aniMan->getMessageQueue() && !(g_nmi->_aniMan->_flags & 0x100)) { + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC23_FROMSTOOL), 0, 0); mq->addExCommandToEnd(cmd->createClone()); mq->setFlags(mq->getFlags() | 1); @@ -427,7 +427,7 @@ int sceneHandler23(ExCommand *cmd) { getCurrSceneSc2MotionController()->activate(); getGameLoaderInteractionController()->enableFlag24(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 1); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 1); break; case MSG_SC23_HIDEGIRAFFEE: @@ -441,7 +441,7 @@ int sceneHandler23(ExCommand *cmd) { getCurrSceneSc2MotionController()->deactivate(); getGameLoaderInteractionController()->disableFlag24(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 0); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 0); break; case MSG_SC22_SHOWSTOOL: @@ -476,26 +476,26 @@ int sceneHandler23(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; } - g_fp->_floaters->update(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_floaters->update(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); break; case 29: { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); int picId; if (ani && ani->_id == ANI_CALENDWHEEL) { @@ -506,7 +506,7 @@ int sceneHandler23(ExCommand *cmd) { sceneHandler23_checkReachingTop(); if (g_vars->scene23_topReached) { - picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); if (picId == PIC_SC23_LADDER) { sceneHandler23_exitCalendar(); @@ -525,7 +525,7 @@ int sceneHandler23(ExCommand *cmd) { } if (!g_vars->scene23_isOnStool) { - picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); if (picId == PIC_SC23_LADDERU && !g_vars->scene23_topReached) { sceneHandler23_pushButton(cmd); @@ -537,7 +537,7 @@ int sceneHandler23(ExCommand *cmd) { } if (ani && ani->_id == ANI_HANDLE23) { - handleObjectInteraction(g_fp->_aniMan, ani, cmd->_param); + handleObjectInteraction(g_nmi->_aniMan, ani, cmd->_param); cmd->_messageKind = 0; } else { sceneHandler23_fromStool(cmd); diff --git a/engines/ngi/fullpipe/scene24.cpp b/engines/ngi/fullpipe/scene24.cpp index 2db4eca7603..1972e174c9c 100644 --- a/engines/ngi/fullpipe/scene24.cpp +++ b/engines/ngi/fullpipe/scene24.cpp @@ -44,10 +44,10 @@ void scene24_initScene(Scene *sc) { g_vars->scene24_jet->setAlpha(0xa0); g_vars->scene24_drop->setAlpha(0xa0); - Scene *oldsc = g_fp->_currentScene; - g_fp->_currentScene = sc; + Scene *oldsc = g_nmi->_currentScene; + g_nmi->_currentScene = sc; - if (g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_Overfull)) { + if (g_nmi->getObjectState(sO_Pool) == g_nmi->getObjectEnumState(sO_Pool, sO_Overfull)) { g_vars->scene24_jetIsOn = true; g_vars->scene24_flowIsLow = false; } else { @@ -60,53 +60,53 @@ void scene24_initScene(Scene *sc) { g_vars->scene24_flowIsLow = true; } - if (g_fp->getObjectState(sO_Pool) < g_fp->getObjectEnumState(sO_Pool, sO_Full)) { + if (g_nmi->getObjectState(sO_Pool) < g_nmi->getObjectEnumState(sO_Pool, sO_Full)) { g_vars->scene24_waterIsOn = false; g_vars->scene24_water->hide(); - g_fp->setObjectState(sO_StairsDown_24, g_fp->getObjectEnumState(sO_StairsDown_24, sO_IsOpened)); + g_nmi->setObjectState(sO_StairsDown_24, g_nmi->getObjectEnumState(sO_StairsDown_24, sO_IsOpened)); } else { g_vars->scene24_waterIsOn = true; - g_fp->setObjectState(sO_StairsDown_24, g_fp->getObjectEnumState(sO_StairsDown_24, sO_IsClosed)); + g_nmi->setObjectState(sO_StairsDown_24, g_nmi->getObjectEnumState(sO_StairsDown_24, sO_IsClosed)); } - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; } void scene24_setPoolState() { - if (g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_Overfull)) { - g_fp->_behaviorManager->setFlagByStaticAniObject(g_vars->scene24_drop, 0); + if (g_nmi->getObjectState(sO_Pool) == g_nmi->getObjectEnumState(sO_Pool, sO_Overfull)) { + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_vars->scene24_drop, 0); - g_fp->playSound(SND_24_007, 1); - } else if (g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_Full)) { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOFLOOR, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER, 1); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER2, 0); + g_nmi->playSound(SND_24_007, 1); + } else if (g_nmi->getObjectState(sO_Pool) == g_nmi->getObjectEnumState(sO_Pool, sO_Full)) { + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOFLOOR, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER2, 0); - g_fp->playSound(SND_24_006, 1); - } else if (g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_HalfFull)) { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOFLOOR, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER2, 1); + g_nmi->playSound(SND_24_006, 1); + } else if (g_nmi->getObjectState(sO_Pool) == g_nmi->getObjectEnumState(sO_Pool, sO_HalfFull)) { + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOFLOOR, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER2, 1); } else { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOFLOOR, 1); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER2, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOFLOOR, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER2, 0); } } int sceneHandler24(ExCommand *cmd) { if (cmd->_messageKind == 17 && cmd->_messageNum == 33) { - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) { - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) { + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; } - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; } if (g_vars->scene24_waterIsOn && !g_vars->scene24_water->_movement) { @@ -119,7 +119,7 @@ int sceneHandler24(ExCommand *cmd) { if (g_vars->scene24_jetIsOn && !g_vars->scene24_jet->_movement) g_vars->scene24_jet->startAnim(MV_JET24_FLOW, 0, -1); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); } return 0; diff --git a/engines/ngi/fullpipe/scene25.cpp b/engines/ngi/fullpipe/scene25.cpp index d544b6c3d07..fba4089e639 100644 --- a/engines/ngi/fullpipe/scene25.cpp +++ b/engines/ngi/fullpipe/scene25.cpp @@ -53,33 +53,33 @@ void scene25_initScene(Scene *sc, int entranceId) { g_vars->scene25_drop->setAlpha(0xa0); g_vars->scene25_dudeIsOnBoard = false; - if (g_fp->getObjectState(sO_Pool) < g_fp->getObjectEnumState(sO_Pool, sO_HalfFull)) { + if (g_nmi->getObjectState(sO_Pool) < g_nmi->getObjectEnumState(sO_Pool, sO_HalfFull)) { g_vars->scene25_waterIsPresent = false; g_vars->scene25_water->hide(); } else { g_vars->scene25_waterIsPresent = true; - g_fp->playSound(SND_25_006, 1); + g_nmi->playSound(SND_25_006, 1); } - int boardState = g_fp->getObjectState(sO_Board_25); + int boardState = g_nmi->getObjectState(sO_Board_25); if (entranceId == TrubaRight) { - if (boardState == g_fp->getObjectEnumState(sO_Board_25, sO_FarAway)) { + if (boardState == g_nmi->getObjectEnumState(sO_Board_25, sO_FarAway)) { scene25_showBoardOnRightFar(); - g_fp->playSound(SND_25_029, 0); + g_nmi->playSound(SND_25_029, 0); g_vars->scene25_boardIsSelectable = false; } else { - if (boardState == g_fp->getObjectEnumState(sO_Board_25, sO_Nearby) - || boardState == g_fp->getObjectEnumState(sO_Board_25, sO_WithDudeOnRight)) + if (boardState == g_nmi->getObjectEnumState(sO_Board_25, sO_Nearby) + || boardState == g_nmi->getObjectEnumState(sO_Board_25, sO_WithDudeOnRight)) scene25_showBoardOnRightClose(); g_vars->scene25_boardIsSelectable = false; } } else { - if (boardState == g_fp->getObjectEnumState(sO_Board_25, sO_WithDudeOnLeft)) { + if (boardState == g_nmi->getObjectEnumState(sO_Board_25, sO_WithDudeOnLeft)) { if (!getGameLoaderInventory()->getCountItemsWithId(ANI_INV_BOARD)) { getGameLoaderInventory()->addItem(ANI_INV_BOARD, 1); getGameLoaderInventory()->rebuildItemRects(); @@ -94,32 +94,32 @@ void scene25_initScene(Scene *sc, int entranceId) { } int scene25_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); if (g_vars->scene25_waterIsPresent) { int inv = getGameLoaderInventory()->getSelectedItemId(); - if (g_fp->_objectIdAtCursor == ANI_WATER25) { + if (g_nmi->_objectIdAtCursor == ANI_WATER25) { if ((g_vars->scene25_boardIsSelectable && (!inv || inv == ANI_INV_BOARD)) || (g_vars->scene25_dudeIsOnBoard && (inv == ANI_INV_LOPAT || !inv))) - g_fp->_cursorId = (g_fp->_cursorId != PIC_CSR_DEFAULT) ? PIC_CSR_ITN_INV : PIC_CSR_ITN; - } else if (g_fp->_objectIdAtCursor == ANI_BOARD25 && (!inv || inv == ANI_INV_SWAB || inv == ANI_INV_BROOM || inv == ANI_INV_LOPAT)) { - g_fp->_cursorId = (g_fp->_cursorId != PIC_CSR_DEFAULT) ? PIC_CSR_ITN_INV : PIC_CSR_ITN; + g_nmi->_cursorId = (g_nmi->_cursorId != PIC_CSR_DEFAULT) ? PIC_CSR_ITN_INV : PIC_CSR_ITN; + } else if (g_nmi->_objectIdAtCursor == ANI_BOARD25 && (!inv || inv == ANI_INV_SWAB || inv == ANI_INV_BROOM || inv == ANI_INV_LOPAT)) { + g_nmi->_cursorId = (g_nmi->_cursorId != PIC_CSR_DEFAULT) ? PIC_CSR_ITN_INV : PIC_CSR_ITN; } } - return g_fp->_cursorId; + return g_nmi->_cursorId; } void scene25_setupWater(Scene *a1, int entranceId) { if (g_vars->scene25_waterIsPresent) { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene25_drop, ST_DRP25_EMPTY, QU_DRP25_TOFLOOR, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene25_drop, ST_DRP25_EMPTY, QU_DRP25_TOWATER, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene25_drop, ST_DRP25_EMPTY, QU_DRP25_TOFLOOR, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene25_drop, ST_DRP25_EMPTY, QU_DRP25_TOWATER, 1); if (entranceId != TrubaRight) - g_fp->playTrack(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_25"), "MUSIC2", 0); + g_nmi->playTrack(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_25"), "MUSIC2", 0); } else { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene25_drop, ST_DRP25_EMPTY, QU_DRP25_TOFLOOR, 1); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene25_drop, ST_DRP25_EMPTY, QU_DRP25_TOWATER, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene25_drop, ST_DRP25_EMPTY, QU_DRP25_TOFLOOR, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene25_drop, ST_DRP25_EMPTY, QU_DRP25_TOWATER, 0); } } @@ -133,7 +133,7 @@ void sceneHandler25_startBearders() { g_vars->scene25_bearders.clear(); g_vars->scene25_beardersCounter = 0; - StaticANIObject *bearded = g_fp->accessScene(SC_COMMON)->getStaticANIObject1ById(ANI_BEARDED_CMN, -1); + StaticANIObject *bearded = g_nmi->accessScene(SC_COMMON)->getStaticANIObject1ById(ANI_BEARDED_CMN, -1); for (int i = 0; i < 3; i++) { StaticANIObject *ani = new StaticANIObject(bearded); @@ -142,7 +142,7 @@ void sceneHandler25_startBearders() { ani->_statics = ani->getStaticsById(ST_BRDCMN_EMPTY); - g_fp->_currentScene->addStaticANIObject(ani, 1); + g_nmi->_currentScene->addStaticANIObject(ani, 1); } g_vars->scene25_beardersAreThere = true; @@ -161,24 +161,24 @@ void sceneHandler25_enterMan() { void sceneHandler25_enterTruba() { PicAniInfo info; - g_fp->_aniMan->getPicAniInfo(info); - g_fp->_aniMan->_messageQueueId = 0; - g_fp->_aniMan->changeStatics2(g_fp->_aniMan->_statics->_staticsId); + g_nmi->_aniMan->getPicAniInfo(info); + g_nmi->_aniMan->_messageQueueId = 0; + g_nmi->_aniMan->changeStatics2(g_nmi->_aniMan->_statics->_staticsId); - int x = g_fp->_aniMan->_ox; - int y = g_fp->_aniMan->_oy; + int x = g_nmi->_aniMan->_ox; + int y = g_nmi->_aniMan->_oy; - g_fp->_aniMan->setPicAniInfo(info); + g_nmi->_aniMan->setPicAniInfo(info); - int id = g_fp->_aniMan->_statics->_staticsId; + int id = g_nmi->_aniMan->_statics->_staticsId; int qid = 0; if (id == ST_MAN25_ONBOARD && x == 634 && y == 502) { - g_fp->_aniMan->changeStatics2(ST_MAN25_ONBOARD); + g_nmi->_aniMan->changeStatics2(ST_MAN25_ONBOARD); qid = QU_SC25_MANTOTRUBA; } else if (id == (ST_MAN25_ONBOARD|0x4000) && x == 632 && y == 502) { - g_fp->_aniMan->changeStatics2(ST_MAN25_ONBOARD|0x4000); + g_nmi->_aniMan->changeStatics2(ST_MAN25_ONBOARD|0x4000); qid = QU_SC25_MANTOTRUBA_R; } @@ -190,30 +190,30 @@ void sceneHandler25_enterTruba() { } void sceneHandler25_saveEntrance(int value) { - g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName("SAVEGAME")->setSubVarAsInt("Entrance", value); + g_nmi->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName("SAVEGAME")->setSubVarAsInt("Entrance", value); } void sceneHandler25_toLadder() { PicAniInfo info; - g_fp->_aniMan->getPicAniInfo(info); - g_fp->_aniMan->_messageQueueId = 0; - g_fp->_aniMan->changeStatics2(g_fp->_aniMan->_statics->_staticsId); + g_nmi->_aniMan->getPicAniInfo(info); + g_nmi->_aniMan->_messageQueueId = 0; + g_nmi->_aniMan->changeStatics2(g_nmi->_aniMan->_statics->_staticsId); - int x = g_fp->_aniMan->_ox; - int y = g_fp->_aniMan->_oy; + int x = g_nmi->_aniMan->_ox; + int y = g_nmi->_aniMan->_oy; - g_fp->_aniMan->setPicAniInfo(info); + g_nmi->_aniMan->setPicAniInfo(info); - int id = g_fp->_aniMan->_statics->_staticsId; + int id = g_nmi->_aniMan->_statics->_staticsId; int qid = 0; if (id == ST_MAN25_ONBOARD && x == 307 && y == 502) { - g_fp->_aniMan->changeStatics2(ST_MAN25_ONBOARD); + g_nmi->_aniMan->changeStatics2(ST_MAN25_ONBOARD); qid = QU_SC25_BACKTOLADDER; } else if (id == (ST_MAN25_ONBOARD|0x4000) && x == 192 && y == 502) { - g_fp->_aniMan->changeStatics2(ST_MAN25_ONBOARD|0x4000); + g_nmi->_aniMan->changeStatics2(ST_MAN25_ONBOARD|0x4000); qid = QU_SC25_BOARDTOLADDER; } @@ -229,29 +229,29 @@ void sceneHandler25_toLadder() { } void sceneHandler25_animateBearders() { - if (g_fp->_rnd.getRandomNumber(32767) < 218) { + if (g_nmi->_rnd.getRandomNumber(32767) < 218) { MessageQueue *mq; - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC25_BEARDED), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC25_BEARDED), 0, 1); mq->setParamInt(-1, g_vars->scene25_bearders[0]->_odelay); - mq->getExCommandByIndex(0)->_x = g_fp->_rnd.getRandomNumber(650) + 100; + mq->getExCommandByIndex(0)->_x = g_nmi->_rnd.getRandomNumber(650) + 100; mq->chain(0); g_vars->scene25_beardersCounter = 0; - if (g_fp->_rnd.getRandomNumber(32767) < 0x1FFF) { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC25_BEARDED2), 0, 1); + if (g_nmi->_rnd.getRandomNumber(32767) < 0x1FFF) { + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC25_BEARDED2), 0, 1); mq->setParamInt(-1, g_vars->scene25_bearders[1]->_odelay); - mq->getExCommandByIndex(0)->_x = g_fp->_rnd.getRandomNumber(650) + 100; + mq->getExCommandByIndex(0)->_x = g_nmi->_rnd.getRandomNumber(650) + 100; mq->chain(0); - if (g_fp->_rnd.getRandomNumber(32767) < 8191) { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC25_BEARDED3), 0, 1); + if (g_nmi->_rnd.getRandomNumber(32767) < 8191) { + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC25_BEARDED3), 0, 1); mq->setParamInt(-1, g_vars->scene25_bearders[2]->_odelay); - mq->getExCommandByIndex(0)->_x = g_fp->_rnd.getRandomNumber(650) + 100; + mq->getExCommandByIndex(0)->_x = g_nmi->_rnd.getRandomNumber(650) + 100; mq->chain(0); } } @@ -259,44 +259,44 @@ void sceneHandler25_animateBearders() { } void sceneHandler25_sneeze() { - if (g_fp->_rnd.getRandomNumber(32767) % 10) { - if (g_fp->_aniMan->_statics->_staticsId == ST_MAN25_ONBOARD) { - g_fp->_aniMan->startAnim(MV_MAN25_ONBOARD, 0, -1); - } else if (g_fp->_aniMan->_statics->_staticsId == (ST_MAN25_ONBOARD|0x4000)) { - g_fp->_aniMan->startAnim(rMV_MAN25_ONBOARD, 0, -1); + if (g_nmi->_rnd.getRandomNumber(32767) % 10) { + if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN25_ONBOARD) { + g_nmi->_aniMan->startAnim(MV_MAN25_ONBOARD, 0, -1); + } else if (g_nmi->_aniMan->_statics->_staticsId == (ST_MAN25_ONBOARD|0x4000)) { + g_nmi->_aniMan->startAnim(rMV_MAN25_ONBOARD, 0, -1); } - } else if (g_fp->_aniMan->_statics->_staticsId == ST_MAN25_ONBOARD) { - g_fp->_aniMan->startAnim(MV_MAN25_CHIH, 0, -1); - } else if (g_fp->_aniMan->_statics->_staticsId == (ST_MAN25_ONBOARD|0x4000)) { - g_fp->_aniMan->startAnim(rMV_MAN25_CHIH, 0, -1); + } else if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN25_ONBOARD) { + g_nmi->_aniMan->startAnim(MV_MAN25_CHIH, 0, -1); + } else if (g_nmi->_aniMan->_statics->_staticsId == (ST_MAN25_ONBOARD|0x4000)) { + g_nmi->_aniMan->startAnim(rMV_MAN25_CHIH, 0, -1); } } void sceneHandler25_rowShovel() { PicAniInfo info; - g_fp->_aniMan->getPicAniInfo(info); - g_fp->_aniMan->_messageQueueId = 0; - g_fp->_aniMan->changeStatics2(g_fp->_aniMan->_statics->_staticsId); + g_nmi->_aniMan->getPicAniInfo(info); + g_nmi->_aniMan->_messageQueueId = 0; + g_nmi->_aniMan->changeStatics2(g_nmi->_aniMan->_statics->_staticsId); - int x = g_fp->_aniMan->_ox; - int y = g_fp->_aniMan->_oy; + int x = g_nmi->_aniMan->_ox; + int y = g_nmi->_aniMan->_oy; - g_fp->_aniMan->setPicAniInfo(info); + g_nmi->_aniMan->setPicAniInfo(info); - int id = g_fp->_aniMan->_statics->_staticsId; + int id = g_nmi->_aniMan->_statics->_staticsId; int qid = 0; if (id == ST_MAN25_ONBOARD && x == 370 && y == 502) { - g_fp->_aniMan->changeStatics2(ST_MAN25_ONBOARD); + g_nmi->_aniMan->changeStatics2(ST_MAN25_ONBOARD); qid = QU_SC25_ROWTOTRUBA; } else if (id == (ST_MAN25_ONBOARD|0x4000) && x == 632 && y == 502) { - g_fp->_aniMan->changeStatics2(ST_MAN25_ONBOARD|0x4000); + g_nmi->_aniMan->changeStatics2(ST_MAN25_ONBOARD|0x4000); qid = QU_SC25_ROWTOLADDER; - g_fp->playSound(SND_25_030, 0); + g_nmi->playSound(SND_25_030, 0); } if (qid) { @@ -309,39 +309,39 @@ void sceneHandler25_rowShovel() { void sceneHandler25_rowHand() { PicAniInfo info; - g_fp->_aniMan->getPicAniInfo(info); - g_fp->_aniMan->_messageQueueId = 0; - g_fp->_aniMan->changeStatics2(g_fp->_aniMan->_statics->_staticsId); + g_nmi->_aniMan->getPicAniInfo(info); + g_nmi->_aniMan->_messageQueueId = 0; + g_nmi->_aniMan->changeStatics2(g_nmi->_aniMan->_statics->_staticsId); - int x = g_fp->_aniMan->_ox; - int y = g_fp->_aniMan->_oy; + int x = g_nmi->_aniMan->_ox; + int y = g_nmi->_aniMan->_oy; - g_fp->_aniMan->setPicAniInfo(info); + g_nmi->_aniMan->setPicAniInfo(info); - int id = g_fp->_aniMan->_statics->_staticsId; + int id = g_nmi->_aniMan->_statics->_staticsId; int qid = 0; if (id == ST_MAN25_ONBOARD && x == 370 && y == 502) { - g_fp->_aniMan->changeStatics2(ST_MAN25_ONBOARD); + g_nmi->_aniMan->changeStatics2(ST_MAN25_ONBOARD); qid = QU_SC25_TRYROWHAND; } else if (id == (ST_MAN25_ONBOARD|0x4000) && x == 632 && y == 502) { - g_fp->_aniMan->changeStatics2(ST_MAN25_ONBOARD|0x4000); + g_nmi->_aniMan->changeStatics2(ST_MAN25_ONBOARD|0x4000); qid = QU_SC25_TRYROWHAND_R; } if (qid) { - chainObjQueue(g_fp->_aniMan, qid, 1); + chainObjQueue(g_nmi->_aniMan, qid, 1); g_vars->scene25_sneezeFlipper = false; } } void sceneHandler25_putBoard() { - if (g_fp->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER - || g_fp->_aniMan->_statics->_staticsId == ST_MAN_LADDERDOWN_R) { - g_fp->_aniMan->changeStatics2(ST_MAN_STANDLADDER); - g_fp->_aniMan->setOXY(281, 481); + if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER + || g_nmi->_aniMan->_statics->_staticsId == ST_MAN_LADDERDOWN_R) { + g_nmi->_aniMan->changeStatics2(ST_MAN_STANDLADDER); + g_nmi->_aniMan->setOXY(281, 481); chainQueue(QU_SC25_PUTBOARD, 1); @@ -352,9 +352,9 @@ void sceneHandler25_putBoard() { } void sceneHandler25_tryWater() { - if (g_fp->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER - || g_fp->_aniMan->_statics->_staticsId == ST_MAN_LADDERDOWN_R) { - g_fp->_aniMan->changeStatics2(ST_MAN_STANDLADDER); + if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER + || g_nmi->_aniMan->_statics->_staticsId == ST_MAN_LADDERDOWN_R) { + g_nmi->_aniMan->changeStatics2(ST_MAN_STANDLADDER); chainQueue(QU_SC25_TRYWATER, 1); } @@ -363,26 +363,26 @@ void sceneHandler25_tryWater() { void sceneHandler25_tryRow(int obj) { PicAniInfo info; - g_fp->_aniMan->getPicAniInfo(info); - g_fp->_aniMan->_messageQueueId = 0; - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->getPicAniInfo(info); + g_nmi->_aniMan->_messageQueueId = 0; + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); - int x = g_fp->_aniMan->_ox; - int y = g_fp->_aniMan->_oy; + int x = g_nmi->_aniMan->_ox; + int y = g_nmi->_aniMan->_oy; - g_fp->_aniMan->setPicAniInfo(info); + g_nmi->_aniMan->setPicAniInfo(info); int qid = 0; if (x == 788 && y == 468) { if (g_vars->scene25_board->_statics->_staticsId == ST_BRD25_RIGHT2) { if (obj == ANI_INV_BROOM) { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); qid = QU_SC25_TRYBROOM; } if (obj == ANI_INV_LOPAT) { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); qid = QU_SC25_TRYSPADE; } @@ -390,24 +390,24 @@ void sceneHandler25_tryRow(int obj) { if (qid) { chainQueue(qid, 1); - g_fp->playSound(SND_25_028, 0); + g_nmi->playSound(SND_25_028, 0); return; } if (obj == ANI_INV_SWAB) { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); chainQueue(QU_SC25_TRYSWAB, 1); } else if (!obj) { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); - chainObjQueue(g_fp->_aniMan, QU_SC25_TRYHAND, 1); + chainObjQueue(g_nmi->_aniMan, QU_SC25_TRYHAND, 1); - g_fp->playSound(SND_25_028, 0); + g_nmi->playSound(SND_25_028, 0); } } else if (g_vars->scene25_board->_statics->_staticsId == (ST_BRD25_RIGHT2 | 0x4000) && !obj) { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); chainQueue(QU_SC25_TRUBATOBOARD, 1); @@ -417,17 +417,17 @@ void sceneHandler25_tryRow(int obj) { } void sceneHandler25_ladderUp() { - if (g_fp->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER - || g_fp->_aniMan->_statics->_staticsId == ST_MAN_LADDERDOWN_R) { - g_fp->_aniMan->changeStatics2(ST_MAN_STANDLADDER); + if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER + || g_nmi->_aniMan->_statics->_staticsId == ST_MAN_LADDERDOWN_R) { + g_nmi->_aniMan->changeStatics2(ST_MAN_STANDLADDER); chainQueue(QU_SC25_LADDERUP, 1); } } void sceneHandler25_backToPipe() { - if (!g_fp->_aniMan->_movement && g_fp->_aniMan->_statics->_staticsId == (ST_MAN_RIGHT|0x4000)) { - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT|0x4000); + if (!g_nmi->_aniMan->_movement && g_nmi->_aniMan->_statics->_staticsId == (ST_MAN_RIGHT|0x4000)) { + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT|0x4000); chainQueue(QU_SC25_BACKTOTRUBA, 1); } @@ -520,15 +520,15 @@ void sceneHandler25_walkOnLadder(StaticANIObject *ani, Common::Point *pnt, Messa } bool sceneHandler25_isOnLadder(ExCommand *cmd) { - if ((g_fp->_aniMan->_movement && g_fp->_aniMan->_movement->_id == MV_MAN_GOLADDERDOWN) - || g_fp->_aniMan->_statics->_staticsId == ST_MAN_GOLADDERD) { + if ((g_nmi->_aniMan->_movement && g_nmi->_aniMan->_movement->_id == MV_MAN_GOLADDERDOWN) + || g_nmi->_aniMan->_statics->_staticsId == ST_MAN_GOLADDERD) { Interaction *inter = getGameLoaderInteractionController()->getInteractionByObjectIds(PIC_SC25_LADDERDOWN, ANI_MAN, cmd->_param); if (!inter) return 0; MessageQueue *mq = new MessageQueue(inter->_messageQueue, 0, 1); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(PIC_SC25_LADDERDOWN, 0); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(PIC_SC25_LADDERDOWN, 0); Common::Point point; point.x = inter->_xOffs + pic->_ox; @@ -536,7 +536,7 @@ bool sceneHandler25_isOnLadder(ExCommand *cmd) { mq->setFlags(mq->getFlags() | 1); - sceneHandler25_walkOnLadder(g_fp->_aniMan, &point, mq, 0); + sceneHandler25_walkOnLadder(g_nmi->_aniMan, &point, mq, 0); return true; } else { @@ -570,39 +570,39 @@ int sceneHandler25(ExCommand *cmd) { break; case MSG_BRD_TURN: - switch (g_fp->_rnd.getRandomNumber(3)) { + switch (g_nmi->_rnd.getRandomNumber(3)) { case 0: - g_fp->playSound(SND_25_025, 0); + g_nmi->playSound(SND_25_025, 0); break; case 1: - g_fp->playSound(SND_25_026, 0); + g_nmi->playSound(SND_25_026, 0); break; case 2: default: - g_fp->playSound(SND_25_027, 0); + g_nmi->playSound(SND_25_027, 0); break; } break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; - int y = g_fp->_aniMan2->_oy; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; + int y = g_nmi->_aniMan2->_oy; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; if (!g_vars->scene25_waterIsPresent) { - if (y < g_fp->_sceneRect.top + 200) - g_fp->_currentScene->_y = y - 300 - g_fp->_sceneRect.top; + if (y < g_nmi->_sceneRect.top + 200) + g_nmi->_currentScene->_y = y - 300 - g_nmi->_sceneRect.top; - if (y > g_fp->_sceneRect.bottom - 200) - g_fp->_currentScene->_y = y + 300 - g_fp->_sceneRect.bottom; + if (y > g_nmi->_sceneRect.bottom - 200) + g_nmi->_currentScene->_y = y + 300 - g_nmi->_sceneRect.bottom; } } @@ -613,13 +613,13 @@ int sceneHandler25(ExCommand *cmd) { sceneHandler25_animateBearders(); } - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); if (g_vars->scene25_waterIsPresent && !g_vars->scene25_water->_movement) g_vars->scene25_water->startAnim(MV_WTR25_FLOW, 0, -1); - if (g_vars->scene25_dudeIsOnBoard && !g_fp->_aniMan->_movement && g_vars->scene25_sneezeFlipper) + if (g_vars->scene25_dudeIsOnBoard && !g_nmi->_aniMan->_movement && g_vars->scene25_sneezeFlipper) sceneHandler25_sneeze(); g_vars->scene25_sneezeFlipper = true; @@ -636,7 +636,7 @@ int sceneHandler25(ExCommand *cmd) { case 29: { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); if (!g_vars->scene25_waterIsPresent) { if ((picId == PIC_SC25_LADDERUP || picId == PIC_SC25_LADDERDOWN) && sceneHandler25_isOnLadder(cmd)) @@ -645,12 +645,12 @@ int sceneHandler25(ExCommand *cmd) { return 0; } - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); if (ani) { - if (g_fp->_aniMan != ani) { - if (g_fp->_aniMan->isIdle()) { - if (!(g_fp->_aniMan->_flags & 0x100)) { + if (g_nmi->_aniMan != ani) { + if (g_nmi->_aniMan->isIdle()) { + if (!(g_nmi->_aniMan->_flags & 0x100)) { if (ani->_id == ANI_WATER25) { if (g_vars->scene25_dudeIsOnBoard) { if (cmd->_param == ANI_INV_LOPAT) { @@ -686,7 +686,7 @@ int sceneHandler25(ExCommand *cmd) { if (picId == PIC_SC25_LADDERUP && sceneHandler25_isOnLadder(cmd)) cmd->_messageKind = 0; - if (!g_fp->_aniMan->isIdle() || (g_fp->_aniMan->_flags & 0x100)) + if (!g_nmi->_aniMan->isIdle() || (g_nmi->_aniMan->_flags & 0x100)) return 0; if (g_vars->scene25_dudeIsOnBoard) { diff --git a/engines/ngi/fullpipe/scene26.cpp b/engines/ngi/fullpipe/scene26.cpp index 158a613cd8b..aace588d1c9 100644 --- a/engines/ngi/fullpipe/scene26.cpp +++ b/engines/ngi/fullpipe/scene26.cpp @@ -42,9 +42,9 @@ void scene26_initScene(Scene *sc) { g_vars->scene26_sockPic = sc->getPictureObjectById(PIC_SC26_SOCK, 0); g_vars->scene26_sock = sc->getStaticANIObject1ById(ANI_SOCK_26, -1); - if (g_fp->getObjectState(sO_Hatch_26) == g_fp->getObjectEnumState(sO_Hatch_26, sO_WithSock)) { - g_fp->setObjectState(sO_Hatch_26, g_fp->getObjectEnumState(sO_Hatch_26, sO_Closed)); - g_fp->setObjectState(sO_Sock_26, g_fp->getObjectEnumState(sO_Sock_26, sO_HangsOnPipe)); + if (g_nmi->getObjectState(sO_Hatch_26) == g_nmi->getObjectEnumState(sO_Hatch_26, sO_WithSock)) { + g_nmi->setObjectState(sO_Hatch_26, g_nmi->getObjectEnumState(sO_Hatch_26, sO_Closed)); + g_nmi->setObjectState(sO_Sock_26, g_nmi->getObjectEnumState(sO_Sock_26, sO_HangsOnPipe)); } Interaction *inter = getGameLoaderInteractionController()->getInteractionByObjectIds(ANI_LUK26, ANI_MAN, ANI_INV_SOCK); @@ -54,38 +54,38 @@ void scene26_initScene(Scene *sc) { else inter->_flags |= 0x20000; - if (g_fp->getObjectState(sO_Sock_26) == g_fp->getObjectEnumState(sO_Sock_26, sO_HangsOnPipe)) + if (g_nmi->getObjectState(sO_Sock_26) == g_nmi->getObjectEnumState(sO_Sock_26, sO_HangsOnPipe)) g_vars->scene26_sockPic->_flags |= 4; else g_vars->scene26_sockPic->_flags &= 0xFFFB; - if (g_fp->getObjectState(sO_Valve1_26) == g_fp->getObjectEnumState(sO_Valve1_26, sO_Opened)) - g_fp->playSound(SND_26_018, 1); + if (g_nmi->getObjectState(sO_Valve1_26) == g_nmi->getObjectEnumState(sO_Valve1_26, sO_Opened)) + g_nmi->playSound(SND_26_018, 1); } int scene26_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_objectIdAtCursor != ANI_VENT || g_fp->_cursorId != PIC_CSR_DEFAULT) { - if (g_fp->_cursorId == PIC_CSR_ITN && g_fp->_objectIdAtCursor == PIC_SC26_LTRUBA) - g_fp->_cursorId = PIC_CSR_GOL; + if (g_nmi->_objectIdAtCursor != ANI_VENT || g_nmi->_cursorId != PIC_CSR_DEFAULT) { + if (g_nmi->_cursorId == PIC_CSR_ITN && g_nmi->_objectIdAtCursor == PIC_SC26_LTRUBA) + g_nmi->_cursorId = PIC_CSR_GOL; // WORKAROUND: Fixing cursor - if (g_fp->_objectIdAtCursor == PIC_SC26_LTRUBA && - (g_fp->_cursorId == PIC_CSR_GOU || g_fp->_cursorId == PIC_CSR_GOD || g_fp->_cursorId == PIC_CSR_GOR)) - g_fp->_cursorId = PIC_CSR_GOL; + if (g_nmi->_objectIdAtCursor == PIC_SC26_LTRUBA && + (g_nmi->_cursorId == PIC_CSR_GOU || g_nmi->_cursorId == PIC_CSR_GOD || g_nmi->_cursorId == PIC_CSR_GOR)) + g_nmi->_cursorId = PIC_CSR_GOL; } else { - g_fp->_cursorId = PIC_CSR_ITN; + g_nmi->_cursorId = PIC_CSR_ITN; } - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler26_updateDrop() { - if (g_fp->getObjectState(sO_Valve5_26) == g_fp->getObjectEnumState(sO_Valve5_26, sO_Closed)) - g_fp->_behaviorManager->setFlagByStaticAniObject(g_vars->scene26_drop, 0); + if (g_nmi->getObjectState(sO_Valve5_26) == g_nmi->getObjectEnumState(sO_Valve5_26, sO_Closed)) + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_vars->scene26_drop, 0); else - g_fp->_behaviorManager->setFlagByStaticAniObject(g_vars->scene26_drop, 1); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_vars->scene26_drop, 1); } void scene26_setupDrop(Scene *sc) { @@ -99,19 +99,19 @@ void sceneHandler26_showChi() { } void sceneHandler26_updatePool() { - if (g_fp->getObjectState(sO_Valve1_26) == g_fp->getObjectEnumState(sO_Valve1_26, sO_Opened)) - g_fp->setObjectState(sO_Pool, g_fp->getObjectEnumState(sO_Pool, sO_Overfull)); - else if (g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_Overfull)) - g_fp->setObjectState(sO_Pool, g_fp->getObjectEnumState(sO_Pool, sO_Full)); + if (g_nmi->getObjectState(sO_Valve1_26) == g_nmi->getObjectEnumState(sO_Valve1_26, sO_Opened)) + g_nmi->setObjectState(sO_Pool, g_nmi->getObjectEnumState(sO_Pool, sO_Overfull)); + else if (g_nmi->getObjectState(sO_Pool) == g_nmi->getObjectEnumState(sO_Pool, sO_Overfull)) + g_nmi->setObjectState(sO_Pool, g_nmi->getObjectEnumState(sO_Pool, sO_Full)); - if (g_fp->getObjectState(sO_Valve2_26) == g_fp->getObjectEnumState(sO_Valve2_26, sO_Opened)) { - if (g_fp->getObjectState(sO_Pool) >= g_fp->getObjectEnumState(sO_Pool, sO_Full)) - g_fp->setObjectState(sO_Pool, g_fp->getObjectEnumState(sO_Pool, sO_HalfFull)); + if (g_nmi->getObjectState(sO_Valve2_26) == g_nmi->getObjectEnumState(sO_Valve2_26, sO_Opened)) { + if (g_nmi->getObjectState(sO_Pool) >= g_nmi->getObjectEnumState(sO_Pool, sO_Full)) + g_nmi->setObjectState(sO_Pool, g_nmi->getObjectEnumState(sO_Pool, sO_HalfFull)); } - if (g_fp->getObjectState(sO_Valve3_26) == g_fp->getObjectEnumState(sO_Valve3_26, sO_Opened)) { - if (g_fp->getObjectState(sO_Pool) >= g_fp->getObjectEnumState(sO_Pool, sO_HalfFull)) - g_fp->setObjectState(sO_Pool, g_fp->getObjectEnumState(sO_Pool, sO_Empty)); + if (g_nmi->getObjectState(sO_Valve3_26) == g_nmi->getObjectEnumState(sO_Valve3_26, sO_Opened)) { + if (g_nmi->getObjectState(sO_Pool) >= g_nmi->getObjectEnumState(sO_Pool, sO_HalfFull)) + g_nmi->setObjectState(sO_Pool, g_nmi->getObjectEnumState(sO_Pool, sO_Empty)); } } @@ -126,50 +126,50 @@ void sceneHandler26_testVent() { return; if (g_vars->scene26_activeVent->_odelay == 0) { - if (g_fp->getObjectState(sO_Valve1_26) == g_fp->getObjectEnumState(sO_Valve1_26, sO_Opened)) - g_fp->stopAllSoundInstances(SND_26_018); + if (g_nmi->getObjectState(sO_Valve1_26) == g_nmi->getObjectEnumState(sO_Valve1_26, sO_Opened)) + g_nmi->stopAllSoundInstances(SND_26_018); else - g_fp->playSound(SND_26_018, 1); + g_nmi->playSound(SND_26_018, 1); - if (g_fp->getObjectState(sO_Valve2_26) == g_fp->getObjectEnumState(sO_Valve2_26, sO_Opened)) { + if (g_nmi->getObjectState(sO_Valve2_26) == g_nmi->getObjectEnumState(sO_Valve2_26, sO_Opened)) { chainQueue(QU_SC26_AUTOCLOSE2, 0); - g_fp->playSound(SND_26_020, 0); + g_nmi->playSound(SND_26_020, 0); } - if (g_fp->getObjectState(sO_Valve3_26) == g_fp->getObjectEnumState(sO_Valve3_26, sO_Opened)) { + if (g_nmi->getObjectState(sO_Valve3_26) == g_nmi->getObjectEnumState(sO_Valve3_26, sO_Opened)) { chainQueue(QU_SC26_AUTOCLOSE3, 0); - g_fp->playSound(SND_26_020, 0); + g_nmi->playSound(SND_26_020, 0); } } else if (g_vars->scene26_activeVent->_odelay == 1) { - if (g_fp->getObjectState(sO_Valve2_26) == g_fp->getObjectEnumState(sO_Valve2_26, sO_Opened)) - g_fp->playSound(SND_26_020, 0); + if (g_nmi->getObjectState(sO_Valve2_26) == g_nmi->getObjectEnumState(sO_Valve2_26, sO_Opened)) + g_nmi->playSound(SND_26_020, 0); else - g_fp->playSound(SND_26_019, 0); + g_nmi->playSound(SND_26_019, 0); - if (g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_Overfull) - || g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_Full)) - g_fp->playSound(SND_26_003, 0); + if (g_nmi->getObjectState(sO_Pool) == g_nmi->getObjectEnumState(sO_Pool, sO_Overfull) + || g_nmi->getObjectState(sO_Pool) == g_nmi->getObjectEnumState(sO_Pool, sO_Full)) + g_nmi->playSound(SND_26_003, 0); - if (g_fp->getObjectState(sO_Valve1_26) == g_fp->getObjectEnumState(sO_Valve1_26, sO_Opened)) { - g_fp->stopAllSoundInstances(SND_26_018); + if (g_nmi->getObjectState(sO_Valve1_26) == g_nmi->getObjectEnumState(sO_Valve1_26, sO_Opened)) { + g_nmi->stopAllSoundInstances(SND_26_018); chainQueue(QU_SC26_AUTOCLOSE1, 0); } } else if (g_vars->scene26_activeVent->_odelay == 2) { - if (g_fp->getObjectState(sO_Valve3_26) == g_fp->getObjectEnumState(sO_Valve3_26, sO_Opened)) - g_fp->playSound(SND_26_020, 0); + if (g_nmi->getObjectState(sO_Valve3_26) == g_nmi->getObjectEnumState(sO_Valve3_26, sO_Opened)) + g_nmi->playSound(SND_26_020, 0); else - g_fp->playSound(SND_26_019, 0); + g_nmi->playSound(SND_26_019, 0); - if (g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_Overfull) - || g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_Full) - || g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_HalfFull)) - g_fp->playSound(SND_26_003, 0); + if (g_nmi->getObjectState(sO_Pool) == g_nmi->getObjectEnumState(sO_Pool, sO_Overfull) + || g_nmi->getObjectState(sO_Pool) == g_nmi->getObjectEnumState(sO_Pool, sO_Full) + || g_nmi->getObjectState(sO_Pool) == g_nmi->getObjectEnumState(sO_Pool, sO_HalfFull)) + g_nmi->playSound(SND_26_003, 0); - if (g_fp->getObjectState(sO_Valve1_26) == g_fp->getObjectEnumState(sO_Valve1_26, sO_Opened)) { - g_fp->stopAllSoundInstances(SND_26_018); + if (g_nmi->getObjectState(sO_Valve1_26) == g_nmi->getObjectEnumState(sO_Valve1_26, sO_Opened)) { + g_nmi->stopAllSoundInstances(SND_26_018); chainQueue(QU_SC26_AUTOCLOSE1, 0); } @@ -202,7 +202,7 @@ void sceneHandler26_animateVents(StaticANIObject *ani) { switch (ani->_odelay) { case 0: - if (g_fp->getObjectState(sO_Valve1_26) == g_fp->getObjectEnumState(sO_Valve1_26, sO_Closed)) { + if (g_nmi->getObjectState(sO_Valve1_26) == g_nmi->getObjectEnumState(sO_Valve1_26, sO_Closed)) { qId = QU_SC26_OPEN1; } else { qId = QU_SC26_CLOSE1; @@ -210,7 +210,7 @@ void sceneHandler26_animateVents(StaticANIObject *ani) { break; case 1: - if (g_fp->getObjectState(sO_Valve2_26) == g_fp->getObjectEnumState(sO_Valve2_26, sO_Closed)) { + if (g_nmi->getObjectState(sO_Valve2_26) == g_nmi->getObjectEnumState(sO_Valve2_26, sO_Closed)) { qId = QU_SC26_OPEN2; } else { qId = QU_SC26_CLOSE2; @@ -218,7 +218,7 @@ void sceneHandler26_animateVents(StaticANIObject *ani) { break; case 2: - if (g_fp->getObjectState(sO_Valve3_26) == g_fp->getObjectEnumState(sO_Valve3_26, sO_Closed)) { + if (g_nmi->getObjectState(sO_Valve3_26) == g_nmi->getObjectEnumState(sO_Valve3_26, sO_Closed)) { qId = QU_SC26_OPEN3; } else { qId = QU_SC26_CLOSE3; @@ -226,7 +226,7 @@ void sceneHandler26_animateVents(StaticANIObject *ani) { break; case 3: - if (g_fp->getObjectState(sO_Valve4_26) == g_fp->getObjectEnumState(sO_Valve4_26, sO_Closed)) { + if (g_nmi->getObjectState(sO_Valve4_26) == g_nmi->getObjectEnumState(sO_Valve4_26, sO_Closed)) { qId = QU_SC26_OPEN4; } else { qId = QU_SC26_CLOSE4; @@ -234,7 +234,7 @@ void sceneHandler26_animateVents(StaticANIObject *ani) { break; case 4: - if (g_fp->getObjectState(sO_Valve5_26) == g_fp->getObjectEnumState(sO_Valve5_26, sO_Closed)) { + if (g_nmi->getObjectState(sO_Valve5_26) == g_nmi->getObjectEnumState(sO_Valve5_26, sO_Closed)) { qId = QU_SC26_OPEN5; } else { qId = QU_SC26_CLOSE5; @@ -246,7 +246,7 @@ void sceneHandler26_animateVents(StaticANIObject *ani) { } if (qId) { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(qId), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(qId), 0, 0); mq->setFlags(mq->getFlags() | 1); mq->chain(0); @@ -254,15 +254,15 @@ void sceneHandler26_animateVents(StaticANIObject *ani) { } void sceneHandler26_clickVent(StaticANIObject *ani, ExCommand *cmd) { - if (ani->_odelay || g_fp->getObjectState(sO_Hatch_26) != g_fp->getObjectEnumState(sO_Hatch_26, sO_Opened)) { - if (g_fp->_aniMan->isIdle() && !(g_fp->_aniMan->_flags & 0x100)) { + if (ani->_odelay || g_nmi->getObjectState(sO_Hatch_26) != g_nmi->getObjectEnumState(sO_Hatch_26, sO_Opened)) { + if (g_nmi->_aniMan->isIdle() && !(g_nmi->_aniMan->_flags & 0x100)) { g_vars->scene26_activeVent = ani; int x = ani->_ox - 20; int y = ani->_oy + 61; - if (abs(x - g_fp->_aniMan->_ox) > 1 || abs(y - g_fp->_aniMan->_oy) > 1 || g_fp->_aniMan->_movement || g_fp->_aniMan->_statics->_staticsId != ST_MAN_UP) { - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, x, y, 1, ST_MAN_UP); + if (abs(x - g_nmi->_aniMan->_ox) > 1 || abs(y - g_nmi->_aniMan->_oy) > 1 || g_nmi->_aniMan->_movement || g_nmi->_aniMan->_statics->_staticsId != ST_MAN_UP) { + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, x, y, 1, ST_MAN_UP); if (mq) { ExCommand *ex = new ExCommand(0, 17, MSG_SC26_CLICKVENT, 0, 0, 0, 1, 0, 0, 0); @@ -272,7 +272,7 @@ void sceneHandler26_clickVent(StaticANIObject *ani, ExCommand *cmd) { mq->addExCommandToEnd(ex); - postExCommand(g_fp->_aniMan->_id, 2, x, y, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, x, y, 0, -1); } } else { sceneHandler26_animateVents(ani); @@ -314,7 +314,7 @@ int sceneHandler26(ExCommand *cmd) { case MSG_SC26_CLICKVENT: { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_VENT, cmd->_param); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_VENT, cmd->_param); if (ani && ani->_id == ANI_VENT) { sceneHandler26_clickVent(ani, cmd); @@ -328,7 +328,7 @@ int sceneHandler26(ExCommand *cmd) { case 29: { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); if (ani && ani->_id == ANI_VENT) { sceneHandler26_clickVent(ani, cmd); @@ -337,19 +337,19 @@ int sceneHandler26(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; } - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); break; diff --git a/engines/ngi/fullpipe/scene27.cpp b/engines/ngi/fullpipe/scene27.cpp index e6b5f71d292..4378e1306a1 100644 --- a/engines/ngi/fullpipe/scene27.cpp +++ b/engines/ngi/fullpipe/scene27.cpp @@ -76,36 +76,36 @@ void scene27_initScene(Scene *sc) { g_vars->scene27_knockCount = 0; g_vars->scene27_launchPhase = 0; - Scene *oldsc = g_fp->_currentScene; - g_fp->_currentScene = sc; + Scene *oldsc = g_nmi->_currentScene; + g_nmi->_currentScene = sc; - if (g_fp->getObjectState(sO_Maid) == g_fp->getObjectEnumState(sO_Maid, sO_WithSwab)) { + if (g_nmi->getObjectState(sO_Maid) == g_nmi->getObjectEnumState(sO_Maid, sO_WithSwab)) { g_vars->scene27_maid->changeStatics2(ST_MID_SWAB2); - } else if (g_fp->getObjectState(sO_Maid) == g_fp->getObjectEnumState(sO_Maid, sO_WithBroom)) { + } else if (g_nmi->getObjectState(sO_Maid) == g_nmi->getObjectEnumState(sO_Maid, sO_WithBroom)) { g_vars->scene27_maid->changeStatics2(ST_MID_BROOM); - } else if (g_fp->getObjectState(sO_Maid) == g_fp->getObjectEnumState(sO_Maid, sO_WithSpade)) { + } else if (g_nmi->getObjectState(sO_Maid) == g_nmi->getObjectEnumState(sO_Maid, sO_WithSpade)) { g_vars->scene27_maid->changeStatics2(ST_MID_SPADE); } - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; - g_fp->setArcadeOverlay(PIC_CSR_ARCADE7); + g_nmi->setArcadeOverlay(PIC_CSR_ARCADE7); } int scene27_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); if (g_vars->scene27_dudeIsAiming) { - if (g_fp->_cursorId != PIC_CSR_DEFAULT_INV && g_fp->_cursorId != PIC_CSR_ITN_INV) - g_fp->_cursorId = PIC_CSR_ARCADE7_D; + if (g_nmi->_cursorId != PIC_CSR_DEFAULT_INV && g_nmi->_cursorId != PIC_CSR_ITN_INV) + g_nmi->_cursorId = PIC_CSR_ARCADE7_D; - } else if (g_fp->_objectIdAtCursor == ANI_MAN) { + } else if (g_nmi->_objectIdAtCursor == ANI_MAN) { if (g_vars->scene27_maxPhaseReached) - if (g_fp->_cursorId == PIC_CSR_DEFAULT) - g_fp->_cursorId = PIC_CSR_ITN; + if (g_nmi->_cursorId == PIC_CSR_DEFAULT) + g_nmi->_cursorId = PIC_CSR_ITN; } - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler27_driverGiveVent() { @@ -117,22 +117,22 @@ void sceneHandler27_driverGiveVent() { getCurrSceneSc2MotionController()->activate(); getGameLoaderInteractionController()->enableFlag24(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 1); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 1); } void sceneHandler27_winArcade() { - if (g_fp->getObjectState(sO_Driver) == g_fp->getObjectEnumState(sO_Driver, sO_WithSteering)) { + if (g_nmi->getObjectState(sO_Driver) == g_nmi->getObjectEnumState(sO_Driver, sO_WithSteering)) { g_vars->scene27_dudeIsAiming = false; - g_fp->_aniMan->_callback2 = 0; // Really NULL - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT); + g_nmi->_aniMan->_callback2 = 0; // Really NULL + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT); sceneHandler27_driverGiveVent(); } } void sceneHandler27_takeVent() { - if (g_fp->getObjectState(sO_Maid) == g_fp->getObjectEnumState(sO_Maid, sO_WithSwab)) { + if (g_nmi->getObjectState(sO_Maid) == g_nmi->getObjectEnumState(sO_Maid, sO_WithSwab)) { if (g_vars->scene27_maid->isIdle()) { if (g_vars->scene27_maid->_flags & 4) { g_vars->scene27_maid->changeStatics2(ST_MID_SWAB2); @@ -144,7 +144,7 @@ void sceneHandler27_takeVent() { void sceneHandler27_showNextBat() { if (g_vars->scene27_bat) { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC27_SHOWBET), 0, 1); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC27_SHOWBET), 0, 1); mq->setParamInt(-1, g_vars->scene27_bat->_odelay); mq->chain(0); @@ -156,10 +156,10 @@ void sceneHandler27_showNextBat() { int sceneHandler27_updateScreenCallback() { int res; - res = g_fp->drawArcadeOverlay(getGameLoaderInteractionController()->_flag24 == 0); + res = g_nmi->drawArcadeOverlay(getGameLoaderInteractionController()->_flag24 == 0); if (!res) - g_fp->_updateScreenCallback = 0; + g_nmi->_updateScreenCallback = 0; return res; } @@ -175,16 +175,16 @@ void sceneHandler27_aniManCallback(int *phase) { void sceneHandler27_throwBat() { if (getGameLoaderInteractionController()->_flag24) - g_fp->_updateScreenCallback = sceneHandler27_updateScreenCallback; + g_nmi->_updateScreenCallback = sceneHandler27_updateScreenCallback; - g_fp->_aniMan->_callback2 = sceneHandler27_aniManCallback; + g_nmi->_aniMan->_callback2 = sceneHandler27_aniManCallback; - g_fp->_aniMan->startAnim(MV_MAN27_THROWBET, 0, -1); + g_nmi->_aniMan->startAnim(MV_MAN27_THROWBET, 0, -1); getCurrSceneSc2MotionController()->deactivate(); getGameLoaderInteractionController()->disableFlag24(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 0); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 0); g_vars->scene27_maxPhaseReached = false; @@ -200,14 +200,14 @@ void sceneHandler27_clickBat(ExCommand *cmd) { return; #endif - if (ABS(bx - g_fp->_aniMan->_ox) > 1 || ABS(by - g_fp->_aniMan->_oy) > 1 - || g_fp->_aniMan->_movement || g_fp->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) { - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, bx, by, 1, ST_MAN_RIGHT); + if (ABS(bx - g_nmi->_aniMan->_ox) > 1 || ABS(by - g_nmi->_aniMan->_oy) > 1 + || g_nmi->_aniMan->_movement || g_nmi->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) { + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, bx, by, 1, ST_MAN_RIGHT); if (mq) { mq->addExCommandToEnd(cmd->createClone()); - postExCommand(g_fp->_aniMan->_id, 2, bx, by, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, bx, by, 0, -1); } } else { sceneHandler27_throwBat(); @@ -218,7 +218,7 @@ void sceneHandler27_maidSwab() { #if DBG return; #endif - if (g_fp->getObjectState(sO_Maid) == g_fp->getObjectEnumState(sO_Maid, sO_WithSwab)) + if (g_nmi->getObjectState(sO_Maid) == g_nmi->getObjectEnumState(sO_Maid, sO_WithSwab)) g_vars->scene27_maid->changeStatics2(ST_MID_SWAB); } @@ -232,8 +232,8 @@ void sceneHandler27_startBat(StaticANIObject *bat) { newbat->ani = bat; newbat->powerCos = newbat->power * cos(0.0); newbat->powerSin = newbat->power * sin(0.0); - newbat->currX = newbat->powerCos + (double)g_fp->_aniMan->_ox + 42.0; - newbat->currY = newbat->powerSin + (double)g_fp->_aniMan->_oy + 58.0; + newbat->currX = newbat->powerCos + (double)g_nmi->_aniMan->_ox + 42.0; + newbat->currY = newbat->powerSin + (double)g_nmi->_aniMan->_oy + 58.0; bat->_statics = bat->_staticsList[0]; bat->setOXY((int)newbat->currX, (int)newbat->currY); @@ -248,9 +248,9 @@ void sceneHandler27_startAiming() { g_vars->scene27_dudeIsAiming = false; g_vars->scene27_maxPhaseReached = false; - g_fp->_aniMan->_callback2 = 0; // Really NULL + g_nmi->_aniMan->_callback2 = 0; // Really NULL - g_vars->scene27_launchPhase = g_fp->_aniMan->_movement->_currDynamicPhaseIndex - 6; + g_vars->scene27_launchPhase = g_nmi->_aniMan->_movement->_currDynamicPhaseIndex - 6; int phase = 21 - g_vars->scene27_launchPhase; @@ -260,9 +260,9 @@ void sceneHandler27_startAiming() { if (phase > 20) phase = 20; - g_fp->playSound(SND_27_044, 0); + g_nmi->playSound(SND_27_044, 0); - g_fp->_aniMan->_movement->setDynamicPhaseIndex(phase); + g_nmi->_aniMan->_movement->setDynamicPhaseIndex(phase); } void sceneHandler27_initAiming(ExCommand *cmd) { @@ -273,7 +273,7 @@ void sceneHandler27_initAiming(ExCommand *cmd) { } void sceneHandler27_aimDude() { - int phase = (g_vars->scene27_aimStartX - g_fp->_mouseScreenPos.x) / 20 + 6; + int phase = (g_vars->scene27_aimStartX - g_nmi->_mouseScreenPos.x) / 20 + 6; if (phase < 6) phase = 6; @@ -281,8 +281,8 @@ void sceneHandler27_aimDude() { if (phase > 11) phase = 11; - if (g_fp->_aniMan->_movement) - g_fp->_aniMan->_movement->setDynamicPhaseIndex(phase); + if (g_nmi->_aniMan->_movement) + g_nmi->_aniMan->_movement->setDynamicPhaseIndex(phase); } void sceneHandler27_wipeDo() { @@ -335,7 +335,7 @@ void sceneHandler27_knockBats(int bat1n, int bat2n) { debugC(2, kDebugSceneLogic, "scene27: knockBats(%d, %d)", bat1n, bat2n); if (bat1->power != 0.0) { - double rndF = (double)g_fp->_rnd.getRandomNumber(32767) * 0.03 / 32767.0 - 0.015 + double rndF = (double)g_nmi->_rnd.getRandomNumber(32767) * 0.03 / 32767.0 - 0.015 + atan2(bat2->currY - bat1->currY, bat2->currX - bat1->currX); double pow1x = cos(bat1->angle - rndF) * ((bat2->currX - bat1->currX) >= 0 ? bat1->power : -bat1->power); @@ -349,7 +349,7 @@ void sceneHandler27_knockBats(int bat1n, int bat2n) { debugC(3, kDebugSceneLogic, "scene27: knockBats: bat1 to: powerCos: %f powerSin: %f", bat1->powerCos, bat1->powerSin); - double rndF2 = (double)g_fp->_rnd.getRandomNumber(32767) * 0.03 / 32767.0 - 0.015 + double rndF2 = (double)g_nmi->_rnd.getRandomNumber(32767) * 0.03 / 32767.0 - 0.015 + atan2(bat1->currY - bat2->currY, bat1->currX - bat2->currX); double pow2x = cos(bat2->angle - rndF2) * ((bat1->currX - bat2->currX) >= 0 ? bat2->power : -bat2->power); double pow2y = sin(bat2->angle - rndF2) * ((bat1->currY - bat2->currY) >= 0 ? bat2->power : -bat2->power); @@ -399,7 +399,7 @@ void sceneHandler27_knockBats(int bat1n, int bat2n) { debugC(3, kDebugSceneLogic, "scene27: knockBats: bat2 corrected: powerCos: %f powerSin: %f, power: %f, angle: %f", bat2->powerCos, bat2->powerSin, bat2->power, bat2->angle); - g_fp->playSound(SND_27_026, 0); + g_nmi->playSound(SND_27_026, 0); } } @@ -422,7 +422,7 @@ void sceneHandler27_batSetColors(int batn) { void sceneHandler27_driverPushButton() { debugC(2, kDebugSceneLogic, "scene27: driverPushButton"); - if (g_fp->getObjectState(sO_Driver) == g_fp->getObjectEnumState(sO_Driver, sO_WithSteering)) { + if (g_nmi->getObjectState(sO_Driver) == g_nmi->getObjectEnumState(sO_Driver, sO_WithSteering)) { g_vars->scene27_driver->changeStatics2(ST_DRV_VENT); chainQueue(QU_DRV_PUSHBUTTON, 1); @@ -439,7 +439,7 @@ void sceneHandler27_driverPushButton() { void sceneHandler27_maidSwitchback() { #ifndef DBG - if (g_fp->getObjectState(sO_Maid) == g_fp->getObjectEnumState(sO_Maid, sO_WithSwab)) { + if (g_nmi->getObjectState(sO_Maid) == g_nmi->getObjectEnumState(sO_Maid, sO_WithSwab)) { g_vars->scene27_maid->changeStatics2(ST_MID_SWAB); g_vars->scene27_maid->startMQIfIdle(QU_MID_SWITCHBACK, 1); } @@ -481,12 +481,12 @@ void sceneHandler27_batLogic() { getCurrSceneSc2MotionController()->activate(); getGameLoaderInteractionController()->enableFlag24(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 1); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 1); return; } - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); mq->setFlags(mq->getFlags() | 1); @@ -514,7 +514,7 @@ void sceneHandler27_calcWinArcade() { } if (numHilite >= 3) { - if (g_fp->getObjectState(sO_Driver) == g_fp->getObjectEnumState(sO_Driver, sO_WithSteering)) { + if (g_nmi->getObjectState(sO_Driver) == g_nmi->getObjectEnumState(sO_Driver, sO_WithSteering)) { sceneHandler27_driverGiveVent(); sceneHandler27_maidSwitchback(); @@ -643,7 +643,7 @@ int sceneHandler27(ExCommand *cmd) { g_vars->scene27_wipeIsNeeded = true; - g_fp->playSound(SND_27_027, 0); + g_nmi->playSound(SND_27_027, 0); break; case MSG_SC27_CLICKBET: @@ -663,20 +663,20 @@ int sceneHandler27(ExCommand *cmd) { break; case 29: - if (g_fp->_aniMan == g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y) && g_vars->scene27_maxPhaseReached) { + if (g_nmi->_aniMan == g_nmi->_currentScene->getStaticANIObjectAtPos(g_nmi->_sceneRect.left + cmd->_x, g_nmi->_sceneRect.top + cmd->_y) && g_vars->scene27_maxPhaseReached) { sceneHandler27_initAiming(cmd); } break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; } if (g_vars->scene27_dudeIsAiming) @@ -685,14 +685,14 @@ int sceneHandler27(ExCommand *cmd) { if (g_vars->scene27_wipeIsNeeded) { sceneHandler27_wipeDo(); - if (!g_fp->_aniMan->_movement && g_fp->_aniMan->_statics->_staticsId == ST_MAN_RIGHT) - g_fp->_aniMan->startAnim(MV_MAN27_FLOW, 0, -1); + if (!g_nmi->_aniMan->_movement && g_nmi->_aniMan->_statics->_staticsId == ST_MAN_RIGHT) + g_nmi->_aniMan->startAnim(MV_MAN27_FLOW, 0, -1); } sceneHandler27_animateBats(); - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); break; diff --git a/engines/ngi/fullpipe/scene28.cpp b/engines/ngi/fullpipe/scene28.cpp index 8b7ddb77129..c6a93732da9 100644 --- a/engines/ngi/fullpipe/scene28.cpp +++ b/engines/ngi/fullpipe/scene28.cpp @@ -45,35 +45,35 @@ void scene28_initScene(Scene *sc) { g_vars->scene28_headBeardedFlipper = false; g_vars->scene28_lift6inside = false; - g_fp->_floaters->init(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_28")); + g_nmi->_floaters->init(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_28")); - g_fp->initArcadeKeys("SC_28"); + g_nmi->initArcadeKeys("SC_28"); } int scene28_updateCursor() { - g_fp->updateCursorCommon(); - if (g_fp->_objectIdAtCursor == ANI_LIFT || g_fp->_objectIdAtCursor == ANI_LIFT_28) - if (g_fp->_cursorId == PIC_CSR_DEFAULT) - g_fp->_cursorId = PIC_CSR_ITN; + g_nmi->updateCursorCommon(); + if (g_nmi->_objectIdAtCursor == ANI_LIFT || g_nmi->_objectIdAtCursor == ANI_LIFT_28) + if (g_nmi->_cursorId == PIC_CSR_DEFAULT) + g_nmi->_cursorId = PIC_CSR_ITN; - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler28_lift1ShowAfter() { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_MAN_28, -1); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_MAN_28, -1); - g_fp->_aniMan->_statics = g_fp->_aniMan->getStaticsById(ST_MAN_SIT|0x4000); - g_fp->_aniMan->setOXY(ani->_ox + 7, ani->_oy); - g_fp->_aniMan->_priority = ani->_priority; - g_fp->_aniMan->show1(-1, -1, -1, 0); + g_nmi->_aniMan->_statics = g_nmi->_aniMan->getStaticsById(ST_MAN_SIT|0x4000); + g_nmi->_aniMan->setOXY(ani->_ox + 7, ani->_oy); + g_nmi->_aniMan->_priority = ani->_priority; + g_nmi->_aniMan->show1(-1, -1, -1, 0); } void sceneHandler28_makeFaces(ExCommand *cmd) { - g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK4, 0)->_flags &= 0xFFFB; + g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK4, 0)->_flags &= 0xFFFB; g_vars->scene28_lighteningObject = 0; - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(cmd->_parId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(cmd->_parId); if (mq) { int frames[5]; @@ -86,7 +86,7 @@ void sceneHandler28_makeFaces(ExCommand *cmd) { for (int i = 0; i < 5; i++) { int pos; - while (frames[pos = g_fp->_rnd.getRandomNumber(4)] == 0) + while (frames[pos = g_nmi->_rnd.getRandomNumber(4)] == 0) ; mq->getExCommandByIndex(i)->_messageNum = frames[pos]; @@ -102,43 +102,43 @@ void sceneHandler28_trySecondaryPers() { if (g_vars->scene28_headBeardedFlipper) { if (g_vars->scene28_beardedDirection) { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_BRD28_GOR), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_BRD28_GOR), 0, 1); - mq->getExCommandByIndex(0)->_x = g_fp->_sceneRect.left - 20; + mq->getExCommandByIndex(0)->_x = g_nmi->_sceneRect.left - 20; mq->getExCommandByIndex(0)->_param = 1; mq->setParamInt(-1, 1); mq->chain(0); - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_BRD28_GOR), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_BRD28_GOR), 0, 1); - mq->getExCommandByIndex(0)->_x = g_fp->_sceneRect.left - 40; + mq->getExCommandByIndex(0)->_x = g_nmi->_sceneRect.left - 40; mq->getExCommandByIndex(0)->_y += 20; mq->getExCommandByIndex(0)->_param = 2; mq->setParamInt(-1, 2); mq->chain(0); - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_BRD28_GOR), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_BRD28_GOR), 0, 1); - x = g_fp->_sceneRect.left - 60; + x = g_nmi->_sceneRect.left - 60; } else { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_BRD28_GOL), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_BRD28_GOL), 0, 1); - mq->getExCommandByIndex(0)->_x = g_fp->_sceneRect.right + 20; + mq->getExCommandByIndex(0)->_x = g_nmi->_sceneRect.right + 20; mq->getExCommandByIndex(0)->_param = 1; mq->setParamInt(-1, 1); mq->chain(0); - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_BRD28_GOL), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_BRD28_GOL), 0, 1); - mq->getExCommandByIndex(0)->_x = g_fp->_sceneRect.right + 40; + mq->getExCommandByIndex(0)->_x = g_nmi->_sceneRect.right + 40; mq->getExCommandByIndex(0)->_y += 20; mq->getExCommandByIndex(0)->_param = 2; mq->setParamInt(-1, 2); mq->chain(0); - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_BRD28_GOL), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_BRD28_GOL), 0, 1); - x = g_fp->_sceneRect.right + 60; + x = g_nmi->_sceneRect.right + 60; } mq->getExCommandByIndex(0)->_x = x; @@ -150,13 +150,13 @@ void sceneHandler28_trySecondaryPers() { g_vars->scene28_beardedDirection = !g_vars->scene28_beardedDirection; } else { if (g_vars->scene28_headDirection) { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_GLV28_GOR), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_GLV28_GOR), 0, 1); - x = g_fp->_sceneRect.left - 40; + x = g_nmi->_sceneRect.left - 40; } else { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_GLV28_GOL), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_GLV28_GOL), 0, 1); - x = g_fp->_sceneRect.right + 40; + x = g_nmi->_sceneRect.right + 40; } mq->getExCommandByIndex(0)->_x = x; @@ -170,15 +170,15 @@ void sceneHandler28_trySecondaryPers() { void sceneHandler28_turnOn2() { if (g_vars->scene28_fliesArePresent) { - g_fp->_floaters->genFlies(g_fp->_currentScene, 1013, 329, 60, 4); + g_nmi->_floaters->genFlies(g_nmi->_currentScene, 1013, 329, 60, 4); - g_fp->_floaters->_array2[g_fp->_floaters->_array2.size() - 1].val13 = 30; - g_fp->_floaters->_array2[g_fp->_floaters->_array2.size() - 1].countdown = g_fp->_rnd.getRandomNumber(12) + 12; + g_nmi->_floaters->_array2[g_nmi->_floaters->_array2.size() - 1].val13 = 30; + g_nmi->_floaters->_array2[g_nmi->_floaters->_array2.size() - 1].countdown = g_nmi->_rnd.getRandomNumber(12) + 12; - g_fp->_floaters->genFlies(g_fp->_currentScene, 1074, 311, 60, 4); + g_nmi->_floaters->genFlies(g_nmi->_currentScene, 1074, 311, 60, 4); - g_fp->_floaters->_array2[g_fp->_floaters->_array2.size() - 1].val13 = 30; - g_fp->_floaters->_array2[g_fp->_floaters->_array2.size() - 1].countdown = g_fp->_rnd.getRandomNumber(12) + 12; + g_nmi->_floaters->_array2[g_nmi->_floaters->_array2.size() - 1].val13 = 30; + g_nmi->_floaters->_array2[g_nmi->_floaters->_array2.size() - 1].countdown = g_nmi->_rnd.getRandomNumber(12) + 12; } g_vars->scene28_fliesArePresent = false; @@ -187,13 +187,13 @@ void sceneHandler28_turnOn2() { void sceneHandler28_startWork1() { debugC(2, kDebugSceneLogic, "scene28: startWork"); - g_fp->_aniMan->hide(); + g_nmi->_aniMan->hide(); - StaticANIObject *man = g_fp->_currentScene->getStaticANIObject1ById(ANI_MAN_28, -1); + StaticANIObject *man = g_nmi->_currentScene->getStaticANIObject1ById(ANI_MAN_28, -1); man->_statics = man->getStaticsById(ST_MAN28_RIGHT); - man->setOXY(g_fp->_aniMan->_ox, g_fp->_aniMan->_oy); - man->_priority = g_fp->_aniMan->_priority; + man->setOXY(g_nmi->_aniMan->_ox, g_nmi->_aniMan->_oy); + man->_priority = g_nmi->_aniMan->_priority; man->show1(-1, -1, -1, 0); chainQueue(QU_SC28_LIFT1_WORK, 1); @@ -204,9 +204,9 @@ void sceneHandler28_lift0Start() { } void sceneHandler28_lift1Start() { - g_fp->_aniMan->_flags |= 0x100; + g_nmi->_aniMan->_flags |= 0x100; - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 0); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 0); chainQueue(QU_SC28_LIFT1_START, 1); } @@ -220,9 +220,9 @@ void sceneHandler28_lift3Start() { } void sceneHandler28_lift4Start() { - g_fp->_aniMan->_flags |= 0x100; + g_nmi->_aniMan->_flags |= 0x100; - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 0); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 0); chainQueue(QU_SC28_WMN_START, 1); } @@ -232,11 +232,11 @@ void sceneHandler28_lift5Start() { } void sceneHandler28_lift6Start() { - g_fp->_aniMan->_flags |= 0x100; + g_nmi->_aniMan->_flags |= 0x100; - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 0); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 0); - StaticANIObject *woman = g_fp->_currentScene->getStaticANIObject1ById(ANI_TIOTIA, -1); + StaticANIObject *woman = g_nmi->_currentScene->getStaticANIObject1ById(ANI_TIOTIA, -1); if (woman && (woman->_flags & 4)) chainQueue(QU_SC28_LIFT6_START2, 1); @@ -260,12 +260,12 @@ void sceneHandler28_clickLift(int numLift) { default: break; } - if (abs(x - g_fp->_aniMan->_ox) > 1 || abs(472 - g_fp->_aniMan->_oy) > 1 - || g_fp->_aniMan->_movement - || g_fp->_aniMan->_statics->_staticsId != ST_MAN_UP) { + if (abs(x - g_nmi->_aniMan->_ox) > 1 || abs(472 - g_nmi->_aniMan->_oy) > 1 + || g_nmi->_aniMan->_movement + || g_nmi->_aniMan->_statics->_staticsId != ST_MAN_UP) { debugC(2, kDebugSceneLogic, "scene28: clickLift: overwrite"); - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, x, 472, 1, ST_MAN_UP); + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, x, 472, 1, ST_MAN_UP); if (mq) { ExCommand *ex = new ExCommand(0, 17, MSG_SC28_CLICKLIFT, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags |= 3; @@ -273,7 +273,7 @@ void sceneHandler28_clickLift(int numLift) { mq->addExCommandToEnd(ex); - postExCommand(g_fp->_aniMan->_id, 2, x, 472, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, x, 472, 0, -1); } } else { switch (numLift) { @@ -310,7 +310,7 @@ int sceneHandler28(ExCommand *cmd) { switch (cmd->_messageNum) { case MSG_SC28_LIFT6MUSIC: - g_fp->playTrack(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_28"), "MUSIC_TIOTIA", 1); + g_nmi->playTrack(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_28"), "MUSIC_TIOTIA", 1); break; case MSG_SC28_LIFT6INSIDE: @@ -330,57 +330,57 @@ int sceneHandler28(ExCommand *cmd) { break; case MSG_SC28_TURNOFF_0: - g_vars->scene28_lighteningObject = g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK0, 0); + g_vars->scene28_lighteningObject = g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK0, 0); g_vars->scene28_lighteningObject->_flags |= 4; break; case MSG_SC28_TURNON_0: - g_vars->scene28_darkeningObject = g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK0, 0); + g_vars->scene28_darkeningObject = g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK0, 0); break; case MSG_SC28_TURNON_1: - g_vars->scene28_darkeningObject = g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK1, 0); + g_vars->scene28_darkeningObject = g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK1, 0); break; case MSG_SC28_TURNOFF_1: - g_vars->scene28_lighteningObject = g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK1, 0); + g_vars->scene28_lighteningObject = g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK1, 0); g_vars->scene28_lighteningObject->_flags |= 4; break; case MSG_SC28_TURNON_2: - g_vars->scene28_darkeningObject = g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK2, 0); + g_vars->scene28_darkeningObject = g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK2, 0); sceneHandler28_turnOn2(); break; case MSG_SC28_TURNOFF_2: - g_vars->scene28_lighteningObject = g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK2, 0); + g_vars->scene28_lighteningObject = g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK2, 0); g_vars->scene28_lighteningObject->_flags |= 4; break; case MSG_SC28_TURNON_3: - g_vars->scene28_darkeningObject = g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK3, 0); + g_vars->scene28_darkeningObject = g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK3, 0); break; case MSG_SC28_TURNOFF_3: - g_vars->scene28_lighteningObject = g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK3, 0); + g_vars->scene28_lighteningObject = g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK3, 0); g_vars->scene28_lighteningObject->_flags |= 4; break; case MSG_SC28_TURNON_4: - g_vars->scene28_darkeningObject = g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK4, 0); + g_vars->scene28_darkeningObject = g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK4, 0); break; case MSG_SC28_TURNOFF_4: - g_vars->scene28_lighteningObject = g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK4, 0); + g_vars->scene28_lighteningObject = g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK4, 0); g_vars->scene28_lighteningObject->_flags |= 4; break; case MSG_SC28_TURNON_6: - g_vars->scene28_darkeningObject = g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK6, 0); + g_vars->scene28_darkeningObject = g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK6, 0); break; case MSG_SC28_TURNOFF_6: - g_vars->scene28_lighteningObject = g_fp->_currentScene->getPictureObjectById(PIC_SC28_DARK6, 0); + g_vars->scene28_lighteningObject = g_nmi->_currentScene->getPictureObjectById(PIC_SC28_DARK6, 0); g_vars->scene28_lighteningObject->_flags |= 4; break; @@ -395,21 +395,21 @@ int sceneHandler28(ExCommand *cmd) { case MSG_SC28_ENDLIFT1: case MSG_SC28_ENDLIFT6: case MSG_SC28_ENDCABIN: - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 1); - g_fp->_aniMan->_flags &= 0xFEFF; + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 1); + g_nmi->_aniMan->_flags &= 0xFEFF; break; case 29: { if (g_vars->scene28_lift6inside) { - chainObjQueue(g_fp->_aniMan, QU_SC28_LIFT6_END, 1); + chainObjQueue(g_nmi->_aniMan, QU_SC28_LIFT6_END, 1); - g_fp->playTrack(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_28"), "MUSIC", 1); + g_nmi->playTrack(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_28"), "MUSIC", 1); g_vars->scene28_lift6inside = false; } - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); if (ani) if (ani->_id == ANI_LIFT || ani->_id == ANI_LIFT_28 ) { @@ -419,30 +419,30 @@ int sceneHandler28(ExCommand *cmd) { break; } - if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_param)) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + if (!ani || !canInteractAny(g_nmi->_aniMan, ani, cmd->_param)) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); - if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_param)) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) - || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) - g_fp->processArcade(cmd); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, cmd->_param)) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) + || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) + g_nmi->processArcade(cmd); } } } break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } if (g_vars->scene28_darkeningObject) { @@ -465,15 +465,15 @@ int sceneHandler28(ExCommand *cmd) { } } - g_fp->_floaters->update(); + g_nmi->_floaters->update(); - for (uint i = 0; i < g_fp->_floaters->_array2.size(); i++) - if (g_fp->_floaters->_array2[i].val13 == 1) - g_fp->_floaters->_array2[i].ani->_priority = 15; + for (uint i = 0; i < g_nmi->_floaters->_array2.size(); i++) + if (g_nmi->_floaters->_array2[i].val13 == 1) + g_nmi->_floaters->_array2[i].ani->_priority = 15; - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); break; diff --git a/engines/ngi/fullpipe/scene29.cpp b/engines/ngi/fullpipe/scene29.cpp index 1aee6e1db1c..6e85c10b798 100644 --- a/engines/ngi/fullpipe/scene29.cpp +++ b/engines/ngi/fullpipe/scene29.cpp @@ -81,7 +81,7 @@ void scene29_initScene(Scene *sc) { g_vars->scene29_bearders.clear(); - ani = new StaticANIObject(g_fp->accessScene(SC_COMMON)->getStaticANIObject1ById(ANI_BEARDED_CMN, -1)); + ani = new StaticANIObject(g_nmi->accessScene(SC_COMMON)->getStaticANIObject1ById(ANI_BEARDED_CMN, -1)); ani->_statics = ani->getStaticsById(ST_BRDCMN_EMPTY); @@ -106,7 +106,7 @@ void scene29_initScene(Scene *sc) { g_vars->scene29_scrollingDisabled = false; g_vars->scene29_hitBall = 0; - g_fp->setArcadeOverlay(PIC_CSR_ARCADE8); + g_nmi->setArcadeOverlay(PIC_CSR_ARCADE8); } void sceneHandler29_winArcade() { @@ -144,7 +144,7 @@ void sceneHandler29_winArcade() { chainQueue(QU_SC29_ESCAPE, 1); } - g_fp->setObjectState(sO_LeftPipe_29, g_fp->getObjectEnumState(sO_LeftPipe_29, sO_IsOpened)); + g_nmi->setObjectState(sO_LeftPipe_29, g_nmi->getObjectEnumState(sO_LeftPipe_29, sO_IsOpened)); } void sceneHandler29_shootGreen() { @@ -176,31 +176,31 @@ void sceneHandler29_shootRed() { } void sceneHandler29_manJump() { - if (!g_fp->_aniMan->_movement || g_fp->_aniMan->_movement->_id == MV_MAN29_RUN || g_fp->_aniMan->_movement->_id == MV_MAN29_STANDUP) { + if (!g_nmi->_aniMan->_movement || g_nmi->_aniMan->_movement->_id == MV_MAN29_RUN || g_nmi->_aniMan->_movement->_id == MV_MAN29_STANDUP) { g_vars->scene29_rideBackEnabled = false; g_vars->scene29_manIsHit = false; g_vars->scene29_reachedFarRight = true; - g_fp->_aniMan->changeStatics2(ST_MAN29_RUNR); - g_fp->_aniMan->startAnim(MV_MAN29_JUMP, 0, -1); + g_nmi->_aniMan->changeStatics2(ST_MAN29_RUNR); + g_nmi->_aniMan->startAnim(MV_MAN29_JUMP, 0, -1); } - g_vars->scene29_manX = g_fp->_aniMan->_ox; - g_vars->scene29_manY = g_fp->_aniMan->_oy; + g_vars->scene29_manX = g_nmi->_aniMan->_ox; + g_vars->scene29_manY = g_nmi->_aniMan->_oy; } void sceneHandler29_manBend() { - if (!g_fp->_aniMan->_movement || g_fp->_aniMan->_movement->_id == MV_MAN29_RUN || g_fp->_aniMan->_movement->_id == MV_MAN29_STANDUP) { + if (!g_nmi->_aniMan->_movement || g_nmi->_aniMan->_movement->_id == MV_MAN29_RUN || g_nmi->_aniMan->_movement->_id == MV_MAN29_STANDUP) { g_vars->scene29_rideBackEnabled = false; g_vars->scene29_manIsHit = false; g_vars->scene29_reachedFarRight = true; - g_fp->_aniMan->changeStatics2(ST_MAN29_RUNR); - g_fp->_aniMan->startAnim(MV_MAN29_BEND, 0, -1); + g_nmi->_aniMan->changeStatics2(ST_MAN29_RUNR); + g_nmi->_aniMan->startAnim(MV_MAN29_BEND, 0, -1); } - g_vars->scene29_manX = g_fp->_aniMan->_ox; - g_vars->scene29_manY = g_fp->_aniMan->_oy; + g_vars->scene29_manX = g_nmi->_aniMan->_ox; + g_vars->scene29_manY = g_nmi->_aniMan->_oy; } bool sceneHandler29_checkRedBallHit(StaticANIObject *ani, int maxx) { @@ -215,13 +215,13 @@ bool sceneHandler29_checkRedBallHit(StaticANIObject *ani, int maxx) { && (ani->_ox < g_vars->scene29_manX + 8 || maxx > g_vars->scene29_manX + 27)) return false; - if (!g_fp->_aniMan->_movement) + if (!g_nmi->_aniMan->_movement) return true; - int phase = g_fp->_aniMan->_movement->_currDynamicPhaseIndex; + int phase = g_nmi->_aniMan->_movement->_currDynamicPhaseIndex; - if (g_fp->_aniMan->_movement->_id != MV_MAN29_BEND && g_fp->_aniMan->_movement->_id != MV_MAN29_RUN - && (g_fp->_aniMan->_movement->_id != MV_MAN29_JUMP || (phase >= 3 && phase <= 6))) + if (g_nmi->_aniMan->_movement->_id != MV_MAN29_BEND && g_nmi->_aniMan->_movement->_id != MV_MAN29_RUN + && (g_nmi->_aniMan->_movement->_id != MV_MAN29_JUMP || (phase >= 3 && phase <= 6))) return false; else return true; @@ -248,17 +248,17 @@ bool sceneHandler29_checkGreenBallHit(StaticANIObject *ani, int maxx) { } } - if (!g_fp->_aniMan->_movement) + if (!g_nmi->_aniMan->_movement) return true; - if (g_fp->_aniMan->_movement->_id == MV_MAN29_JUMP) + if (g_nmi->_aniMan->_movement->_id == MV_MAN29_JUMP) return true; - if (g_fp->_aniMan->_movement->_id == MV_MAN29_RUN) + if (g_nmi->_aniMan->_movement->_id == MV_MAN29_RUN) return true; - if (g_fp->_aniMan->_movement->_id == MV_MAN29_BEND) { - if (g_fp->_aniMan->_movement->_currDynamicPhaseIndex < 1 || g_fp->_aniMan->_movement->_currDynamicPhaseIndex > 5) + if (g_nmi->_aniMan->_movement->_id == MV_MAN29_BEND) { + if (g_nmi->_aniMan->_movement->_currDynamicPhaseIndex < 1 || g_nmi->_aniMan->_movement->_currDynamicPhaseIndex > 5) return true; } @@ -270,10 +270,10 @@ void sceneHandler29_manHit() { g_vars->scene29_manIsHit = true; - g_fp->_aniMan->changeStatics2(ST_MAN29_RUNR); - g_fp->_aniMan->setOXY(g_vars->scene29_manX, g_vars->scene29_manY); + g_nmi->_aniMan->changeStatics2(ST_MAN29_RUNR); + g_nmi->_aniMan->setOXY(g_vars->scene29_manX, g_vars->scene29_manY); - mkQueue.ani = g_fp->_aniMan; + mkQueue.ani = g_nmi->_aniMan; mkQueue.staticsId2 = ST_MAN29_SITR; mkQueue.y1 = 463; mkQueue.x1 = g_vars->scene29_manX <= 638 ? 351 : 0; @@ -289,7 +289,7 @@ void sceneHandler29_manHit() { if (g_vars->scene29_manX <= 638) { ex = new ExCommand(ANI_MAN, 1, MV_MAN29_STANDUP_NORM, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags = 2; - ex->_param = g_fp->_aniMan->_odelay; + ex->_param = g_nmi->_aniMan->_odelay; mq->addExCommandToEnd(ex); ex = new ExCommand(0, 17, MSG_SC29_STOPRIDE, 0, 0, 0, 1, 0, 0, 0); @@ -303,13 +303,13 @@ void sceneHandler29_manHit() { } else { ex = new ExCommand(ANI_MAN, 1, MV_MAN29_STANDUP, 0, 0, 0, 1, 0, 0, 0); ex->_excFlags = 2; - ex->_param = g_fp->_aniMan->_odelay; + ex->_param = g_nmi->_aniMan->_odelay; mq->addExCommandToEnd(ex); } mq->setFlags(mq->getFlags() | 1); - if (!mq->chain(g_fp->_aniMan)) + if (!mq->chain(g_nmi->_aniMan)) delete mq; } } @@ -345,7 +345,7 @@ void sceneHandler29_ballHitCheck() { sceneHandler29_manHit(); - g_fp->playSound(SND_29_014, 0); + g_nmi->playSound(SND_29_014, 0); ani->startAnim(MV_SHG_HITMAN, 0, -1); @@ -378,7 +378,7 @@ void sceneHandler29_ballHitCheck() { sceneHandler29_manHit(); - g_fp->playSound(SND_29_027, 0); + g_nmi->playSound(SND_29_027, 0); ani->startAnim(MV_SHR_HITMAN, 0, -1); @@ -405,12 +405,12 @@ void sceneHandler29_manFromL() { getCurrSceneSc2MotionController()->activate(); getGameLoaderInteractionController()->enableFlag24(); - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000); chainQueue(QU_SC29_MANFROM_L, 1); g_vars->scene29_scrollingDisabled = true; - g_fp->_scrollSpeed = g_vars->scene29_scrollSpeed; + g_nmi->_scrollSpeed = g_vars->scene29_scrollSpeed; } } @@ -429,10 +429,10 @@ void sceneHandler29_manFromR() { int sceneHandler29_updateScreenCallback() { int res; - res = g_fp->drawArcadeOverlay(g_vars->scene29_arcadeIsOn); + res = g_nmi->drawArcadeOverlay(g_vars->scene29_arcadeIsOn); if (!res) - g_fp->_updateScreenCallback = 0; + g_nmi->_updateScreenCallback = 0; return res; } @@ -447,12 +447,12 @@ void sceneHandler29_manToL() { g_vars->scene29_arcadeIsOn = true; - g_vars->scene29_aniHandler.attachObject(g_fp->_aniMan->_id); + g_vars->scene29_aniHandler.attachObject(g_nmi->_aniMan->_id); - g_fp->_updateScreenCallback = sceneHandler29_updateScreenCallback; + g_nmi->_updateScreenCallback = sceneHandler29_updateScreenCallback; - g_fp->_msgY = -1; - g_fp->_msgX = -1; + g_nmi->_msgY = -1; + g_nmi->_msgX = -1; } void sceneHandler29_manToR() { @@ -464,17 +464,17 @@ void sceneHandler29_manToR() { chainQueue(QU_SC29_MANTO_R, 1); g_vars->scene29_manIsRiding = true; - g_fp->_msgY = -1; - g_fp->_msgX = -1; + g_nmi->_msgY = -1; + g_nmi->_msgX = -1; g_vars->scene29_scrollingDisabled = false; - g_vars->scene29_scrollSpeed = g_fp->_scrollSpeed; - g_fp->_scrollSpeed = 4; + g_vars->scene29_scrollSpeed = g_nmi->_scrollSpeed; + g_nmi->_scrollSpeed = 4; } void sceneHandler29_clickPorter(ExCommand *cmd) { - if (!g_fp->_aniMan->isIdle() || g_fp->_aniMan->_flags & 0x100) { + if (!g_nmi->_aniMan->isIdle() || g_nmi->_aniMan->_flags & 0x100) { cmd->_messageKind = 0; return; @@ -482,32 +482,32 @@ void sceneHandler29_clickPorter(ExCommand *cmd) { if (g_vars->scene29_manX <= g_vars->scene29_porter->_ox) { if (ABS(351 - g_vars->scene29_manX) > 1 || ABS(443 - g_vars->scene29_manY) > 1 - || g_fp->_aniMan->_movement || g_fp->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) { - if (g_fp->_msgX != 351 || g_fp->_msgY != 443) { - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, 351, 443, 1, ST_MAN_RIGHT); + || g_nmi->_aniMan->_movement || g_nmi->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) { + if (g_nmi->_msgX != 351 || g_nmi->_msgY != 443) { + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, 351, 443, 1, ST_MAN_RIGHT); if (mq) { mq->addExCommandToEnd(cmd->createClone()); - postExCommand(g_fp->_aniMan->_id, 2, 351, 443, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, 351, 443, 0, -1); } } } else { sceneHandler29_manToL(); } } else { - g_vars->scene29_manX = g_fp->_aniMan->_ox; - g_vars->scene29_manY = g_fp->_aniMan->_oy; + g_vars->scene29_manX = g_nmi->_aniMan->_ox; + g_vars->scene29_manY = g_nmi->_aniMan->_oy; - if (ABS(1582 - g_vars->scene29_manX) > 1 || ABS(445 - g_fp->_aniMan->_oy) > 1 - || g_fp->_aniMan->_movement || g_fp->_aniMan->_statics->_staticsId != (0x4000 | ST_MAN_RIGHT)) { - if (g_fp->_msgX != 1582 || g_fp->_msgY != 445) { - MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_fp->_aniMan, 1582, 445, 1, (0x4000 | ST_MAN_RIGHT)); + if (ABS(1582 - g_vars->scene29_manX) > 1 || ABS(445 - g_nmi->_aniMan->_oy) > 1 + || g_nmi->_aniMan->_movement || g_nmi->_aniMan->_statics->_staticsId != (0x4000 | ST_MAN_RIGHT)) { + if (g_nmi->_msgX != 1582 || g_nmi->_msgY != 445) { + MessageQueue *mq = getCurrSceneSc2MotionController()->startMove(g_nmi->_aniMan, 1582, 445, 1, (0x4000 | ST_MAN_RIGHT)); if (mq) { mq->addExCommandToEnd(cmd->createClone()); - postExCommand(g_fp->_aniMan->_id, 2, 1582, 445, 0, -1); + postExCommand(g_nmi->_aniMan->_id, 2, 1582, 445, 0, -1); } } } else { @@ -517,26 +517,26 @@ void sceneHandler29_clickPorter(ExCommand *cmd) { } void sceneHandler29_shootersProcess() { - if (g_fp->_aniMan->_statics->_staticsId == ST_MAN29_RUNR) { + if (g_nmi->_aniMan->_statics->_staticsId == ST_MAN29_RUNR) { if (g_vars->scene29_manX > 1436) { sceneHandler29_manFromR(); } else { g_vars->scene29_shootDistance = (1310 - g_vars->scene29_manX) * 5213 / 100000 + 25; if (!g_vars->scene29_manIsHit) - g_fp->_aniMan->startAnim(MV_MAN29_RUN, 0, -1); + g_nmi->_aniMan->startAnim(MV_MAN29_RUN, 0, -1); } } - g_vars->scene29_manX = g_fp->_aniMan->_ox; - g_vars->scene29_manY = g_fp->_aniMan->_oy; + g_vars->scene29_manX = g_nmi->_aniMan->_ox; + g_vars->scene29_manY = g_nmi->_aniMan->_oy; } void sceneHandler29_shootersEscape() { if (g_vars->scene29_arcadeIsOn) { g_vars->scene29_manX += 2; - g_fp->_aniMan->setOXY(g_vars->scene29_manX, g_vars->scene29_manY); + g_nmi->_aniMan->setOXY(g_vars->scene29_manX, g_vars->scene29_manY); if (g_vars->scene29_manX > 1310 && !g_vars->scene29_shooter1->_movement && !g_vars->scene29_shooter2->_movement && g_vars->scene29_shooter1->_statics->_staticsId == ST_STR1_RIGHT) { @@ -552,24 +552,24 @@ void sceneHandler29_shootersEscape() { g_vars->scene29_ass->queueMessageQueue(0); g_vars->scene29_ass->hide(); - g_fp->setObjectState(sO_LeftPipe_29, g_fp->getObjectEnumState(sO_LeftPipe_29, sO_IsOpened)); + g_nmi->setObjectState(sO_LeftPipe_29, g_nmi->getObjectEnumState(sO_LeftPipe_29, sO_IsOpened)); } } else if (g_vars->scene29_manIsRiding) { g_vars->scene29_manX -= 4; - g_fp->_aniMan->setOXY(g_vars->scene29_manX, g_vars->scene29_manY); + g_nmi->_aniMan->setOXY(g_vars->scene29_manX, g_vars->scene29_manY); } } void sceneHandler29_manRideBack() { g_vars->scene29_manX -= 2; - g_fp->_aniMan->setOXY(g_vars->scene29_manX, g_vars->scene29_manY); + g_nmi->_aniMan->setOXY(g_vars->scene29_manX, g_vars->scene29_manY); } void sceneHandler29_shoot() { if (g_vars->scene29_arcadeIsOn && g_vars->scene29_manX < 1310) { - if (g_fp->_rnd.getRandomNumber(32767) <= 16383|| g_vars->scene29_shooter1->_movement || g_vars->scene29_shooter1->_statics->_staticsId != ST_STR1_RIGHT) { + if (g_nmi->_rnd.getRandomNumber(32767) <= 16383|| g_vars->scene29_shooter1->_movement || g_vars->scene29_shooter1->_statics->_staticsId != ST_STR1_RIGHT) { if (!g_vars->scene29_shooter2->_movement && g_vars->scene29_shooter2->_statics->_staticsId == ST_STR2_RIGHT) { if (g_vars->scene29_shooter2->_flags & 4) { g_vars->scene29_shooter2->startAnim(MV_STR2_SHOOT, 0, -1); @@ -599,7 +599,7 @@ void sceneHandler29_animBearded() { x -= 4; if (x - g_vars->scene29_manX < 100 || !g_vars->scene29_arcadeIsOn) { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC29_BRDOUT1), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC29_BRDOUT1), 0, 1); mq->setParamInt(-1, ani->_odelay); mq->chain(0); @@ -619,7 +619,7 @@ void sceneHandler29_animBearded() { if (g_vars->scene29_manX - x < 60 || x - g_vars->scene29_manX < -260 || !g_vars->scene29_arcadeIsOn) { ani->changeStatics2(ST_BRDCMN_RIGHT); - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC29_BRDOUT2), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC29_BRDOUT2), 0, 1); mq->setParamInt(-1, ani->_odelay); mq->chain(0); @@ -637,7 +637,7 @@ void sceneHandler29_animBearded() { if (g_vars->scene29_arcadeIsOn && g_vars->scene29_bearders[i]->wbcounter > 30) { int newx; - if (g_fp->_rnd.getRandomNumber(1)) + if (g_nmi->_rnd.getRandomNumber(1)) goto dostuff; if (g_vars->scene29_manX <= 700) { @@ -652,11 +652,11 @@ void sceneHandler29_animBearded() { continue; } - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC29_BRD2), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC29_BRD2), 0, 1); newx = g_vars->scene29_manX - 200; } else { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC29_BRD1), 0, 1); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC29_BRD1), 0, 1); newx = g_vars->scene29_manX + 350; } @@ -686,9 +686,9 @@ int sceneHandler29(ExCommand *cmd) { case MSG_SC29_LAUGH: if (g_vars->scene29_hitBall == ANI_SHELL_GREEN) { - g_fp->playSound(SND_29_028, 0); + g_nmi->playSound(SND_29_028, 0); } else { - g_fp->playSound(SND_29_029, 0); + g_nmi->playSound(SND_29_029, 0); } break; @@ -753,7 +753,7 @@ int sceneHandler29(ExCommand *cmd) { case 29: if (!g_vars->scene29_manIsRiding || g_vars->scene29_arcadeIsOn) { if (!g_vars->scene29_arcadeIsOn) { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(g_nmi->_sceneRect.left + cmd->_x, g_nmi->_sceneRect.top + cmd->_y); if (ani && ani == g_vars->scene29_porter) { sceneHandler29_clickPorter(cmd); @@ -776,24 +776,24 @@ int sceneHandler29(ExCommand *cmd) { case 33: if (g_vars->scene29_arcadeIsOn) { - if (g_vars->scene29_manX > g_fp->_sceneRect.right - 500) - g_fp->_currentScene->_x = g_fp->_sceneRect.right - g_vars->scene29_manX - 350; + if (g_vars->scene29_manX > g_nmi->_sceneRect.right - 500) + g_nmi->_currentScene->_x = g_nmi->_sceneRect.right - g_vars->scene29_manX - 350; - if (g_vars->scene29_manX < g_fp->_sceneRect.left + 100) - g_fp->_currentScene->_x = g_vars->scene29_manX - g_fp->_sceneRect.left - 100; + if (g_vars->scene29_manX < g_nmi->_sceneRect.left + 100) + g_nmi->_currentScene->_x = g_vars->scene29_manX - g_nmi->_sceneRect.left - 100; - } else if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + } else if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 300) - g_fp->_currentScene->_x = x - 400 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 300) + g_nmi->_currentScene->_x = x - 400 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 300) - g_fp->_currentScene->_x = x + 400 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 300) + g_nmi->_currentScene->_x = x + 400 - g_nmi->_sceneRect.right; } - g_vars->scene29_manX = g_fp->_aniMan->_ox; - g_vars->scene29_manY = g_fp->_aniMan->_oy; + g_vars->scene29_manX = g_nmi->_aniMan->_ox; + g_vars->scene29_manY = g_nmi->_aniMan->_oy; sceneHandler29_ballHitCheck(); @@ -802,7 +802,7 @@ int sceneHandler29(ExCommand *cmd) { if (g_vars->scene29_manIsRiding) sceneHandler29_manFromL(); - else if (g_vars->scene29_arcadeIsOn && !g_fp->_aniMan->_movement) + else if (g_vars->scene29_arcadeIsOn && !g_nmi->_aniMan->_movement) sceneHandler29_shootersProcess(); if (g_vars->scene29_reachedFarRight) @@ -817,8 +817,8 @@ int sceneHandler29(ExCommand *cmd) { sceneHandler29_animBearded(); - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); break; @@ -830,22 +830,22 @@ int sceneHandler29(ExCommand *cmd) { } int scene29_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); if (g_vars->scene29_arcadeIsOn) { - if (g_fp->_cursorId != PIC_CSR_DEFAULT_INV && g_fp->_cursorId != PIC_CSR_ITN_INV) - g_fp->_cursorId = -1; + if (g_nmi->_cursorId != PIC_CSR_DEFAULT_INV && g_nmi->_cursorId != PIC_CSR_ITN_INV) + g_nmi->_cursorId = -1; } else if (g_vars->scene29_manIsRiding) { - if (g_fp->_cursorId != PIC_CSR_DEFAULT_INV && g_fp->_cursorId != PIC_CSR_ITN_INV) - g_fp->_cursorId = PIC_CSR_DEFAULT; - } else if (g_fp->_objectIdAtCursor == ANI_PORTER) { - if (g_fp->_cursorId == PIC_CSR_DEFAULT) - g_fp->_cursorId = PIC_CSR_ITN; + if (g_nmi->_cursorId != PIC_CSR_DEFAULT_INV && g_nmi->_cursorId != PIC_CSR_ITN_INV) + g_nmi->_cursorId = PIC_CSR_DEFAULT; + } else if (g_nmi->_objectIdAtCursor == ANI_PORTER) { + if (g_nmi->_cursorId == PIC_CSR_DEFAULT) + g_nmi->_cursorId = PIC_CSR_ITN; } else { - if (g_fp->_objectIdAtCursor == PIC_SC29_LTRUBA && g_fp->_cursorId == PIC_CSR_ITN) - g_fp->_cursorId = PIC_CSR_GOL; + if (g_nmi->_objectIdAtCursor == PIC_SC29_LTRUBA && g_nmi->_cursorId == PIC_CSR_ITN) + g_nmi->_cursorId = PIC_CSR_GOL; } - return g_fp->_cursorId; + return g_nmi->_cursorId; } } // End of namespace NGI diff --git a/engines/ngi/fullpipe/scene30.cpp b/engines/ngi/fullpipe/scene30.cpp index 4356cf223a9..1ebe4ff9039 100644 --- a/engines/ngi/fullpipe/scene30.cpp +++ b/engines/ngi/fullpipe/scene30.cpp @@ -39,30 +39,30 @@ namespace NGI { void scene30_enablePass(Scene *sc) { MovGraphLink *lnk = getSc2MctlCompoundBySceneId(sc->_sceneId)->getLinkByName(sO_WayToPipe); - if (g_fp->getObjectState(sO_Leg) == g_fp->getObjectEnumState(sO_Leg, sO_WithAll)) + if (g_nmi->getObjectState(sO_Leg) == g_nmi->getObjectEnumState(sO_Leg, sO_WithAll)) lnk->_flags &= 0xDFFFFFFF; else lnk->_flags |= 0x20000000; } void scene30_initScene(Scene *sc, int flag) { - Scene *oldsc = g_fp->_currentScene; + Scene *oldsc = g_nmi->_currentScene; g_vars->scene30_leg = sc->getStaticANIObject1ById(ANI_LEG, -1); - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; - if (g_fp->getObjectState(sO_Leg) == g_fp->getObjectEnumState(sO_Leg, sO_ShowingHeel)) + if (g_nmi->getObjectState(sO_Leg) == g_nmi->getObjectEnumState(sO_Leg, sO_ShowingHeel)) g_vars->scene30_leg->changeStatics2(ST_LEG_UP); - else if (g_fp->getObjectState(sO_Leg) == g_fp->getObjectEnumState(sO_Leg, sO_WithoutJugs)) + else if (g_nmi->getObjectState(sO_Leg) == g_nmi->getObjectEnumState(sO_Leg, sO_WithoutJugs)) g_vars->scene30_leg->changeStatics2(ST_LEG_DOWN); - else if (g_fp->getObjectState(sO_Leg) == g_fp->getObjectEnumState(sO_Leg, sO_WithBig)) + else if (g_nmi->getObjectState(sO_Leg) == g_nmi->getObjectEnumState(sO_Leg, sO_WithBig)) g_vars->scene30_leg->changeStatics2(ST_LEG_DOWN1); - else if (g_fp->getObjectState(sO_Leg) == g_fp->getObjectEnumState(sO_Leg, sO_WithSmall)) + else if (g_nmi->getObjectState(sO_Leg) == g_nmi->getObjectEnumState(sO_Leg, sO_WithSmall)) g_vars->scene30_leg->changeStatics2(ST_LEG_DOWN2); - else if (g_fp->getObjectState(sO_Leg) == g_fp->getObjectEnumState(sO_Leg, sO_WithAll)) + else if (g_nmi->getObjectState(sO_Leg) == g_nmi->getObjectEnumState(sO_Leg, sO_WithAll)) g_vars->scene30_leg->changeStatics2(ST_LEG_EMPTY); - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; scene30_enablePass(sc); @@ -71,18 +71,18 @@ void scene30_initScene(Scene *sc, int flag) { else g_vars->scene30_liftFlag = 1; - g_fp->lift_setButton(sO_Level8, ST_LBN_8N); + g_nmi->lift_setButton(sO_Level8, ST_LBN_8N); - g_fp->lift_init(sc, QU_SC30_ENTERLIFT, QU_SC30_EXITLIFT); + g_nmi->lift_init(sc, QU_SC30_ENTERLIFT, QU_SC30_EXITLIFT); } int scene30_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_cursorId == PIC_CSR_ITN && g_fp->_objectIdAtCursor == PIC_SC30_LTRUBA) { - g_fp->_cursorId = PIC_CSR_GOL; + if (g_nmi->_cursorId == PIC_CSR_ITN && g_nmi->_objectIdAtCursor == PIC_SC30_LTRUBA) { + g_nmi->_cursorId = PIC_CSR_GOL; } - return g_fp->_cursorId; + return g_nmi->_cursorId; } int sceneHandler30(ExCommand *cmd) { @@ -91,39 +91,39 @@ int sceneHandler30(ExCommand *cmd) { switch(cmd->_messageNum) { case MSG_LIFT_CLOSEDOOR: - g_fp->lift_closedoorSeq(); + g_nmi->lift_closedoorSeq(); break; case MSG_LIFT_EXITLIFT: - g_fp->lift_exitSeq(cmd); + g_nmi->lift_exitSeq(cmd); break; case MSG_LIFT_STARTEXITQUEUE: - g_fp->lift_startExitQueue(); + g_nmi->lift_startExitQueue(); break; case MSG_LIFT_CLICKBUTTON: - g_fp->lift_clickButton(); + g_nmi->lift_clickButton(); break; case MSG_SC30_UPDATEPATH: - scene30_enablePass(g_fp->_currentScene); + scene30_enablePass(g_nmi->_currentScene); break; case 64: - g_fp->lift_hoverButton(cmd); + g_nmi->lift_hoverButton(cmd); break; case MSG_LIFT_GO: - g_fp->lift_goAnimation(); + g_nmi->lift_goAnimation(); break; case 29: { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(g_nmi->_sceneRect.left + cmd->_x, g_nmi->_sceneRect.top + cmd->_y); if (ani && ani->_id == ANI_LIFTBUTTON) { - g_fp->lift_animateButton(ani); + g_nmi->lift_animateButton(ani); cmd->_messageKind = 0; } @@ -131,17 +131,17 @@ int sceneHandler30(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; } - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); break; diff --git a/engines/ngi/fullpipe/scene31.cpp b/engines/ngi/fullpipe/scene31.cpp index 9b79f201ce4..2951c736fd4 100644 --- a/engines/ngi/fullpipe/scene31.cpp +++ b/engines/ngi/fullpipe/scene31.cpp @@ -40,21 +40,21 @@ void scene31_initScene(Scene *sc) { g_vars->scene31_chantingCountdown = 0; g_vars->scene31_cactus = sc->getStaticANIObject1ById(ANI_CACTUS_31, -1); - if (g_fp->getObjectState(sO_Cactus) == g_fp->getObjectEnumState(sO_Cactus, sO_HasGrown)) { - Scene *oldsc = g_fp->_currentScene; - g_fp->_currentScene = sc; + if (g_nmi->getObjectState(sO_Cactus) == g_nmi->getObjectEnumState(sO_Cactus, sO_HasGrown)) { + Scene *oldsc = g_nmi->_currentScene; + g_nmi->_currentScene = sc; g_vars->scene31_cactus->changeStatics2(ST_CTS31_GROWN2); g_vars->scene31_cactus->_priority = 22; - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; } else { g_vars->scene31_cactus->hide(); } g_vars->scene31_plusMinus = sc->getStaticANIObject1ById(ANI_PLUSMINUS, -1); - if (g_fp->getObjectState(sO_Guard_3) == g_fp->getObjectEnumState(sO_Guard_3, sO_Off)) + if (g_nmi->getObjectState(sO_Guard_3) == g_nmi->getObjectEnumState(sO_Guard_3, sO_Off)) g_vars->scene31_plusMinus->_statics = g_vars->scene31_plusMinus->getStaticsById(ST_PMS_MINUS); else g_vars->scene31_plusMinus->_statics = g_vars->scene31_plusMinus->getStaticsById(ST_PMS_PLUS); @@ -62,7 +62,7 @@ void scene31_initScene(Scene *sc) { void sceneHandler31_testCactus(ExCommand *cmd) { if ((g_vars->scene31_cactus->_flags & 4) && g_vars->scene31_cactus->_statics->_staticsId == ST_CTS31_GROWN2) { - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(cmd->_parId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(cmd->_parId); if (mq) { mq->getExCommandByIndex(0)->_messageKind = 0; @@ -84,7 +84,7 @@ int sceneHandler31(ExCommand *cmd) { break; case MSG_SC15_STOPCHANTING: - g_fp->stopAllSoundInstances(SND_31_001); + g_nmi->stopAllSoundInstances(SND_31_001); g_vars->scene31_chantingCountdown = 120; break; @@ -98,24 +98,24 @@ int sceneHandler31(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; } if (g_vars->scene31_chantingCountdown > 0) { --g_vars->scene31_chantingCountdown; if (!g_vars->scene31_chantingCountdown) - g_fp->playSound(SND_31_001, 1); + g_nmi->playSound(SND_31_001, 1); } - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); break; diff --git a/engines/ngi/fullpipe/scene32.cpp b/engines/ngi/fullpipe/scene32.cpp index bd3e99d1a0f..45b642ec0d7 100644 --- a/engines/ngi/fullpipe/scene32.cpp +++ b/engines/ngi/fullpipe/scene32.cpp @@ -56,21 +56,21 @@ void scene32_initScene(Scene *sc) { g_vars->scene32_massGreen->startAnim(MV_TSTG_FLOW, 0, -1); g_vars->scene32_massGreen->_movement->setDynamicPhaseIndex(26); - Scene *oldsc = g_fp->_currentScene; + Scene *oldsc = g_nmi->_currentScene; StaticANIObject *ani; - if (g_fp->getObjectState(sO_ClockHandle) == g_fp->getObjectEnumState(sO_ClockHandle, sO_In_32_Lies)) { + if (g_nmi->getObjectState(sO_ClockHandle) == g_nmi->getObjectEnumState(sO_ClockHandle, sO_In_32_Lies)) { ani = sc->getStaticANIObject1ById(ANI_INV_HANDLE, -1); if (ani) { - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; ani->changeStatics2(ST_HDL_LAID); } } else { - if (g_fp->getObjectState(sO_ClockHandle) == g_fp->getObjectEnumState(sO_ClockHandle, sO_In_32_Sticks)) { + if (g_nmi->getObjectState(sO_ClockHandle) == g_nmi->getObjectEnumState(sO_ClockHandle, sO_In_32_Sticks)) { ani = sc->getStaticANIObject1ById(ANI_INV_HANDLE, -1); - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; if (ani) ani->changeStatics2(ST_HDL_PLUGGED); @@ -79,38 +79,38 @@ void scene32_initScene(Scene *sc) { } } - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; - if (g_fp->getObjectState(sO_Cube) == g_fp->getObjectEnumState(sO_Cube, sO_In_32)) { + if (g_nmi->getObjectState(sO_Cube) == g_nmi->getObjectEnumState(sO_Cube, sO_In_32)) { MessageQueue *mq = new MessageQueue(sc->getMessageQueueById(QU_KBK32_START), 0, 0); mq->sendNextCommand(); } - g_fp->lift_setButton(sO_Level9, ST_LBN_9N); - g_fp->lift_init(sc, QU_SC32_ENTERLIFT, QU_SC32_EXITLIFT); + g_nmi->lift_setButton(sO_Level9, ST_LBN_9N); + g_nmi->lift_init(sc, QU_SC32_ENTERLIFT, QU_SC32_EXITLIFT); - g_fp->initArcadeKeys("SC_32"); + g_nmi->initArcadeKeys("SC_32"); - warning("cactus: %d, state: %d", g_fp->getObjectState(sO_Cactus), g_vars->scene32_cactus->_statics->_staticsId); + warning("cactus: %d, state: %d", g_nmi->getObjectState(sO_Cactus), g_vars->scene32_cactus->_statics->_staticsId); } void scene32_setupMusic() { - if (g_fp->lift_checkButton(sO_Level6)) - g_fp->playTrack(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_32"), "MUSIC2", 1); + if (g_nmi->lift_checkButton(sO_Level6)) + g_nmi->playTrack(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_32"), "MUSIC2", 1); } int scene32_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_objectIdAtCursor == PIC_SC32_LADDER && g_fp->_cursorId == PIC_CSR_ITN) - g_fp->_cursorId = g_vars->scene32_dudeOnLadder ? PIC_CSR_GOD : PIC_CSR_GOU; + if (g_nmi->_objectIdAtCursor == PIC_SC32_LADDER && g_nmi->_cursorId == PIC_CSR_ITN) + g_nmi->_cursorId = g_vars->scene32_dudeOnLadder ? PIC_CSR_GOD : PIC_CSR_GOU; - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler32_tryCube() { - if (g_fp->getObjectState(sO_Cube) == g_fp->getObjectEnumState(sO_Cube, sO_In_33)) + if (g_nmi->getObjectState(sO_Cube) == g_nmi->getObjectEnumState(sO_Cube, sO_In_33)) chainQueue(QU_KBK32_GO, 0); } @@ -120,7 +120,7 @@ void sceneHandler32_startCactus() { } void sceneHandler32_spin(ExCommand *cmd) { - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(cmd->_parId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(cmd->_parId); if (!mq || mq->getCount() == 0) return; @@ -171,7 +171,7 @@ void sceneHandler32_startFlagRight() { } void sceneHandler32_trySit(ExCommand *cmd) { - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(cmd->_parId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(cmd->_parId); if (!mq || mq->getCount() == 0) return; @@ -187,7 +187,7 @@ void sceneHandler32_trySit(ExCommand *cmd) { ex->_parentId = ANI_MAN; ex->_messageKind = 1; ex->_messageNum = MV_MAN32_SITDOWN; - ex->_param = g_fp->_aniMan->_odelay; + ex->_param = g_nmi->_aniMan->_odelay; g_vars->scene32_dudeIsSitting = true; @@ -197,8 +197,8 @@ void sceneHandler32_trySit(ExCommand *cmd) { } void sceneHandler32_buttonPush() { - if (g_fp->getObjectState(sO_ClockHandle) == g_fp->getObjectEnumState(sO_ClockHandle, sO_In_32_Sticks)) { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_INV_HANDLE, -1); + if (g_nmi->getObjectState(sO_ClockHandle) == g_nmi->getObjectEnumState(sO_ClockHandle, sO_In_32_Sticks)) { + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_INV_HANDLE, -1); if (ani) ani->changeStatics2(ST_HDL_PLUGGED); @@ -215,7 +215,7 @@ void sceneHandler32_installHandle() { } void sceneHandler32_animateCactus() { - if (g_fp->_aniMan->_statics->_staticsId != ST_MAN32_SIT) + if (g_nmi->_aniMan->_statics->_staticsId != ST_MAN32_SIT) chainQueue(QU_CTS_GROW, 1); else chainQueue(QU_CTS_GROWMAN, 1); @@ -225,15 +225,15 @@ void sceneHandler32_animateCactus() { } void sceneHandler32_ladderLogic(ExCommand *cmd) { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC32_FROMLADDER), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC32_FROMLADDER), 0, 0); - if (g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) != PIC_SC32_LADDER) + if (g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) != PIC_SC32_LADDER) mq->addExCommandToEnd(cmd->createClone()); mq->setFlags(mq->getFlags() | 1); - g_fp->_aniMan->changeStatics2(ST_MAN_STANDLADDER); - if (!mq->chain(g_fp->_aniMan)) + g_nmi->_aniMan->changeStatics2(ST_MAN_STANDLADDER); + if (!mq->chain(g_nmi->_aniMan)) delete mq; g_vars->scene32_dudeOnLadder = false; @@ -244,7 +244,7 @@ void sceneHandler32_ladderLogic(ExCommand *cmd) { void sceneHandler32_potLogic(ExCommand *cmd) { if (g_vars->scene32_cactusCounter < 0 || g_vars->scene32_cactusCounter > 20) { - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); ExCommand *ex = new ExCommand(ANI_MAN, 1, MV_MAN32_STANDUP, 0, 0, 0, 1, 0, 0, 0); @@ -252,7 +252,7 @@ void sceneHandler32_potLogic(ExCommand *cmd) { mq->addExCommandToEnd(ex); - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); if (!ani || ani->_id != ANI_KADKA) mq->addExCommandToEnd(cmd->createClone()); @@ -273,27 +273,27 @@ int sceneHandler32(ExCommand *cmd) { switch (cmd->_messageNum) { case MSG_LIFT_CLOSEDOOR: - g_fp->lift_closedoorSeq(); + g_nmi->lift_closedoorSeq(); break; case MSG_LIFT_EXITLIFT: - g_fp->lift_exitSeq(cmd); + g_nmi->lift_exitSeq(cmd); break; case MSG_LIFT_STARTEXITQUEUE: - g_fp->lift_startExitQueue(); + g_nmi->lift_startExitQueue(); break; case MSG_SC32_TRUBATOBACK: - g_fp->_currentScene->getPictureObjectById(PIC_SC32_RTRUBA, 0)->_priority = 20; + g_nmi->_currentScene->getPictureObjectById(PIC_SC32_RTRUBA, 0)->_priority = 20; break; case MSG_SC32_TRUBATOFRONT: - g_fp->_currentScene->getPictureObjectById(PIC_SC32_RTRUBA, 0)->_priority = 0; + g_nmi->_currentScene->getPictureObjectById(PIC_SC32_RTRUBA, 0)->_priority = 0; break; case MSG_LIFT_CLICKBUTTON: - g_fp->lift_clickButton(); + g_nmi->lift_clickButton(); break; case MSG_SC33_TRYKUBIK: @@ -326,7 +326,7 @@ int sceneHandler32(ExCommand *cmd) { break; case MSG_LIFT_GO: - g_fp->lift_goAnimation(); + g_nmi->lift_goAnimation(); break; case MSG_SC32_ONLADDER: @@ -341,7 +341,7 @@ int sceneHandler32(ExCommand *cmd) { break; case 64: - g_fp->lift_hoverButton(cmd); + g_nmi->lift_hoverButton(cmd); break; case MSG_SC6_INSTHANDLE: @@ -349,16 +349,16 @@ int sceneHandler32(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } if (!g_vars->scene32_flag->_movement) { @@ -383,15 +383,15 @@ int sceneHandler32(ExCommand *cmd) { if (g_vars->scene32_cactusCounter > 0) --g_vars->scene32_cactusCounter; - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); } else { sceneHandler32_animateCactus(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); } break; @@ -403,20 +403,20 @@ int sceneHandler32(ExCommand *cmd) { break; } - if (!g_vars->scene32_dudeIsSitting || g_fp->_aniMan->_movement) { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + if (!g_vars->scene32_dudeIsSitting || g_nmi->_aniMan->_movement) { + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); if (ani && ani->_id == ANI_LIFTBUTTON) { - g_fp->lift_animateButton(ani); + g_nmi->lift_animateButton(ani); cmd->_messageKind = 0; break; } - if (g_fp->_cursorId == PIC_CSR_GOFAR_R || g_fp->_cursorId == PIC_CSR_GOFAR_L) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) - || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) - g_fp->processArcade(cmd); + if (g_nmi->_cursorId == PIC_CSR_GOFAR_R || g_nmi->_cursorId == PIC_CSR_GOFAR_L) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) + || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) + g_nmi->processArcade(cmd); } break; } diff --git a/engines/ngi/fullpipe/scene33.cpp b/engines/ngi/fullpipe/scene33.cpp index 016cac219c7..7b7fa05bd28 100644 --- a/engines/ngi/fullpipe/scene33.cpp +++ b/engines/ngi/fullpipe/scene33.cpp @@ -45,7 +45,7 @@ void scene33_initScene(Scene *sc) { g_vars->scene33_cubeX = -1; g_vars->scene33_handleIsDown = false; - if (g_fp->getObjectState(sO_Cube) == g_fp->getObjectEnumState(sO_Cube, sO_In_33)) { + if (g_nmi->getObjectState(sO_Cube) == g_nmi->getObjectEnumState(sO_Cube, sO_In_33)) { MessageQueue *mq = new MessageQueue(sc->getMessageQueueById(QU_KBK33_START), 0, 0); mq->sendNextCommand(); @@ -58,25 +58,25 @@ void scene33_initScene(Scene *sc) { g_vars->scene33_ventsState[i] = ventsInit[i]; } - g_fp->initArcadeKeys("SC_33"); + g_nmi->initArcadeKeys("SC_33"); } void scene33_setupMusic() { - if (g_fp->lift_checkButton(sO_Level6)) - g_fp->playTrack(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_33"), "MUSIC2", 1); + if (g_nmi->lift_checkButton(sO_Level6)) + g_nmi->playTrack(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_33"), "MUSIC2", 1); } int scene33_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_objectIdAtCursor == PIC_SC33_ZONES && g_fp->_cursorId == PIC_CSR_DEFAULT) - g_fp->_cursorId = PIC_CSR_ITN; + if (g_nmi->_objectIdAtCursor == PIC_SC33_ZONES && g_nmi->_cursorId == PIC_CSR_DEFAULT) + g_nmi->_cursorId = PIC_CSR_ITN; - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler33_processJettie(ExCommand *cmd) { - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(cmd->_parId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(cmd->_parId); if (mq && g_vars->scene33_jettie->_movement) { ExCommand *ex = mq->getExCommandByIndex(0); @@ -114,13 +114,13 @@ void sceneHandler33_processVents() { for (int i = 0; i < 9; i++) if (((g_vars->scene33_cubeX < g_vars->scene33_ventsX[i]) != (g_vars->scene33_cube->_ox < g_vars->scene33_ventsX[i])) && g_vars->scene33_ventsState[i] != ventsInit[i]) - sceneHandler33_switchVent(g_fp->_currentScene->getStaticANIObject1ById(ANI_VENT_33, i)); + sceneHandler33_switchVent(g_nmi->_currentScene->getStaticANIObject1ById(ANI_VENT_33, i)); g_vars->scene33_cubeX = g_vars->scene33_cube->_ox; } void sceneHandler33_tryCube() { - if (g_fp->getObjectState(sO_Cube) == g_fp->getObjectEnumState(sO_Cube, sO_In_32)) + if (g_nmi->getObjectState(sO_Cube) == g_nmi->getObjectEnumState(sO_Cube, sO_In_32)) chainQueue(QU_KBK33_GO, 0); } @@ -171,28 +171,28 @@ void sceneHandler33_zoneClickProcess(StaticANIObject *ani) { switch (ani->_odelay) { case 0: - vent1 = g_fp->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 2); - vent2 = g_fp->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 3); + vent1 = g_nmi->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 2); + vent2 = g_nmi->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 3); break; case 1: - vent1 = g_fp->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 3); - vent2 = g_fp->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 4); + vent1 = g_nmi->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 3); + vent2 = g_nmi->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 4); break; case 2: - vent1 = g_fp->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 4); - vent2 = g_fp->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 0); + vent1 = g_nmi->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 4); + vent2 = g_nmi->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 0); break; case 3: - vent1 = g_fp->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 0); - vent2 = g_fp->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 1); + vent1 = g_nmi->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 0); + vent2 = g_nmi->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 1); break; case 4: - vent1 = g_fp->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 1); - vent2 = g_fp->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 2); + vent1 = g_nmi->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 1); + vent2 = g_nmi->_currentScene->getStaticANIObject1ById(ANI_VENT_33, 2); break; default: @@ -210,8 +210,8 @@ void sceneHandler33_clickZones(ExCommand *cmd) { StaticANIObject *closest = 0; double mindist = 1e10; - for (uint i = 0; i < g_fp->_currentScene->_staticANIObjectList1.size(); i++) { - StaticANIObject *ani = g_fp->_currentScene->_staticANIObjectList1[i]; + for (uint i = 0; i < g_nmi->_currentScene->_staticANIObjectList1.size(); i++) { + StaticANIObject *ani = g_nmi->_currentScene->_staticANIObjectList1[i]; if (ani->_id == ANI_VENT_33) { int dx = ani->_ox - cmd->_sceneClickX; @@ -235,11 +235,11 @@ int sceneHandler33(ExCommand *cmd) { switch (cmd->_messageNum) { case MSG_SC32_TRUBATOFRONT: - g_fp->_currentScene->getPictureObjectById(PIC_SC33_LTRUBA, 0)->_priority = 0; + g_nmi->_currentScene->getPictureObjectById(PIC_SC33_LTRUBA, 0)->_priority = 0; break; case MSG_SC32_TRUBATOBACK: - g_fp->_currentScene->getPictureObjectById(PIC_SC33_LTRUBA, 0)->_priority = 20; + g_nmi->_currentScene->getPictureObjectById(PIC_SC33_LTRUBA, 0)->_priority = 20; break; case MSG_SC33_TESTMUG: @@ -247,7 +247,7 @@ int sceneHandler33(ExCommand *cmd) { break; case MSG_SC33_UPDATEKUBIK: - g_vars->scene33_cube = g_fp->_currentScene->getStaticANIObject1ById(ANI_KUBIK, -1); + g_vars->scene33_cube = g_nmi->_currentScene->getStaticANIObject1ById(ANI_KUBIK, -1); if (g_vars->scene33_cube) g_vars->scene33_cubeX = g_vars->scene33_cube->_ox; @@ -268,44 +268,44 @@ int sceneHandler33(ExCommand *cmd) { case 29: { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(g_nmi->_sceneRect.left + cmd->_x, g_nmi->_sceneRect.top + cmd->_y); - if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_param)) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + if (!ani || !canInteractAny(g_nmi->_aniMan, ani, cmd->_param)) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); if (pic && pic->_id == PIC_SC33_ZONES) { sceneHandler33_clickZones(cmd); break; } - if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_param)) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) - g_fp->processArcade(cmd); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, cmd->_param)) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) + g_nmi->processArcade(cmd); } } } break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } if (g_vars->scene33_cube) sceneHandler33_processVents(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); break; diff --git a/engines/ngi/fullpipe/scene34.cpp b/engines/ngi/fullpipe/scene34.cpp index d039f66bcab..4232d831e1e 100644 --- a/engines/ngi/fullpipe/scene34.cpp +++ b/engines/ngi/fullpipe/scene34.cpp @@ -39,23 +39,23 @@ namespace NGI { void sceneHandler34_setExits() { int state; - if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_NearPipeWithStool)) { - if (g_fp->getObjectState(sO_Hatch_34) == g_fp->getObjectEnumState(sO_Hatch_34, sO_Closed)) - state = g_fp->getObjectEnumState(sO_Plank_34, sO_ClosedWithBoot); + if (g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_NearPipeWithStool)) { + if (g_nmi->getObjectState(sO_Hatch_34) == g_nmi->getObjectEnumState(sO_Hatch_34, sO_Closed)) + state = g_nmi->getObjectEnumState(sO_Plank_34, sO_ClosedWithBoot); else - state = g_fp->getObjectEnumState(sO_Plank_34, sO_OpenedWithBoot); + state = g_nmi->getObjectEnumState(sO_Plank_34, sO_OpenedWithBoot); } else { - if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_OnStool)) { - if (g_fp->getObjectState(sO_Hatch_34) == g_fp->getObjectEnumState(sO_Hatch_34, sO_Closed)) - state = g_fp->getObjectEnumState(sO_Plank_34, sO_IsClosed); + if (g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_OnStool)) { + if (g_nmi->getObjectState(sO_Hatch_34) == g_nmi->getObjectEnumState(sO_Hatch_34, sO_Closed)) + state = g_nmi->getObjectEnumState(sO_Plank_34, sO_IsClosed); else - state = g_fp->getObjectEnumState(sO_Plank_34, sO_IsOpened); + state = g_nmi->getObjectEnumState(sO_Plank_34, sO_IsOpened); } else { - state = g_fp->getObjectEnumState(sO_Plank_34, sO_Passive); + state = g_nmi->getObjectEnumState(sO_Plank_34, sO_Passive); } } - g_fp->setObjectState(sO_Plank_34, state); + g_nmi->setObjectState(sO_Plank_34, state); } void scene34_initScene(Scene *sc) { @@ -64,10 +64,10 @@ void scene34_initScene(Scene *sc) { g_vars->scene34_hatch = sc->getStaticANIObject1ById(ANI_LUK_34, -1); g_vars->scene34_boot = sc->getStaticANIObject1ById(ANI_BOOT_34, -1); - if (g_fp->getObjectState(sO_Cactus) == g_fp->getObjectEnumState(sO_Cactus, sO_HasGrown)) { - Scene *oldsc = g_fp->_currentScene; + if (g_nmi->getObjectState(sO_Cactus) == g_nmi->getObjectEnumState(sO_Cactus, sO_HasGrown)) { + Scene *oldsc = g_nmi->_currentScene; - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; g_vars->scene34_cactus->changeStatics2(ST_CTS34_EMPTY); g_vars->scene34_cactus->setOXY(506, 674); @@ -76,49 +76,49 @@ void scene34_initScene(Scene *sc) { g_vars->scene34_cactus->changeStatics2(ST_CTS34_GROWNEMPTY2); g_vars->scene34_cactus->_flags |= 4; - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; } - if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_Strolling)) - g_fp->setObjectState(sO_Grandma, g_fp->getObjectEnumState(sO_Grandma, sO_OnStool)); + if (g_nmi->getObjectState(sO_Grandma) == g_nmi->getObjectEnumState(sO_Grandma, sO_Strolling)) + g_nmi->setObjectState(sO_Grandma, g_nmi->getObjectEnumState(sO_Grandma, sO_OnStool)); sceneHandler34_setExits(); g_vars->scene34_dudeClimbed = false; g_vars->scene34_dudeOnBoard = false; g_vars->scene34_dudeOnCactus = false; - g_vars->scene34_fliesCountdown = g_fp->_rnd.getRandomNumber(500) + 500; + g_vars->scene34_fliesCountdown = g_nmi->_rnd.getRandomNumber(500) + 500; - g_fp->_floaters->init(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_34")); + g_nmi->_floaters->init(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_34")); - g_fp->lift_setButton(sO_Level7, ST_LBN_7N); - g_fp->lift_init(sc, QU_SC34_ENTERLIFT, QU_SC34_EXITLIFT); + g_nmi->lift_setButton(sO_Level7, ST_LBN_7N); + g_nmi->lift_init(sc, QU_SC34_ENTERLIFT, QU_SC34_EXITLIFT); - g_fp->initArcadeKeys("SC_34"); + g_nmi->initArcadeKeys("SC_34"); } void scene34_initBeh() { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene34_cactus, ST_CTS34_GROWNEMPTY2, QU_CTS34_FALLEFT, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene34_cactus, ST_CTS34_GROWNEMPTY2, QU_CTS34_FALLRIGHT, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene34_cactus, ST_CTS34_GROWNEMPTY2, QU_CTS34_FALLEFT, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene34_cactus, ST_CTS34_GROWNEMPTY2, QU_CTS34_FALLRIGHT, 0); } int scene34_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if ((g_fp->_objectIdAtCursor != ANI_STOOL_34 || getGameLoaderInventory()->getSelectedItemId() != ANI_INV_BOX) - && (g_fp->_objectIdAtCursor != ANI_BOX_34 || getGameLoaderInventory()->getSelectedItemId() != ANI_INV_STOOL)) + if ((g_nmi->_objectIdAtCursor != ANI_STOOL_34 || getGameLoaderInventory()->getSelectedItemId() != ANI_INV_BOX) + && (g_nmi->_objectIdAtCursor != ANI_BOX_34 || getGameLoaderInventory()->getSelectedItemId() != ANI_INV_STOOL)) ; // emtpy else - g_fp->_cursorId = PIC_CSR_ITN_INV; + g_nmi->_cursorId = PIC_CSR_ITN_INV; - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler34_leaveBoard() { getCurrSceneSc2MotionController()->activate(); getGameLoaderInteractionController()->enableFlag24(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 1); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 1); g_vars->scene34_dudeOnBoard = false; } @@ -127,17 +127,17 @@ void sceneHandler34_onBoard() { getCurrSceneSc2MotionController()->deactivate(); getGameLoaderInteractionController()->disableFlag24(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 0); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 0); g_vars->scene34_dudeOnBoard = true; } void sceneHandler34_testVent() { - if (g_fp->_aniMan->_movement->_id == MV_MAN34_TURNVENT_R) { + if (g_nmi->_aniMan->_movement->_id == MV_MAN34_TURNVENT_R) { g_vars->scene34_hatch->changeStatics2(ST_LUK34_CLOSED); chainQueue(QU_LUK34_OPEN, 0); - } else if (g_fp->_aniMan->_movement->_id == MV_MAN34_TURNVENT_L) { + } else if (g_nmi->_aniMan->_movement->_id == MV_MAN34_TURNVENT_L) { g_vars->scene34_hatch->changeStatics2(ST_LUK34_OPEN); chainQueue(QU_LUK34_CLOSE, 0); @@ -145,36 +145,36 @@ void sceneHandler34_testVent() { } void sceneHandler34_hideStool() { - g_fp->_currentScene->getStaticANIObject1ById(ANI_STOOL_34, -1)->hide(); + g_nmi->_currentScene->getStaticANIObject1ById(ANI_STOOL_34, -1)->hide(); } void sceneHandler34_climb() { getCurrSceneSc2MotionController()->deactivate(); getGameLoaderInteractionController()->disableFlag24(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 0); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 0); g_vars->scene34_dudeClimbed = true; } void sceneHandler34_genFlies() { - g_fp->_floaters->genFlies(g_fp->_currentScene, 1072, -50, 100, 4); + g_nmi->_floaters->genFlies(g_nmi->_currentScene, 1072, -50, 100, 4); - g_fp->_floaters->_array2[g_fp->_floaters->_array2.size() - 1].countdown = 1; - g_fp->_floaters->_array2[g_fp->_floaters->_array2.size() - 1].val6 = 1072; - g_fp->_floaters->_array2[g_fp->_floaters->_array2.size() - 1].val7 = -50; + g_nmi->_floaters->_array2[g_nmi->_floaters->_array2.size() - 1].countdown = 1; + g_nmi->_floaters->_array2[g_nmi->_floaters->_array2.size() - 1].val6 = 1072; + g_nmi->_floaters->_array2[g_nmi->_floaters->_array2.size() - 1].val7 = -50; - g_vars->scene34_fliesCountdown = g_fp->_rnd.getRandomNumber(500) + 500; + g_vars->scene34_fliesCountdown = g_nmi->_rnd.getRandomNumber(500) + 500; } void sceneHandler34_fromCactus(ExCommand *cmd) { - if (g_fp->_aniMan->_movement || g_vars->scene34_cactus->_movement || (g_fp->_aniMan->_flags & 0x100)) { + if (g_nmi->_aniMan->_movement || g_vars->scene34_cactus->_movement || (g_nmi->_aniMan->_flags & 0x100)) { cmd->_messageKind = 0; return; } - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC34_FROMCACTUS), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC34_FROMCACTUS), 0, 0); ExCommand *ex = new ExCommand(ANI_MAN, 34, 256, 0, 0, 0, 1, 0, 0, 0); @@ -189,12 +189,12 @@ void sceneHandler34_fromCactus(ExCommand *cmd) { mq->setFlags(mq->getFlags() | 1); mq->chain(0); - g_fp->_aniMan->_flags |= 0x100; + g_nmi->_aniMan->_flags |= 0x100; } void sceneHandler34_animateLeaveBoard(ExCommand *cmd) { - if (!g_fp->_aniMan->_movement) { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC34_LEAVEBOARD), 0, 0); + if (!g_nmi->_aniMan->_movement) { + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC34_LEAVEBOARD), 0, 0); mq->addExCommandToEnd(cmd->createClone()); mq->setFlags(mq->getFlags() | 1); @@ -205,12 +205,12 @@ void sceneHandler34_animateLeaveBoard(ExCommand *cmd) { } void sceneHandler34_animateAction(ExCommand *cmd) { - if (g_fp->_aniMan->_movement) + if (g_nmi->_aniMan->_movement) return; - int ox = g_fp->_aniMan->_ox; - int oy = g_fp->_aniMan->_oy; - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y); + int ox = g_nmi->_aniMan->_ox; + int oy = g_nmi->_aniMan->_oy; + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(g_nmi->_sceneRect.left + cmd->_x, g_nmi->_sceneRect.top + cmd->_y); if (!ani || ani->_id != ANI_VENT_34) { int qId = 0; @@ -225,7 +225,7 @@ void sceneHandler34_animateAction(ExCommand *cmd) { return; if (oy == 286) { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC34_FROMBOX), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC34_FROMBOX), 0, 0); mq->addExCommandToEnd(cmd->createClone()); mq->chain(0); @@ -242,7 +242,7 @@ void sceneHandler34_animateAction(ExCommand *cmd) { } if (qId) { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(qId), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(qId), 0, 0); mq->addExCommandToEnd(cmd->createClone()); mq->chain(0); @@ -253,18 +253,18 @@ void sceneHandler34_animateAction(ExCommand *cmd) { if (ox == 887) { if (oy == 370) - g_fp->_aniMan->startAnim(MV_MAN34_TRYTABUR, 0, -1); + g_nmi->_aniMan->startAnim(MV_MAN34_TRYTABUR, 0, -1); } else if (ox == 916) { if (oy == 286) { int id = g_vars->scene34_vent->_statics->_staticsId; if (id == ST_VNT34_UP2) { - g_fp->_aniMan->startAnim(MV_MAN34_TURNVENT_R, 0, -1); + g_nmi->_aniMan->startAnim(MV_MAN34_TURNVENT_R, 0, -1); } else if (id == ST_VNT34_RIGHT3) { - g_fp->_aniMan->startAnim(MV_MAN34_TURNVENT_L, 0, -1); + g_nmi->_aniMan->startAnim(MV_MAN34_TURNVENT_L, 0, -1); } } else if (oy == 345) { - g_fp->_aniMan->startAnim(MV_MAN34_TRY, 0, -1); + g_nmi->_aniMan->startAnim(MV_MAN34_TRY, 0, -1); } } } @@ -279,7 +279,7 @@ void sceneHandler34_showVent() { } void sceneHandler34_showBox() { - g_fp->_currentScene->getStaticANIObject1ById(ANI_STOOL_34, -1)->changeStatics2(ST_STL34_BOX2); + g_nmi->_currentScene->getStaticANIObject1ById(ANI_STOOL_34, -1)->changeStatics2(ST_STL34_BOX2); } void sceneHandler34_showStool() { @@ -290,7 +290,7 @@ void sceneHandler34_unclimb() { getCurrSceneSc2MotionController()->activate(); getGameLoaderInteractionController()->enableFlag24(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 1); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 1); g_vars->scene34_dudeClimbed = false; } @@ -317,7 +317,7 @@ int sceneHandler34(ExCommand *cmd) { break; case MSG_LIFT_CLICKBUTTON: - g_fp->lift_clickButton(); + g_nmi->lift_clickButton(); break; case MSG_SC34_FROMCACTUS: @@ -326,34 +326,34 @@ int sceneHandler34(ExCommand *cmd) { getCurrSceneSc2MotionController()->activate(); getGameLoaderInteractionController()->enableFlag24(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 1); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 1); break; case MSG_SC34_RETRYVENT: - if (!g_fp->_aniMan->isIdle()) + if (!g_nmi->_aniMan->isIdle()) break; - g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT); - g_fp->_aniMan->_flags &= 0xFEFF; + g_nmi->_aniMan->changeStatics2(ST_MAN_RIGHT); + g_nmi->_aniMan->_flags &= 0xFEFF; - getGameLoaderInteractionController()->handleInteraction(g_fp->_aniMan, g_vars->scene34_vent, cmd->_param); + getGameLoaderInteractionController()->handleInteraction(g_nmi->_aniMan, g_vars->scene34_vent, cmd->_param); break; case MSG_SC34_ONBUMP: - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene34_cactus, ST_CTS34_GROWNEMPTY2, QU_CTS34_FALLEFT, 1); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene34_cactus, ST_CTS34_GROWNEMPTY2, QU_CTS34_FALLRIGHT, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene34_cactus, ST_CTS34_GROWNEMPTY2, QU_CTS34_FALLEFT, 1); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene34_cactus, ST_CTS34_GROWNEMPTY2, QU_CTS34_FALLRIGHT, 1); break; case MSG_LIFT_CLOSEDOOR: - g_fp->lift_closedoorSeq(); + g_nmi->lift_closedoorSeq(); break; case MSG_LIFT_EXITLIFT: - g_fp->lift_exitSeq(cmd); + g_nmi->lift_exitSeq(cmd); break; case MSG_LIFT_STARTEXITQUEUE: - g_fp->lift_startExitQueue(); + g_nmi->lift_startExitQueue(); break; case MSG_SC22_HIDESTOOL: @@ -382,7 +382,7 @@ int sceneHandler34(ExCommand *cmd) { getCurrSceneSc2MotionController()->deactivate(); getGameLoaderInteractionController()->disableFlag24(); - g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 0); + g_nmi->_behaviorManager->setFlagByStaticAniObject(g_nmi->_aniMan, 0); break; case MSG_SC34_SHOWVENT: @@ -390,11 +390,11 @@ int sceneHandler34(ExCommand *cmd) { break; case 64: - g_fp->lift_hoverButton(cmd); + g_nmi->lift_hoverButton(cmd); break; case MSG_LIFT_GO: - g_fp->lift_goAnimation(); + g_nmi->lift_goAnimation(); break; case 29: @@ -414,17 +414,17 @@ int sceneHandler34(ExCommand *cmd) { break; } - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(g_nmi->_sceneRect.left + cmd->_x, g_nmi->_sceneRect.top + cmd->_y); if (ani) { if ((ani->_id == ANI_STOOL_34 && cmd->_param == ANI_INV_BOX) || (ani->_id == ANI_BOX_34 && cmd->_param == ANI_INV_STOOL)) { - getGameLoaderInteractionController()->handleInteraction(g_fp->_aniMan, g_vars->scene34_vent, cmd->_param); + getGameLoaderInteractionController()->handleInteraction(g_nmi->_aniMan, g_vars->scene34_vent, cmd->_param); cmd->_messageKind = 0; } if (ani->_id == ANI_LIFTBUTTON) { - g_fp->lift_animateButton(ani); + g_nmi->lift_animateButton(ani); cmd->_messageKind = 0; @@ -432,13 +432,13 @@ int sceneHandler34(ExCommand *cmd) { } } - if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_param)) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + if (!ani || !canInteractAny(g_nmi->_aniMan, ani, cmd->_param)) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); - if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_param)) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) { - g_fp->processArcade(cmd); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, cmd->_param)) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) { + g_nmi->processArcade(cmd); break; } } @@ -447,16 +447,16 @@ int sceneHandler34(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } --g_vars->scene34_fliesCountdown; @@ -464,11 +464,11 @@ int sceneHandler34(ExCommand *cmd) { if (!g_vars->scene34_fliesCountdown) sceneHandler34_genFlies(); - g_fp->_floaters->update(); + g_nmi->_floaters->update(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); break; default: diff --git a/engines/ngi/fullpipe/scene35.cpp b/engines/ngi/fullpipe/scene35.cpp index bb0686e2cca..b5edc4c4399 100644 --- a/engines/ngi/fullpipe/scene35.cpp +++ b/engines/ngi/fullpipe/scene35.cpp @@ -52,7 +52,7 @@ void scene35_initScene(Scene *sc) { int sndId = 0; - if (g_fp->getObjectState(sO_Valve_35) == g_fp->getObjectEnumState(sO_Valve_35, sO_TurnedOn)) { + if (g_nmi->getObjectState(sO_Valve_35) == g_nmi->getObjectEnumState(sO_Valve_35, sO_TurnedOn)) { if ((g_vars->scene35_hose->_flags & 4) && g_vars->scene35_hose->_statics->_staticsId == ST_HZE_NORM) { sndId = SND_35_012; } else if (g_vars->scene35_bellyInflater->_statics->_staticsId == ST_PDV_SMALL) { @@ -61,20 +61,20 @@ void scene35_initScene(Scene *sc) { } if (sndId) - g_fp->playSound(sndId, 1); + g_nmi->playSound(sndId, 1); - g_fp->lift_setButton(sO_Level6, ST_LBN_6N); - g_fp->lift_init(sc, QU_SC35_ENTERLIFT, QU_SC35_EXITLIFT); + g_nmi->lift_setButton(sO_Level6, ST_LBN_6N); + g_nmi->lift_init(sc, QU_SC35_ENTERLIFT, QU_SC35_EXITLIFT); - g_fp->initArcadeKeys("SC_35"); + g_nmi->initArcadeKeys("SC_35"); - g_fp->_floaters->init(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_35")); + g_nmi->_floaters->init(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_35")); } void sceneHandler35_stopFlow() { - g_fp->setObjectState(sO_Valve_35, g_fp->getObjectEnumState(sO_Valve_35, sO_TurnedOff)); - g_fp->stopAllSoundInstances(SND_35_011); - g_fp->playSound(SND_35_026, 0); + g_nmi->setObjectState(sO_Valve_35, g_nmi->getObjectEnumState(sO_Valve_35, sO_TurnedOff)); + g_nmi->stopAllSoundInstances(SND_35_011); + g_nmi->playSound(SND_35_026, 0); } void sceneHandler35_shrink() { @@ -82,15 +82,15 @@ void sceneHandler35_shrink() { } void sceneHandler35_startFlow() { - if (g_fp->getObjectState(sO_Valve_35) == g_fp->getObjectEnumState(sO_Valve_35, sO_TurnedOn)) { + if (g_nmi->getObjectState(sO_Valve_35) == g_nmi->getObjectEnumState(sO_Valve_35, sO_TurnedOn)) { if ((g_vars->scene35_hose->_flags & 4) && g_vars->scene35_hose->_statics->_staticsId == ST_HZE_NORM) { - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene35_bellyInflater, ST_PDV_SMALL, QU_PDV_SML_BLINK, 0); - g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene35_bellyInflater, ST_PDV_SMALL, QU_PDV_SML_TRY, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene35_bellyInflater, ST_PDV_SMALL, QU_PDV_SML_BLINK, 0); + g_nmi->_behaviorManager->setBehaviorEnabled(g_vars->scene35_bellyInflater, ST_PDV_SMALL, QU_PDV_SML_TRY, 0); g_vars->scene35_bellyInflater->changeStatics2(ST_PDV_SMALL); g_vars->scene35_bellyInflater->_flags &= ~0x100; - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC35_EATHOZE), 0, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(QU_SC35_EATHOZE), 0, 0); mq->setFlags(mq->getFlags() | 1); @@ -109,24 +109,24 @@ void sceneHandler35_startFlow() { getCurrSceneSc2MotionController()->enableLinks(sO_CloseThing, 1); - g_fp->playSound(SND_35_012, 1); + g_nmi->playSound(SND_35_012, 1); } else { if (!g_vars->scene35_flowCounter) g_vars->scene35_flowCounter = 98; - g_fp->playSound(SND_35_011, 1); + g_nmi->playSound(SND_35_011, 1); } } } void sceneHandler35_genFlies() { - StaticANIObject *fly = g_fp->_currentScene->getStaticANIObject1ById(ANI_FLY, -1); + StaticANIObject *fly = g_nmi->_currentScene->getStaticANIObject1ById(ANI_FLY, -1); int xoff = 0; - if ((!fly || !(fly->_flags & 4)) && !(g_fp->_rnd.getRandomNumber(32767) % 30)) { + if ((!fly || !(fly->_flags & 4)) && !(g_nmi->_rnd.getRandomNumber(32767) % 30)) { int x, y; - if (g_fp->_rnd.getRandomNumber(1)) { + if (g_nmi->_rnd.getRandomNumber(1)) { x = 600; y = 0; } else { @@ -134,16 +134,16 @@ void sceneHandler35_genFlies() { y = 600; } - int numFlies = g_fp->_rnd.getRandomNumber(3) + 1; + int numFlies = g_nmi->_rnd.getRandomNumber(3) + 1; while (numFlies--) { - g_fp->_floaters->genFlies(g_fp->_currentScene, g_fp->_rnd.getRandomNumber(55) + 1057, g_fp->_rnd.getRandomNumber(60) + x + xoff, 4, 1); + g_nmi->_floaters->genFlies(g_nmi->_currentScene, g_nmi->_rnd.getRandomNumber(55) + 1057, g_nmi->_rnd.getRandomNumber(60) + x + xoff, 4, 1); xoff += 40; - g_fp->_floaters->_array2[g_fp->_floaters->_array2.size() - 1].val2 = 1084; - g_fp->_floaters->_array2[g_fp->_floaters->_array2.size() - 1].val3 = y; - g_fp->_floaters->_array2[g_fp->_floaters->_array2.size() - 1].val11 = 8.0; + g_nmi->_floaters->_array2[g_nmi->_floaters->_array2.size() - 1].val2 = 1084; + g_nmi->_floaters->_array2[g_nmi->_floaters->_array2.size() - 1].val3 = y; + g_nmi->_floaters->_array2[g_nmi->_floaters->_array2.size() - 1].val11 = 8.0; } g_vars->scene35_fliesCounter = 0; @@ -156,19 +156,19 @@ int sceneHandler35(ExCommand *cmd) { switch (cmd->_messageNum) { case MSG_LIFT_CLOSEDOOR: - g_fp->lift_closedoorSeq(); + g_nmi->lift_closedoorSeq(); break; case MSG_LIFT_EXITLIFT: - g_fp->lift_exitSeq(cmd); + g_nmi->lift_exitSeq(cmd); break; case MSG_LIFT_STARTEXITQUEUE: - g_fp->lift_startExitQueue(); + g_nmi->lift_startExitQueue(); break; case MSG_LIFT_CLICKBUTTON: - g_fp->lift_clickButton(); + g_nmi->lift_clickButton(); break; case MSG_SC35_STOPFLOW: @@ -176,9 +176,9 @@ int sceneHandler35(ExCommand *cmd) { break; case MSG_SC35_CHECKPIPESOUND: - if (g_fp->getObjectState(sO_Valve_35) == g_fp->getObjectEnumState(sO_Valve_35, sO_TurnedOn)) { - g_fp->stopAllSoundInstances(SND_35_011); - g_fp->playSound(SND_35_012, 1); + if (g_nmi->getObjectState(sO_Valve_35) == g_nmi->getObjectEnumState(sO_Valve_35, sO_TurnedOn)) { + g_nmi->stopAllSoundInstances(SND_35_011); + g_nmi->playSound(SND_35_012, 1); g_vars->scene35_flowCounter = 0; } @@ -189,7 +189,7 @@ int sceneHandler35(ExCommand *cmd) { break; case MSG_LIFT_GO: - g_fp->lift_goAnimation(); + g_nmi->lift_goAnimation(); break; case MSG_SC35_STARTFLOW: @@ -198,27 +198,27 @@ int sceneHandler35(ExCommand *cmd) { break; case 64: - g_fp->lift_hoverButton(cmd); + g_nmi->lift_hoverButton(cmd); break; case 29: { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(g_nmi->_sceneRect.left + cmd->_x, g_nmi->_sceneRect.top + cmd->_y); if (ani) if (ani->_id == ANI_LIFTBUTTON) { - g_fp->lift_animateButton(ani); + g_nmi->lift_animateButton(ani); cmd->_messageKind = 0; break; } - if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_param)) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + if (!ani || !canInteractAny(g_nmi->_aniMan, ani, cmd->_param)) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); - if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_param)) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) { - g_fp->processArcade(cmd); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, cmd->_param)) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) { + g_nmi->processArcade(cmd); break; } } @@ -227,16 +227,16 @@ int sceneHandler35(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } if (g_vars->scene35_flowCounter > 0) { @@ -251,10 +251,10 @@ int sceneHandler35(ExCommand *cmd) { if (g_vars->scene35_fliesCounter >= 160) sceneHandler35_genFlies(); - g_fp->_floaters->update(); + g_nmi->_floaters->update(); - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); break; diff --git a/engines/ngi/fullpipe/scene36.cpp b/engines/ngi/fullpipe/scene36.cpp index 5b674f607f5..c18bbbf62d3 100644 --- a/engines/ngi/fullpipe/scene36.cpp +++ b/engines/ngi/fullpipe/scene36.cpp @@ -42,15 +42,15 @@ void scene36_initScene(Scene *sc) { } int scene36_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_cursorId != PIC_CSR_ITN || g_fp->_objectIdAtCursor != ANI_ROTOHRUST) { - if (g_fp->_objectIdAtCursor == PIC_SC36_MASK && g_fp->_cursorId == PIC_CSR_DEFAULT && (g_vars->scene36_scissors->_flags & 4)) - g_fp->_cursorId = PIC_CSR_ITN; + if (g_nmi->_cursorId != PIC_CSR_ITN || g_nmi->_objectIdAtCursor != ANI_ROTOHRUST) { + if (g_nmi->_objectIdAtCursor == PIC_SC36_MASK && g_nmi->_cursorId == PIC_CSR_DEFAULT && (g_vars->scene36_scissors->_flags & 4)) + g_nmi->_cursorId = PIC_CSR_ITN; } else if (g_vars->scene36_rotohrust->_statics->_staticsId == ST_RHT_OPEN) - g_fp->_cursorId = PIC_CSR_GOL; + g_nmi->_cursorId = PIC_CSR_GOL; - return g_fp->_cursorId; + return g_nmi->_cursorId; } int sceneHandler36(ExCommand *cmd) { @@ -59,12 +59,12 @@ int sceneHandler36(ExCommand *cmd) { switch (cmd->_messageNum) { case 29: - if (g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC36_MASK) + if (g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC36_MASK) if (g_vars->scene36_scissors) if (g_vars->scene36_scissors->_flags & 4) - if (g_fp->_aniMan->isIdle()) - if (!(g_fp->_aniMan->_flags & 0x100) && g_fp->_msgObjectId2 != g_vars->scene36_scissors->_id ) { - handleObjectInteraction(g_fp->_aniMan, g_vars->scene36_scissors, cmd->_param); + if (g_nmi->_aniMan->isIdle()) + if (!(g_nmi->_aniMan->_flags & 0x100) && g_nmi->_msgObjectId2 != g_vars->scene36_scissors->_id ) { + handleObjectInteraction(g_nmi->_aniMan, g_vars->scene36_scissors, cmd->_param); cmd->_messageKind = 0; } @@ -72,18 +72,18 @@ int sceneHandler36(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; } - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); break; diff --git a/engines/ngi/fullpipe/scene37.cpp b/engines/ngi/fullpipe/scene37.cpp index 2e5699306ea..a6e867c1d0b 100644 --- a/engines/ngi/fullpipe/scene37.cpp +++ b/engines/ngi/fullpipe/scene37.cpp @@ -95,20 +95,20 @@ void scene37_initScene(Scene *sc) { ring->state = false; g_vars->scene37_rings.push_back(ring); - g_fp->setObjectState(sO_LeftPipe_37, g_fp->getObjectEnumState(sO_LeftPipe_37, sO_IsClosed)); + g_nmi->setObjectState(sO_LeftPipe_37, g_nmi->getObjectEnumState(sO_LeftPipe_37, sO_IsClosed)); - Scene *oldsc = g_fp->_currentScene; + Scene *oldsc = g_nmi->_currentScene; - g_fp->_currentScene = sc; + g_nmi->_currentScene = sc; g_vars->scene37_pipeIsOpen = false; g_vars->scene37_plusMinus1 = sc->getStaticANIObject1ById(ANI_PLUSMINUS, 1); for (int i = 0; i < g_vars->scene37_rings[0]->numSubRings; i++) { - ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_RING, g_vars->scene37_rings[0]->subRings[i]); + ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_RING, g_vars->scene37_rings[0]->subRings[i]); - if (g_fp->getObjectState(sO_Guard_1) == g_fp->getObjectEnumState(sO_Guard_1, sO_On)) { + if (g_nmi->getObjectState(sO_Guard_1) == g_nmi->getObjectEnumState(sO_Guard_1, sO_On)) { g_vars->scene37_plusMinus1->_statics = g_vars->scene37_plusMinus1->getStaticsById(ST_PMS_PLUS); ani->changeStatics2(ST_RNG_OPEN); } else { @@ -120,9 +120,9 @@ void scene37_initScene(Scene *sc) { g_vars->scene37_plusMinus2 = sc->getStaticANIObject1ById(ANI_PLUSMINUS, 2); for (int i = 0; i < g_vars->scene37_rings[1]->numSubRings; i++) { - ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_RING, g_vars->scene37_rings[1]->subRings[i]); + ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_RING, g_vars->scene37_rings[1]->subRings[i]); - if (g_fp->getObjectState(sO_Guard_2) == g_fp->getObjectEnumState(sO_Guard_2, sO_On)) { + if (g_nmi->getObjectState(sO_Guard_2) == g_nmi->getObjectEnumState(sO_Guard_2, sO_On)) { g_vars->scene37_plusMinus2->_statics = g_vars->scene37_plusMinus2->getStaticsById(ST_PMS_PLUS); ani->changeStatics2(ST_RNG_OPEN); } else { @@ -134,9 +134,9 @@ void scene37_initScene(Scene *sc) { g_vars->scene37_plusMinus3 = sc->getStaticANIObject1ById(ANI_PLUSMINUS, 3); for (int i = 0; i < g_vars->scene37_rings[2]->numSubRings; i++) { - ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_RING, g_vars->scene37_rings[2]->subRings[i]); + ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_RING, g_vars->scene37_rings[2]->subRings[i]); - if (g_fp->getObjectState(sO_Guard_3) == g_fp->getObjectEnumState(sO_Guard_3, sO_On)) { + if (g_nmi->getObjectState(sO_Guard_3) == g_nmi->getObjectEnumState(sO_Guard_3, sO_On)) { g_vars->scene37_plusMinus3->_statics = g_vars->scene37_plusMinus3->getStaticsById(ST_PMS_PLUS); ani->changeStatics2(ST_RNG_OPEN); } else { @@ -145,20 +145,20 @@ void scene37_initScene(Scene *sc) { } } - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; - g_fp->initArcadeKeys("SC_37"); + g_nmi->initArcadeKeys("SC_37"); } int scene37_updateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - if (g_fp->_cursorId == PIC_CSR_ITN && g_fp->_objectIdAtCursor == PIC_SC37_MASK) { + if (g_nmi->_cursorId == PIC_CSR_ITN && g_nmi->_objectIdAtCursor == PIC_SC37_MASK) { if (g_vars->scene37_pipeIsOpen) - g_fp->_cursorId = PIC_CSR_GOL; + g_nmi->_cursorId = PIC_CSR_GOL; } - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandler37_updateRing(int ringNum) { @@ -169,7 +169,7 @@ void sceneHandler37_updateRing(int ringNum) { StaticANIObject *ani; for (int i = 0; i < g_vars->scene37_rings[ringNum]->numSubRings; i++) { - ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_RING, g_vars->scene37_rings[ringNum]->subRings[i]); + ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_RING, g_vars->scene37_rings[ringNum]->subRings[i]); if ((ani->_movement && ani->_movement->_id != MV_RNG_CLOSE) || ani->_statics->_staticsId != ST_RNG_CLOSED2) { ani->changeStatics2(ST_RNG_OPEN); @@ -184,7 +184,7 @@ void sceneHandler37_updateRing(int ringNum) { for (uint i = 0; i < g_vars->scene37_rings.size(); i++) { for (int j = 0; j < g_vars->scene37_rings[i]->numSubRings; j++) { - ani = g_fp->_currentScene->getStaticANIObject1ById(ANI_RING, g_vars->scene37_rings[i]->subRings[j]); + ani = g_nmi->_currentScene->getStaticANIObject1ById(ANI_RING, g_vars->scene37_rings[i]->subRings[j]); debugC(2, kDebugSceneLogic, "ring[%d][%d]: mov: %d st: %d", i, j, (ani->_movement ? ani->_movement->_id : 0), ani->_statics->_staticsId); @@ -203,11 +203,11 @@ void sceneHandler37_updateRing(int ringNum) { int state; if (g_vars->scene37_pipeIsOpen) - state = g_fp->getObjectEnumState(sO_LeftPipe_37, sO_IsOpened); + state = g_nmi->getObjectEnumState(sO_LeftPipe_37, sO_IsOpened); else - state = g_fp->getObjectEnumState(sO_LeftPipe_37, sO_IsClosed); + state = g_nmi->getObjectEnumState(sO_LeftPipe_37, sO_IsClosed); - g_fp->setObjectState(sO_LeftPipe_37, state); + g_nmi->setObjectState(sO_LeftPipe_37, state); } void sceneHandler37_setRingsState() { @@ -245,16 +245,16 @@ int sceneHandler37(ExCommand *cmd) { case 29: { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_param)) { - int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0); + if (!ani || !canInteractAny(g_nmi->_aniMan, ani, cmd->_param)) { + int picId = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(picId, 0); - if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_param)) { - if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) - || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) { - g_fp->processArcade(cmd); + if (!pic || !canInteractAny(g_nmi->_aniMan, pic, cmd->_param)) { + if ((g_nmi->_sceneRect.right - cmd->_sceneClickX < 47 && g_nmi->_sceneRect.right < g_nmi->_sceneWidth - 1) + || (cmd->_sceneClickX - g_nmi->_sceneRect.left < 47 && g_nmi->_sceneRect.left > 0)) { + g_nmi->processArcade(cmd); break; } } @@ -263,29 +263,29 @@ int sceneHandler37(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; g_vars->scene37_dudeX = x; if (x >= 500) { - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; } else { - g_fp->_currentScene->_x = -g_fp->_sceneRect.left; + g_nmi->_currentScene->_x = -g_nmi->_sceneRect.left; } x = g_vars->scene37_dudeX; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; - g_fp->sceneAutoScrolling(); + g_nmi->sceneAutoScrolling(); } sceneHandler37_setRingsState(); - g_fp->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->_behaviorManager->updateBehaviors(); + g_nmi->startSceneTrack(); ++g_vars->scene37_soundFlipper; @@ -293,22 +293,22 @@ int sceneHandler37(ExCommand *cmd) { case MSG_SC37_PULL: if (g_vars->scene37_rings[0]->ani->_movement && g_vars->scene37_rings[0]->ani->_movement->_id == MV_GRD37_PULL) { - if ((g_fp->getObjectState(sO_Guard_1) == g_fp->getObjectEnumState(sO_Guard_1, sO_On) && !g_vars->scene37_rings[0]->state) - || (g_fp->getObjectState(sO_Guard_1) == g_fp->getObjectEnumState(sO_Guard_1, sO_Off) && g_vars->scene37_rings[0]->state)) { + if ((g_nmi->getObjectState(sO_Guard_1) == g_nmi->getObjectEnumState(sO_Guard_1, sO_On) && !g_vars->scene37_rings[0]->state) + || (g_nmi->getObjectState(sO_Guard_1) == g_nmi->getObjectEnumState(sO_Guard_1, sO_Off) && g_vars->scene37_rings[0]->state)) { g_vars->scene37_plusMinus1->_statics = g_vars->scene37_plusMinus1->getStaticsById(ST_PMS_PLUS); } else { g_vars->scene37_plusMinus1->_statics = g_vars->scene37_plusMinus1->getStaticsById(ST_PMS_MINUS); } } else if (g_vars->scene37_rings[1]->ani->_movement && g_vars->scene37_rings[1]->ani->_movement->_id == MV_GRD37_PULL) { - if ((g_fp->getObjectState(sO_Guard_2) == g_fp->getObjectEnumState(sO_Guard_2, sO_On) && !g_vars->scene37_rings[1]->state) - || (g_fp->getObjectState(sO_Guard_2) == g_fp->getObjectEnumState(sO_Guard_2, sO_Off) && g_vars->scene37_rings[1]->state)) { + if ((g_nmi->getObjectState(sO_Guard_2) == g_nmi->getObjectEnumState(sO_Guard_2, sO_On) && !g_vars->scene37_rings[1]->state) + || (g_nmi->getObjectState(sO_Guard_2) == g_nmi->getObjectEnumState(sO_Guard_2, sO_Off) && g_vars->scene37_rings[1]->state)) { g_vars->scene37_plusMinus2->_statics = g_vars->scene37_plusMinus2->getStaticsById(ST_PMS_PLUS); } else { g_vars->scene37_plusMinus2->_statics = g_vars->scene37_plusMinus2->getStaticsById(ST_PMS_MINUS); } } else if (g_vars->scene37_rings[2]->ani->_movement && g_vars->scene37_rings[2]->ani->_movement->_id == MV_GRD37_PULL) { - if ((g_fp->getObjectState(sO_Guard_3) == g_fp->getObjectEnumState(sO_Guard_3, sO_On) && !g_vars->scene37_rings[2]->state) - || (g_fp->getObjectState(sO_Guard_3) == g_fp->getObjectEnumState(sO_Guard_3, sO_Off) && g_vars->scene37_rings[2]->state)) { + if ((g_nmi->getObjectState(sO_Guard_3) == g_nmi->getObjectEnumState(sO_Guard_3, sO_On) && !g_vars->scene37_rings[2]->state) + || (g_nmi->getObjectState(sO_Guard_3) == g_nmi->getObjectEnumState(sO_Guard_3, sO_Off) && g_vars->scene37_rings[2]->state)) { g_vars->scene37_plusMinus3->_statics = g_vars->scene37_plusMinus3->getStaticsById(ST_PMS_PLUS); } else { g_vars->scene37_plusMinus3->_statics = g_vars->scene37_plusMinus3->getStaticsById(ST_PMS_MINUS); @@ -316,7 +316,7 @@ int sceneHandler37(ExCommand *cmd) { } if (g_vars->scene37_soundFlipper) { - g_fp->playSound(SND_37_007, 0); + g_nmi->playSound(SND_37_007, 0); g_vars->scene37_soundFlipper = 0; } diff --git a/engines/ngi/fullpipe/scene38.cpp b/engines/ngi/fullpipe/scene38.cpp index 2d6c7e4c1cb..af1b7113df9 100644 --- a/engines/ngi/fullpipe/scene38.cpp +++ b/engines/ngi/fullpipe/scene38.cpp @@ -40,13 +40,13 @@ void scene38_setBottleState(Scene *sc) { ExCommand *ex = sc->getMessageQueueById(QU_SC38_SHOWBOTTLE_ONTABLE)->getExCommandByIndex(0); if (g_vars->scene38_bottle->_ox == ex->_x && g_vars->scene38_bottle->_oy == ex->_y) { - if (g_fp->lift_checkButton(sO_Level5) ) { + if (g_nmi->lift_checkButton(sO_Level5) ) { ex = sc->getMessageQueueById(QU_SC38_SHOWBOTTLE)->getExCommandByIndex(0); g_vars->scene38_bottle->setOXY(ex->_x, ex->_y); g_vars->scene38_bottle->_priority = ex->_z; - g_fp->setObjectState(sO_Bottle_38, g_fp->getObjectEnumState(sO_Bottle_38, sO_Blocked)); + g_nmi->setObjectState(sO_Bottle_38, g_nmi->getObjectEnumState(sO_Bottle_38, sO_Blocked)); } } } @@ -71,7 +71,7 @@ void scene38_initScene(Scene *sc) { scene38_setBottleState(sc); - if (g_fp->getObjectState(sO_Boss) == g_fp->getObjectEnumState(sO_Boss, sO_IsSleeping)) { + if (g_nmi->getObjectState(sO_Boss) == g_nmi->getObjectEnumState(sO_Boss, sO_IsSleeping)) { g_vars->scene38_shorty->_flags &= 0xFFFB; g_vars->scene38_tally->stopAnim_maybe(); @@ -82,8 +82,8 @@ void scene38_initScene(Scene *sc) { g_vars->scene38_domino1->_flags &= 0xFFFB; } - g_fp->lift_init(sc, QU_SC38_ENTERLIFT, QU_SC38_EXITLIFT); - g_fp->lift_setButtonStatics(sc, ST_LBN_0N); + g_nmi->lift_init(sc, QU_SC38_ENTERLIFT, QU_SC38_EXITLIFT); + g_nmi->lift_setButtonStatics(sc, ST_LBN_0N); } void sceneHandler38_tryTakeBottle() { @@ -101,7 +101,7 @@ void sceneHandler38_propose() { if (!g_vars->scene38_tally->_movement) { if (g_vars->scene38_tally->_flags & 4) { if (!(g_vars->scene38_tally->_flags & 2) && g_vars->scene38_tallyCounter > 0 - && g_fp->_rnd.getRandomNumber(32767) < 32767) { + && g_nmi->_rnd.getRandomNumber(32767) < 32767) { chainQueue(QU_DLD_DENY, 0); g_vars->scene38_tallyCounter = 0; } @@ -112,7 +112,7 @@ void sceneHandler38_propose() { void sceneHandler38_point() { if ((!g_vars->scene38_boss->_movement && ((g_vars->scene38_boss->_flags & 4) || !(g_vars->scene38_boss->_flags & 2))) && g_vars->scene38_bossCounter > 0 - && g_fp->_rnd.getRandomNumber(32767) < 32767) { + && g_nmi->_rnd.getRandomNumber(32767) < 32767) { if (g_vars->scene38_boss->_statics->_staticsId == ST_GLV_HAMMER) { chainQueue(QU_GLV_TOSMALL, 0); g_vars->scene38_bossCounter = 0; @@ -130,7 +130,7 @@ void sceneHandler38_hammerKick() { if (g_vars->scene38_shorty->_flags & 4) { if (!(g_vars->scene38_shorty->_flags & 2) && g_vars->scene38_shortyCounter > 1 && g_vars->scene38_shorty->_statics->_staticsId == ST_MLS_LEFT2 - && g_fp->_rnd.getRandomNumber(32767) < 3276) { + && g_nmi->_rnd.getRandomNumber(32767) < 3276) { chainQueue(QU_MLS_TURNR, 0); g_vars->scene38_shortyCounter = 0; } @@ -150,7 +150,7 @@ void sceneHandler38_drink() { if (g_vars->scene38_shorty->_flags & 4) { if (!(g_vars->scene38_shorty->_flags & 2) && g_vars->scene38_shortyCounter > 0 && g_vars->scene38_shorty->_statics->_staticsId == ST_MLS_LEFT2 - && g_fp->_rnd.getRandomNumber(32767) < 3276) { + && g_nmi->_rnd.getRandomNumber(32767) < 3276) { chainQueue(QU_MLS_TURNR, 0); g_vars->scene38_shortyCounter = 0; } @@ -189,9 +189,9 @@ void sceneHandler38_animateAlcoholics() { } else { int bossAnim = 0; - if (g_fp->_rnd.getRandomNumber(32767) >= 1310 || g_vars->scene38_boss->_statics->_staticsId != ST_GLV_HAMMER) { - if (g_fp->_rnd.getRandomNumber(32767) >= 1310) { - if (g_fp->_rnd.getRandomNumber(32767) < 1310) { + if (g_nmi->_rnd.getRandomNumber(32767) >= 1310 || g_vars->scene38_boss->_statics->_staticsId != ST_GLV_HAMMER) { + if (g_nmi->_rnd.getRandomNumber(32767) >= 1310) { + if (g_nmi->_rnd.getRandomNumber(32767) < 1310) { if (bossSt == ST_GLV_HAMMER) bossAnim = QU_GLV_DRINK; else if (bossSt == ST_GLV_NOHAMMER) @@ -218,7 +218,7 @@ void sceneHandler38_animateAlcoholics() { } if (bossAnim > 0) { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(bossAnim), 0, 0); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(bossAnim), 0, 0); mq->chain(0); @@ -237,10 +237,10 @@ void sceneHandler38_animateAlcoholics() { if (g_vars->scene38_tallyCounter >= 50) { int tallyAnim = 0; - if (g_fp->_rnd.getRandomNumber(32767) >= 1310) { - if (g_fp->_rnd.getRandomNumber(32767) >= 1310) { - if (g_fp->_rnd.getRandomNumber(32767) >= 1310) { - if (g_fp->_rnd.getRandomNumber(32767) < 1310) + if (g_nmi->_rnd.getRandomNumber(32767) >= 1310) { + if (g_nmi->_rnd.getRandomNumber(32767) >= 1310) { + if (g_nmi->_rnd.getRandomNumber(32767) >= 1310) { + if (g_nmi->_rnd.getRandomNumber(32767) < 1310) tallyAnim = QU_DLD_ICK; } else { tallyAnim = QU_DLD_GLOT; @@ -266,7 +266,7 @@ void sceneHandler38_animateAlcoholics() { g_vars->scene38_tallyAnimCounter = 1; } if (tallyAnim > 0) { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(tallyAnim), 0, 0); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(tallyAnim), 0, 0); mq->chain(0); g_vars->scene38_tallyCounter = 0; @@ -285,9 +285,9 @@ void sceneHandler38_animateAlcoholics() { int shortyAnim = 0; - if (g_fp->_rnd.getRandomNumber(32767) >= 1310) { - if (g_fp->_rnd.getRandomNumber(32767) >= 1310 || g_vars->scene38_shorty->_statics->_staticsId != ST_MLS_LEFT2) { - if (g_vars->scene38_boss->_statics->_staticsId != ST_GLV_SLEEP2 && g_vars->scene38_bossCounter > 30 && g_fp->_rnd.getRandomNumber(32767) < 0x3FFF && g_vars->scene38_shorty->_statics->_staticsId == ST_MLS_LEFT2) + if (g_nmi->_rnd.getRandomNumber(32767) >= 1310) { + if (g_nmi->_rnd.getRandomNumber(32767) >= 1310 || g_vars->scene38_shorty->_statics->_staticsId != ST_MLS_LEFT2) { + if (g_vars->scene38_boss->_statics->_staticsId != ST_GLV_SLEEP2 && g_vars->scene38_bossCounter > 30 && g_nmi->_rnd.getRandomNumber(32767) < 0x3FFF && g_vars->scene38_shorty->_statics->_staticsId == ST_MLS_LEFT2) shortyAnim = QU_MLS_HAND; } else { shortyAnim = QU_MLS_BLINK; @@ -310,7 +310,7 @@ void sceneHandler38_animateAlcoholics() { } if (shortyAnim > 0) { - mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(shortyAnim), 0, 0); + mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(shortyAnim), 0, 0); mq->chain(0); @@ -324,15 +324,15 @@ int sceneHandler38(ExCommand *cmd) { switch (cmd->_messageNum) { case MSG_LIFT_EXITLIFT: - g_fp->lift_exitSeq(cmd); + g_nmi->lift_exitSeq(cmd); break; case MSG_LIFT_CLOSEDOOR: - g_fp->lift_closedoorSeq(); + g_nmi->lift_closedoorSeq(); break; case MSG_LIFT_STARTEXITQUEUE: - g_fp->lift_startExitQueue(); + g_nmi->lift_startExitQueue(); break; case MSG_SC38_TRYTAKEBOTTLE: @@ -348,7 +348,7 @@ int sceneHandler38(ExCommand *cmd) { break; case MSG_LIFT_CLICKBUTTON: - g_fp->lift_clickButton(); + g_nmi->lift_clickButton(); break; case MSG_SC38_POINT: @@ -356,7 +356,7 @@ int sceneHandler38(ExCommand *cmd) { break; case MSG_LIFT_GO: - g_fp->lift_goAnimation(); + g_nmi->lift_goAnimation(); break; case MSG_SC38_HMRKICK: @@ -368,15 +368,15 @@ int sceneHandler38(ExCommand *cmd) { break; case 64: - g_fp->lift_hoverButton(cmd); + g_nmi->lift_hoverButton(cmd); break; case 29: { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObjectAtPos(g_nmi->_sceneRect.left + cmd->_x, g_nmi->_sceneRect.top + cmd->_y); if (ani && ani->_id == ANI_LIFTBUTTON) { - g_fp->lift_animateButton(ani); + g_nmi->lift_animateButton(ani); cmd->_messageKind = 0; } @@ -384,21 +384,21 @@ int sceneHandler38(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - int x = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + int x = g_nmi->_aniMan2->_ox; - if (x < g_fp->_sceneRect.left + 200) - g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left; + if (x < g_nmi->_sceneRect.left + 200) + g_nmi->_currentScene->_x = x - 300 - g_nmi->_sceneRect.left; - if (x > g_fp->_sceneRect.right - 200) - g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right; + if (x > g_nmi->_sceneRect.right - 200) + g_nmi->_currentScene->_x = x + 300 - g_nmi->_sceneRect.right; } sceneHandler38_animateAlcoholics(); - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); break; diff --git a/engines/ngi/fullpipe/sceneDbg.cpp b/engines/ngi/fullpipe/sceneDbg.cpp index 49e2bc5a182..8bf07669445 100644 --- a/engines/ngi/fullpipe/sceneDbg.cpp +++ b/engines/ngi/fullpipe/sceneDbg.cpp @@ -41,11 +41,11 @@ void sceneDbgMenu_initScene(Scene *sc) { } GameObject *sceneHandlerDbgMenu_getObjectAtXY(int x, int y) { - if (!g_fp->_currentScene) + if (!g_nmi->_currentScene) return 0; - for (uint i = 1; i < g_fp->_currentScene->_picObjList.size(); i++) { - PictureObject *pic = g_fp->_currentScene->_picObjList[i]; + for (uint i = 1; i < g_nmi->_currentScene->_picObjList.size(); i++) { + PictureObject *pic = g_nmi->_currentScene->_picObjList[i]; if (x >= pic->_ox && y >= pic->_oy) { const Dims dims = pic->getDimensions(); @@ -61,8 +61,8 @@ int sceneHandlerDbgMenu(ExCommand *ex) { if (ex->_messageKind != 17) return 0; - int mx = g_fp->_mouseScreenPos.x + g_fp->_sceneRect.left; - int my = g_fp->_mouseScreenPos.y + g_fp->_sceneRect.top; + int mx = g_nmi->_mouseScreenPos.x + g_nmi->_sceneRect.left; + int my = g_nmi->_mouseScreenPos.y + g_nmi->_sceneRect.top; if (ex->_messageNum == 29) { GameObject *obj = sceneHandlerDbgMenu_getObjectAtXY(mx, my); @@ -74,18 +74,18 @@ int sceneHandlerDbgMenu(ExCommand *ex) { } if (ex->_messageNum != 33) { if (ex->_messageNum == MSG_RESTARTGAME) { - g_fp->_needRestart = true; + g_nmi->_needRestart = true; return 0; } return 0; } - g_fp->_cursorId = PIC_CSR_DEFAULT; - GameObject *obj = g_fp->_currentScene->getStaticANIObjectAtPos(mx, my); + g_nmi->_cursorId = PIC_CSR_DEFAULT; + GameObject *obj = g_nmi->_currentScene->getStaticANIObjectAtPos(mx, my); if (obj) { if (canInteractAny(0, obj, -3)) { - g_fp->_cursorId = PIC_CSR_DEFAULT; - g_fp->setCursor(PIC_CSR_DEFAULT); + g_nmi->_cursorId = PIC_CSR_DEFAULT; + g_nmi->setCursor(PIC_CSR_DEFAULT); return 0; } } else { @@ -93,13 +93,13 @@ int sceneHandlerDbgMenu(ExCommand *ex) { if (obj && canInteractAny(0, obj, -3) ) { g_vars->selector->_flags |= 4; g_vars->selector->setOXY(obj->_ox, obj->_oy); - g_fp->_cursorId = PIC_CSR_DEFAULT; - g_fp->setCursor(PIC_CSR_DEFAULT); + g_nmi->_cursorId = PIC_CSR_DEFAULT; + g_nmi->setCursor(PIC_CSR_DEFAULT); return 0; } g_vars->selector->_flags &= 0xFFFB; } - g_fp->setCursor(g_fp->_cursorId); + g_nmi->setCursor(g_nmi->_cursorId); return 0; } diff --git a/engines/ngi/fullpipe/sceneFinal.cpp b/engines/ngi/fullpipe/sceneFinal.cpp index bda66dd5df3..64d3e028122 100644 --- a/engines/ngi/fullpipe/sceneFinal.cpp +++ b/engines/ngi/fullpipe/sceneFinal.cpp @@ -40,18 +40,18 @@ namespace NGI { void sceneFinal_initScene() { - g_fp->_gameLoader->loadScene(SC_FINAL2); - g_fp->accessScene(SC_FINAL2)->setPictureObjectsFlag4(); - g_fp->_gameLoader->loadScene(SC_FINAL3); - g_fp->accessScene(SC_FINAL3)->setPictureObjectsFlag4(); - g_fp->_gameLoader->loadScene(SC_FINAL4); - g_fp->accessScene(SC_FINAL4)->setPictureObjectsFlag4(); + g_nmi->_gameLoader->loadScene(SC_FINAL2); + g_nmi->accessScene(SC_FINAL2)->setPictureObjectsFlag4(); + g_nmi->_gameLoader->loadScene(SC_FINAL3); + g_nmi->accessScene(SC_FINAL3)->setPictureObjectsFlag4(); + g_nmi->_gameLoader->loadScene(SC_FINAL4); + g_nmi->accessScene(SC_FINAL4)->setPictureObjectsFlag4(); getGameLoaderInventory()->setIsLocked(0); getGameLoaderInventory()->slideIn(); - g_fp->_updateFlag = 0; - g_fp->_flgCanOpenMap = 0; + g_nmi->_updateFlag = 0; + g_nmi->_flgCanOpenMap = 0; g_vars->sceneFinal_var01 = 0; g_vars->sceneFinal_var02 = 0; @@ -61,11 +61,11 @@ void sceneFinal_initScene() { int sceneFinal_updateCursor() { if (g_vars->sceneFinal_var01) - g_fp->_cursorId = 0; + g_nmi->_cursorId = 0; else - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - return g_fp->_cursorId; + return g_nmi->_cursorId; } void sceneHandlerFinal_endFinal() { @@ -73,26 +73,26 @@ void sceneHandlerFinal_endFinal() { } void sceneHandlerFinal_startMusic(const char *track) { - g_fp->startSoundStream1(track); + g_nmi->startSoundStream1(track); g_vars->sceneFinal_trackHasStarted = true; } void sceneHandlerFinal_goto4() { - g_fp->_currentScene = g_fp->accessScene(SC_FINAL4); + g_nmi->_currentScene = g_nmi->accessScene(SC_FINAL4); - g_fp->_gameLoader->loadScene(SC_FINAL4); + g_nmi->_gameLoader->loadScene(SC_FINAL4); chainQueue(QU_FN4_DOFINAL, 1); } void sceneHandlerFinal_goto3() { - g_fp->_currentScene = g_fp->accessScene(SC_FINAL3); + g_nmi->_currentScene = g_nmi->accessScene(SC_FINAL3); chainQueue(QU_FN3_DOFINAL, 1); } void sceneHandlerFinal_goto2() { - g_fp->_currentScene = g_fp->accessScene(SC_FINAL2); + g_nmi->_currentScene = g_nmi->accessScene(SC_FINAL2); chainQueue(QU_FN2_DOFINAL, 1); } @@ -103,19 +103,19 @@ void sceneHandlerFinal_startFinal() { getCurrSceneSc2MotionController()->deactivate(); getGameLoaderInteractionController()->disableFlag24(); - g_fp->_aniMan2 = 0; + g_nmi->_aniMan2 = 0; - g_fp->_aniMan->_flags &= 0xFFFB; + g_nmi->_aniMan->_flags &= 0xFFFB; chainQueue(QU_FIN1_TAKECOIN, 1); - g_fp->playTrack(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_FINAL1"), "MUSIC2", 1); + g_nmi->playTrack(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_FINAL1"), "MUSIC2", 1); - g_fp->_modalObject = new ModalFinal; + g_nmi->_modalObject = new ModalFinal; } void sceneHandlerFinal_fallCoin() { - StaticANIObject *coin = g_fp->_currentScene->getStaticANIObject1ById(ANI_FIN_COIN, -1); + StaticANIObject *coin = g_nmi->_currentScene->getStaticANIObject1ById(ANI_FIN_COIN, -1); if (!coin->_movement) { if (!coin->_statics || coin->_statics->_staticsId != ST_FCN_NORM) @@ -124,7 +124,7 @@ void sceneHandlerFinal_fallCoin() { } void updateMusic() { - if (g_vars->sceneFinal_trackHasStarted && !g_fp->_mixer->isSoundHandleActive(g_fp->_soundStream1)) { // loop music + if (g_vars->sceneFinal_trackHasStarted && !g_nmi->_mixer->isSoundHandleActive(g_nmi->_soundStream1)) { // loop music sceneHandlerFinal_startMusic("track16.ogg"); } } @@ -145,7 +145,7 @@ int sceneHandlerFinal(ExCommand *cmd) { case MSG_FIN_GOTO4: sceneHandlerFinal_goto4(); - g_fp->playTrack(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_FINAL1"), "MUSIC3", 1); + g_nmi->playTrack(g_nmi->getGameLoaderGameVar()->getSubVarByName("SC_FINAL1"), "MUSIC3", 1); break; case MSG_FIN_GOTO3: @@ -161,8 +161,8 @@ int sceneHandlerFinal(ExCommand *cmd) { break; case 33: - if (g_fp->_aniMan2) { - g_vars->sceneFinal_var03 = g_fp->_aniMan2->_ox; + if (g_nmi->_aniMan2) { + g_vars->sceneFinal_var03 = g_nmi->_aniMan2->_ox; if (g_vars->sceneFinal_var03 < 450 && g_vars->sceneFinal_var02 >= 450 ) sceneHandlerFinal_fallCoin(); @@ -170,9 +170,9 @@ int sceneHandlerFinal(ExCommand *cmd) { g_vars->sceneFinal_var02 = g_vars->sceneFinal_var03; } - g_fp->_behaviorManager->updateBehaviors(); + g_nmi->_behaviorManager->updateBehaviors(); - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); break; diff --git a/engines/ngi/fullpipe/sceneIntro.cpp b/engines/ngi/fullpipe/sceneIntro.cpp index eedf75e385b..fdac2b5f203 100644 --- a/engines/ngi/fullpipe/sceneIntro.cpp +++ b/engines/ngi/fullpipe/sceneIntro.cpp @@ -32,13 +32,13 @@ namespace NGI { int sceneIntro_updateCursor() { - g_fp->_cursorId = 0; + g_nmi->_cursorId = 0; return 0; } void sceneIntro_initScene(Scene *sc) { - g_fp->_gameLoader->loadScene(SC_INTRO2); + g_nmi->_gameLoader->loadScene(SC_INTRO2); g_vars->sceneIntro_aniin1man = sc->getStaticANIObject1ById(ANI_IN1MAN, -1); g_vars->sceneIntro_needSleep = true; @@ -46,19 +46,19 @@ void sceneIntro_initScene(Scene *sc) { g_vars->sceneIntro_playing = true; g_vars->sceneIntro_needBlackout = false; - if (g_fp->_recordEvents || g_fp->_inputArFlag) + if (g_nmi->_recordEvents || g_nmi->_inputArFlag) g_vars->sceneIntro_skipIntro = false; - g_fp->_modalObject = new ModalIntro; + g_nmi->_modalObject = new ModalIntro; } void sceneHandlerIntro_part1() { - g_fp->_currentScene = g_fp->accessScene(SC_INTRO1); + g_nmi->_currentScene = g_nmi->accessScene(SC_INTRO1); chainQueue(QU_INTR_FINISH, 0); } void sceneHandlerIntro_part2() { - g_fp->_currentScene = g_fp->accessScene(SC_INTRO2); + g_nmi->_currentScene = g_nmi->accessScene(SC_INTRO2); chainQueue(QU_IN2_DO, 0); } @@ -102,7 +102,7 @@ int sceneHandlerIntro(ExCommand *ex) { chainQueue(QU_INTR_GETUPMAN, 0); } - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); return 0; } diff --git a/engines/ngi/fullpipe/sceneIntroDemo.cpp b/engines/ngi/fullpipe/sceneIntroDemo.cpp index 73236dcf5af..5e5c5c9ac1d 100644 --- a/engines/ngi/fullpipe/sceneIntroDemo.cpp +++ b/engines/ngi/fullpipe/sceneIntroDemo.cpp @@ -32,7 +32,7 @@ namespace NGI { int sceneIntroDemo_updateCursor() { - g_fp->_cursorId = 0; + g_nmi->_cursorId = 0; return 0; } @@ -43,14 +43,14 @@ void sceneIntroDemo_initScene(Scene *sc) { g_vars->sceneIntro_playing = true; g_vars->sceneIntro_needBlackout = false; - if (g_fp->_recordEvents || g_fp->_inputArFlag) + if (g_nmi->_recordEvents || g_nmi->_inputArFlag) g_vars->sceneIntro_skipIntro = false; - g_fp->_modalObject = new ModalIntroDemo; + g_nmi->_modalObject = new ModalIntroDemo; } void sceneHandlerIntroDemo_part1() { - g_fp->_currentScene = g_fp->accessScene(SC_INTRO1); + g_nmi->_currentScene = g_nmi->accessScene(SC_INTRO1); chainQueue(QU_INTR_FINISH, 0); } @@ -81,7 +81,7 @@ int sceneHandlerIntroDemo(ExCommand *ex) { return 0; case 33: - g_fp->startSceneTrack(); + g_nmi->startSceneTrack(); break; default: diff --git a/engines/ngi/gameloader.cpp b/engines/ngi/gameloader.cpp index 76a877f5f8c..0da19cb8e26 100644 --- a/engines/ngi/gameloader.cpp +++ b/engines/ngi/gameloader.cpp @@ -35,13 +35,13 @@ namespace NGI { Inventory2 *getGameLoaderInventory() { - return &g_fp->_gameLoader->_inventory; + return &g_nmi->_gameLoader->_inventory; } static MotionController *getMotionControllerBySceneId(int16 sceneId) { - for (uint i = 0; i < g_fp->_gameLoader->_sc2array.size(); i++) { - if (g_fp->_gameLoader->_sc2array[i]._sceneId == sceneId) { - return g_fp->_gameLoader->_sc2array[i]._motionController; + for (uint i = 0; i < g_nmi->_gameLoader->_sc2array.size(); i++) { + if (g_nmi->_gameLoader->_sc2array[i]._sceneId == sceneId) { + return g_nmi->_gameLoader->_sc2array[i]._motionController; } } @@ -67,7 +67,7 @@ MctlCompound *getSc2MctlCompoundBySceneId(int16 sceneId) { } InteractionController *getGameLoaderInteractionController() { - return g_fp->_gameLoader->_interactionController; + return g_nmi->_gameLoader->_interactionController; } GameLoader::GameLoader() { @@ -88,10 +88,10 @@ GameLoader::GameLoader() { _preloadEntranceId = 0; _updateCounter = 0; - g_fp->_msgX = 0; - g_fp->_msgY = 0; - g_fp->_msgObjectId2 = 0; - g_fp->_msgId = 0; + g_nmi->_msgX = 0; + g_nmi->_msgY = 0; + g_nmi->_msgObjectId2 = 0; + g_nmi->_msgId = 0; } GameLoader::~GameLoader() { @@ -110,10 +110,10 @@ bool GameLoader::load(MfcArchive &file) { _gameProject->load(file); - g_fp->_gameProject = _gameProject.get(); + g_nmi->_gameProject = _gameProject.get(); - if (g_fp->_gameProjectVersion < 12) { - error("Old gameProjectVersion: %d", g_fp->_gameProjectVersion); + if (g_nmi->_gameProjectVersion < 12) { + error("Old gameProjectVersion: %d", g_nmi->_gameProjectVersion); } _gameName = file.readPascalString(); @@ -188,7 +188,7 @@ bool GameLoader::gotoScene(int sceneId, int entranceId) { return false; if (_sc2array[sc2idx]._entranceData.size() < 1) { - g_fp->_currentScene = st->_scene; + g_nmi->_currentScene = st->_scene; return true; } @@ -207,20 +207,20 @@ bool GameLoader::gotoScene(int sceneId, int entranceId) { if (sg || (sg = _gameVar->getSubVarByName("OBJSTATES")->addSubVarAsInt("SAVEGAME", 0)) != 0) sg->setSubVarAsInt("Entrance", entranceId); - if (!g_fp->sceneSwitcher(_sc2array[sc2idx]._entranceData[entranceIdx])) + if (!g_nmi->sceneSwitcher(_sc2array[sc2idx]._entranceData[entranceIdx])) return false; - g_fp->_msgObjectId2 = 0; - g_fp->_msgY = -1; - g_fp->_msgX = -1; + g_nmi->_msgObjectId2 = 0; + g_nmi->_msgY = -1; + g_nmi->_msgX = -1; - g_fp->_currentScene = st->_scene; + g_nmi->_currentScene = st->_scene; - MessageQueue *mq1 = g_fp->_currentScene->getMessageQueueById(_sc2array[sc2idx]._entranceData[entranceIdx]._messageQueueId); + MessageQueue *mq1 = g_nmi->_currentScene->getMessageQueueById(_sc2array[sc2idx]._entranceData[entranceIdx]._messageQueueId); if (mq1) { MessageQueue *mq = new MessageQueue(mq1, 0, 0); - StaticANIObject *stobj = g_fp->_currentScene->getStaticANIObject1ById(_field_FA, -1); + StaticANIObject *stobj = g_nmi->_currentScene->getStaticANIObject1ById(_field_FA, -1); if (stobj) { stobj->_flags &= 0x100; @@ -241,7 +241,7 @@ bool GameLoader::gotoScene(int sceneId, int entranceId) { return false; } } else { - StaticANIObject *stobj = g_fp->_currentScene->getStaticANIObject1ById(_field_FA, -1); + StaticANIObject *stobj = g_nmi->_currentScene->getStaticANIObject1ById(_field_FA, -1); if (stobj) stobj->_flags &= 0xfeff; } @@ -252,9 +252,9 @@ bool GameLoader::gotoScene(int sceneId, int entranceId) { bool preloadCallback(PreloadItem &pre, int flag) { if (flag) { if (flag == 50) - g_fp->_aniMan->preloadMovements(g_fp->_movTable.get()); + g_nmi->_aniMan->preloadMovements(g_nmi->_movTable.get()); - StaticANIObject *pbar = g_fp->_loaderScene->getStaticANIObject1ById(ANI_PBAR, -1); + StaticANIObject *pbar = g_nmi->_loaderScene->getStaticANIObject1ById(ANI_PBAR, -1); if (pbar) { int sz; @@ -267,43 +267,43 @@ bool preloadCallback(PreloadItem &pre, int flag) { pbar->_movement->setDynamicPhaseIndex(flag * (sz - 1) / 100); } - g_fp->updateMap(&pre); + g_nmi->updateMap(&pre); - g_fp->_currentScene = g_fp->_loaderScene; + g_nmi->_currentScene = g_nmi->_loaderScene; - g_fp->_loaderScene->draw(); + g_nmi->_loaderScene->draw(); - g_fp->_system->updateScreen(); + g_nmi->_system->updateScreen(); } else { - if (g_fp->_scene2) { - g_fp->_aniMan = g_fp->_scene2->getAniMan(); - g_fp->_scene2 = 0; + if (g_nmi->_scene2) { + g_nmi->_aniMan = g_nmi->_scene2->getAniMan(); + g_nmi->_scene2 = 0; setInputDisabled(1); } - g_fp->_floaters->stopAll(); + g_nmi->_floaters->stopAll(); - if (g_fp->_soundEnabled) { - g_fp->_currSoundListCount = 1; - g_fp->_currSoundList1[0] = g_fp->accessScene(SC_COMMON)->_soundList.get(); + if (g_nmi->_soundEnabled) { + g_nmi->_currSoundListCount = 1; + g_nmi->_currSoundList1[0] = g_nmi->accessScene(SC_COMMON)->_soundList.get(); } g_vars->scene18_inScene18p1 = false; if ((pre.preloadId1 != SC_18 || pre.sceneId != SC_19) && (pre.preloadId1 != SC_19 || (pre.sceneId != SC_18 && pre.sceneId != SC_19))) { - if (g_fp->_scene3) { + if (g_nmi->_scene3) { if (pre.preloadId1 != SC_18) - g_fp->_gameLoader->unloadScene(SC_18); + g_nmi->_gameLoader->unloadScene(SC_18); - g_fp->_scene3 = 0; + g_nmi->_scene3 = 0; } } else { - scene19_setMovements(g_fp->accessScene(pre.preloadId1), pre.param); + scene19_setMovements(g_nmi->accessScene(pre.preloadId1), pre.param); g_vars->scene18_inScene18p1 = true; if (pre.preloadId1 == SC_18) { - g_fp->_gameLoader->saveScenePicAniInfos(SC_18); + g_nmi->_gameLoader->saveScenePicAniInfos(SC_18); scene18_preload(); } @@ -314,34 +314,34 @@ bool preloadCallback(PreloadItem &pre, int flag) { pre.param = TrubaLeft; } - if (!g_fp->_loaderScene) { - g_fp->_gameLoader->loadScene(SC_LDR); - g_fp->_loaderScene = g_fp->accessScene(SC_LDR); + if (!g_nmi->_loaderScene) { + g_nmi->_gameLoader->loadScene(SC_LDR); + g_nmi->_loaderScene = g_nmi->accessScene(SC_LDR); } - StaticANIObject *pbar = g_fp->_loaderScene->getStaticANIObject1ById(ANI_PBAR, -1); + StaticANIObject *pbar = g_nmi->_loaderScene->getStaticANIObject1ById(ANI_PBAR, -1); if (pbar) { pbar->show1(ST_EGTR_SLIMSORROW, ST_MAN_GOU, MV_PBAR_RUN, 0); pbar->startAnim(MV_PBAR_RUN, 0, -1); } - g_fp->_inventoryScene = 0; - g_fp->_updateCursorCallback = 0; + g_nmi->_inventoryScene = 0; + g_nmi->_updateCursorCallback = 0; - g_fp->_sceneRect.translate(-g_fp->_sceneRect.left, -g_fp->_sceneRect.top); + g_nmi->_sceneRect.translate(-g_nmi->_sceneRect.left, -g_nmi->_sceneRect.top); - g_fp->_system->delayMillis(10); + g_nmi->_system->delayMillis(10); - Scene *oldsc = g_fp->_currentScene; + Scene *oldsc = g_nmi->_currentScene; - g_fp->_currentScene = g_fp->_loaderScene; + g_nmi->_currentScene = g_nmi->_loaderScene; - g_fp->_loaderScene->draw(); + g_nmi->_loaderScene->draw(); - g_fp->_system->updateScreen(); + g_nmi->_system->updateScreen(); - g_fp->_currentScene = oldsc; + g_nmi->_currentScene = oldsc; } return true; @@ -379,8 +379,8 @@ bool GameLoader::preloadScene(int sceneId, int entranceId) { return false; } - if (g_fp->_currentScene && g_fp->_currentScene->_sceneId == sceneId) - g_fp->_currentScene = 0; + if (g_nmi->_currentScene && g_nmi->_currentScene->_sceneId == sceneId) + g_nmi->_currentScene = 0; saveScenePicAniInfos(sceneId); clearGlobalMessageQueueList1(); @@ -476,7 +476,7 @@ void GameLoader::applyPicAniInfos(Scene *sc, const PicAniInfoList &picAniInfo) { if (!(info.type & 1)) continue; - Scene *scNew = g_fp->accessScene(info.sceneId); + Scene *scNew = g_nmi->accessScene(info.sceneId); if (!scNew) continue; @@ -555,8 +555,8 @@ PicAniInfoList GameLoader::savePicAniInfos(Scene *sc, int flag1, int flag2) { } void GameLoader::updateSystems(int counterdiff) { - if (g_fp->_currentScene) { - g_fp->_currentScene->update(counterdiff); + if (g_nmi->_currentScene) { + g_nmi->_currentScene->update(counterdiff); _exCommand._messageKind = 17; _updateCounter++; @@ -675,7 +675,7 @@ InputController *NGIEngine::getGameLoaderInputController() { } MctlCompound *getCurrSceneSc2MotionController() { - return getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId); + return getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId); } } // End of namespace NGI diff --git a/engines/ngi/gfx.cpp b/engines/ngi/gfx.cpp index 403a82883af..36c6b90f148 100644 --- a/engines/ngi/gfx.cpp +++ b/engines/ngi/gfx.cpp @@ -58,7 +58,7 @@ bool Background::load(MfcArchive &file) { addPictureObject(pct); } - assert(g_fp->_gameProjectVersion >= 5); + assert(g_nmi->_gameProjectVersion >= 5); _bigPictureXDim = file.readUint32LE(); _bigPictureYDim = file.readUint32LE(); @@ -237,7 +237,7 @@ GameObject::GameObject(GameObject *src) { Common::String GameObject::toXML() { return Common::String::format("id=\"%s\" name=\"%s\" x=%d y=%d priority=%d f8=%d", - g_fp->gameIdToStr(_id).c_str(), transCyrillic(_objectName), _ox, _oy, _priority, _field_8); + g_nmi->gameIdToStr(_id).c_str(), transCyrillic(_objectName), _ox, _oy, _priority, _field_8); } bool GameObject::load(MfcArchive &file) { @@ -253,7 +253,7 @@ bool GameObject::load(MfcArchive &file) { _oy = file.readSint32LE(); _priority = file.readUint16LE(); - if (g_fp->_gameProjectVersion >= 11) { + if (g_nmi->_gameProjectVersion >= 11) { _field_8 = file.readUint32LE(); } @@ -440,7 +440,7 @@ bool Picture::load(MfcArchive &file) { _y = file.readSint32LE(); _field_44 = file.readUint16LE(); - assert(g_fp->_gameProjectVersion >= 2); + assert(g_nmi->_gameProjectVersion >= 2); _width = file.readUint32LE(); _height = file.readUint32LE(); @@ -456,7 +456,7 @@ bool Picture::load(MfcArchive &file) { setAOIDs(); } - assert(g_fp->_gameProjectVersion >= 12); + assert(g_nmi->_gameProjectVersion >= 12); _alpha = file.readUint32LE() & 0xff; @@ -478,8 +478,8 @@ bool Picture::load(MfcArchive &file) { } void Picture::setAOIDs() { - int w = (g_fp->_pictureScale + _width - 1) / g_fp->_pictureScale; - int h = (g_fp->_pictureScale + _height - 1) / g_fp->_pictureScale; + int w = (g_nmi->_pictureScale + _width - 1) / g_nmi->_pictureScale; + int h = (g_nmi->_pictureScale + _height - 1) / g_nmi->_pictureScale; _memoryObject2->_rows = (byte **)malloc(w * sizeof(int *)); @@ -530,7 +530,7 @@ void Picture::getDibInfo() { _bitmap->load(s); delete s; - _bitmap->decode(_data, _paletteData.size ? _paletteData : *g_fp->_globalPalette); + _bitmap->decode(_data, _paletteData.size ? _paletteData : *g_nmi->_globalPalette); } const Bitmap *Picture::getPixelData() { @@ -567,7 +567,7 @@ void Picture::draw(int x, int y, int style, int angle) { pal = &_paletteData; } else { //warning("Picture:draw: using global palette"); - pal = g_fp->_globalPalette; + pal = g_nmi->_globalPalette; } switch (style) { @@ -598,7 +598,7 @@ void Picture::drawRotated(int x, int y, int angle) { } void Picture::displayPicture() { - if (g_fp->shouldQuit()) + if (g_nmi->shouldQuit()) return; getData(); @@ -607,22 +607,22 @@ void Picture::displayPicture() { if (!_dataSize) return; - g_fp->_backgroundSurface.fillRect(Common::Rect(0, 0, 800, 600), 0); - g_fp->_system->copyRectToScreen(g_fp->_backgroundSurface.getBasePtr(0, 0), g_fp->_backgroundSurface.pitch, 0, 0, 800, 600); + g_nmi->_backgroundSurface.fillRect(Common::Rect(0, 0, 800, 600), 0); + g_nmi->_system->copyRectToScreen(g_nmi->_backgroundSurface.getBasePtr(0, 0), g_nmi->_backgroundSurface.pitch, 0, 0, 800, 600); draw(0, 0, 0, 0); - g_fp->updateEvents(); - g_fp->_system->delayMillis(10); - g_fp->_system->updateScreen(); + g_nmi->updateEvents(); + g_nmi->_system->delayMillis(10); + g_nmi->_system->updateScreen(); - while (!g_fp->shouldQuit()) { - g_fp->updateEvents(); - g_fp->_system->delayMillis(10); - g_fp->_system->updateScreen(); + while (!g_nmi->shouldQuit()) { + g_nmi->updateEvents(); + g_nmi->_system->delayMillis(10); + g_nmi->_system->updateScreen(); - if (g_fp->_keyState == ' ') { - g_fp->_keyState = Common::KEYCODE_INVALID; + if (g_nmi->_keyState == ' ') { + g_nmi->_keyState = Common::KEYCODE_INVALID; break; } } @@ -668,7 +668,7 @@ bool Picture::isPixelHitAtPos(int x, int y) { } int Picture::getPixelAtPos(int x, int y) { - return getPixelAtPosEx(x / g_fp->_pictureScale, y / g_fp->_pictureScale); + return getPixelAtPosEx(x / g_nmi->_pictureScale, y / g_nmi->_pictureScale); return false; } @@ -680,8 +680,8 @@ int Picture::getPixelAtPosEx(int x, int y) { warning("STUB: Picture::getPixelAtPosEx(%d, %d)", x, y); // TODO: It looks like this doesn't really work. - if (x < (g_fp->_pictureScale + _width - 1) / g_fp->_pictureScale && - y < (g_fp->_pictureScale + _height - 1) / g_fp->_pictureScale && + if (x < (g_nmi->_pictureScale + _width - 1) / g_nmi->_pictureScale && + y < (g_nmi->_pictureScale + _height - 1) / g_nmi->_pictureScale && _memoryObject2 != 0 && _memoryObject2->_rows != 0) return _memoryObject2->_rows[x][2 * y]; @@ -758,15 +758,15 @@ void Bitmap::decode(byte *pixels, const Palette &palette) { void Bitmap::putDib(int x, int y, const Palette &palette, byte alpha) { debugC(7, kDebugDrawing, "Bitmap::putDib(%d, %d)", x, y); - int x1 = x - g_fp->_sceneRect.left; - int y1 = y - g_fp->_sceneRect.top; + int x1 = x - g_nmi->_sceneRect.left; + int y1 = y - g_nmi->_sceneRect.top; if (!_width || !_height || !_surface) return; Common::Rect sub(0, 0, _width, _height); sub.translate(x, y); - sub.clip(g_fp->_sceneRect); + sub.clip(g_nmi->_sceneRect); sub.translate(-x, -y); if (sub.isEmpty()) @@ -780,8 +780,8 @@ void Bitmap::putDib(int x, int y, const Palette &palette, byte alpha) { int alphac = TS_ARGB(0xff, alpha, 0xff, 0xff); - _surface->blit(g_fp->_backgroundSurface, x1, y1, _flipping, &sub, alphac); - g_fp->_system->copyRectToScreen(g_fp->_backgroundSurface.getBasePtr(x1, y1), g_fp->_backgroundSurface.pitch, x1, y1, sub.width(), sub.height()); + _surface->blit(g_nmi->_backgroundSurface, x1, y1, _flipping, &sub, alphac); + g_nmi->_system->copyRectToScreen(g_nmi->_backgroundSurface.getBasePtr(x1, y1), g_nmi->_backgroundSurface.pitch, x1, y1, sub.width(), sub.height()); } bool Bitmap::putDibRB(byte *pixels, const Palette &palette) { @@ -941,7 +941,7 @@ void Bitmap::colorFill(uint32 *dest, int len, int32 color) { #endif byte r, g, b; - g_fp->_origFormat.colorToRGB(color, r, g, b); + g_nmi->_origFormat.colorToRGB(color, r, g, b); uint32 c = TS_ARGB(0xff, r, g, b); @@ -964,7 +964,7 @@ void Bitmap::paletteFill(uint32 *dest, byte *src, int len, const Palette &palett byte r, g, b; for (int i = 0; i < len; i++) { - g_fp->_origFormat.colorToRGB(palette.pal[*src++] & 0xffff, r, g, b); + g_nmi->_origFormat.colorToRGB(palette.pal[*src++] & 0xffff, r, g, b); *dest++ = TS_ARGB(0xff, r, g, b); } @@ -993,7 +993,7 @@ void Bitmap::copierKeyColor(uint32 *dest, byte *src, int len, int keyColor, cons if (!cb05_format) { for (int i = 0; i < len; i++) { if (*src != keyColor) { - g_fp->_origFormat.colorToRGB(palette.pal[*src] & 0xffff, r, g, b); + g_nmi->_origFormat.colorToRGB(palette.pal[*src] & 0xffff, r, g, b); *dest = TS_ARGB(0xff, r, g, b); } @@ -1005,7 +1005,7 @@ void Bitmap::copierKeyColor(uint32 *dest, byte *src, int len, int keyColor, cons for (int i = 0; i < len; i++) { if (*src16 != 0) { - g_fp->_origFormat.colorToRGB(READ_LE_UINT16(src16), r, g, b); + g_nmi->_origFormat.colorToRGB(READ_LE_UINT16(src16), r, g, b); *dest = TS_ARGB(0xff, r, g, b); } @@ -1037,7 +1037,7 @@ void Bitmap::copier(uint32 *dest, byte *src, int len, const Palette &palette, bo if (!cb05_format) { for (int i = 0; i < len; i++) { - g_fp->_origFormat.colorToRGB(palette.pal[*src++] & 0xffff, r, g, b); + g_nmi->_origFormat.colorToRGB(palette.pal[*src++] & 0xffff, r, g, b); *dest++ = TS_ARGB(0xff, r, g, b); } @@ -1045,7 +1045,7 @@ void Bitmap::copier(uint32 *dest, byte *src, int len, const Palette &palette, bo int16 *src16 = (int16 *)src; for (int i = 0; i < len; i++) { - g_fp->_origFormat.colorToRGB(READ_LE_UINT16(src16++), r, g, b); + g_nmi->_origFormat.colorToRGB(READ_LE_UINT16(src16++), r, g, b); *dest++ = TS_ARGB(0xff, r, g, b); } } @@ -1124,7 +1124,7 @@ bool Shadows::load(MfcArchive &file) { } void Shadows::init() { - Scene *scene = g_fp->accessScene(_sceneId); + Scene *scene = g_nmi->accessScene(_sceneId); StaticANIObject *st; Movement *mov; @@ -1177,7 +1177,7 @@ DynamicPhase *Shadows::findSize(int width, int height) { void NGIEngine::drawAlphaRectangle(int x1, int y1, int x2, int y2, int alpha) { for (int y = y1; y < y2; y++) { - uint32 *ptr = (uint32 *)g_fp->_backgroundSurface.getBasePtr(x1, y); + uint32 *ptr = (uint32 *)g_nmi->_backgroundSurface.getBasePtr(x1, y); for (int x = x1; x < x2; x++) { uint32 color = *ptr; @@ -1193,17 +1193,17 @@ void NGIEngine::drawAlphaRectangle(int x1, int y1, int x2, int y2, int alpha) { void NGIEngine::sceneFade(Scene *sc, bool direction) { for (int dim = 0; dim < 255; dim += 20) { - int ticks = g_fp->_system->getMillis(); + int ticks = g_nmi->_system->getMillis(); sc->draw(); - drawAlphaRectangle(0, 0, g_fp->_backgroundSurface.w, g_fp->_backgroundSurface.h, direction ? dim : 255 - dim); - g_fp->_system->copyRectToScreen(g_fp->_backgroundSurface.getBasePtr(0, 0), g_fp->_backgroundSurface.pitch, 0, 0, 800, 600); + drawAlphaRectangle(0, 0, g_nmi->_backgroundSurface.w, g_nmi->_backgroundSurface.h, direction ? dim : 255 - dim); + g_nmi->_system->copyRectToScreen(g_nmi->_backgroundSurface.getBasePtr(0, 0), g_nmi->_backgroundSurface.pitch, 0, 0, 800, 600); - g_fp->_system->updateScreen(); - ticks = g_fp->_system->getMillis() - ticks; + g_nmi->_system->updateScreen(); + ticks = g_nmi->_system->getMillis() - ticks; if (ticks < 42) - g_fp->_system->delayMillis(42 - ticks); + g_nmi->_system->delayMillis(42 - ticks); } } diff --git a/engines/ngi/input.cpp b/engines/ngi/input.cpp index d1ba11f0e6a..09bec8d3897 100644 --- a/engines/ngi/input.cpp +++ b/engines/ngi/input.cpp @@ -34,7 +34,7 @@ namespace NGI { InputController::InputController() { - g_fp->_inputController = this; + g_nmi->_inputController = this; _flag = 0; _cursorHandle = 0; @@ -55,7 +55,7 @@ InputController::InputController() { InputController::~InputController() { removeMessageHandler(126, -1); - g_fp->_inputController = 0; + g_nmi->_inputController = 0; for (uint i = 0; i < _cursorsArray.size(); i++) delete _cursorsArray[i]; @@ -63,11 +63,11 @@ InputController::~InputController() { void InputController::setInputDisabled(bool state) { _flag = state; - g_fp->_inputDisabled = state; + g_nmi->_inputDisabled = state; } void setInputDisabled(bool state) { - g_fp->_inputController->setInputDisabled(state); + g_nmi->_inputController->setInputDisabled(state); } void InputController::addCursor(CursorInfo *cursor) { @@ -94,8 +94,8 @@ void InputController::drawCursor(int x, int y) { if (_cursorIndex == -1) return; - _cursorBounds.left = g_fp->_sceneRect.left + x - _cursorsArray[_cursorIndex]->hotspotX; - _cursorBounds.top = g_fp->_sceneRect.top + y - _cursorsArray[_cursorIndex]->hotspotY; + _cursorBounds.left = g_nmi->_sceneRect.left + x - _cursorsArray[_cursorIndex]->hotspotX; + _cursorBounds.top = g_nmi->_sceneRect.top + y - _cursorsArray[_cursorIndex]->hotspotY; _cursorBounds.right = _cursorBounds.left + _cursorsArray[_cursorIndex]->width; _cursorBounds.bottom = _cursorBounds.top + _cursorsArray[_cursorIndex]->height; @@ -272,14 +272,14 @@ void NGIEngine::initArcadeKeys(const char *varname) { } void NGIEngine::processArcade(ExCommand *cmd) { - if (!g_fp->_aniMan2) + if (!g_nmi->_aniMan2) return; int idx; - if (cmd->_sceneClickX <= g_fp->_aniMan2->_ox) { + if (cmd->_sceneClickX <= g_nmi->_aniMan2->_ox) { for (idx = (int)_arcadeKeys.size() - 1; idx >= 0; idx--) { - if (_arcadeKeys[idx].x < g_fp->_aniMan2->_ox) + if (_arcadeKeys[idx].x < g_nmi->_aniMan2->_ox) break; } @@ -287,7 +287,7 @@ void NGIEngine::processArcade(ExCommand *cmd) { return; } else { for (idx = 0; idx < (int)_arcadeKeys.size(); idx++) { - if (_arcadeKeys[idx].x > g_fp->_aniMan2->_ox) + if (_arcadeKeys[idx].x > g_nmi->_aniMan2->_ox) break; } @@ -298,8 +298,8 @@ void NGIEngine::processArcade(ExCommand *cmd) { cmd->_sceneClickX = _arcadeKeys[idx].x; cmd->_sceneClickY = _arcadeKeys[idx].y; - cmd->_x = cmd->_sceneClickX - g_fp->_sceneRect.left; - cmd->_y = cmd->_sceneClickY - g_fp->_sceneRect.top; + cmd->_x = cmd->_sceneClickX - g_nmi->_sceneRect.left; + cmd->_y = cmd->_sceneClickY - g_nmi->_sceneRect.top; } void NGIEngine::setArcadeOverlay(int picId) { diff --git a/engines/ngi/interaction.cpp b/engines/ngi/interaction.cpp index 6cc079f0ae3..76903db4bbb 100644 --- a/engines/ngi/interaction.cpp +++ b/engines/ngi/interaction.cpp @@ -36,8 +36,8 @@ int handleObjectInteraction(StaticANIObject *subject, GameObject *object, int in bool canInteractAny(GameObject *obj1, GameObject *obj2, int invId) { int sceneId = 0; - if (g_fp->_currentScene) - sceneId = g_fp->_currentScene->_sceneId; + if (g_nmi->_currentScene) + sceneId = g_nmi->_currentScene->_sceneId; InteractionController *intC = getGameLoaderInteractionController(); for (InteractionController::InteractionList::iterator i = intC->_interactions.begin(); i != intC->_interactions.end(); ++i) { @@ -142,7 +142,7 @@ bool InteractionController::handleInteraction(StaticANIObject *subj, GameObject if (abs(xpos - subj->_ox) > 1 || abs(ypos - subj->_oy) > 1) { debugC(0, kDebugPathfinding, "Calling makeQueue() at [%d, %d]", xpos, ypos); - mq = getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId)->makeQueue(subj, xpos, ypos, 1, cinter->_staticsId2); + mq = getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId)->makeQueue(subj, xpos, ypos, 1, cinter->_staticsId2); if (mq) { dur = mq->calcDuration(subj); delete mq; @@ -314,7 +314,7 @@ bool InteractionController::handleInteraction(StaticANIObject *subj, GameObject if (abs(xpos - subj->_ox) > 1 || abs(ypos - subj->_oy) > 1 || (inter->_staticsId2 != 0 && (subj->_statics == 0 || subj->_statics->_staticsId != inter->_staticsId2))) { - mq = getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId)->startMove(subj, xpos, ypos, 1, inter->_staticsId2); + mq = getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId)->startMove(subj, xpos, ypos, 1, inter->_staticsId2); if (!mq) return false; @@ -464,7 +464,7 @@ bool Interaction::load(MfcArchive &file) { } bool Interaction::canInteract(GameObject *obj1, GameObject *obj2, int invId) { - if (_sceneId > 0 && g_fp->_currentScene && g_fp->_currentScene->_sceneId != _sceneId) + if (_sceneId > 0 && g_nmi->_currentScene && g_nmi->_currentScene->_sceneId != _sceneId) return false; if (_flags & 0x20000) @@ -496,20 +496,20 @@ bool Interaction::canInteract(GameObject *obj1, GameObject *obj2, int invId) { if (_objectState1) { if (_flags & 0x10) { - if ((g_fp->getObjectState(obj1->getName()) & _objectState1) == 0) + if ((g_nmi->getObjectState(obj1->getName()) & _objectState1) == 0) return false; } else { - if (g_fp->getObjectState(obj1->getName()) != _objectState1) + if (g_nmi->getObjectState(obj1->getName()) != _objectState1) return false; } } if (_objectState2) { if (_flags & 0x10) { - if ((g_fp->getObjectState(obj2->getName()) & _objectState2) == 0) + if ((g_nmi->getObjectState(obj2->getName()) & _objectState2) == 0) return false; } else { - if (g_fp->getObjectState(obj2->getName()) != _objectState2) + if (g_nmi->getObjectState(obj2->getName()) != _objectState2) return false; } } diff --git a/engines/ngi/inventory.cpp b/engines/ngi/inventory.cpp index 6e90efbb44e..02dc77d59bf 100644 --- a/engines/ngi/inventory.cpp +++ b/engines/ngi/inventory.cpp @@ -162,7 +162,7 @@ void Inventory2::removeItem2(Scene *sceneObj, int itemId, int x, int y, int prio if (_inventoryItems[idx].count) { removeItem(itemId, 1); - Scene *sc = g_fp->accessScene(_sceneId); + Scene *sc = g_nmi->accessScene(_sceneId); if (sc) { StaticANIObject *ani = new StaticANIObject(sc->getStaticANIObject1ById(itemId, -1)); @@ -222,7 +222,7 @@ int Inventory2::getItemFlags(int itemId) { void Inventory2::rebuildItemRects() { debugC(2, kDebugInventory, "rebuildItemRects()"); - _scene = g_fp->accessScene(_sceneId); + _scene = g_nmi->accessScene(_sceneId); if (!_scene) return; @@ -286,11 +286,11 @@ void Inventory2::draw() { if (!_scene) return; - int oldScLeft = g_fp->_sceneRect.left; - int oldScTop = g_fp->_sceneRect.top; + int oldScLeft = g_nmi->_sceneRect.left; + int oldScTop = g_nmi->_sceneRect.top; - g_fp->_sceneRect.top = -_topOffset; - g_fp->_sceneRect.left = 0; + g_nmi->_sceneRect.top = -_topOffset; + g_nmi->_sceneRect.left = 0; _picture->draw(-1, -1, 0, 0); @@ -350,8 +350,8 @@ LABEL_25: reset: - g_fp->_sceneRect.top = oldScTop; - g_fp->_sceneRect.left = oldScLeft; + g_nmi->_sceneRect.top = oldScTop; + g_nmi->_sceneRect.left = oldScLeft; } @@ -426,7 +426,7 @@ int Inventory2::selectItem(int itemId) { int idx = getInventoryPoolItemIndexById(itemId); Picture *pic = _scene->getPictureObjectById(_itemsPool[idx].pictureObjectId1, 0)->_picture; - g_fp->getGameLoaderInputController()->setCursorItemPicture(pic); + g_nmi->getGameLoaderInputController()->setCursorItemPicture(pic); } return _selectedId; @@ -443,7 +443,7 @@ bool Inventory2::unselectItem(bool flag) { _inventoryIcons[i].isSelected = false; } - g_fp->getGameLoaderInputController()->setCursorItemPicture(0); + g_nmi->getGameLoaderInputController()->setCursorItemPicture(0); return true; } diff --git a/engines/ngi/lift.cpp b/engines/ngi/lift.cpp index ceb37ddd9dc..37f168d484d 100644 --- a/engines/ngi/lift.cpp +++ b/engines/ngi/lift.cpp @@ -166,7 +166,7 @@ int NGIEngine::lift_getButtonIdN(int objid) { } void NGIEngine::lift_setButton(const char *name, int state) { - GameVar *var = g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName(sO_LiftButtons); + GameVar *var = g_nmi->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName(sO_LiftButtons); if (var) var->setSubVarAsInt(name, state); @@ -496,7 +496,7 @@ void NGIEngine::lift_hoverButton(ExCommand *cmd) { } bool NGIEngine::lift_checkButton(const char *varName) { - GameVar *var = g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName(sO_LiftButtons); + GameVar *var = g_nmi->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName(sO_LiftButtons); if (var) return lift_getButtonIdP(var->getSubVarByName(varName)->_value.intValue) > 0; diff --git a/engines/ngi/messagehandlers.cpp b/engines/ngi/messagehandlers.cpp index 9e64330fd76..16608fa9110 100644 --- a/engines/ngi/messagehandlers.cpp +++ b/engines/ngi/messagehandlers.cpp @@ -34,7 +34,7 @@ namespace NGI { void global_messageHandler_KickStucco() { - Movement *mov = g_fp->_aniMan->getMovementById(MV_MAN_HMRKICK); + Movement *mov = g_nmi->_aniMan->getMovementById(MV_MAN_HMRKICK); int end = mov->_currMovement ? mov->_currMovement->_dynamicPhases.size() : mov->_dynamicPhases.size(); bool flip = false; @@ -51,7 +51,7 @@ void global_messageHandler_KickStucco() { } } - mov = g_fp->_aniMan->getMovementById(MV_MAN_HMRKICK_COINLESS); + mov = g_nmi->_aniMan->getMovementById(MV_MAN_HMRKICK_COINLESS); end = mov->_currMovement ? mov->_currMovement->_dynamicPhases.size() : mov->_dynamicPhases.size(); flip = false; @@ -70,7 +70,7 @@ void global_messageHandler_KickStucco() { } void global_messageHandler_KickMetal() { - Movement *mov = g_fp->_aniMan->getMovementById(MV_MAN_HMRKICK); + Movement *mov = g_nmi->_aniMan->getMovementById(MV_MAN_HMRKICK); int end = mov->_currMovement ? mov->_currMovement->_dynamicPhases.size() : mov->_dynamicPhases.size(); for (int i = 0; i < end; i++) { @@ -82,7 +82,7 @@ void global_messageHandler_KickMetal() { } } - mov = g_fp->_aniMan->getMovementById(MV_MAN_HMRKICK_COINLESS); + mov = g_nmi->_aniMan->getMovementById(MV_MAN_HMRKICK_COINLESS); end = mov->_currMovement ? mov->_currMovement->_dynamicPhases.size() : mov->_dynamicPhases.size(); for (int i = 0; i < end; i++) { @@ -109,7 +109,7 @@ int global_messageHandler1(ExCommand *cmd) { cmd->_messageNum = MV_MAN_STOPLADDER2; } - if (g_fp->_inputDisabled) { + if (g_nmi->_inputDisabled) { if (cmd->_messageKind == 17) { switch (cmd->_messageNum) { case 29: @@ -125,25 +125,25 @@ int global_messageHandler1(ExCommand *cmd) { } else if (cmd->_messageKind == 17) { switch (cmd->_messageNum) { case MSG_MANSHADOWSON: - g_fp->_aniMan->_shadowsOn = 1; + g_nmi->_aniMan->_shadowsOn = 1; break; case MSG_HMRKICK_STUCCO: global_messageHandler_KickStucco(); break; case MSG_MANSHADOWSOFF: - g_fp->_aniMan->_shadowsOn = 0; + g_nmi->_aniMan->_shadowsOn = 0; break; case MSG_DISABLESAVES: - g_fp->disableSaves(cmd); + g_nmi->disableSaves(cmd); break; case MSG_ENABLESAVES: - g_fp->enableSaves(); + g_nmi->enableSaves(); break; case MSG_HMRKICK_METAL: global_messageHandler_KickMetal(); break; case 29: // left mouse - if (g_fp->_inventoryScene) { + if (g_nmi->_inventoryScene) { if (getGameLoaderInventory()->handleLeftClick(cmd)) cmd->_messageKind = 0; } @@ -155,22 +155,22 @@ int global_messageHandler1(ExCommand *cmd) { } break; case 36: // keydown - g_fp->defHandleKeyDown(cmd->_param); + g_nmi->defHandleKeyDown(cmd->_param); switch (cmd->_param) { case '\x1B': // ESC - if (g_fp->_currentScene) { + if (g_nmi->_currentScene) { getGameLoaderInventory()->unselectItem(0); - g_fp->openMainMenu(); + g_nmi->openMainMenu(); cmd->_messageKind = 0; } break; case 't': - g_fp->stopAllSounds(); + g_nmi->stopAllSounds(); cmd->_messageKind = 0; break; case 'u': - g_fp->toggleMute(); + g_nmi->toggleMute(); cmd->_messageKind = 0; break; case ' ': @@ -185,24 +185,24 @@ int global_messageHandler1(ExCommand *cmd) { break; case '\t': // Demo has no map - if (g_fp->isDemo() && g_fp->getLanguage() == Common::RU_RUS) + if (g_nmi->isDemo() && g_nmi->getLanguage() == Common::RU_RUS) break; - if (g_fp->_flgCanOpenMap) - g_fp->openMap(); + if (g_nmi->_flgCanOpenMap) + g_nmi->openMap(); cmd->_messageKind = 0; break; case Common::KEYCODE_F1: - if (g_fp->_flgCanOpenMap) - g_fp->openHelp(); + if (g_nmi->_flgCanOpenMap) + g_nmi->openHelp(); cmd->_messageKind = 0; break; case '8': { int num = 32; - for (uint i = 0; i < g_fp->_gameLoader->_sc2array[num]._picAniInfos.size(); i++) { + for (uint i = 0; i < g_nmi->_gameLoader->_sc2array[num]._picAniInfos.size(); i++) { debug("pic %d, %d:", num, i); - g_fp->_gameLoader->_sc2array[num]._picAniInfos[i].print(); + g_nmi->_gameLoader->_sc2array[num]._picAniInfos[i].print(); } } break; @@ -211,47 +211,47 @@ int global_messageHandler1(ExCommand *cmd) { } break; case 33: - if (!g_fp->_inventoryScene) + if (!g_nmi->_inventoryScene) break; int invItem; - if (g_fp->_updateFlag && (invItem = g_fp->_inventory->getHoveredItem(&g_fp->_mouseScreenPos))) { - g_fp->_cursorId = PIC_CSR_ITN; - if (!g_fp->_currSelectedInventoryItemId && !g_fp->_aniMan->_movement && - !(g_fp->_aniMan->_flags & 0x100) && g_fp->_aniMan->isIdle()) { - int st = g_fp->_aniMan->_statics->_staticsId; + if (g_nmi->_updateFlag && (invItem = g_nmi->_inventory->getHoveredItem(&g_nmi->_mouseScreenPos))) { + g_nmi->_cursorId = PIC_CSR_ITN; + if (!g_nmi->_currSelectedInventoryItemId && !g_nmi->_aniMan->_movement && + !(g_nmi->_aniMan->_flags & 0x100) && g_nmi->_aniMan->isIdle()) { + int st = g_nmi->_aniMan->_statics->_staticsId; ExCommand *newex = 0; if (st == ST_MAN_RIGHT) { - newex = new ExCommand(g_fp->_aniMan->_id, 1, rMV_MAN_LOOKUP, 0, 0, 0, 1, 0, 0, 0); + newex = new ExCommand(g_nmi->_aniMan->_id, 1, rMV_MAN_LOOKUP, 0, 0, 0, 1, 0, 0, 0); } else if (st == (0x4000 | ST_MAN_RIGHT)) { - newex = new ExCommand(g_fp->_aniMan->_id, 1, MV_MAN_LOOKUP, 0, 0, 0, 1, 0, 0, 0); + newex = new ExCommand(g_nmi->_aniMan->_id, 1, MV_MAN_LOOKUP, 0, 0, 0, 1, 0, 0, 0); } if (newex) { - newex->_param = g_fp->_aniMan->_odelay; + newex->_param = g_nmi->_aniMan->_odelay; newex->_excFlags |= 3; newex->postMessage(); } } - if (g_fp->_currSelectedInventoryItemId != invItem) - g_fp->playSound(SND_CMN_070, 0); + if (g_nmi->_currSelectedInventoryItemId != invItem) + g_nmi->playSound(SND_CMN_070, 0); - g_fp->_currSelectedInventoryItemId = invItem; - g_fp->setCursor(g_fp->_cursorId); + g_nmi->_currSelectedInventoryItemId = invItem; + g_nmi->setCursor(g_nmi->_cursorId); break; } - if (g_fp->_updateCursorCallback) - g_fp->_updateCursorCallback(); + if (g_nmi->_updateCursorCallback) + g_nmi->_updateCursorCallback(); - g_fp->_currSelectedInventoryItemId = 0; - g_fp->setCursor(g_fp->_cursorId); + g_nmi->_currSelectedInventoryItemId = 0; + g_nmi->setCursor(g_nmi->_cursorId); break; case 65: // open map - if (cmd->_field_2C == 11 && cmd->_z == ANI_INV_MAP && g_fp->_flgCanOpenMap) - g_fp->openMap(); + if (cmd->_field_2C == 11 && cmd->_z == ANI_INV_MAP && g_nmi->_flgCanOpenMap) + g_nmi->openMap(); break; default: break; @@ -295,13 +295,13 @@ int global_messageHandler2(ExCommand *cmd) { break; case 28: - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (ani) ani->_priority = cmd->_z; break; case 25: - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (ani) { if (cmd->_z) { ani->setFlags40(true); @@ -314,7 +314,7 @@ int global_messageHandler2(ExCommand *cmd) { break; case 26: - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (ani) { Movement *mov = ani->_movement; if (mov) @@ -325,7 +325,7 @@ int global_messageHandler2(ExCommand *cmd) { default: #if 0 // We never put anything into _defMsgArray - while (::iterator it = g_fp->_defMsgArray.begin(); it != g_fp->_defMsgArray.end(); ++it) + while (::iterator it = g_nmi->_defMsgArray.begin(); it != g_nmi->_defMsgArray.end(); ++it) if (((ExCommand *)*it)->_field_24 == _messageNum) { ((ExCommand *)*it)->firef34(v13); res = 1; @@ -334,11 +334,11 @@ int global_messageHandler2(ExCommand *cmd) { //debug_msg(_messageNum); - if (!g_fp->_soundEnabled || cmd->_messageNum != 33 || g_fp->_currSoundListCount <= 0) + if (!g_nmi->_soundEnabled || cmd->_messageNum != 33 || g_nmi->_currSoundListCount <= 0) return res; - for (int snd = 0; snd < g_fp->_currSoundListCount; snd++) { - SoundList *s = g_fp->_currSoundList1[snd]; + for (int snd = 0; snd < g_nmi->_currSoundListCount; snd++) { + SoundList *s = g_nmi->_currSoundList1[snd]; int ms = s->getCount(); for (int i = 0; i < ms; i++) { s->getSoundByIndex(i).setPanAndVolumeByStaticAni(); @@ -359,7 +359,7 @@ int global_messageHandler3(ExCommand *cmd) { case 31: case 32: case 36: - if (g_fp->_inputDisabled) + if (g_nmi->_inputDisabled) cmd->_messageKind = 0; break; default: @@ -374,39 +374,39 @@ int global_messageHandler3(ExCommand *cmd) { switch (cmd->_messageNum) { case 61: debugC(0, kDebugEvents, "preload: { %d, %d },", cmd->_parentId, cmd->_param); - return g_fp->_gameLoader->preloadScene(cmd->_parentId, cmd->_param); + return g_nmi->_gameLoader->preloadScene(cmd->_parentId, cmd->_param); case 62: - return g_fp->_gameLoader->gotoScene(cmd->_parentId, cmd->_param); + return g_nmi->_gameLoader->gotoScene(cmd->_parentId, cmd->_param); case 64: - if (g_fp->_currentScene && g_fp->_msgObjectId2 - && (!(cmd->_param & 4) || g_fp->_msgObjectId2 != cmd->_z || g_fp->_msgId != cmd->_invId)) { - ani = g_fp->_currentScene->getStaticANIObject1ById(g_fp->_msgObjectId2, g_fp->_msgId); + if (g_nmi->_currentScene && g_nmi->_msgObjectId2 + && (!(cmd->_param & 4) || g_nmi->_msgObjectId2 != cmd->_z || g_nmi->_msgId != cmd->_invId)) { + ani = g_nmi->_currentScene->getStaticANIObject1ById(g_nmi->_msgObjectId2, g_nmi->_msgId); if (ani) { ani->_flags &= 0xFF7F; ani->_flags &= 0xFEFF; ani->deleteFromGlobalMessageQueue(); } } - g_fp->_msgX = 0; - g_fp->_msgY = 0; - g_fp->_msgObjectId2 = 0; - g_fp->_msgId = 0; + g_nmi->_msgX = 0; + g_nmi->_msgY = 0; + g_nmi->_msgObjectId2 = 0; + g_nmi->_msgId = 0; if ((cmd->_param & 1) || (cmd->_param & 2)) { - g_fp->_msgX = cmd->_x; - g_fp->_msgY = cmd->_y; + g_nmi->_msgX = cmd->_x; + g_nmi->_msgY = cmd->_y; } if (cmd->_param & 4) { - g_fp->_msgObjectId2 = cmd->_z; - g_fp->_msgId = cmd->_invId; + g_nmi->_msgObjectId2 = cmd->_z; + g_nmi->_msgId = cmd->_invId; } return result; case 29: - if (g_fp->_gameLoader->_interactionController->_flag24 && g_fp->_currentScene) { - ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - ani2 = g_fp->_currentScene->getStaticANIObject1ById(g_fp->_gameLoader->_field_FA, -1); + if (g_nmi->_gameLoader->_interactionController->_flag24 && g_nmi->_currentScene) { + ani = g_nmi->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + ani2 = g_nmi->_currentScene->getStaticANIObject1ById(g_nmi->_gameLoader->_field_FA, -1); if (ani) { - if (g_fp->_msgObjectId2 == ani->_id && g_fp->_msgId == ani->_odelay) { + if (g_nmi->_msgObjectId2 == ani->_id && g_nmi->_msgId == ani->_odelay) { cmd->_messageKind = 0; return result; } @@ -415,10 +415,10 @@ int global_messageHandler3(ExCommand *cmd) { return 1; } } else { - int id = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); - PictureObject *pic = g_fp->_currentScene->getPictureObjectById(id, 0); + int id = g_nmi->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY); + PictureObject *pic = g_nmi->_currentScene->getPictureObjectById(id, 0); if (pic) { - if (g_fp->_msgObjectId2 == pic->_id && g_fp->_msgId == pic->_odelay) { + if (g_nmi->_msgObjectId2 == pic->_id && g_nmi->_msgId == pic->_odelay) { cmd->_messageKind = 0; return result; } @@ -430,14 +430,14 @@ int global_messageHandler3(ExCommand *cmd) { } } } - if (getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId)->_isEnabled && cmd->_param <= 0) { - if (g_fp->_msgX != cmd->_sceneClickX || g_fp->_msgY != cmd->_sceneClickY) { - ani = g_fp->_currentScene->getStaticANIObject1ById(g_fp->_gameLoader->_field_FA, -1); + if (getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId)->_isEnabled && cmd->_param <= 0) { + if (g_nmi->_msgX != cmd->_sceneClickX || g_nmi->_msgY != cmd->_sceneClickY) { + ani = g_nmi->_currentScene->getStaticANIObject1ById(g_nmi->_gameLoader->_field_FA, -1); if (!ani || (ani->isIdle() && !(ani->_flags & 0x80) && !(ani->_flags & 0x100))) { debugC(0, kDebugPathfinding, "WWW 1"); - result = startWalkTo(g_fp->_gameLoader->_field_FA, -1, cmd->_sceneClickX, cmd->_sceneClickY, 0); + result = startWalkTo(g_nmi->_gameLoader->_field_FA, -1, cmd->_sceneClickX, cmd->_sceneClickY, 0); if (result) { - ExCommand *ex = new ExCommand(g_fp->_gameLoader->_field_FA, 17, 64, 0, 0, 0, 1, 0, 0, 0); + ExCommand *ex = new ExCommand(g_nmi->_gameLoader->_field_FA, 17, 64, 0, 0, 0, 1, 0, 0, 0); ex->_param = 1; ex->_excFlags |= 3; @@ -455,7 +455,7 @@ int global_messageHandler3(ExCommand *cmd) { return result; } case 58: - g_fp->setCursor(cmd->_param); + g_nmi->setCursor(cmd->_param); return result; case 59: setInputDisabled(1); @@ -465,7 +465,7 @@ int global_messageHandler3(ExCommand *cmd) { return result; case 56: if (cmd->_field_2C) { - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (ani) { getGameLoaderInventory()->addItem2(ani); result = 1; @@ -479,13 +479,13 @@ int global_messageHandler3(ExCommand *cmd) { case 57: if (cmd->_field_2C) { if (!cmd->_invId) { - getGameLoaderInventory()->removeItem2(g_fp->_currentScene, cmd->_parentId, cmd->_x, cmd->_y, cmd->_z); + getGameLoaderInventory()->removeItem2(g_nmi->_currentScene, cmd->_parentId, cmd->_x, cmd->_y, cmd->_z); getGameLoaderInventory()->rebuildItemRects(); return 1; } - ani = g_fp->_currentScene->getStaticANIObject1ById(g_fp->_gameLoader->_field_FA, -1); + ani = g_nmi->_currentScene->getStaticANIObject1ById(g_nmi->_gameLoader->_field_FA, -1); if (ani) { - getGameLoaderInventory()->removeItem2(g_fp->_currentScene, cmd->_parentId, ani->_ox + cmd->_x, ani->_oy + cmd->_y, ani->_priority + cmd->_z); + getGameLoaderInventory()->removeItem2(g_nmi->_currentScene, cmd->_parentId, ani->_ox + cmd->_x, ani->_oy + cmd->_y, ani->_priority + cmd->_z); getGameLoaderInventory()->rebuildItemRects(); return 1; } @@ -495,13 +495,13 @@ int global_messageHandler3(ExCommand *cmd) { getGameLoaderInventory()->rebuildItemRects(); return 1; case 55: - if (g_fp->_currentScene) { + if (g_nmi->_currentScene) { GameObject *obj; if (cmd->_z) - obj = g_fp->_currentScene->getStaticANIObject1ById(cmd->_x, cmd->_y); + obj = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_x, cmd->_y); else - obj = g_fp->_currentScene->getPictureObjectById(cmd->_x, cmd->_y); - handleObjectInteraction(g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param), obj, cmd->_invId); + obj = g_nmi->_currentScene->getPictureObjectById(cmd->_x, cmd->_y); + handleObjectInteraction(g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param), obj, cmd->_invId); result = 1; } return result; @@ -515,7 +515,7 @@ int global_messageHandler3(ExCommand *cmd) { if (cmd->_objtype == kObjTypeObjstateCommand) { ObjstateCommand *c = static_cast(cmd); result = 1; - g_fp->setObjectState(c->_objCommandName.c_str(), c->_value); + g_nmi->setObjectState(c->_objCommandName.c_str(), c->_value); } return result; default: @@ -528,7 +528,7 @@ int global_messageHandler4(ExCommand *cmd) { switch (cmd->_messageKind) { case 18: { - MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(cmd->_messageNum), cmd->_parId, 0); + MessageQueue *mq = new MessageQueue(g_nmi->_currentScene->getMessageQueueById(cmd->_messageNum), cmd->_parId, 0); if (cmd->_excFlags & 1) mq->_flag1 = 1; @@ -539,10 +539,10 @@ int global_messageHandler4(ExCommand *cmd) { break; } case 2: - if (!g_fp->_currentScene) + if (!g_nmi->_currentScene) break; - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (!ani) break; @@ -550,10 +550,10 @@ int global_messageHandler4(ExCommand *cmd) { break; case 1: { - if (!g_fp->_currentScene) + if (!g_nmi->_currentScene) break; - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (!ani) break; @@ -569,10 +569,10 @@ int global_messageHandler4(ExCommand *cmd) { break; } case 8: - if (!g_fp->_currentScene) + if (!g_nmi->_currentScene) break; - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (!ani) break; @@ -580,10 +580,10 @@ int global_messageHandler4(ExCommand *cmd) { break; case 20: { - if (!g_fp->_currentScene) + if (!g_nmi->_currentScene) break; - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (!ani) break; @@ -603,10 +603,10 @@ int global_messageHandler4(ExCommand *cmd) { break; } case 21: - if (!g_fp->_currentScene) + if (!g_nmi->_currentScene) break; - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (!ani) break; @@ -617,17 +617,17 @@ int global_messageHandler4(ExCommand *cmd) { // Nop in original break; case 3: - g_fp->_currentScene->_y = cmd->_messageNum - cmd->_messageNum % g_fp->_scrollSpeed; + g_nmi->_currentScene->_y = cmd->_messageNum - cmd->_messageNum % g_nmi->_scrollSpeed; break; case 4: - g_fp->_currentScene->_x = cmd->_messageNum - cmd->_messageNum % g_fp->_scrollSpeed; + g_nmi->_currentScene->_x = cmd->_messageNum - cmd->_messageNum % g_nmi->_scrollSpeed; break; case 19: { - if (!g_fp->_currentScene) + if (!g_nmi->_currentScene) break; - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (!ani) break; @@ -642,10 +642,10 @@ int global_messageHandler4(ExCommand *cmd) { break; } case 22: - if (!g_fp->_currentScene) + if (!g_nmi->_currentScene) break; - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (!ani) break; @@ -654,10 +654,10 @@ int global_messageHandler4(ExCommand *cmd) { break; case 6: - if (!g_fp->_currentScene) + if (!g_nmi->_currentScene) break; - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (!ani) break; @@ -665,18 +665,18 @@ int global_messageHandler4(ExCommand *cmd) { break; case 27: - if (!g_fp->_currentScene || g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param) == 0) { - ani = g_fp->accessScene(cmd->_invId)->getStaticANIObject1ById(cmd->_parentId, -1); + if (!g_nmi->_currentScene || g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param) == 0) { + ani = g_nmi->accessScene(cmd->_invId)->getStaticANIObject1ById(cmd->_parentId, -1); if (ani) { ani = new StaticANIObject(ani); - g_fp->_currentScene->addStaticANIObject(ani, 1); + g_nmi->_currentScene->addStaticANIObject(ani, 1); } } // fall through case 5: - if (g_fp->_currentScene) - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + if (g_nmi->_currentScene) + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (!ani) break; @@ -688,10 +688,10 @@ int global_messageHandler4(ExCommand *cmd) { break; case 10: - if (!g_fp->_currentScene) + if (!g_nmi->_currentScene) break; - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (!ani) break; @@ -702,34 +702,34 @@ int global_messageHandler4(ExCommand *cmd) { break; case 7: { - if (!g_fp->_currentScene->_picObjList.size()) + if (!g_nmi->_currentScene->_picObjList.size()) break; - int offX = g_fp->_scrollSpeed * (cmd->_x / g_fp->_scrollSpeed); - int offY = g_fp->_scrollSpeed * (cmd->_y / g_fp->_scrollSpeed); + int offX = g_nmi->_scrollSpeed * (cmd->_x / g_nmi->_scrollSpeed); + int offY = g_nmi->_scrollSpeed * (cmd->_y / g_nmi->_scrollSpeed); if (cmd->_messageNum) { - g_fp->_currentScene->_x = offX - g_fp->_sceneRect.left; - g_fp->_currentScene->_y = offY - g_fp->_sceneRect.top; + g_nmi->_currentScene->_x = offX - g_nmi->_sceneRect.left; + g_nmi->_currentScene->_y = offY - g_nmi->_sceneRect.top; if (cmd->_field_24) { - g_fp->_currentScene->_messageQueueId = cmd->_parId; + g_nmi->_currentScene->_messageQueueId = cmd->_parId; } } else { - g_fp->_sceneRect.translate(offX - g_fp->_sceneRect.left, offY - g_fp->_sceneRect.top); + g_nmi->_sceneRect.translate(offX - g_nmi->_sceneRect.left, offY - g_nmi->_sceneRect.top); - g_fp->_currentScene->_x = 0; - g_fp->_currentScene->_y = 0; + g_nmi->_currentScene->_x = 0; + g_nmi->_currentScene->_y = 0; - g_fp->_currentScene->updateScrolling2(); + g_nmi->_currentScene->updateScrolling2(); } break; } case 34: - if (!g_fp->_currentScene) + if (!g_nmi->_currentScene) break; - ani = g_fp->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); + ani = g_nmi->_currentScene->getStaticANIObject1ById(cmd->_parentId, cmd->_param); if (!ani) break; @@ -759,15 +759,15 @@ int MovGraph::messageHandler(ExCommand *cmd) { if (cmd->_messageNum != 33) return 0; - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(g_fp->_gameLoader->_field_FA, -1); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(g_nmi->_gameLoader->_field_FA, -1); - if (!getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId)) + if (!getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId)) return 0; - if (getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId)->_objtype != kObjTypeMovGraph || !ani) + if (getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId)->_objtype != kObjTypeMovGraph || !ani) return 0; - MovGraph *gr = getSc2MovGraphBySceneId(g_fp->_currentScene->_sceneId); + MovGraph *gr = getSc2MovGraphBySceneId(g_nmi->_currentScene->_sceneId); MovGraphLink *link = 0; double mindistance = 1.0e10; diff --git a/engines/ngi/messages.cpp b/engines/ngi/messages.cpp index 7f5a8f5ffef..b0dfbdbb1ba 100644 --- a/engines/ngi/messages.cpp +++ b/engines/ngi/messages.cpp @@ -100,7 +100,7 @@ bool ExCommand::load(MfcArchive &file) { _field_3C = 0; - if (g_fp->_gameProjectVersion >= 12) { + if (g_nmi->_gameProjectVersion >= 12) { _excFlags = file.readUint32LE(); _parId = file.readUint32LE(); } @@ -116,12 +116,12 @@ bool ExCommand::load(MfcArchive &file) { bool ExCommand::handleMessage() { int cnt = 0; - for (MessageHandler *m = g_fp->_messageHandlers; m; m = m->nextItem) + for (MessageHandler *m = g_nmi->_messageHandlers; m; m = m->nextItem) cnt += m->callback(this); if (_messageKind == 17 || (_excFlags & 1)) { if (_parId) { - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(_parId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(_parId); if (mq) mq->update(); } @@ -134,18 +134,18 @@ bool ExCommand::handleMessage() { } void ExCommand::sendMessage() { - g_fp->_exCommandList.push_back(this); + g_nmi->_exCommandList.push_back(this); processMessages(); } void ExCommand::postMessage() { - g_fp->_exCommandList.push_back(this); + g_nmi->_exCommandList.push_back(this); } void ExCommand::handle() { - if (g_fp->_modalObject) { - g_fp->_modalObject->handleMessage(this); + if (g_nmi->_modalObject) { + g_nmi->_modalObject->handleMessage(this); delete this; } else { @@ -265,7 +265,7 @@ MessageQueue::MessageQueue(int dataId) { _field_14 = 0; _parId = 0; _dataId = dataId; - _id = g_fp->_globalMessageQueueList->compact(); + _id = g_nmi->_globalMessageQueueList->compact(); _isFinished = 0; _flags = 0; _counter = 0; @@ -290,12 +290,12 @@ MessageQueue::MessageQueue(MessageQueue *src, int parId, int field_38) { else _parId = src->_parId; - _id = g_fp->_globalMessageQueueList->compact(); + _id = g_nmi->_globalMessageQueueList->compact(); _dataId = src->_dataId; _flags = src->_flags & ~kInGlobalQueue; _queueName = ""; - g_fp->_globalMessageQueueList->addMessageQueue(this); + g_nmi->_globalMessageQueueList->addMessageQueue(this); _isFinished = 0; _flag1 = 0; @@ -313,7 +313,7 @@ MessageQueue::~MessageQueue() { delete _field_14; if (_flags & kInGlobalQueue) { - g_fp->_globalMessageQueueList->removeQueueById(_id); + g_nmi->_globalMessageQueueList->removeQueueById(_id); } finish(); @@ -326,7 +326,7 @@ bool MessageQueue::load(MfcArchive &file) { int count = file.readUint16LE(); - assert(g_fp->_gameProjectVersion >= 12); + assert(g_nmi->_gameProjectVersion >= 12); _queueName = file.readPascalString(); @@ -347,7 +347,7 @@ bool MessageQueue::load(MfcArchive &file) { bool MessageQueue::chain(StaticANIObject *ani) { if (checkGlobalExCommandList1() && checkGlobalExCommandList2()) { if (!(getFlags() & kInGlobalQueue)) { - g_fp->_globalMessageQueueList->addMessageQueue(this); + g_nmi->_globalMessageQueueList->addMessageQueue(this); } if (ani) { ani->queueMessageQueue(this); @@ -372,17 +372,17 @@ void MessageQueue::update() { } void MessageQueue::messageQueueCallback1(int par) { - if (g_fp->_isSaveAllowed && par == 16) { - if (g_fp->_globalMessageQueueList->size() && (*g_fp->_globalMessageQueueList)[0] != 0) { - for (uint i = 0; i < g_fp->_globalMessageQueueList->size(); i++) { - if ((*g_fp->_globalMessageQueueList)[i]->_flags & 1) - if ((*g_fp->_globalMessageQueueList)[i] != this && !(*g_fp->_globalMessageQueueList)[i]->_isFinished) + if (g_nmi->_isSaveAllowed && par == 16) { + if (g_nmi->_globalMessageQueueList->size() && (*g_nmi->_globalMessageQueueList)[0] != 0) { + for (uint i = 0; i < g_nmi->_globalMessageQueueList->size(); i++) { + if ((*g_nmi->_globalMessageQueueList)[i]->_flags & 1) + if ((*g_nmi->_globalMessageQueueList)[i] != this && !(*g_nmi->_globalMessageQueueList)[i]->_isFinished) return; } } - if (g_fp->_currentScene) - g_fp->_gameLoader->writeSavegame(g_fp->_currentScene, "savetmp.sav", ""); + if (g_nmi->_currentScene) + g_nmi->_gameLoader->writeSavegame(g_nmi->_currentScene, "savetmp.sav", ""); } } @@ -471,7 +471,7 @@ bool MessageQueue::checkGlobalExCommandList1() { if (ex->_messageKind != 1 && ex->_messageKind != 20 && ex->_messageKind != 5 && ex->_messageKind != 27) continue; - for (Common::List::iterator it = g_fp->_exCommandList.begin(); it != g_fp->_exCommandList.end(); it++) { + for (Common::List::iterator it = g_nmi->_exCommandList.begin(); it != g_nmi->_exCommandList.end(); it++) { ex1 = *it; if (ex1->_messageKind != 1 && ex1->_messageKind != 20 && ex1->_messageKind != 5 && ex1->_messageKind != 27) @@ -483,7 +483,7 @@ bool MessageQueue::checkGlobalExCommandList1() { if (ex1->_param != ex->_param && ex1->_param != -1 && ex->_param != -1) continue; - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(ex1->_parId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(ex1->_parId); if (mq) { if (mq->getFlags() & 1) @@ -503,7 +503,7 @@ bool MessageQueue::checkGlobalExCommandList2() { if (ex->_messageKind != 1 && ex->_messageKind != 20 && ex->_messageKind != 5 && ex->_messageKind != 27) continue; - for (Common::List::iterator it = g_fp->_exCommandList.begin(); it != g_fp->_exCommandList.end();) { + for (Common::List::iterator it = g_nmi->_exCommandList.begin(); it != g_nmi->_exCommandList.end();) { ex1 = *it; if (ex1->_messageKind != 1 && ex1->_messageKind != 20 && ex1->_messageKind != 5 && ex1->_messageKind != 27) { @@ -521,7 +521,7 @@ bool MessageQueue::checkGlobalExCommandList2() { continue; } - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(ex1->_parId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(ex1->_parId); if (mq) { if (mq->getFlags() & 1) @@ -530,7 +530,7 @@ bool MessageQueue::checkGlobalExCommandList2() { delete mq; } - it = g_fp->_exCommandList.erase(it); + it = g_nmi->_exCommandList.erase(it); if (ex1->_excFlags & 2) { delete ex1; @@ -544,7 +544,7 @@ void MessageQueue::finish() { if (!_parId) return; - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(_parId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(_parId); _parId = 0; @@ -704,20 +704,20 @@ void GlobalMessageQueueList::clear() { } void clearGlobalMessageQueueList() { - g_fp->_globalMessageQueueList->clear(); + g_nmi->_globalMessageQueueList->clear(); } void clearGlobalMessageQueueList1() { clearMessages(); - g_fp->_globalMessageQueueList->clear(); + g_nmi->_globalMessageQueueList->clear(); } void clearMessages() { - while (g_fp->_exCommandList.size()) { - ExCommand *ex = g_fp->_exCommandList.front(); + while (g_nmi->_exCommandList.size()) { + ExCommand *ex = g_nmi->_exCommandList.front(); - g_fp->_exCommandList.pop_front(); + g_nmi->_exCommandList.pop_front(); if (ex->_excFlags & 2) delete ex; @@ -725,8 +725,8 @@ void clearMessages() { } bool removeMessageHandler(int16 id, int pos) { - if (g_fp->_messageHandlers) { - MessageHandler *curItem = g_fp->_messageHandlers; + if (g_nmi->_messageHandlers) { + MessageHandler *curItem = g_nmi->_messageHandlers; MessageHandler *prevItem = 0; int curPos = 0; @@ -760,13 +760,13 @@ void addMessageHandler(int (*callback)(ExCommand *), int16 id) { if (getMessageHandlerById(id)) return; - MessageHandler *curItem = g_fp->_messageHandlers; + MessageHandler *curItem = g_nmi->_messageHandlers; if (!curItem) return; int index = 0; - for (MessageHandler *i = g_fp->_messageHandlers->nextItem; i; i = i->nextItem) { + for (MessageHandler *i = g_nmi->_messageHandlers->nextItem; i; i = i->nextItem) { curItem = i; index++; } @@ -778,7 +778,7 @@ void addMessageHandler(int (*callback)(ExCommand *), int16 id) { } MessageHandler *getMessageHandlerById(int16 id) { - MessageHandler *curItem = g_fp->_messageHandlers; + MessageHandler *curItem = g_nmi->_messageHandlers; if (!curItem) return 0; @@ -808,7 +808,7 @@ bool allocMessageHandler(MessageHandler *where, int16 id, int (*callback)(ExComm msg->callback = callback; msg->index = 0; - g_fp->_messageHandlers = msg; + g_nmi->_messageHandlers = msg; } return true; @@ -816,7 +816,7 @@ bool allocMessageHandler(MessageHandler *where, int16 id, int (*callback)(ExComm int getMessageHandlersCount() { int result; - MessageHandler *curItem = g_fp->_messageHandlers; + MessageHandler *curItem = g_nmi->_messageHandlers; for (result = 0; curItem; result++) curItem = curItem->nextItem; @@ -829,7 +829,7 @@ bool addMessageHandlerByIndex(int (*callback)(ExCommand *), int index, int16 id) return false; if (index) { - MessageHandler *curItem = g_fp->_messageHandlers; + MessageHandler *curItem = g_nmi->_messageHandlers; for (int i = index - 1; i > 0; i--) if (curItem) @@ -847,13 +847,13 @@ bool addMessageHandlerByIndex(int (*callback)(ExCommand *), int index, int16 id) } else { MessageHandler *newItem = new MessageHandler; - newItem->nextItem = g_fp->_messageHandlers; + newItem->nextItem = g_nmi->_messageHandlers; newItem->id = id; newItem->callback = callback; newItem->index = 0; - updateMessageHandlerIndex(g_fp->_messageHandlers, 1); - g_fp->_messageHandlers = newItem; + updateMessageHandlerIndex(g_nmi->_messageHandlers, 1); + g_nmi->_messageHandlers = newItem; return true; } @@ -863,7 +863,7 @@ bool insertMessageHandler(int (*callback)(ExCommand *), int index, int16 id) { if (getMessageHandlerById(id)) return false; - MessageHandler *curItem = g_fp->_messageHandlers; + MessageHandler *curItem = g_nmi->_messageHandlers; for (int i = index; i > 0; i--) if (curItem) @@ -880,7 +880,7 @@ void clearMessageHandlers() { MessageHandler *curItem; MessageHandler *nextItem; - curItem = g_fp->_messageHandlers; + curItem = g_nmi->_messageHandlers; if (curItem) { do { nextItem = curItem->nextItem; @@ -890,32 +890,32 @@ void clearMessageHandlers() { curItem = nextItem; } while (nextItem); - g_fp->_messageHandlers = 0; + g_nmi->_messageHandlers = 0; } } void processMessages() { - if (!g_fp->_isProcessingMessages) { - g_fp->_isProcessingMessages = true; + if (!g_nmi->_isProcessingMessages) { + g_nmi->_isProcessingMessages = true; - while (g_fp->_exCommandList.size()) { - ExCommand *ex = g_fp->_exCommandList.front(); - g_fp->_exCommandList.pop_front(); + while (g_nmi->_exCommandList.size()) { + ExCommand *ex = g_nmi->_exCommandList.front(); + g_nmi->_exCommandList.pop_front(); ex->handleMessage(); } - g_fp->_isProcessingMessages = false; + g_nmi->_isProcessingMessages = false; } } void updateGlobalMessageQueue(int id, int objid) { - MessageQueue *m = g_fp->_globalMessageQueueList->getMessageQueueById(id); + MessageQueue *m = g_nmi->_globalMessageQueueList->getMessageQueueById(id); if (m) { m->update(); } } bool chainQueue(int queueId, int flags) { - MessageQueue *mq = g_fp->_currentScene->getMessageQueueById(queueId); + MessageQueue *mq = g_nmi->_currentScene->getMessageQueueById(queueId); if (!mq) return false; @@ -925,7 +925,7 @@ bool chainQueue(int queueId, int flags) { nmq->_flags |= flags; if (!nmq->chain(nullptr)) { - g_fp->_globalMessageQueueList->deleteQueueById(nmq->_id); + g_nmi->_globalMessageQueueList->deleteQueueById(nmq->_id); return false; } @@ -933,7 +933,7 @@ bool chainQueue(int queueId, int flags) { } bool chainObjQueue(StaticANIObject *obj, int queueId, int flags) { - MessageQueue *mq = g_fp->_currentScene->getMessageQueueById(queueId); + MessageQueue *mq = g_nmi->_currentScene->getMessageQueueById(queueId); if (!mq) return false; @@ -943,7 +943,7 @@ bool chainObjQueue(StaticANIObject *obj, int queueId, int flags) { nmq->_flags |= flags; if (!nmq->chain(obj)) { - g_fp->_globalMessageQueueList->deleteQueueById(nmq->_id); + g_nmi->_globalMessageQueueList->deleteQueueById(nmq->_id); return false; } diff --git a/engines/ngi/modal.cpp b/engines/ngi/modal.cpp index 07263f7c383..ad75d2871e9 100644 --- a/engines/ngi/modal.cpp +++ b/engines/ngi/modal.cpp @@ -49,17 +49,17 @@ ModalIntro::ModalIntro() { _introFlags = 33; _countDown = 150; - PictureObject *pict = g_fp->accessScene(SC_INTRO1)->getPictureObjectById(PIC_IN1_PIPETITLE, 0); + PictureObject *pict = g_nmi->accessScene(SC_INTRO1)->getPictureObjectById(PIC_IN1_PIPETITLE, 0); pict->setFlags(pict->_flags & 0xFFFB); } g_vars->sceneIntro_skipIntro = false; - _sfxVolume = g_fp->_sfxVolume; + _sfxVolume = g_nmi->_sfxVolume; } ModalIntro::~ModalIntro() { - g_fp->stopAllSounds(); - g_fp->_sfxVolume = _sfxVolume; + g_nmi->stopAllSounds(); + g_nmi->_sfxVolume = _sfxVolume; } bool ModalIntro::handleMessage(ExCommand *message) { @@ -93,7 +93,7 @@ bool ModalIntro::init(int counterdiff) { } if (_introFlags & 0x10) - g_fp->_gameLoader->updateSystems(42); + g_nmi->_gameLoader->updateSystems(42); _introFlags |= 2; @@ -103,7 +103,7 @@ bool ModalIntro::init(int counterdiff) { if (_introFlags & 4) { ModalVideoPlayer *player = new ModalVideoPlayer(); - g_fp->_modalObject = player; + g_nmi->_modalObject = player; player->_parentObj = this; player->play("intro.avi"); @@ -127,7 +127,7 @@ bool ModalIntro::init(int counterdiff) { if (_introFlags & 0x40) { ModalVideoPlayer *player = new ModalVideoPlayer(); - g_fp->_modalObject = player; + g_nmi->_modalObject = player; player->_parentObj = this; player->play("intro2.avi"); @@ -160,7 +160,7 @@ bool ModalIntro::init(int counterdiff) { _countDown = 150; _introFlags = (_introFlags & 0xf7) | 0x21; - g_fp->accessScene(SC_INTRO1)->getPictureObjectById(PIC_IN1_PIPETITLE, 0)->_flags &= 0xfffb; + g_nmi->accessScene(SC_INTRO1)->getPictureObjectById(PIC_IN1_PIPETITLE, 0)->_flags &= 0xfffb; } if (!(_introFlags & 0x20)) { @@ -168,12 +168,12 @@ bool ModalIntro::init(int counterdiff) { if (!_stillRunning) { _introFlags |= 1; - g_fp->accessScene(SC_INTRO1)->getPictureObjectById(PIC_IN1_PIPETITLE, 0)->_flags &= 0xfffb; - g_fp->accessScene(SC_INTRO1)->getPictureObjectById(PIC_IN1_GAMETITLE, 0)->_flags &= 0xfffb; + g_nmi->accessScene(SC_INTRO1)->getPictureObjectById(PIC_IN1_PIPETITLE, 0)->_flags &= 0xfffb; + g_nmi->accessScene(SC_INTRO1)->getPictureObjectById(PIC_IN1_GAMETITLE, 0)->_flags &= 0xfffb; chainQueue(QU_INTR_STARTINTRO, 1); } - g_fp->_gameLoader->updateSystems(42); + g_nmi->_gameLoader->updateSystems(42); } return true; } @@ -189,7 +189,7 @@ bool ModalIntro::init(int counterdiff) { _introFlags = (_introFlags & 0xdf) | 0x10; - g_fp->accessScene(SC_INTRO1)->getPictureObjectById(PIC_IN1_GAMETITLE, 0)->_flags &= 0xfffb; + g_nmi->accessScene(SC_INTRO1)->getPictureObjectById(PIC_IN1_GAMETITLE, 0)->_flags &= 0xfffb; _stillRunning = 0; } @@ -198,39 +198,39 @@ bool ModalIntro::init(int counterdiff) { } void ModalIntro::update() { - if (g_fp->_currentScene) { + if (g_nmi->_currentScene) { if (_introFlags & 1) { - g_fp->sceneFade(g_fp->_currentScene, true); + g_nmi->sceneFade(g_nmi->_currentScene, true); _stillRunning = 255; _introFlags &= 0xfe; if (_introFlags & 0x20) - g_fp->playSound(SND_INTR_019, 0); + g_nmi->playSound(SND_INTR_019, 0); } else if (_introFlags & 2) { if (g_vars->sceneIntro_needBlackout) { - g_fp->drawAlphaRectangle(0, 0, 800, 600, 0); + g_nmi->drawAlphaRectangle(0, 0, 800, 600, 0); g_vars->sceneIntro_needBlackout = 0; _stillRunning = 0; _introFlags &= 0xfd; } else { - g_fp->sceneFade(g_fp->_currentScene, false); + g_nmi->sceneFade(g_nmi->_currentScene, false); _stillRunning = 0; _introFlags &= 0xfd; } } else if (_stillRunning) { - g_fp->_currentScene->draw(); + g_nmi->_currentScene->draw(); } } } void ModalIntro::finish() { - g_fp->_gameLoader->unloadScene(SC_INTRO2); + g_nmi->_gameLoader->unloadScene(SC_INTRO2); - g_fp->_currentScene = g_fp->accessScene(SC_INTRO1); - g_fp->_gameLoader->preloadScene(SC_INTRO1, TrubaDown); + g_nmi->_currentScene = g_nmi->accessScene(SC_INTRO1); + g_nmi->_gameLoader->preloadScene(SC_INTRO1, TrubaDown); - if (g_fp->_currentScene) - g_fp->_gameLoader->updateSystems(42); + if (g_nmi->_currentScene) + g_nmi->_gameLoader->updateSystems(42); } ModalIntroDemo::ModalIntroDemo() { @@ -239,12 +239,12 @@ ModalIntroDemo::ModalIntroDemo() { _stillRunning = 0; _introFlags = 9; g_vars->sceneIntro_skipIntro = false; - _sfxVolume = g_fp->_sfxVolume; + _sfxVolume = g_nmi->_sfxVolume; } ModalIntroDemo::~ModalIntroDemo() { - g_fp->stopAllSounds(); - g_fp->_sfxVolume = _sfxVolume; + g_nmi->stopAllSounds(); + g_nmi->_sfxVolume = _sfxVolume; } bool ModalIntroDemo::handleMessage(ExCommand *message) { @@ -277,7 +277,7 @@ bool ModalIntroDemo::init(int counterdiff) { } if (_introFlags & 0x10) - g_fp->_gameLoader->updateSystems(42); + g_nmi->_gameLoader->updateSystems(42); _introFlags |= 2; @@ -297,7 +297,7 @@ bool ModalIntroDemo::init(int counterdiff) { _countDown = 150; _introFlags = (_introFlags & 0xf7) | 0x21; - g_fp->accessScene(SC_INTRO1)->getPictureObjectById(522, 0)->_flags &= 0xfffb; + g_nmi->accessScene(SC_INTRO1)->getPictureObjectById(522, 0)->_flags &= 0xfffb; } else { if (!(_introFlags & 0x20)) return true; @@ -322,42 +322,42 @@ bool ModalIntroDemo::init(int counterdiff) { } void ModalIntroDemo::update() { - if (g_fp->_currentScene) { + if (g_nmi->_currentScene) { if (_introFlags & 1) { if (g_vars->sceneIntro_needBlackout) { - g_fp->drawAlphaRectangle(0, 0, 800, 600, 0); + g_nmi->drawAlphaRectangle(0, 0, 800, 600, 0); g_vars->sceneIntro_needBlackout = 0; } else { - g_fp->sceneFade(g_fp->_currentScene, true); + g_nmi->sceneFade(g_nmi->_currentScene, true); } _stillRunning = 255; _introFlags &= 0xfe; if (_introFlags & 0x20) - g_fp->playSound(SND_INTR_019, 0); + g_nmi->playSound(SND_INTR_019, 0); } else if (_introFlags & 2) { if (g_vars->sceneIntro_needBlackout) { - g_fp->drawAlphaRectangle(0, 0, 800, 600, 0); + g_nmi->drawAlphaRectangle(0, 0, 800, 600, 0); g_vars->sceneIntro_needBlackout = 0; _stillRunning = 0; _introFlags &= 0xfd; } else { - g_fp->sceneFade(g_fp->_currentScene, false); + g_nmi->sceneFade(g_nmi->_currentScene, false); _stillRunning = 0; _introFlags &= 0xfd; } } else if (_stillRunning) { - g_fp->_currentScene->draw(); + g_nmi->_currentScene->draw(); } } } void ModalIntroDemo::finish() { - g_fp->_currentScene = g_fp->accessScene(SC_INTRO1); - g_fp->_gameLoader->preloadScene(SC_INTRO1, TrubaDown); + g_nmi->_currentScene = g_nmi->accessScene(SC_INTRO1); + g_nmi->_gameLoader->preloadScene(SC_INTRO1, TrubaDown); - if (g_fp->_currentScene) - g_fp->_gameLoader->updateSystems(42); + if (g_nmi->_currentScene) + g_nmi->_gameLoader->updateSystems(42); } static bool checkSkipVideo(const Common::Event &event) { @@ -388,7 +388,7 @@ void ModalVideoPlayer::play(const char *filename) { _decoder.start(); - while (!g_fp->shouldQuit() && !_decoder.endOfVideo()) { + while (!g_nmi->shouldQuit() && !_decoder.endOfVideo()) { if (_decoder.needsUpdate()) { const Graphics::Surface *frame = _decoder.decodeNextFrame(); if (frame) { @@ -397,24 +397,24 @@ void ModalVideoPlayer::play(const char *filename) { tmpFrame.reset(frame->convertTo(g_system->getScreenFormat())); frame = tmpFrame.get(); } - g_fp->_system->copyRectToScreen(frame->getPixels(), frame->pitch, + g_nmi->_system->copyRectToScreen(frame->getPixels(), frame->pitch, x, y, frame->w, frame->h); if (_decoder.hasDirtyPalette()) - g_fp->_system->getPaletteManager()->setPalette(_decoder.getPalette(), 0, 256); + g_nmi->_system->getPaletteManager()->setPalette(_decoder.getPalette(), 0, 256); - g_fp->_system->updateScreen(); + g_nmi->_system->updateScreen(); } } Common::Event event; - while (g_fp->_system->getEventManager()->pollEvent(event)) { + while (g_nmi->_system->getEventManager()->pollEvent(event)) { if (checkSkipVideo(event)) { goto finish; } } - g_fp->_system->delayMillis(_decoder.getTimeToNextFrame()); + g_nmi->_system->delayMillis(_decoder.getTimeToNextFrame()); } finish: @@ -427,9 +427,9 @@ ModalMap::ModalMap() { _picI03 = NULL; _highlightedPic = NULL; _isRunning = false; - _rect1 = g_fp->_sceneRect; - _x = g_fp->_currentScene->_x; - _y = g_fp->_currentScene->_y; + _rect1 = g_nmi->_sceneRect; + _x = g_nmi->_currentScene->_x; + _y = g_nmi->_currentScene->_y; _flag = 0; _mouseX = 0; _mouseY = 0; @@ -443,31 +443,31 @@ ModalMap::ModalMap() { } ModalMap::~ModalMap() { - g_fp->_gameLoader->unloadScene(SC_MAP); + g_nmi->_gameLoader->unloadScene(SC_MAP); - g_fp->_sceneRect = _rect1; + g_nmi->_sceneRect = _rect1; - g_fp->_currentScene->_x = _x; - g_fp->_currentScene->_y = _y; + g_nmi->_currentScene->_x = _x; + g_nmi->_currentScene->_y = _y; } bool ModalMap::init(int counterdiff) { if (_picI03) return init2(counterdiff); - g_fp->setCursor(PIC_CSR_ITN); + g_nmi->setCursor(PIC_CSR_ITN); if (_flag) { - _rect2.left = _mouseX + _dragX - g_fp->_mouseScreenPos.x; - _rect2.top = _mouseY + _dragY - g_fp->_mouseScreenPos.y; + _rect2.left = _mouseX + _dragX - g_nmi->_mouseScreenPos.x; + _rect2.top = _mouseY + _dragY - g_nmi->_mouseScreenPos.y; _rect2.right = _rect2.left + 800; _rect2.bottom = _rect2.top + 600; - g_fp->_sceneRect = _rect2; + g_nmi->_sceneRect = _rect2; _mapScene->updateScrolling2(); - _rect2 = g_fp->_sceneRect; + _rect2 = g_nmi->_sceneRect; } _hotSpotDelay--; @@ -483,44 +483,44 @@ bool ModalMap::init(int counterdiff) { } bool ModalMap::init2(int counterdiff) { - g_fp->setCursor(PIC_CSR_DEFAULT); + g_nmi->setCursor(PIC_CSR_DEFAULT); _dragX = (int)((double)_dragX * 0.6666666666666666); _dragY = (int)((double)_dragY * 0.6666666666666666); - if (800 - g_fp->_mouseScreenPos.x < 67) { - g_fp->setCursor(PIC_CSR_GOR); + if (800 - g_nmi->_mouseScreenPos.x < 67) { + g_nmi->setCursor(PIC_CSR_GOR); - _dragX = g_fp->_mouseScreenPos.x - 733; + _dragX = g_nmi->_mouseScreenPos.x - 733; _dragY = (int)((double)_dragY * 0.6666666666666666); } - if (g_fp->_mouseScreenPos.x < 67) { - g_fp->setCursor(PIC_CSR_GOL); + if (g_nmi->_mouseScreenPos.x < 67) { + g_nmi->setCursor(PIC_CSR_GOL); - this->_dragX = g_fp->_mouseScreenPos.x - 67; + this->_dragX = g_nmi->_mouseScreenPos.x - 67; this->_dragY = (int)((double)_dragY * 0.6666666666666666); } - if (g_fp->_mouseScreenPos.y < 67) { - g_fp->setCursor(PIC_CSR_GOU); + if (g_nmi->_mouseScreenPos.y < 67) { + g_nmi->setCursor(PIC_CSR_GOU); _dragX = (int)((double)_dragX * 0.6666666666666666); - _dragY = g_fp->_mouseScreenPos.y - 67; + _dragY = g_nmi->_mouseScreenPos.y - 67; } - if (600 - g_fp->_mouseScreenPos.y < 87) { - g_fp->setCursor(PIC_CSR_GOD); + if (600 - g_nmi->_mouseScreenPos.y < 87) { + g_nmi->setCursor(PIC_CSR_GOD); _dragX = (int)((double)_dragX * 0.6666666666666666); - _dragY = g_fp->_mouseScreenPos.y - 513; + _dragY = g_nmi->_mouseScreenPos.y - 513; } - g_fp->_sceneRect.translate(_dragX, _dragY); + g_nmi->_sceneRect.translate(_dragX, _dragY); _mapScene->updateScrolling2(); - _rect2 = g_fp->_sceneRect; + _rect2 = g_nmi->_sceneRect; - PictureObject *hpic = getSceneHPicture(_mapScene->getPictureObjectAtPos(g_fp->_mouseVirtX, g_fp->_mouseVirtY)); + PictureObject *hpic = getSceneHPicture(_mapScene->getPictureObjectAtPos(g_nmi->_mouseVirtX, g_nmi->_mouseVirtY)); if (hpic != _highlightedPic) { if (_highlightedPic) { @@ -533,13 +533,13 @@ bool ModalMap::init2(int counterdiff) { if (hpic) { PreloadItem pitem; - pitem.preloadId1 = g_fp->_currentScene->_sceneId; + pitem.preloadId1 = g_nmi->_currentScene->_sceneId; pitem.sceneId = findMapSceneId(hpic->_id); if (pitem.preloadId1 == pitem.sceneId || checkScenePass(&pitem)) { _highlightedPic->_flags |= 4; - g_fp->playSound(SND_CMN_070, 0); + g_nmi->playSound(SND_CMN_070, 0); } else { const Dims d1 = _picI03->getDimensions(); const Dims d2 = _highlightedPic->getDimensions(); @@ -551,7 +551,7 @@ bool ModalMap::init2(int counterdiff) { } if (this->_highlightedPic) { - g_fp->setCursor(PIC_CSR_ITN); + g_nmi->setCursor(PIC_CSR_ITN); _hotSpotDelay--; @@ -567,8 +567,8 @@ bool ModalMap::init2(int counterdiff) { } int ModalMap::findMapSceneId(int picId) { - for (uint i = 0; i < g_fp->_gameLoader->_preloadItems.size(); i++) { - PreloadItem &pitem = g_fp->_gameLoader->_preloadItems[i]; + for (uint i = 0; i < g_nmi->_gameLoader->_preloadItems.size(); i++) { + PreloadItem &pitem = g_nmi->_gameLoader->_preloadItems[i]; if (pitem.preloadId1 == SC_MAP && pitem.preloadId2 == picId) { return pitem.sceneId; @@ -580,11 +580,11 @@ int ModalMap::findMapSceneId(int picId) { void ModalMap::update() { - g_fp->_sceneRect = _rect2; + g_nmi->_sceneRect = _rect2; _mapScene->draw(); - g_fp->drawArcadeOverlay(1); + g_nmi->drawArcadeOverlay(1); } bool ModalMap::handleMessage(ExCommand *cmd) { @@ -601,8 +601,8 @@ bool ModalMap::handleMessage(ExCommand *cmd) { } _flag = 1; - _mouseX = g_fp->_mouseScreenPos.x; - _mouseY = g_fp->_mouseScreenPos.y; + _mouseX = g_nmi->_mouseScreenPos.x; + _mouseY = g_nmi->_mouseScreenPos.y; _dragX = _rect2.left; _dragY = _rect2.top; @@ -637,7 +637,7 @@ bool ModalMap::handleMessage(ExCommand *cmd) { void ModalMap::initMap() { _isRunning = 1; - _mapScene = g_fp->accessScene(SC_MAP); + _mapScene = g_nmi->accessScene(SC_MAP); if (!_mapScene) error("ModalMap::initMap(): error accessing scene SC_MAP"); @@ -645,18 +645,18 @@ void ModalMap::initMap() { PictureObject *pic; for (int i = 0; i < 200; i++) { - if (!(g_fp->_mapTable[i] >> 16)) + if (!(g_nmi->_mapTable[i] >> 16)) break; - pic = _mapScene->getPictureObjectById(g_fp->_mapTable[i] >> 16, 0); + pic = _mapScene->getPictureObjectById(g_nmi->_mapTable[i] >> 16, 0); - if ((g_fp->_mapTable[i] & 0xffff) == 1) + if ((g_nmi->_mapTable[i] & 0xffff) == 1) pic->_flags |= 4; else pic->_flags &= 0xfffb; } - pic = getScenePicture(g_fp->_currentScene->_sceneId); + pic = getScenePicture(g_nmi->_currentScene->_sceneId); if (pic) { const Dims dims = pic->getDimensions(); @@ -667,7 +667,7 @@ void ModalMap::initMap() { _rect2.right = _rect2.left + 800; _rect2.bottom = _rect2.top + 600; - g_fp->_sceneRect = _rect2; + g_nmi->_sceneRect = _rect2; _mapScene->updateScrolling2(); @@ -691,23 +691,23 @@ void ModalMap::initMap() { } g_system->warpMouse(400, 300); - g_fp->_mouseScreenPos.x = 400; - g_fp->_mouseScreenPos.y = 300; + g_nmi->_mouseScreenPos.x = 400; + g_nmi->_mouseScreenPos.y = 300; - g_fp->setArcadeOverlay(PIC_CSR_MAP); + g_nmi->setArcadeOverlay(PIC_CSR_MAP); } void ModalMap::clickButton(PictureObject *pic) { - if (g_fp->_currentScene == g_fp->_loaderScene) { + if (g_nmi->_currentScene == g_nmi->_loaderScene) { _isRunning = 0; return; } PreloadItem *pitem = nullptr; - for (uint i = 0; i < g_fp->_gameLoader->_preloadItems.size(); i++) - if (g_fp->_gameLoader->_preloadItems[i].preloadId2 == SC_MAP) { - pitem = &g_fp->_gameLoader->_preloadItems[i]; + for (uint i = 0; i < g_nmi->_gameLoader->_preloadItems.size(); i++) + if (g_nmi->_gameLoader->_preloadItems[i].preloadId2 == SC_MAP) { + pitem = &g_nmi->_gameLoader->_preloadItems[i]; break; } @@ -715,21 +715,21 @@ void ModalMap::clickButton(PictureObject *pic) { PreloadItem preload; preload.preloadId2 = SC_MAP; - g_fp->_gameLoader->addPreloadItem(preload); - pitem = &g_fp->_gameLoader->_preloadItems[g_fp->_gameLoader->_preloadItems.size() - 1]; + g_nmi->_gameLoader->addPreloadItem(preload); + pitem = &g_nmi->_gameLoader->_preloadItems[g_nmi->_gameLoader->_preloadItems.size() - 1]; } PreloadItem *pitem2 = nullptr; - for (uint i = 0; i < g_fp->_gameLoader->_preloadItems.size(); i++) - if (g_fp->_gameLoader->_preloadItems[i].preloadId1 == SC_MAP && - g_fp->_gameLoader->_preloadItems[i].preloadId2 == pic->_id) { - pitem2 = &g_fp->_gameLoader->_preloadItems[i]; + for (uint i = 0; i < g_nmi->_gameLoader->_preloadItems.size(); i++) + if (g_nmi->_gameLoader->_preloadItems[i].preloadId1 == SC_MAP && + g_nmi->_gameLoader->_preloadItems[i].preloadId2 == pic->_id) { + pitem2 = &g_nmi->_gameLoader->_preloadItems[i]; break; } if (pitem && pitem2) { - pitem->preloadId1 = g_fp->_currentScene->_sceneId; + pitem->preloadId1 = g_nmi->_currentScene->_sceneId; pitem->sceneId = pitem2->sceneId; pitem->param = pitem2->param; @@ -738,12 +738,12 @@ void ModalMap::clickButton(PictureObject *pic) { } else if (checkScenePass(pitem)) { _isRunning = 0; - if (!g_fp->isSaveAllowed()) { - //g_fp->_gameLoader->loadAndDecryptSave("savetmp.sav"); + if (!g_nmi->isSaveAllowed()) { + //g_nmi->_gameLoader->loadAndDecryptSave("savetmp.sav"); } - g_fp->_gameLoader->preloadScene(pitem->preloadId1, SC_MAP); + g_nmi->_gameLoader->preloadScene(pitem->preloadId1, SC_MAP); } else { - g_fp->playSound(SND_CMN_056, 0); + g_nmi->playSound(SND_CMN_056, 0); } } } @@ -874,7 +874,7 @@ PictureObject *ModalMap::getScenePicture(int sceneId) { if (picId) return _mapScene->getPictureObjectById(picId, 0); - error("ModalMap::getScenePicture(): Unknown scene id: %d", g_fp->_currentScene->_sceneId); + error("ModalMap::getScenePicture(): Unknown scene id: %d", g_nmi->_currentScene->_sceneId); } PictureObject *ModalMap::getSceneHPicture(PictureObject *obj) { @@ -968,12 +968,12 @@ bool ModalMap::isSceneEnabled(int sceneId) { int id = getScenePicture(sceneId)->_id; for (int i = 0; i < 200; i++) { - int mapPic = g_fp->_mapTable[i] >> 16; + int mapPic = g_nmi->_mapTable[i] >> 16; if (!mapPic) return false; if (mapPic == id) - return (g_fp->_mapTable[i] & 0xffff) == 1; + return (g_nmi->_mapTable[i] & 0xffff) == 1; } return false; @@ -997,7 +997,7 @@ bool ModalMap::checkScenePass(PreloadItem *item) { break; case SC_25: - if (g_fp->getObjectState(sO_Board_25) != g_fp->getObjectEnumState(sO_Board_25, sO_NearDudesStairs)) { + if (g_nmi->getObjectState(sO_Board_25) != g_nmi->getObjectEnumState(sO_Board_25, sO_NearDudesStairs)) { res = false; } break; @@ -1020,8 +1020,8 @@ bool ModalMap::checkScenePass(PreloadItem *item) { break; case SC_25: - if (g_fp->getObjectState(sO_Pool) != g_fp->getObjectEnumState(sO_Pool, sO_Empty)) { - if (g_fp->getObjectState(sO_Pool) != g_fp->getObjectEnumState(sO_Pool, sO_HalfFull)) + if (g_nmi->getObjectState(sO_Pool) != g_nmi->getObjectEnumState(sO_Pool, sO_Empty)) { + if (g_nmi->getObjectState(sO_Pool) != g_nmi->getObjectEnumState(sO_Pool, sO_HalfFull)) res = false; } break; @@ -1039,7 +1039,7 @@ bool ModalMap::checkScenePass(PreloadItem *item) { } if ((item->sceneId != SC_37 && item->preloadId1 != SC_37) - || (g_fp->getObjectState(sO_Jawcrucnher) != g_fp->getObjectEnumState(sO_Jawcrucnher, sO_WithoutCarpet))) { + || (g_nmi->getObjectState(sO_Jawcrucnher) != g_nmi->getObjectEnumState(sO_Jawcrucnher, sO_WithoutCarpet))) { return res; } else { res = false; @@ -1060,28 +1060,28 @@ void NGIEngine::openMap() { ModalFinal::ModalFinal() { _flags = 0; _counter = 255; - _sfxVolume = g_fp->_sfxVolume; + _sfxVolume = g_nmi->_sfxVolume; } ModalFinal::~ModalFinal() { if (g_vars->sceneFinal_var01) { - g_fp->_gameLoader->unloadScene(SC_FINAL2); - g_fp->_gameLoader->unloadScene(SC_FINAL3); - g_fp->_gameLoader->unloadScene(SC_FINAL4); + g_nmi->_gameLoader->unloadScene(SC_FINAL2); + g_nmi->_gameLoader->unloadScene(SC_FINAL3); + g_nmi->_gameLoader->unloadScene(SC_FINAL4); - g_fp->_currentScene = g_fp->accessScene(SC_FINAL1); + g_nmi->_currentScene = g_nmi->accessScene(SC_FINAL1); - g_fp->stopAllSounds(); + g_nmi->stopAllSounds(); g_vars->sceneFinal_var01 = 0; } - g_fp->_sfxVolume = _sfxVolume; + g_nmi->_sfxVolume = _sfxVolume; } bool ModalFinal::init(int counterdiff) { if (g_vars->sceneFinal_var01) { - g_fp->_gameLoader->updateSystems(42); + g_nmi->_gameLoader->updateSystems(42); return true; } @@ -1089,32 +1089,32 @@ bool ModalFinal::init(int counterdiff) { if (_counter > 0) { _flags |= 2u; - g_fp->_gameLoader->updateSystems(42); + g_nmi->_gameLoader->updateSystems(42); return true; } unloadScenes(); - g_fp->_modalObject = new ModalCredits(); + g_nmi->_modalObject = new ModalCredits(); return true; } void ModalFinal::unloadScenes() { - g_fp->_gameLoader->unloadScene(SC_FINAL2); - g_fp->_gameLoader->unloadScene(SC_FINAL3); - g_fp->_gameLoader->unloadScene(SC_FINAL4); + g_nmi->_gameLoader->unloadScene(SC_FINAL2); + g_nmi->_gameLoader->unloadScene(SC_FINAL3); + g_nmi->_gameLoader->unloadScene(SC_FINAL4); - g_fp->_currentScene = g_fp->accessScene(SC_FINAL1); + g_nmi->_currentScene = g_nmi->accessScene(SC_FINAL1); - g_fp->stopAllSounds(); + g_nmi->stopAllSounds(); } bool ModalFinal::handleMessage(ExCommand *cmd) { if (cmd->_messageKind == 17 && cmd->_messageNum == 36 && cmd->_param == 27) { - g_fp->_modalObject = new ModalMainMenu(); - g_fp->_modalObject->_parentObj = this; + g_nmi->_modalObject = new ModalMainMenu(); + g_nmi->_modalObject->_parentObj = this; return true; } @@ -1123,11 +1123,11 @@ bool ModalFinal::handleMessage(ExCommand *cmd) { } void ModalFinal::update() { - if (g_fp->_currentScene) { - g_fp->_currentScene->draw(); + if (g_nmi->_currentScene) { + g_nmi->_currentScene->draw(); if (_flags & 1) { - g_fp->drawAlphaRectangle(0, 0, 800, 600, 0xff - _counter); + g_nmi->drawAlphaRectangle(0, 0, 800, 600, 0xff - _counter); _counter += 10; @@ -1139,7 +1139,7 @@ void ModalFinal::update() { if (!(_flags & 2)) return; - g_fp->drawAlphaRectangle(0, 0, 800, 600, 0xff - _counter); + g_nmi->drawAlphaRectangle(0, 0, 800, 600, 0xff - _counter); _counter -= 10; if (_counter <= 0) { @@ -1148,14 +1148,14 @@ void ModalFinal::update() { } } - g_fp->_sfxVolume = _counter * (_sfxVolume + 3000) / 255 - 3000; + g_nmi->_sfxVolume = _counter * (_sfxVolume + 3000) / 255 - 3000; - g_fp->updateSoundVolume(); + g_nmi->updateSoundVolume(); } } ModalCredits::ModalCredits() { - _sceneTitles = g_fp->accessScene(SC_TITLES); + _sceneTitles = g_nmi->accessScene(SC_TITLES); _creditsPic = _sceneTitles->getPictureObjectById(PIC_TTL_CREDITS, 0); _creditsPic->_flags |= 4; @@ -1166,7 +1166,7 @@ ModalCredits::ModalCredits() { const Dims dims = _creditsPic->getDimensions(); _countdown = dims.y / 2 + 470; - _sfxVolume = g_fp->_sfxVolume; + _sfxVolume = g_nmi->_sfxVolume; _currY = 630; _maxY = -1000 - dims.y; @@ -1177,9 +1177,9 @@ ModalCredits::ModalCredits() { } ModalCredits::~ModalCredits() { - g_fp->_gameLoader->unloadScene(SC_TITLES); + g_nmi->_gameLoader->unloadScene(SC_TITLES); - g_fp->_sfxVolume = _sfxVolume; + g_nmi->_sfxVolume = _sfxVolume; } bool ModalCredits::handleMessage(ExCommand *cmd) { @@ -1209,7 +1209,7 @@ bool ModalCredits::init(int counterdiff) { ModalMainMenu *menu = new ModalMainMenu; - g_fp->_modalObject = menu; + g_nmi->_modalObject = menu; menu->_mfield_34 = 1; } @@ -1225,14 +1225,14 @@ void ModalCredits::update() { return; } } else if (_fadeIn) { - g_fp->sceneFade(_sceneTitles, true); + g_nmi->sceneFade(_sceneTitles, true); _fadeOut = 1; return; } if (_fadeOut) { - g_fp->sceneFade(_sceneTitles, false); + g_nmi->sceneFade(_sceneTitles, false); _fadeOut = 0; return; } @@ -1244,26 +1244,26 @@ ModalMainMenu::ModalMainMenu() { _lastArea = 0; _hoverAreaId = 0; _mfield_34 = 0; - _scene = g_fp->accessScene(SC_MAINMENU); + _scene = g_nmi->accessScene(SC_MAINMENU); _debugKeyCount = 0; _sliderOffset = 0; - _screct.left = g_fp->_sceneRect.left; - _screct.top = g_fp->_sceneRect.top; - _screct.right = g_fp->_sceneRect.right; - _screct.bottom = g_fp->_sceneRect.bottom; + _screct.left = g_nmi->_sceneRect.left; + _screct.top = g_nmi->_sceneRect.top; + _screct.right = g_nmi->_sceneRect.right; + _screct.bottom = g_nmi->_sceneRect.bottom; - if (g_fp->_currentScene) { - _bgX = g_fp->_currentScene->_x; - _bgY = g_fp->_currentScene->_y; + if (g_nmi->_currentScene) { + _bgX = g_nmi->_currentScene->_x; + _bgY = g_nmi->_currentScene->_y; } else { _bgX = 0; _bgY = 0; } - g_fp->_sceneRect.top = 0; - g_fp->_sceneRect.left = 0; - g_fp->_sceneRect.right = 800; - g_fp->_sceneRect.bottom = 600; + g_nmi->_sceneRect.top = 0; + g_nmi->_sceneRect.left = 0; + g_nmi->_sceneRect.right = 800; + g_nmi->_sceneRect.bottom = 600; MenuArea *area; @@ -1331,7 +1331,7 @@ ModalMainMenu::ModalMainMenu() { _musicSliderIdx = _areas.size() - 1; - if (g_fp->_mainMenu_debugEnabled) + if (g_nmi->_mainMenu_debugEnabled) enableDebugMenuButton(); setSliderPos(); @@ -1398,9 +1398,9 @@ bool ModalMainMenu::handleMessage(ExCommand *message) { bool ModalMainMenu::init(int counterdiff) { switch (_hoverAreaId) { case PIC_MNU_RESTART_L: - g_fp->restartGame(); + g_nmi->restartGame(); - if (this == g_fp->_modalObject) + if (this == g_nmi->_modalObject) return false; delete this; @@ -1410,7 +1410,7 @@ bool ModalMainMenu::init(int counterdiff) { { ModalQuery *mq = new ModalQuery(); - g_fp->_modalObject = mq; + g_nmi->_modalObject = mq; mq->_parentObj = this; mq->create(_scene, _scene, PIC_MEX_BGR); @@ -1421,46 +1421,46 @@ bool ModalMainMenu::init(int counterdiff) { } case PIC_MNU_DEBUG_L: - g_fp->_gameLoader->unloadScene(SC_MAINMENU); + g_nmi->_gameLoader->unloadScene(SC_MAINMENU); _scene = nullptr; - g_fp->_sceneRect = _screct; + g_nmi->_sceneRect = _screct; - if (!g_fp->_currentScene) + if (!g_nmi->_currentScene) error("ModalMainMenu::init: Bad state"); - g_fp->_currentScene->_x = _bgX; - g_fp->_currentScene->_y = _bgY; + g_nmi->_currentScene->_x = _bgX; + g_nmi->_currentScene->_y = _bgY; - g_fp->_gameLoader->preloadScene(g_fp->_currentScene->_sceneId, SC_DBGMENU); + g_nmi->_gameLoader->preloadScene(g_nmi->_currentScene->_sceneId, SC_DBGMENU); return false; case PIC_MNU_CONTINUE_L: if (!_mfield_34) { - g_fp->_gameLoader->unloadScene(SC_MAINMENU); + g_nmi->_gameLoader->unloadScene(SC_MAINMENU); _areas.clear(); _scene = nullptr; - g_fp->_sceneRect = _screct; + g_nmi->_sceneRect = _screct; - if (g_fp->_currentScene) { - g_fp->_currentScene->_x = _bgX; - g_fp->_currentScene->_y = _bgY; + if (g_nmi->_currentScene) { + g_nmi->_currentScene->_x = _bgX; + g_nmi->_currentScene->_y = _bgY; } return false; } - g_fp->restartGame(); + g_nmi->restartGame(); - if (this == g_fp->_modalObject) + if (this == g_nmi->_modalObject) return false; delete this; break; case PIC_MNU_AUTHORS_L: - g_fp->_modalObject = new ModalCredits(); - g_fp->_modalObject->_parentObj = this; + g_nmi->_modalObject = new ModalCredits(); + g_nmi->_modalObject->_parentObj = this; _hoverAreaId = 0; @@ -1471,15 +1471,15 @@ bool ModalMainMenu::init(int counterdiff) { { ModalSaveGame *sg = new ModalSaveGame(); - g_fp->_modalObject = sg; - g_fp->_modalObject->_parentObj = _parentObj; + g_nmi->_modalObject = sg; + g_nmi->_modalObject->_parentObj = _parentObj; int mode = 0; if (_hoverAreaId == PIC_MNU_SAVE_L) mode = 1; - sg->setup(g_fp->accessScene(SC_MAINMENU), mode); - sg->setScene(g_fp->accessScene(SC_MAINMENU)); + sg->setup(g_nmi->accessScene(SC_MAINMENU), mode); + sg->setScene(g_nmi->accessScene(SC_MAINMENU)); sg->_rect = _screct; sg->_oldBgX = _bgX; @@ -1494,23 +1494,23 @@ bool ModalMainMenu::init(int counterdiff) { if (_lastArea) { updateSliderPos(); } else { - g_fp->_cursorId = PIC_CSR_DEFAULT; + g_nmi->_cursorId = PIC_CSR_DEFAULT; - int idx = checkHover(g_fp->_mouseScreenPos); + int idx = checkHover(g_nmi->_mouseScreenPos); if (idx < 0) goto LABEL_40; - g_fp->_cursorId = PIC_CSR_DEFAULT; + g_nmi->_cursorId = PIC_CSR_DEFAULT; if (idx != this->_menuSliderIdx && idx != this->_musicSliderIdx ) goto LABEL_40; } - g_fp->_cursorId = PIC_CSR_LIFT; + g_nmi->_cursorId = PIC_CSR_LIFT; LABEL_40: - g_fp->setCursor(g_fp->_cursorId); + g_nmi->setCursor(g_nmi->_cursorId); updateVolume(); @@ -1521,10 +1521,10 @@ bool ModalMainMenu::init(int counterdiff) { } void ModalMainMenu::updateVolume() { - if (g_fp->_soundEnabled) { - for (int s = 0; s < g_fp->_currSoundListCount; s++) - for (int i = 0; i < g_fp->_currSoundList1[s]->getCount(); i++) { - updateSoundVolume(g_fp->_currSoundList1[s]->getSoundByIndex(i)); + if (g_nmi->_soundEnabled) { + for (int s = 0; s < g_nmi->_currSoundListCount; s++) + for (int i = 0; i < g_nmi->_currSoundList1[s]->getCount(); i++) { + updateSoundVolume(g_nmi->_currSoundList1[s]->getSoundByIndex(i)); } } } @@ -1533,7 +1533,7 @@ void ModalMainMenu::updateSoundVolume(Sound &snd) { if (!snd._objectId) return; - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(snd._objectId, -1); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(snd._objectId, -1); if (!ani) return; @@ -1547,7 +1547,7 @@ void ModalMainMenu::updateSoundVolume(Sound &snd) { if (ani->_oy <= _screct.bottom) { if (ani->_oy >= _screct.top) { - snd.setPanAndVolume(g_fp->_sfxVolume, 0); + snd.setPanAndVolume(g_nmi->_sfxVolume, 0); return; } @@ -1564,7 +1564,7 @@ void ModalMainMenu::updateSoundVolume(Sound &snd) { } pan = -3500; - a = g_fp->_sfxVolume - (-3500); + a = g_nmi->_sfxVolume - (-3500); b = 800 - dx; } else { int dx = ani->_ox - _screct.right; @@ -1576,7 +1576,7 @@ void ModalMainMenu::updateSoundVolume(Sound &snd) { pan = -3500; par = dx * (-3500) / -800; - a = g_fp->_sfxVolume - (-3500); + a = g_nmi->_sfxVolume - (-3500); b = 800 - dx; } @@ -1589,11 +1589,11 @@ void ModalMainMenu::updateSoundVolume(Sound &snd) { int dx = _screct.left - ani->_ox; if (dx <= 800) { - int32 s = (800 - dx) * (g_fp->_sfxVolume - (-3500)); + int32 s = (800 - dx) * (g_nmi->_sfxVolume - (-3500)); int32 p = -3500 + s / 800; - if (p > g_fp->_sfxVolume) - p = g_fp->_sfxVolume; + if (p > g_nmi->_sfxVolume) + p = g_nmi->_sfxVolume; snd.setPanAndVolume(p, dx * (-3500) / 800); } else { @@ -1603,7 +1603,7 @@ void ModalMainMenu::updateSoundVolume(Sound &snd) { void ModalMainMenu::updateSliderPos() { if (_lastArea->picIdL == PIC_MNU_SLIDER_L) { - int x = g_fp->_mouseScreenPos.x + _sliderOffset; + int x = g_nmi->_mouseScreenPos.x + _sliderOffset; if (x >= 65) { if (x > 238) @@ -1616,14 +1616,14 @@ void ModalMainMenu::updateSliderPos() { _lastArea->picObjL->setOXY(x, _lastArea->picObjD->_oy); int vol = 1000 * (3 * x - 195); - g_fp->_sfxVolume = vol / 173 - 3000; + g_nmi->_sfxVolume = vol / 173 - 3000; if (!(vol / 173)) - g_fp->_sfxVolume = -10000; + g_nmi->_sfxVolume = -10000; - g_fp->updateSoundVolume(); + g_nmi->updateSoundVolume(); } else if (_lastArea->picIdL == PIC_MNU_MUSICSLIDER_L) { - int x = g_fp->_mouseScreenPos.x + _sliderOffset; + int x = g_nmi->_mouseScreenPos.x + _sliderOffset; if (x >= 65) { if (x > 238) @@ -1635,7 +1635,7 @@ void ModalMainMenu::updateSliderPos() { _lastArea->picObjD->setOXY(x, _lastArea->picObjD->_oy); _lastArea->picObjL->setOXY(x, _lastArea->picObjD->_oy); - g_fp->setMusicVolume(255 * (x - 65) / 173); + g_nmi->setMusicVolume(255 * (x - 65) / 173); } } @@ -1680,13 +1680,13 @@ bool ModalMainMenu::isOverArea(PictureObject *obj, Common::Point *point) { } bool ModalMainMenu::isSaveAllowed() { - if (!g_fp->_isSaveAllowed) + if (!g_nmi->_isSaveAllowed) return false; - if (g_fp->_aniMan->_flags & 0x100) + if (g_nmi->_aniMan->_flags & 0x100) return false; - for (Common::Array::iterator s = g_fp->_globalMessageQueueList->begin(); s != g_fp->_globalMessageQueueList->end(); ++s) { + for (Common::Array::iterator s = g_nmi->_globalMessageQueueList->begin(); s != g_nmi->_globalMessageQueueList->end(); ++s) { if (!(*s)->_isFinished && ((*s)->getFlags() & 1)) return false; } @@ -1721,11 +1721,11 @@ void ModalMainMenu::enableDebugMenuButton() { area->picObjL = _scene->getPictureObjectById(area->picIdL, 0); area->picObjL->_flags &= 0xFFFB; - g_fp->_mainMenu_debugEnabled = true; + g_nmi->_mainMenu_debugEnabled = true; } void ModalMainMenu::setSliderPos() { - int x = 173 * (g_fp->_sfxVolume + 3000) / 3000 + 65; + int x = 173 * (g_nmi->_sfxVolume + 3000) / 3000 + 65; PictureObject *obj = _areas[_menuSliderIdx].picObjD; if (x >= 65) { @@ -1738,7 +1738,7 @@ void ModalMainMenu::setSliderPos() { obj->setOXY(x, obj->_oy); _areas[_menuSliderIdx].picObjL->setOXY(x, obj->_oy); - x = 173 * g_fp->_musicVolume / 255 + 65; + x = 173 * g_nmi->_musicVolume / 255 + 65; obj = _areas[_musicSliderIdx].picObjD; if (x >= 65) { @@ -1756,23 +1756,23 @@ ModalHelp::ModalHelp() { _mainMenuScene = 0; _bg = 0; _isRunning = false; - _rect = g_fp->_sceneRect; - _hx = g_fp->_currentScene->_x; - _hy = g_fp->_currentScene->_y; + _rect = g_nmi->_sceneRect; + _hx = g_nmi->_currentScene->_x; + _hy = g_nmi->_currentScene->_y; - g_fp->_sceneRect.left = 0; - g_fp->_sceneRect.bottom = 600; - g_fp->_sceneRect.top = 0; - g_fp->_sceneRect.right = 800; + g_nmi->_sceneRect.left = 0; + g_nmi->_sceneRect.bottom = 600; + g_nmi->_sceneRect.top = 0; + g_nmi->_sceneRect.right = 800; } ModalHelp::~ModalHelp() { - g_fp->_gameLoader->unloadScene(SC_MAINMENU); + g_nmi->_gameLoader->unloadScene(SC_MAINMENU); - g_fp->_sceneRect = _rect; + g_nmi->_sceneRect = _rect; - g_fp->_currentScene->_x = _hx; - g_fp->_currentScene->_y = _hy; + g_nmi->_currentScene->_x = _hx; + g_nmi->_currentScene->_y = _hy; } bool ModalHelp::handleMessage(ExCommand *cmd) { @@ -1790,25 +1790,25 @@ bool ModalHelp::handleMessage(ExCommand *cmd) { } bool ModalHelp::init(int counterdiff) { - g_fp->setCursor(PIC_CSR_DEFAULT); + g_nmi->setCursor(PIC_CSR_DEFAULT); return _isRunning; } void ModalHelp::update() { - g_fp->_sceneRect.left = 0; - g_fp->_sceneRect.top = 0; - g_fp->_sceneRect.right = 800; - g_fp->_sceneRect.bottom = 600; + g_nmi->_sceneRect.left = 0; + g_nmi->_sceneRect.top = 0; + g_nmi->_sceneRect.right = 800; + g_nmi->_sceneRect.bottom = 600; _bg->draw(0, 0, 0, 0); } void ModalHelp::launch() { - _mainMenuScene = g_fp->accessScene(SC_MAINMENU); + _mainMenuScene = g_nmi->accessScene(SC_MAINMENU); if (_mainMenuScene) { - if (g_fp->isDemo() && g_fp->getLanguage() == Common::RU_RUS) + if (g_nmi->isDemo() && g_nmi->getLanguage() == Common::RU_RUS) _bg = _mainMenuScene->getPictureObjectById(364, 0)->_picture; else _bg = _mainMenuScene->getPictureObjectById(PIC_HLP_BGR, 0)->_picture; @@ -1831,7 +1831,7 @@ ModalQuery::~ModalQuery() { } bool ModalQuery::create(Scene *sc, Scene *bgScene, int id) { - if (g_fp->isDemo() && g_fp->getLanguage() == Common::RU_RUS) { + if (g_nmi->isDemo() && g_nmi->getLanguage() == Common::RU_RUS) { _bg = sc->getPictureObjectById(386, 0); if (!_bg) @@ -1910,13 +1910,13 @@ void ModalQuery::update() { bool ModalQuery::handleMessage(ExCommand *cmd) { if (cmd->_messageKind == 17) { if (cmd->_messageNum == 29) { - if (_okBtn->isPointInside(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y)) { + if (_okBtn->isPointInside(g_nmi->_mouseScreenPos.x, g_nmi->_mouseScreenPos.y)) { _queryResult = 1; return false; } - if (_cancelBtn->isPointInside(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y)) + if (_cancelBtn->isPointInside(g_nmi->_mouseScreenPos.x, g_nmi->_mouseScreenPos.y)) _queryResult = 0; } else if (cmd->_messageNum == 36 && cmd->_param == 27) { _queryResult = 0; @@ -1929,12 +1929,12 @@ bool ModalQuery::handleMessage(ExCommand *cmd) { } bool ModalQuery::init(int counterdiff) { - if (_okBtn->isPointInside(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y)) + if (_okBtn->isPointInside(g_nmi->_mouseScreenPos.x, g_nmi->_mouseScreenPos.y)) _okBtn->_flags |= 4; else _okBtn->_flags &= 0xFFFB; - if (_cancelBtn->isPointInside(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y)) + if (_cancelBtn->isPointInside(g_nmi->_mouseScreenPos.x, g_nmi->_mouseScreenPos.y)) _cancelBtn->_flags |= 4; else _cancelBtn->_flags &= 0xFFFB; @@ -1942,14 +1942,14 @@ bool ModalQuery::init(int counterdiff) { if (_queryResult == -1) { return true; } else { - if (g_fp->isDemo() && g_fp->getLanguage() == Common::RU_RUS) { + if (g_nmi->isDemo() && g_nmi->getLanguage() == Common::RU_RUS) { if (!_queryResult) return false; ModalDemo *demo = new ModalDemo; demo->launch(); - g_fp->_modalObject = demo; + g_nmi->_modalObject = demo; return true; } @@ -1960,9 +1960,9 @@ bool ModalQuery::init(int counterdiff) { if (_queryResult == 1) { if (_bgScene) - g_fp->sceneFade(_bgScene, false); + g_nmi->sceneFade(_bgScene, false); - g_fp->_gameContinue = false; + g_nmi->_gameContinue = false; return false; } @@ -1987,7 +1987,7 @@ ModalSaveGame::ModalSaveGame() { _fullL = 0; _menuScene = 0; _queryRes = -1; - _rect = g_fp->_sceneRect; + _rect = g_nmi->_sceneRect; _queryDlg = 0; _mode = 1; @@ -1995,7 +1995,7 @@ ModalSaveGame::ModalSaveGame() { } ModalSaveGame::~ModalSaveGame() { - g_fp->_sceneRect = _rect; + g_nmi->_sceneRect = _rect; } void ModalSaveGame::setScene(Scene *sc) { @@ -2024,17 +2024,17 @@ bool ModalSaveGame::init(int counterdiff) { if (_queryRes == -1) return true; - g_fp->_sceneRect = _rect; + g_nmi->_sceneRect = _rect; - if (g_fp->_currentScene) { - g_fp->_currentScene->_x = _oldBgX; - g_fp->_currentScene->_y = _oldBgY; + if (g_nmi->_currentScene) { + g_nmi->_currentScene->_x = _oldBgX; + g_nmi->_currentScene->_y = _oldBgY; } if (!_queryRes) { ModalMainMenu *m = new ModalMainMenu; - g_fp->_modalObject = m; + g_nmi->_modalObject = m; m->_parentObj = _parentObj; m->_screct = _rect; @@ -2204,13 +2204,13 @@ void ModalSaveGame::update() { return; } - g_fp->_cursorId = PIC_CSR_DEFAULT; + g_nmi->_cursorId = PIC_CSR_DEFAULT; - g_fp->setCursor(g_fp->_cursorId); + g_nmi->setCursor(g_nmi->_cursorId); for (uint i = 0; i < _files.size(); i++) { - if (g_fp->_mouseScreenPos.x < _files[i].fx1 || g_fp->_mouseScreenPos.x > _files[i].fx2 || - g_fp->_mouseScreenPos.y < _files[i].fy1 || g_fp->_mouseScreenPos.y > _files[i].fy2 ) { + if (g_nmi->_mouseScreenPos.x < _files[i].fx1 || g_nmi->_mouseScreenPos.x > _files[i].fx2 || + g_nmi->_mouseScreenPos.y < _files[i].fy1 || g_nmi->_mouseScreenPos.y > _files[i].fy2 ) { if (_files[i].empty) { _emptyD->setOXY(_files[i].fx1, _files[i].fy1); _emptyD->draw(); @@ -2240,9 +2240,9 @@ void ModalSaveGame::update() { } } } - if (_cancelL->isPixelHitAtPos(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y)) + if (_cancelL->isPixelHitAtPos(g_nmi->_mouseScreenPos.x, g_nmi->_mouseScreenPos.y)) _cancelL->draw(); - else if (_okL->isPixelHitAtPos(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y)) + else if (_okL->isPixelHitAtPos(g_nmi->_mouseScreenPos.x, g_nmi->_mouseScreenPos.y)) _okL->draw(); } @@ -2287,13 +2287,13 @@ void ModalSaveGame::saveload() { if (getSaveName()) { bool allowed = true; - for (Common::Array::iterator s = g_fp->_globalMessageQueueList->begin(); s != g_fp->_globalMessageQueueList->end(); ++s) { + for (Common::Array::iterator s = g_nmi->_globalMessageQueueList->begin(); s != g_nmi->_globalMessageQueueList->end(); ++s) { if (!(*s)->_isFinished && ((*s)->getFlags() & 1)) allowed = false; } - if (g_fp->_isSaveAllowed && allowed) - g_fp->_gameLoader->writeSavegame(g_fp->_currentScene, getSaveName(), ""); + if (g_nmi->_isSaveAllowed && allowed) + g_nmi->_gameLoader->writeSavegame(g_nmi->_currentScene, getSaveName(), ""); } } else { if (getSaveName()) { @@ -2303,10 +2303,10 @@ void ModalSaveGame::saveload() { _parentObj = 0; } - g_fp->stopAllSoundStreams(); - g_fp->stopSoundStream2(); + g_nmi->stopAllSoundStreams(); + g_nmi->stopSoundStream2(); - g_fp->_gameLoader->readSavegame(getSaveName()); + g_nmi->_gameLoader->readSavegame(getSaveName()); } } } @@ -2316,7 +2316,7 @@ ModalDemo::ModalDemo() { _button = 0; _text = 0; - if (g_fp->getLanguage() == Common::RU_RUS) { + if (g_nmi->getLanguage() == Common::RU_RUS) { _clickedQuit = 0; _countdown = -10; } else { @@ -2335,9 +2335,9 @@ ModalDemo::~ModalDemo() { } bool ModalDemo::launch() { - Scene *sc = g_fp->accessScene(SC_MAINMENU); + Scene *sc = g_nmi->accessScene(SC_MAINMENU); - if (g_fp->getLanguage() == Common::RU_RUS) { + if (g_nmi->getLanguage() == Common::RU_RUS) { _scene = sc; for (uint i = 1; i < sc->_picObjList.size(); i++) { @@ -2369,32 +2369,32 @@ bool ModalDemo::launch() { warning("STUB: ModelDemo: fadeout"); update(); - g_fp->stopAllSoundStreams(); - g_fp->stopAllSounds(); - g_fp->playSound(SND_CMN_056, 0); - g_fp->playSound(SND_CMN_069, 1); + g_nmi->stopAllSoundStreams(); + g_nmi->stopAllSounds(); + g_nmi->playSound(SND_CMN_056, 0); + g_nmi->playSound(SND_CMN_069, 1); return true; } bool ModalDemo::init(int counterDiff) { - if (g_fp->getLanguage() == Common::RU_RUS) + if (g_nmi->getLanguage() == Common::RU_RUS) return init2(counterDiff); - g_fp->_cursorId = PIC_CSR_DEFAULT; + g_nmi->_cursorId = PIC_CSR_DEFAULT; - if (_button->isPointInside(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y)) { + if (_button->isPointInside(g_nmi->_mouseScreenPos.x, g_nmi->_mouseScreenPos.y)) { if (!(_button->_flags & 4)) - g_fp->playSound(SND_CMN_070, 0); + g_nmi->playSound(SND_CMN_070, 0); _button->_flags |= 4; - g_fp->_cursorId = PIC_CSR_ITN; + g_nmi->_cursorId = PIC_CSR_ITN; } else { _button->_flags &= 0xFFFB; } - g_fp->setCursor(g_fp->_cursorId); + g_nmi->setCursor(g_nmi->_cursorId); _countdown -= counterDiff; @@ -2406,7 +2406,7 @@ bool ModalDemo::init(int counterDiff) { g_system->openUrl("http://www.amazon.de/EuroVideo-Bildprogramm-GmbH-Full-Pipe/dp/B003TO51YE/ref=sr_1_1"); - g_fp->_gameContinue = false; + g_nmi->_gameContinue = false; return false; } @@ -2415,7 +2415,7 @@ bool ModalDemo::init2(int counterDiff) { if (_clickedQuit) { g_system->openUrl("http://pipestudio.ru/fullpipe/"); - g_fp->_gameContinue = false; + g_nmi->_gameContinue = false; return false; } @@ -2427,23 +2427,23 @@ bool ModalDemo::init2(int counterDiff) { _countdown = 24; } - if (_button->isPointInside(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y)) { + if (_button->isPointInside(g_nmi->_mouseScreenPos.x, g_nmi->_mouseScreenPos.y)) { _button->_flags |= 4; - g_fp->_cursorId = PIC_CSR_ITN; + g_nmi->_cursorId = PIC_CSR_ITN; } else { _button->_flags &= 0xFFFB; - g_fp->_cursorId = PIC_CSR_DEFAULT; + g_nmi->_cursorId = PIC_CSR_DEFAULT; } return true; } void ModalDemo::update() { - if (g_fp->getLanguage() == Common::RU_RUS) { + if (g_nmi->getLanguage() == Common::RU_RUS) { if (_countdown == -10) - g_fp->sceneFade(_scene, true); + g_nmi->sceneFade(_scene, true); _scene->draw(); @@ -2464,9 +2464,9 @@ bool ModalDemo::handleMessage(ExCommand *cmd) { return false; if (cmd->_messageNum == 29) { - if (_button->isPointInside(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y)) + if (_button->isPointInside(g_nmi->_mouseScreenPos.x, g_nmi->_mouseScreenPos.y)) _clickedQuit = 1; - } else if (cmd->_messageNum == 36 && (cmd->_param == 27 || g_fp->getLanguage() == Common::RU_RUS)) { + } else if (cmd->_messageNum == 36 && (cmd->_param == 27 || g_nmi->getLanguage() == Common::RU_RUS)) { _clickedQuit = 1; } @@ -2491,15 +2491,15 @@ void NGIEngine::openMainMenu() { q->create(sc, 0, 0); - g_fp->_modalObject = q; + g_nmi->_modalObject = q; return; } ModalMainMenu *menu = new ModalMainMenu; - menu->_parentObj = g_fp->_modalObject; + menu->_parentObj = g_nmi->_modalObject; - g_fp->_modalObject = menu; + g_nmi->_modalObject = menu; } } // End of namespace NGI diff --git a/engines/ngi/motion.cpp b/engines/ngi/motion.cpp index 4e59f5facc2..432ef2cc2a1 100644 --- a/engines/ngi/motion.cpp +++ b/engines/ngi/motion.cpp @@ -387,7 +387,7 @@ int MctlLadder::findObjectPos(StaticANIObject *obj) { bool MctlLadder::initMovement(StaticANIObject *ani, MctlLadderMovement *movement) { debugC(4, kDebugPathfinding, "MctlLadder::initMovement(*%d, ...)", ani->_id); - GameVar *v = g_fp->getGameLoaderGameVar()->getSubVarByName(ani->getName()); + GameVar *v = g_nmi->getGameLoaderGameVar()->getSubVarByName(ani->getName()); if (!v) return false; @@ -945,7 +945,7 @@ MessageQueue *MovGraph::startMove(StaticANIObject *ani, int xpos, int ypos, int if ((ex->_messageKind != 1 && ex->_messageKind != 20) || ex->_messageNum != ani->_movement->_id || (ex->_z >= 1 && ex->_z <= ani->_movement->_currDynamicPhaseIndex)) { - mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); ex = new ExCommand(ani->_id, 21, 0, 0, 0, 0, 1, 0, 0, 0); ex->_param = ani->_odelay; @@ -1708,7 +1708,7 @@ bool MctlGraph::fillData(StaticANIObject *obj, MctlAni &item) { item._obj = obj; item._objectId = obj->_id; - GameVar *var = g_fp->getGameLoaderGameVar()->getSubVarByName(obj->_objectName); + GameVar *var = g_nmi->getGameLoaderGameVar()->getSubVarByName(obj->_objectName); if (!var) return false; @@ -1968,7 +1968,7 @@ MessageQueue *MctlGraph::makeWholeQueue(MctlMQ &mctlMQ) { int curY = mctlMQ.pt1.y; int curDistance = mctlMQ.distance1; - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); int numItems = mctlMQ.items.size(); @@ -2214,7 +2214,7 @@ MessageQueue *MctlGraph::makeQueue(StaticANIObject *obj, int xpos, int ypos, int } if (obj->_ox == xpos && obj->_oy == ypos) { - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); if (staticsId && obj->_statics->_staticsId != staticsId) { int idxwalk = getDirByStatics(idx, staticsId); @@ -2568,7 +2568,7 @@ MessageQueue *MctlGraph::makeLineQueue(MctlMQ *info) { else x2.y = 0; - MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact()); + MessageQueue *mq = new MessageQueue(g_nmi->_globalMessageQueueList->compact()); ExCommand *ex; if (info->flags & 2) { @@ -3084,13 +3084,13 @@ int startWalkTo(int objId, int objKey, int x, int y, int fuzzyMatch) { MctlCompound *mc = getCurrSceneSc2MotionController(); if (mc) - return (mc->startMove(g_fp->_currentScene->getStaticANIObject1ById(objId, objKey), x, y, fuzzyMatch, 0) != 0); + return (mc->startMove(g_nmi->_currentScene->getStaticANIObject1ById(objId, objKey), x, y, fuzzyMatch, 0) != 0); return 0; } bool doSomeAnimation(int objId, int objKey, int a3) { - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(objId, objKey); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(objId, objKey); MctlCompound *cmp = getCurrSceneSc2MotionController(); if (ani && cmp) diff --git a/engines/ngi/ngi.cpp b/engines/ngi/ngi.cpp index 5b95cfa1ff3..3d316943ae2 100644 --- a/engines/ngi/ngi.cpp +++ b/engines/ngi/ngi.cpp @@ -46,7 +46,7 @@ namespace NGI { -NGIEngine *g_fp = nullptr; +NGIEngine *g_nmi = nullptr; Vars *g_vars = nullptr; NGIEngine::NGIEngine(OSystem *syst, const NGIGameDescription *gameDesc) : @@ -182,7 +182,7 @@ NGIEngine::NGIEngine(OSystem *syst, const NGIGameDescription *gameDesc) : _isSaveAllowed = true; - g_fp = this; + g_nmi = this; g_vars = new Vars; } @@ -305,7 +305,7 @@ Common::Error NGIEngine::run() { loadAllScenes(); #endif - int time1 = g_fp->_system->getMillis(); + int time1 = g_nmi->_system->getMillis(); // Center mouse _system->warpMouse(400, 300); @@ -316,7 +316,7 @@ Common::Error NGIEngine::run() { break; } - int time2 = g_fp->_system->getMillis(); + int time2 = g_nmi->_system->getMillis(); // 30fps if (time2 - time1 >= 33 || !_normalSpeed) { @@ -590,12 +590,12 @@ void NGIEngine::disableSaves(ExCommand *ex) { } bool NGIEngine::isSaveAllowed() { - if (!g_fp->_isSaveAllowed) + if (!g_nmi->_isSaveAllowed) return false; bool allowed = true; - for (Common::Array::iterator s = g_fp->_globalMessageQueueList->begin(); s != g_fp->_globalMessageQueueList->end(); ++s) { + for (Common::Array::iterator s = g_nmi->_globalMessageQueueList->begin(); s != g_nmi->_globalMessageQueueList->end(); ++s) { if (!(*s)->_isFinished && ((*s)->getFlags() & 1)) allowed = false; } diff --git a/engines/ngi/ngi.h b/engines/ngi/ngi.h index ca75bc867eb..30ffe0c3b6c 100644 --- a/engines/ngi/ngi.h +++ b/engines/ngi/ngi.h @@ -379,7 +379,7 @@ public: }; -extern NGIEngine *g_fp; +extern NGIEngine *g_nmi; extern Vars *g_vars; } // End of namespace NGI diff --git a/engines/ngi/ngiarchive.cpp b/engines/ngi/ngiarchive.cpp index 77d933bf0cc..5e246ed0230 100644 --- a/engines/ngi/ngiarchive.cpp +++ b/engines/ngi/ngiarchive.cpp @@ -90,14 +90,14 @@ NGIArchive::NGIArchive(const Common::String &filename) : _ngiFilename(filename) free(fat); - g_fp->_currArchive = this; + g_nmi->_currArchive = this; debug(4, "NGIArchive::NGIArchive(%s): Located %d files", filename.c_str(), _headers.size()); } NGIArchive::~NGIArchive() { debugC(0, kDebugLoading, "NGIArchive Destructor Called"); - g_fp->_currArchive = nullptr; + g_nmi->_currArchive = nullptr; } bool NGIArchive::hasFile(const Common::String &name) const { diff --git a/engines/ngi/scene.cpp b/engines/ngi/scene.cpp index ab467ce0693..18286bf6456 100644 --- a/engines/ngi/scene.cpp +++ b/engines/ngi/scene.cpp @@ -107,7 +107,7 @@ void SceneTag::loadScene() { if (_scene->_shadows) _scene->_shadows->init(); - g_fp->_currArchive = nullptr; + g_nmi->_currArchive = nullptr; } Scene::Scene() : _sceneId(0), _field_BC(0) {} @@ -125,7 +125,7 @@ Scene::~Scene() { _staticANIObjectList1.clear(); - g_fp->_globalPalette = &g_fp->_defaultPalette; + g_nmi->_globalPalette = &g_nmi->_defaultPalette; // delete _field_BC; } @@ -147,7 +147,7 @@ bool Scene::load(MfcArchive &file) { int aniNum = file.readUint16LE(); Common::String aniname = genFileName(0, aniNum, "ani"); - Common::SeekableReadStream *f = g_fp->_currArchive->createReadStreamForMember(aniname); + Common::SeekableReadStream *f = g_nmi->_currArchive->createReadStreamForMember(aniname); StaticANIObject *ani = new StaticANIObject(); @@ -168,7 +168,7 @@ bool Scene::load(MfcArchive &file) { int qNum = file.readUint16LE(); Common::String qname = genFileName(0, qNum, "qu"); - Common::SeekableReadStream *f = g_fp->_currArchive->createReadStreamForMember(qname); + Common::SeekableReadStream *f = g_nmi->_currArchive->createReadStreamForMember(qname); MfcArchive archive(f); archive.readUint16LE(); // Skip 2 bytes @@ -190,7 +190,7 @@ bool Scene::load(MfcArchive &file) { assert(0); } - _libHandle.reset(g_fp->_currArchive); + _libHandle.reset(g_nmi->_currArchive); if (_picObjList.size() > 0 && !_bgname.empty()) { char fname[260]; @@ -222,10 +222,10 @@ bool Scene::load(MfcArchive &file) { Common::String slsname = genFileName(0, _sceneId, "sls"); - if (g_fp->_soundEnabled) { + if (g_nmi->_soundEnabled) { _soundList.reset(new SoundList()); - if (g_fp->_flgSoundList) { + if (g_nmi->_flgSoundList) { Common::String nlname = genFileName(17, _sceneId, "nl"); _soundList->loadFile(slsname, nlname); @@ -251,7 +251,7 @@ void Scene::init() { _x = 0; _y = 0; - g_fp->_sceneRect.moveTo(0, 0); + g_nmi->_sceneRect.moveTo(0, 0); for (uint i = 0; i < _picObjList.size(); i++) _picObjList[i]->clearFlags(); @@ -407,7 +407,7 @@ void Scene::preloadMovements(GameVar *var) { } void Scene::initObjectCursors(const char *varname) { - GameVar *cursorsVar = g_fp->getGameLoaderGameVar()->getSubVarByName(varname)->getSubVarByName("CURSORS"); + GameVar *cursorsVar = g_nmi->getGameLoaderGameVar()->getSubVarByName(varname)->getSubVarByName("CURSORS"); if (!cursorsVar || !cursorsVar->_subVars) return; @@ -426,10 +426,10 @@ void Scene::initObjectCursors(const char *varname) { } } - g_fp->_minCursorId = minId; - g_fp->_maxCursorId = maxId; + g_nmi->_minCursorId = minId; + g_nmi->_maxCursorId = maxId; - g_fp->_objectIdCursors.resize(maxId - minId + 1); + g_nmi->_objectIdCursors.resize(maxId - minId + 1); for (GameVar *sub = cursorsVar->_subVars; sub; sub = sub->_nextVarObj) { GameObject *obj = getPictureObjectByName(sub->_varName, -1); @@ -440,7 +440,7 @@ void Scene::initObjectCursors(const char *varname) { PictureObject *pic = getGameLoaderInventory()->getScene()->getPictureObjectByName(sub->_value.stringValue, -1); if (obj && pic) - g_fp->_objectIdCursors[obj->_id - minId] = pic->_id; + g_nmi->_objectIdCursors[obj->_id - minId] = pic->_id; } } @@ -509,7 +509,7 @@ void Scene::draw() { updateScrolling(); // Clean previous stuff - g_fp->_backgroundSurface.fillRect(Common::Rect(0, 0, 800, 600), 0); + g_nmi->_backgroundSurface.fillRect(Common::Rect(0, 0, 800, 600), 0); drawContent(60000, 0, true); @@ -533,7 +533,7 @@ void Scene::draw() { void Scene::updateScrolling() { if (_messageQueueId && !_x && !_y) { - MessageQueue *mq = g_fp->_globalMessageQueueList->getMessageQueueById(_messageQueueId); + MessageQueue *mq = g_nmi->_globalMessageQueueList->getMessageQueueById(_messageQueueId); if (mq) mq->update(); @@ -550,31 +550,31 @@ void Scene::updateScrolling() { int offsetY = 0; if (_x < 0) { - if (!g_fp->_sceneRect.left && !(_picObjList[0]->_flags & 2)) + if (!g_nmi->_sceneRect.left && !(_picObjList[0]->_flags & 2)) _x = 0; - if (_x <= -g_fp->_scrollSpeed) { - offsetX = -g_fp->_scrollSpeed; - _x += g_fp->_scrollSpeed; + if (_x <= -g_nmi->_scrollSpeed) { + offsetX = -g_nmi->_scrollSpeed; + _x += g_nmi->_scrollSpeed; } - } else if (_x >= g_fp->_scrollSpeed) { - offsetX = g_fp->_scrollSpeed; - _x -= g_fp->_scrollSpeed; + } else if (_x >= g_nmi->_scrollSpeed) { + offsetX = g_nmi->_scrollSpeed; + _x -= g_nmi->_scrollSpeed; } else { _x = 0; } if (_y > 0) { - offsetY = g_fp->_scrollSpeed; - _y -= g_fp->_scrollSpeed; + offsetY = g_nmi->_scrollSpeed; + _y -= g_nmi->_scrollSpeed; } if (_y < 0) { - offsetY -= g_fp->_scrollSpeed; - _y += g_fp->_scrollSpeed; + offsetY -= g_nmi->_scrollSpeed; + _y += g_nmi->_scrollSpeed; } - g_fp->_sceneRect.translate(offsetX, offsetY); + g_nmi->_sceneRect.translate(offsetX, offsetY); } updateScrolling2(); @@ -588,19 +588,19 @@ void Scene::updateScrolling2() { const Dims dims = _picObjList[0]->getDimensions(); const int flags = _picObjList[0]->_flags; - if (g_fp->_sceneRect.left < 0 && !(flags & 2)) - offsetX = -g_fp->_sceneRect.left; + if (g_nmi->_sceneRect.left < 0 && !(flags & 2)) + offsetX = -g_nmi->_sceneRect.left; - if (g_fp->_sceneRect.top < 0 && !(flags & 0x20)) - offsetY = -g_fp->_sceneRect.top; + if (g_nmi->_sceneRect.top < 0 && !(flags & 0x20)) + offsetY = -g_nmi->_sceneRect.top; - if (g_fp->_sceneRect.right > dims.x - 1 && g_fp->_sceneRect.left > 0 && !(flags & 2)) - offsetX = dims.x - g_fp->_sceneRect.right - 1; + if (g_nmi->_sceneRect.right > dims.x - 1 && g_nmi->_sceneRect.left > 0 && !(flags & 2)) + offsetX = dims.x - g_nmi->_sceneRect.right - 1; - if (g_fp->_sceneRect.bottom > dims.y - 1 && g_fp->_sceneRect.top > 0 && !(flags & 0x20)) - offsetY = dims.y - g_fp->_sceneRect.bottom - 1; + if (g_nmi->_sceneRect.bottom > dims.y - 1 && g_nmi->_sceneRect.top > 0 && !(flags & 0x20)) + offsetY = dims.y - g_nmi->_sceneRect.bottom - 1; - g_fp->_sceneRect.translate(offsetX, offsetY); + g_nmi->_sceneRect.translate(offsetX, offsetY); } } @@ -662,7 +662,7 @@ void Scene::drawContent(int minPri, int maxPri, bool drawBg) { return; if (_palette.size) { - g_fp->_globalPalette = &_palette; + g_nmi->_globalPalette = &_palette; } debugC(1, kDebugDrawing, "Scene::drawContent(>%d, <%d, %d)", minPri, maxPri, drawBg); @@ -700,7 +700,7 @@ void Scene::drawContent(int minPri, int maxPri, bool drawBg) { debugC(8, kDebugDrawing, "w2: %d h2:%d", dims.x, dims.y); - int bgStX = g_fp->_sceneRect.left % dims.x; + int bgStX = g_nmi->_sceneRect.left % dims.x; if (bgStX < 0) bgStX += dims.x; @@ -708,7 +708,7 @@ void Scene::drawContent(int minPri, int maxPri, bool drawBg) { int bgNumX = bgStX / width; int bgOffsetX = bgStX % width; - int bgStY = g_fp->_sceneRect.top % dims.y; + int bgStY = g_nmi->_sceneRect.top % dims.y; if (bgStY < 0) bgStY += dims.y; @@ -716,12 +716,12 @@ void Scene::drawContent(int minPri, int maxPri, bool drawBg) { int bgNumY = bgStY / height; int bgOffsetY = bgStY % height; - int bgPosX = g_fp->_sceneRect.left - bgOffsetX; + int bgPosX = g_nmi->_sceneRect.left - bgOffsetX; - if (bgPosX < g_fp->_sceneRect.right - 1) { + if (bgPosX < g_nmi->_sceneRect.right - 1) { for (;;) { uint v25 = bgNumY; - for (int y = g_fp->_sceneRect.top - bgOffsetY; y < g_fp->_sceneRect.bottom - 1;) { + for (int y = g_nmi->_sceneRect.top - bgOffsetY; y < g_nmi->_sceneRect.bottom - 1;) { BigPicture *v27 = getBigPicture(bgNumX, v25); v27->draw(bgPosX, y, 0, 0); y += v27->getDimensions().y; @@ -743,7 +743,7 @@ void Scene::drawContent(int minPri, int maxPri, bool drawBg) { break; bgNumX = 0; } - if (oldx >= g_fp->_sceneRect.right - 1) + if (oldx >= g_nmi->_sceneRect.right - 1) break; } } @@ -767,22 +767,22 @@ void Scene::drawContent(int minPri, int maxPri, bool drawBg) { int height = dims.y; if (obj->_flags & 8) { - while (objX > g_fp->_sceneRect.right) { + while (objX > g_nmi->_sceneRect.right) { objX -= width; obj->setOXY(objX, objY); } - for (int j = width + objX; width + objX < g_fp->_sceneRect.left; j = width + objX) { + for (int j = width + objX; width + objX < g_nmi->_sceneRect.left; j = width + objX) { objX = j; obj->setOXY(j, objY); } } if (obj->_flags & 0x10) { - while (objY > g_fp->_sceneRect.bottom) { + while (objY > g_nmi->_sceneRect.bottom) { objY -= height; obj->setOXY(objX, objY); } - for (int j = objY + height; objY + height < g_fp->_sceneRect.top; j = objY + height) { + for (int j = objY + height; objY + height < g_nmi->_sceneRect.top; j = objY + height) { objY = j; obj->setOXY(objX, j); } @@ -791,12 +791,12 @@ void Scene::drawContent(int minPri, int maxPri, bool drawBg) { obj->draw(); if (obj->_flags & 2) { - if (objX > g_fp->_sceneRect.left) { + if (objX > g_nmi->_sceneRect.left) { obj->setOXY(objX - width, objY); obj->draw(); obj->setOXY(objX, objY); } - if (width + objX < g_fp->_sceneRect.right) { + if (width + objX < g_nmi->_sceneRect.right) { obj->setOXY(width + objX, objY); obj->draw(); obj->setOXY(objX, objY); @@ -804,12 +804,12 @@ void Scene::drawContent(int minPri, int maxPri, bool drawBg) { } if (obj->_flags & 0x20) { - if (objY > g_fp->_sceneRect.top) { + if (objY > g_nmi->_sceneRect.top) { obj->setOXY(objX, objY - height); obj->draw(); obj->setOXY(objX, objY); } - if (height + objY < g_fp->_sceneRect.bottom) { + if (height + objY < g_nmi->_sceneRect.bottom) { obj->setOXY(objX, height + objY); obj->draw(); obj->setOXY(objX, objY); diff --git a/engines/ngi/scenes.cpp b/engines/ngi/scenes.cpp index f9e6abd57ea..e3eeba8b76d 100644 --- a/engines/ngi/scenes.cpp +++ b/engines/ngi/scenes.cpp @@ -617,7 +617,7 @@ bool NGIEngine::sceneSwitcher(const EntranceInfo &entrance) { sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_INTRO1"); scene->preloadMovements(sceneVar); - if (!(g_fp->isDemo() && g_fp->getLanguage() == Common::RU_RUS)) + if (!(g_nmi->isDemo() && g_nmi->getLanguage() == Common::RU_RUS)) sceneIntro_initScene(scene); else sceneIntroDemo_initScene(scene); @@ -626,7 +626,7 @@ bool NGIEngine::sceneSwitcher(const EntranceInfo &entrance) { scene->initObjectCursors("SC_INTRO1"); setSceneMusicParameters(sceneVar); - if (!(g_fp->isDemo() && g_fp->getLanguage() == Common::RU_RUS)) { + if (!(g_nmi->isDemo() && g_nmi->getLanguage() == Common::RU_RUS)) { addMessageHandler(sceneHandlerIntro, 2); _updateCursorCallback = sceneIntro_updateCursor; } else { @@ -833,7 +833,7 @@ bool NGIEngine::sceneSwitcher(const EntranceInfo &entrance) { scene18_setupEntrance(); sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_18"); scene->preloadMovements(sceneVar); - g_fp->stopAllSounds(); + g_nmi->stopAllSounds(); if (g_vars->scene18_inScene18p1) scene18_initScene1(scene); @@ -848,13 +848,13 @@ bool NGIEngine::sceneSwitcher(const EntranceInfo &entrance) { break; case SC_19: - if (!g_fp->_scene3) { - g_fp->_scene3 = accessScene(SC_18); - g_fp->_gameLoader->loadScene(SC_18); + if (!g_nmi->_scene3) { + g_nmi->_scene3 = accessScene(SC_18); + g_nmi->_gameLoader->loadScene(SC_18); - scene18_initScene2(g_fp->_scene3); + scene18_initScene2(g_nmi->_scene3); scene18_preload(); - scene19_setMovements(g_fp->_scene3, entrance._field_4); + scene19_setMovements(g_nmi->_scene3, entrance._field_4); g_vars->scene18_inScene18p1 = true; } @@ -862,7 +862,7 @@ bool NGIEngine::sceneSwitcher(const EntranceInfo &entrance) { scene19_preload(); sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_19"); scene->preloadMovements(sceneVar); - g_fp->stopAllSounds(); + g_nmi->stopAllSounds(); if (g_vars->scene18_inScene18p1) scene18_initScene1(scene); @@ -1123,9 +1123,9 @@ bool NGIEngine::sceneSwitcher(const EntranceInfo &entrance) { } int defaultUpdateCursor() { - g_fp->updateCursorCommon(); + g_nmi->updateCursorCommon(); - return g_fp->_cursorId; + return g_nmi->_cursorId; } void NGIEngine::updateMapPiece(int mapId, int update) { diff --git a/engines/ngi/sound.cpp b/engines/ngi/sound.cpp index 8d44382098e..f4c610badcc 100644 --- a/engines/ngi/sound.cpp +++ b/engines/ngi/sound.cpp @@ -95,7 +95,7 @@ bool Sound::load(MfcArchive &file, NGIArchive *archive) { _id = file.readUint32LE(); /*_description = */file.readPascalString(); - assert(g_fp->_gameProjectVersion >= 6); + assert(g_nmi->_gameProjectVersion >= 6); _objectId = file.readUint16LE(); @@ -120,27 +120,27 @@ void Sound::setPanAndVolumeByStaticAni() { if (!_objectId) return; - StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(_objectId, -1); + StaticANIObject *ani = g_nmi->_currentScene->getStaticANIObject1ById(_objectId, -1); if (!ani) return; int a, b; - if (ani->_ox >= g_fp->_sceneRect.left) { + if (ani->_ox >= g_nmi->_sceneRect.left) { int par, pan; - if (ani->_ox <= g_fp->_sceneRect.right) { + if (ani->_ox <= g_nmi->_sceneRect.right) { int dx; - if (ani->_oy <= g_fp->_sceneRect.bottom) { - if (ani->_oy >= g_fp->_sceneRect.top) { - setPanAndVolume(g_fp->_sfxVolume, 0); + if (ani->_oy <= g_nmi->_sceneRect.bottom) { + if (ani->_oy >= g_nmi->_sceneRect.top) { + setPanAndVolume(g_nmi->_sfxVolume, 0); return; } - dx = g_fp->_sceneRect.top - ani->_oy; + dx = g_nmi->_sceneRect.top - ani->_oy; } else { - dx = ani->_oy - g_fp->_sceneRect.bottom; + dx = ani->_oy - g_nmi->_sceneRect.bottom; } par = 0; @@ -151,10 +151,10 @@ void Sound::setPanAndVolumeByStaticAni() { } pan = -3500; - a = g_fp->_sfxVolume - (-3500); + a = g_nmi->_sfxVolume - (-3500); b = 800 - dx; } else { - int dx = ani->_ox - g_fp->_sceneRect.right; + int dx = ani->_ox - g_nmi->_sceneRect.right; if (dx > 800) { setPanAndVolume(-3500, 0); @@ -163,7 +163,7 @@ void Sound::setPanAndVolumeByStaticAni() { pan = -3500; par = dx * (-3500) / -800; - a = g_fp->_sfxVolume - (-3500); + a = g_nmi->_sfxVolume - (-3500); b = 800 - dx; } @@ -174,13 +174,13 @@ void Sound::setPanAndVolumeByStaticAni() { return; } - int dx = g_fp->_sceneRect.left - ani->_ox; + int dx = g_nmi->_sceneRect.left - ani->_ox; if (dx <= 800) { - int32 s = (800 - dx) * (g_fp->_sfxVolume - (-3500)); + int32 s = (800 - dx) * (g_nmi->_sfxVolume - (-3500)); int32 p = -3500 + s / 800; - if (p > g_fp->_sfxVolume) - p = g_fp->_sfxVolume; + if (p > g_nmi->_sfxVolume) + p = g_nmi->_sfxVolume; setPanAndVolume(p, dx * (-3500) / 800); } else { @@ -189,15 +189,15 @@ void Sound::setPanAndVolumeByStaticAni() { } void Sound::setPanAndVolume(int vol, int pan) { - g_fp->_mixer->setChannelVolume(*_handle, MIN((vol + 10000) / 39, 255)); // -10000..0 - g_fp->_mixer->setChannelBalance(*_handle, CLIP(pan / 78, -127, 127)); // -10000..10000 + g_nmi->_mixer->setChannelVolume(*_handle, MIN((vol + 10000) / 39, 255)); // -10000..0 + g_nmi->_mixer->setChannelBalance(*_handle, CLIP(pan / 78, -127, 127)); // -10000..10000 } void Sound::play(int flag) { Audio::SoundHandle *handle = getHandle(); - if (g_fp->_mixer->isSoundHandleActive(*handle)) { // We need to restart the music - g_fp->_mixer->stopHandle(*handle); + if (g_nmi->_mixer->isSoundHandleActive(*handle)) { // We need to restart the music + g_nmi->_mixer->stopHandle(*handle); } byte *soundData = loadData(); @@ -205,7 +205,7 @@ void Sound::play(int flag) { Audio::RewindableAudioStream *wav = Audio::makeWAVStream(dataStream, DisposeAfterUse::YES); Audio::AudioStream *audioStream = new Audio::LoopingAudioStream(wav, (flag == 1) ? 0 : 1); - g_fp->_mixer->playStream(Audio::Mixer::kSFXSoundType, handle, audioStream); + g_nmi->_mixer->playStream(Audio::Mixer::kSFXSoundType, handle, audioStream); } void Sound::freeSound() { @@ -215,11 +215,11 @@ void Sound::freeSound() { } int Sound::getVolume() { - return g_fp->_mixer->getChannelVolume(*_handle) * 39; // 0..10000 + return g_nmi->_mixer->getChannelVolume(*_handle) * 39; // 0..10000 } void Sound::stop() { - g_fp->_mixer->stopHandle(*_handle); + g_nmi->_mixer->stopHandle(*_handle); } void NGIEngine::setSceneMusicParameters(GameVar *gvar) { @@ -455,28 +455,28 @@ void NGIEngine::playTrack(GameVar *sceneVar, const char *name, bool delayed) { } void global_messageHandler_handleSound(ExCommand *cmd) { - if (!g_fp->_soundEnabled) + if (!g_nmi->_soundEnabled) return; Sound *snd = 0; - for (int i = 0; i < g_fp->_currSoundListCount; i++) - if ((snd = g_fp->_currSoundList1[i]->getSoundItemById(cmd->_messageNum)) != NULL) + for (int i = 0; i < g_nmi->_currSoundListCount; i++) + if ((snd = g_nmi->_currSoundList1[i]->getSoundItemById(cmd->_messageNum)) != NULL) break; if (!snd) return; if (cmd->_z & 1) { - if (!g_fp->_flgSoundList && (cmd->_z & 4)) + if (!g_nmi->_flgSoundList && (cmd->_z & 4)) snd->freeSound(); snd->updateVolume(); - if (snd->_objectId && g_fp->_currentScene->getStaticANIObject1ById(snd->_objectId, -1)) + if (snd->_objectId && g_nmi->_currentScene->getStaticANIObject1ById(snd->_objectId, -1)) snd->setPanAndVolumeByStaticAni(); else - snd->setPanAndVolume(g_fp->_sfxVolume, 0); + snd->setPanAndVolume(g_nmi->_sfxVolume, 0); if (snd->getVolume() > -3500) snd->play(cmd->_param); diff --git a/engines/ngi/stateloader.cpp b/engines/ngi/stateloader.cpp index 2df28fc9630..63f61e612f5 100644 --- a/engines/ngi/stateloader.cpp +++ b/engines/ngi/stateloader.cpp @@ -69,7 +69,7 @@ bool GameLoader::readSavegame(const char *fname) { FullpipeSavegameHeader header2; if (NGI::readSavegameHeader(saveFile.get(), header2)) { - g_fp->setTotalPlayTime(header2.playtime * 1000); + g_nmi->setTotalPlayTime(header2.playtime * 1000); } { @@ -132,8 +132,8 @@ bool GameLoader::readSavegame(const char *fname) { v = _gameVar->getSubVarByName("OBJSTATES")->getSubVarByName("SAVEGAME"); if (v) { - if (g_fp->_currentScene) - preloadItem.preloadId1 = g_fp->_currentScene->_sceneId & 0xffff; + if (g_nmi->_currentScene) + preloadItem.preloadId1 = g_nmi->_currentScene->_sceneId & 0xffff; else preloadItem.preloadId1 = 0; @@ -148,10 +148,10 @@ bool GameLoader::readSavegame(const char *fname) { clearGlobalMessageQueueList1(); - if (g_fp->_currentScene) - unloadScene(g_fp->_currentScene->_sceneId); + if (g_nmi->_currentScene) + unloadScene(g_nmi->_currentScene->_sceneId); - g_fp->_currentScene = 0; + g_nmi->_currentScene = 0; if (_preloadCallback) _preloadCallback(preloadItem, 50); @@ -269,10 +269,10 @@ void GameLoader::addVar(GameVar *var, GameVar *subvar) { void gameLoaderSavegameCallback(MfcArchive *archive, bool mode) { if (mode) for (int i = 0; i < 200; i++) - archive->writeUint32LE(g_fp->_mapTable[i]); + archive->writeUint32LE(g_nmi->_mapTable[i]); else for (int i = 0; i < 200; i++) - g_fp->_mapTable[i] = archive->readUint32LE(); + g_nmi->_mapTable[i] = archive->readUint32LE(); } bool NGIEngine::loadGam(const char *fname, int scene) { @@ -338,7 +338,7 @@ bool NGIEngine::loadGam(const char *fname, int scene) { _gameLoader->loadScene(SC_INTRO1); _gameLoader->gotoScene(SC_INTRO1, TrubaUp); } else { - if (g_fp->isDemo() && g_fp->getLanguage() == Common::RU_RUS) { + if (g_nmi->isDemo() && g_nmi->getLanguage() == Common::RU_RUS) { _gameLoader->loadScene(SC_9); _gameLoader->gotoScene(SC_9, TrubaDown); } else { @@ -365,25 +365,25 @@ bool GameProject::load(MfcArchive &file) { _field_4 = 0; _field_10 = 12; - g_fp->_gameProjectVersion = file.readUint32LE(); - g_fp->_pictureScale = file.readUint16LE(); - g_fp->_scrollSpeed = file.readUint32LE(); + g_nmi->_gameProjectVersion = file.readUint32LE(); + g_nmi->_pictureScale = file.readUint16LE(); + g_nmi->_scrollSpeed = file.readUint32LE(); _headerFilename = file.readPascalString(); - debugC(1, kDebugLoading, "_gameProjectVersion = %d", g_fp->_gameProjectVersion); - debugC(1, kDebugLoading, "_pictureScale = %d", g_fp->_pictureScale); - debugC(1, kDebugLoading, "_scrollSpeed = %d", g_fp->_scrollSpeed); + debugC(1, kDebugLoading, "_gameProjectVersion = %d", g_nmi->_gameProjectVersion); + debugC(1, kDebugLoading, "_pictureScale = %d", g_nmi->_pictureScale); + debugC(1, kDebugLoading, "_scrollSpeed = %d", g_nmi->_scrollSpeed); debugC(1, kDebugLoading, "_headerFilename = %s", _headerFilename.c_str()); _sceneTagList.reset(new SceneTagList()); _sceneTagList->load(file); - if (g_fp->_gameProjectVersion >= 3) + if (g_nmi->_gameProjectVersion >= 3) _field_4 = file.readUint32LE(); - if (g_fp->_gameProjectVersion >= 5) { + if (g_nmi->_gameProjectVersion >= 5) { file.readUint32LE(); file.readUint32LE(); } diff --git a/engines/ngi/statesaver.cpp b/engines/ngi/statesaver.cpp index 9d27c80989b..adf2f8ca6eb 100644 --- a/engines/ngi/statesaver.cpp +++ b/engines/ngi/statesaver.cpp @@ -138,7 +138,7 @@ bool GameLoader::writeSavegame(Scene *sc, const char *fname, const Common::Strin header2.date = ((curTime.tm_mday & 0xFF) << 24) | (((curTime.tm_mon + 1) & 0xFF) << 16) | ((curTime.tm_year + 1900) & 0xFFFF); header2.time = ((curTime.tm_hour & 0xFF) << 8) | ((curTime.tm_min) & 0xFF); - header2.playtime = g_fp->getTotalPlayTime() / 1000; + header2.playtime = g_nmi->getTotalPlayTime() / 1000; saveFile->write(header2.id, 6); saveFile->writeByte(header2.version); @@ -151,7 +151,7 @@ bool GameLoader::writeSavegame(Scene *sc, const char *fname, const Common::Strin saveFile->writeByte(desc.size()); saveFile->writeString(desc); - g_fp->_currentScene->draw(); + g_nmi->_currentScene->draw(); Graphics::saveThumbnail(*saveFile); // FIXME. Render proper screen diff --git a/engines/ngi/statics.cpp b/engines/ngi/statics.cpp index a591622b4fb..ec64b7e26dc 100644 --- a/engines/ngi/statics.cpp +++ b/engines/ngi/statics.cpp @@ -114,7 +114,7 @@ StaticANIObject::StaticANIObject() { StaticANIObject::~StaticANIObject() { Common::for_each(_staticsList.begin(), _staticsList.end(), Common::DefaultDeleter()); Common::for_each(_movements.begin(), _movements.end(), Common::DefaultDeleter()); - g_fp->_aniHandler->detachAllObjects(); + g_nmi->_aniHandler->detachAllObjects(); } StaticANIObject::StaticANIObject(StaticANIObject *src) : GameObject(src) { @@ -182,7 +182,7 @@ bool StaticANIObject::load(MfcArchive &file) { Common::String movname = genFileName(_id, movNum, "mov"); - Common::ScopedPtr f(g_fp->_currArchive->createReadStreamForMember(movname)); + Common::ScopedPtr f(g_nmi->_currArchive->createReadStreamForMember(movname)); Movement *mov = new Movement(); _movements.push_back(mov); @@ -238,11 +238,11 @@ void StaticANIObject::setFlags40(bool state) { void StaticANIObject::deleteFromGlobalMessageQueue() { while (_messageQueueId) { - if (g_fp->_globalMessageQueueList->getMessageQueueById(_messageQueueId)) { + if (g_nmi->_globalMessageQueueList->getMessageQueueById(_messageQueueId)) { if (!isIdle()) return; - g_fp->_globalMessageQueueList->deleteQueueById(_messageQueueId); + g_nmi->_globalMessageQueueList->deleteQueueById(_messageQueueId); } else { _messageQueueId = 0; } @@ -302,7 +302,7 @@ MessageQueue *StaticANIObject::getMessageQueue() { if (this->_messageQueueId <= 0) return 0; - return g_fp->_globalMessageQueueList->getMessageQueueById(_messageQueueId); + return g_nmi->_globalMessageQueueList->getMessageQueueById(_messageQueueId); } bool StaticANIObject::trySetMessageQueue(int msgNum, int qId) { @@ -320,7 +320,7 @@ bool StaticANIObject::trySetMessageQueue(int msgNum, int qId) { } void StaticANIObject::startMQIfIdle(int qId, int flag) { - MessageQueue *msg = g_fp->_currentScene->getMessageQueueById(qId); + MessageQueue *msg = g_nmi->_currentScene->getMessageQueueById(qId); if (msg && isIdle() && !(_flags & 0x100)) { MessageQueue *mq = new MessageQueue(msg, 0, 0); @@ -355,7 +355,7 @@ bool StaticANIObject::isIdle() { assert(_objtype == kObjTypeStaticANIObject); if (_messageQueueId) { - MessageQueue *m = g_fp->_globalMessageQueueList->getMessageQueueById(_messageQueueId); + MessageQueue *m = g_nmi->_globalMessageQueueList->getMessageQueueById(_messageQueueId); if (m && m->getFlags() & 1) return false; @@ -487,7 +487,7 @@ void Movement::draw(bool flipFlag, int angle) { int y = _oy - point.y; if (_currDynamicPhase->getPaletteData().size) - g_fp->_globalPalette = &_currDynamicPhase->getPaletteData(); + g_nmi->_globalPalette = &_currDynamicPhase->getPaletteData(); Common::ScopedPtr bmp; if (_currMovement) { @@ -555,7 +555,7 @@ void StaticANIObject::draw() { debugC(6, kDebugDrawing, "StaticANIObject::draw() (%s) [%d] [%d, %d]", transCyrillic(_objectName), _id, _ox, _oy); - if (_shadowsOn && g_fp->_currentScene && g_fp->_currentScene->_shadows + if (_shadowsOn && g_nmi->_currentScene && g_nmi->_currentScene->_shadows && (getCurrDimensions().x != 1 || getCurrDimensions().y != 1)) { DynamicPhase *dyn; @@ -573,7 +573,7 @@ void StaticANIObject::draw() { if (dyn->getDynFlags() & 4) { const Common::Rect &rect = dyn->_rect; - DynamicPhase *shd = g_fp->_currentScene->_shadows->findSize(rect.width(), rect.height()); + DynamicPhase *shd = g_nmi->_currentScene->_shadows->findSize(rect.width(), rect.height()); if (shd) { const Dims dims = shd->getDimensions(); int midx = _ox - dims.x / 2 - dyn->_someX; @@ -626,7 +626,7 @@ void StaticANIObject::draw2() { } MovTable *StaticANIObject::countMovements() { - GameVar *preloadSubVar = g_fp->getGameLoaderGameVar()->getSubVarByName(getName())->getSubVarByName("PRELOAD"); + GameVar *preloadSubVar = g_nmi->getGameLoaderGameVar()->getSubVarByName(getName())->getSubVarByName("PRELOAD"); if (!preloadSubVar || preloadSubVar->getSubVarsCount() == 0) return nullptr; @@ -648,7 +648,7 @@ MovTable *StaticANIObject::countMovements() { } void StaticANIObject::setSpeed(int speed) { - GameVar *var = g_fp->getGameLoaderGameVar()->getSubVarByName(getName())->getSubVarByName("SpeedUp"); + GameVar *var = g_nmi->getGameLoaderGameVar()->getSubVarByName(getName())->getSubVarByName("SpeedUp"); if (!var) return; @@ -984,15 +984,15 @@ void StaticANIObject::adjustSomeXY() { } MessageQueue *StaticANIObject::changeStatics1(int msgNum) { - g_fp->_aniHandler->attachObject(_id); + g_nmi->_aniHandler->attachObject(_id); - MessageQueue *mq = g_fp->_aniHandler->makeQueue(this, msgNum, 0, 0, 0); + MessageQueue *mq = g_nmi->_aniHandler->makeQueue(this, msgNum, 0, 0, 0); if (!mq) return 0; if (mq->getCount() <= 0) { - g_fp->_globalMessageQueueList->addMessageQueue(mq); + g_nmi->_globalMessageQueueList->addMessageQueue(mq); if (_flags & 1) _messageQueueId = mq->_id; @@ -1003,7 +1003,7 @@ MessageQueue *StaticANIObject::changeStatics1(int msgNum) { return 0; } - g_fp->_globalMessageQueueList->addMessageQueue(mq); + g_nmi->_globalMessageQueueList->addMessageQueue(mq); } return mq; @@ -1015,15 +1015,15 @@ void StaticANIObject::changeStatics2(int objId) { deleteFromGlobalMessageQueue(); if (_movement || _statics) { - g_fp->_aniHandler->attachObject(_id); - g_fp->_aniHandler->putObjectToStatics(this, objId); + g_nmi->_aniHandler->attachObject(_id); + g_nmi->_aniHandler->putObjectToStatics(this, objId); } else { _statics = getStaticsById(objId); } if (_messageQueueId) { - if (g_fp->_globalMessageQueueList->getMessageQueueById(_messageQueueId)) - g_fp->_globalMessageQueueList->deleteQueueById(_messageQueueId); + if (g_nmi->_globalMessageQueueList->getMessageQueueById(_messageQueueId)) + g_nmi->_globalMessageQueueList->deleteQueueById(_messageQueueId); _messageQueueId = 0; } @@ -1376,7 +1376,7 @@ bool Statics::load(MfcArchive &file) { _staticsName = file.readPascalString(); debugC(6, kDebugXML, "%% ", - g_fp->gameIdToStr(_staticsId).c_str(), transCyrillic(_staticsName), DynamicPhase::toXML().c_str()); + g_nmi->gameIdToStr(_staticsId).c_str(), transCyrillic(_staticsName), DynamicPhase::toXML().c_str()); _picture.load(file); @@ -1623,7 +1623,7 @@ bool Movement::load(MfcArchive &file, StaticANIObject *ani) { } debugC(6, kDebugXML, "%% ", - GameObject::toXML().c_str(), g_fp->gameIdToStr(staticsid).c_str(), _mx, _my, g_fp->gameIdToStr(staticsid2).c_str(), _m2x, _m2y); + GameObject::toXML().c_str(), g_nmi->gameIdToStr(staticsid).c_str(), _mx, _my, g_nmi->gameIdToStr(staticsid2).c_str(), _m2x, _m2y); for (int i = 0; i < dynCount; i++) debugC(6, kDebugXML, "%% ", _dynamicPhases[i]->toXML().c_str()); @@ -1645,10 +1645,10 @@ bool Movement::load(MfcArchive &file, StaticANIObject *ani) { _flipFlag = 1; } - if (g_fp->_gameProjectVersion >= 8) + if (g_nmi->_gameProjectVersion >= 8) _field_50 = file.readUint32LE(); - if (g_fp->_gameProjectVersion < 12) + if (g_nmi->_gameProjectVersion < 12) _counterMax = 83; else _counterMax = file.readUint32LE(); @@ -2091,9 +2091,9 @@ DynamicPhase::DynamicPhase(DynamicPhase *src, bool reverse) { _bitmap.reset(src->_bitmap->reverseImage()); _dataSize = src->_dataSize; - if (g_fp->_currArchive) { + if (g_nmi->_currArchive) { _mfield_14 = 0; - _libHandle = g_fp->_currArchive; + _libHandle = g_nmi->_currArchive; } _mflags |= 1; @@ -2158,12 +2158,12 @@ bool DynamicPhase::load(MfcArchive &file) { _rect.right = file.readSint32LE(); _rect.bottom = file.readSint32LE(); - assert(g_fp->_gameProjectVersion >= 1); + assert(g_nmi->_gameProjectVersion >= 1); _someX = file.readSint32LE(); _someY = file.readSint32LE(); - assert(g_fp->_gameProjectVersion >= 12); + assert(g_nmi->_gameProjectVersion >= 12); _dynFlags = file.readUint32LE(); @@ -2189,7 +2189,7 @@ bool StaticPhase::load(MfcArchive &file) { _initialCountdown = file.readUint16LE(); _field_6A = file.readUint16LE(); - assert(g_fp->_gameProjectVersion >= 12); + assert(g_nmi->_gameProjectVersion >= 12); _exCommand.reset(file.readClass()); diff --git a/engines/ngi/utils.cpp b/engines/ngi/utils.cpp index ae53f243753..8686c7e1824 100644 --- a/engines/ngi/utils.cpp +++ b/engines/ngi/utils.cpp @@ -131,9 +131,9 @@ bool MemoryObject::load(MfcArchive &file) { _memfilename.deleteChar(0); } - if (g_fp->_currArchive) { + if (g_nmi->_currArchive) { _mfield_14 = 0; - _libHandle = g_fp->_currArchive; + _libHandle = g_nmi->_currArchive; } return true; @@ -146,12 +146,12 @@ void MemoryObject::loadFile(const Common::String &filename) { return; if (!_data) { - NGIArchive *arr = g_fp->_currArchive; + NGIArchive *arr = g_nmi->_currArchive; - if (g_fp->_currArchive != _libHandle && _libHandle) - g_fp->_currArchive = _libHandle; + if (g_nmi->_currArchive != _libHandle && _libHandle) + g_nmi->_currArchive = _libHandle; - Common::SeekableReadStream *s = g_fp->_currArchive->createReadStreamForMember(filename); + Common::SeekableReadStream *s = g_nmi->_currArchive->createReadStreamForMember(filename); if (s) { assert(s->size() > 0); @@ -165,7 +165,7 @@ void MemoryObject::loadFile(const Common::String &filename) { // We have no object to read. This is fine } - g_fp->_currArchive = arr; + g_nmi->_currArchive = arr; } }