[Scummvm-git-logs] scummvm master -> 55b2d57d470a36d9b7751034e6cb1a0a75a3ecf6
sev-
sev at scummvm.org
Sun Oct 4 22:27:07 UTC 2020
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
e6171c4ea0 NMI: g_fp -> g_nmi
52ec218021 ENGINES: Fix include file name
55b2d57d47 NGI: Further work on MDream
Commit: e6171c4ea03bb0d68b5c2f7cc51a93c680ca75f9
https://github.com/scummvm/scummvm/commit/e6171c4ea03bb0d68b5c2f7cc51a93c680ca75f9
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-10-05T00:26:48+02:00
Commit Message:
NMI: g_fp -> g_nmi
Changed paths:
engines/ngi/anihandler.cpp
engines/ngi/behavior.cpp
engines/ngi/floaters.cpp
engines/ngi/fullpipe/scene01.cpp
engines/ngi/fullpipe/scene02.cpp
engines/ngi/fullpipe/scene03.cpp
engines/ngi/fullpipe/scene04.cpp
engines/ngi/fullpipe/scene05.cpp
engines/ngi/fullpipe/scene06.cpp
engines/ngi/fullpipe/scene07.cpp
engines/ngi/fullpipe/scene08.cpp
engines/ngi/fullpipe/scene09.cpp
engines/ngi/fullpipe/scene10.cpp
engines/ngi/fullpipe/scene11.cpp
engines/ngi/fullpipe/scene12.cpp
engines/ngi/fullpipe/scene13.cpp
engines/ngi/fullpipe/scene14.cpp
engines/ngi/fullpipe/scene15.cpp
engines/ngi/fullpipe/scene16.cpp
engines/ngi/fullpipe/scene17.cpp
engines/ngi/fullpipe/scene18and19.cpp
engines/ngi/fullpipe/scene20.cpp
engines/ngi/fullpipe/scene21.cpp
engines/ngi/fullpipe/scene22.cpp
engines/ngi/fullpipe/scene23.cpp
engines/ngi/fullpipe/scene24.cpp
engines/ngi/fullpipe/scene25.cpp
engines/ngi/fullpipe/scene26.cpp
engines/ngi/fullpipe/scene27.cpp
engines/ngi/fullpipe/scene28.cpp
engines/ngi/fullpipe/scene29.cpp
engines/ngi/fullpipe/scene30.cpp
engines/ngi/fullpipe/scene31.cpp
engines/ngi/fullpipe/scene32.cpp
engines/ngi/fullpipe/scene33.cpp
engines/ngi/fullpipe/scene34.cpp
engines/ngi/fullpipe/scene35.cpp
engines/ngi/fullpipe/scene36.cpp
engines/ngi/fullpipe/scene37.cpp
engines/ngi/fullpipe/scene38.cpp
engines/ngi/fullpipe/sceneDbg.cpp
engines/ngi/fullpipe/sceneFinal.cpp
engines/ngi/fullpipe/sceneIntro.cpp
engines/ngi/fullpipe/sceneIntroDemo.cpp
engines/ngi/gameloader.cpp
engines/ngi/gfx.cpp
engines/ngi/input.cpp
engines/ngi/interaction.cpp
engines/ngi/inventory.cpp
engines/ngi/lift.cpp
engines/ngi/messagehandlers.cpp
engines/ngi/messages.cpp
engines/ngi/modal.cpp
engines/ngi/motion.cpp
engines/ngi/ngi.cpp
engines/ngi/ngi.h
engines/ngi/ngiarchive.cpp
engines/ngi/scene.cpp
engines/ngi/scenes.cpp
engines/ngi/sound.cpp
engines/ngi/stateloader.cpp
engines/ngi/statesaver.cpp
engines/ngi/statics.cpp
engines/ngi/utils.cpp
diff --git a/engines/ngi/anihandler.cpp b/engines/ngi/anihandler.cpp
index 6a83b33284..c11bacb9a7 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 a71a13c816..c341b5842e 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 bfdd41cc57..b32e008642 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 bb32d15d00..58c678f4ff 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 325b24a010..e7fb5f9e64 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 5a3c27f304..0b59972821 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<ObjstateCommand *>(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 065442de56..90e0d2e253 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<GameObject *>::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<MctlCompound *>(getSc2MctlCompoundBySceneId(g_fp->_currentScene->_sceneId));
+ if (!(g_nmi->_aniMan->_flags & 0x100)) {
+ if (getSc2MctlCompoundBySceneId(g_nmi->_currentScene->_sceneId)->_objtype == kObjTypeMctlCompound) {
+ MctlCompound *mc = static_cast<MctlCompound *>(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 d25e3f11db..2334dc2cd2 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 33dd9b89eb..d7867765b2 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);
-
- 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));
+ int tummy = g_nmi->getObjectState(sO_TummyTrampie);
+
+ 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 f1dce3eab8..10a8675af6 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 ac4085d4fb..d018be2cdd 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 d69c014ef3..358d97e3f5 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 d4eb84dcfe..cb086281f9 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 bb59ec029b..a2a44d551e 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 7d64581315..8cd3b2d925 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 41240c8157..73bb38084a 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 03ce6bf878..a510547a53 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 424e9293e5..c63b73b6c8 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 1f9c83e3e2..456b2712f1 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 0957d641a2..d91e6c2d3b 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 90682e0ccf..f3d6ddeb6e 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<double>(170.0) && oldangle < Common::deg2rad<double>(170.0)) {
- g_fp->_gameLoader->preloadScene(SC_18, TrubaRight);
+ g_nmi->_gameLoader->preloadScene(SC_18, TrubaRight);
} else if (swinger->angle >= Common::deg2rad<double>(25.0) && oldangle < Common::deg2rad<double>(25.0)) {
- g_fp->_gameLoader->preloadScene(SC_19, TrubaRight);
+ g_nmi->_gameLoader->preloadScene(SC_19, TrubaRight);
} else if (swinger->angle >= Common::deg2rad<double>(270.0) && oldangle < Common::deg2rad<double>(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 a2427b9496..497a031eaf 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);
-
- 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;
+ int idx = g_nmi->_rnd.getRandomNumber(sz);
+
+ 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 a8049264a0..2099135b45 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 8b937ac9db..5447219669 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 (!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 (!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_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 46506d4fa7..506aa5c835 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 2db4eca760..1972e174c9 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);
-
- 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_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);
+ if (g_nmi->getObjectState(sO_Pool) == g_nmi->getObjectEnumState(sO_Pool, sO_Overfull)) {
+ g_nmi->_behaviorManager->setFlagByStaticAniObject(g_vars->scene24_drop, 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_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 d544b6c3d0..fba4089e63 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 158a613cd8..aace588d1c 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_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_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_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 e6b5f71d29..4378e1306a 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 8b7ddb7712..c6a93732da 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 1aee6e1db1..6e85c10b79 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 4356cf223a..1ebe4ff903 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 9b79f201ce..2951c736fd 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 bd3e99d1a0..45b642ec0d 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 016cac219c..7b7fa05bd2 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 d039f66bca..4232d831e1 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 bb0686e2cc..b5edc4c439 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);
}
Commit: 52ec2180210734cd842d7b1c8cd8b746f9631831
https://github.com/scummvm/scummvm/commit/52ec2180210734cd842d7b1c8cd8b746f9631831
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-10-05T00:26:48+02:00
Commit Message:
ENGINES: Fix include file name
Changed paths:
engines/detection.cpp
diff --git a/engines/detection.cpp b/engines/detection.cpp
index fa143c4cb4..11b8323fac 100644
--- a/engines/detection.cpp
+++ b/engines/detection.cpp
@@ -24,7 +24,7 @@
#include "base/plugins.h"
#include "engines/metaengine.h"
-#include "engines/advanceddetector.h"
+#include "engines/advancedDetector.h"
#include "engines/detection.h"
Commit: 55b2d57d470a36d9b7751034e6cb1a0a75a3ecf6
https://github.com/scummvm/scummvm/commit/55b2d57d470a36d9b7751034e6cb1a0a75a3ecf6
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-10-05T00:26:48+02:00
Commit Message:
NGI: Further work on MDream
Changed paths:
engines/ngi/gameloader.cpp
engines/ngi/stateloader.cpp
diff --git a/engines/ngi/gameloader.cpp b/engines/ngi/gameloader.cpp
index 0da19cb8e2..b1724603b0 100644
--- a/engines/ngi/gameloader.cpp
+++ b/engines/ngi/gameloader.cpp
@@ -108,7 +108,8 @@ bool GameLoader::load(MfcArchive &file) {
_gameProject.reset(new GameProject());
- _gameProject->load(file);
+ if (!_gameProject->load(file))
+ error("Cannot load project");
g_nmi->_gameProject = _gameProject.get();
diff --git a/engines/ngi/stateloader.cpp b/engines/ngi/stateloader.cpp
index 63f61e612f..1fbc3a2e25 100644
--- a/engines/ngi/stateloader.cpp
+++ b/engines/ngi/stateloader.cpp
@@ -23,6 +23,7 @@
#include "ngi/ngi.h"
#include "ngi/constants.h"
+#include "ngi/detection.h"
#include "ngi/gameloader.h"
#include "ngi/interaction.h"
#include "ngi/objects.h"
@@ -376,6 +377,9 @@ bool GameProject::load(MfcArchive &file) {
debugC(1, kDebugLoading, "_scrollSpeed = %d", g_nmi->_scrollSpeed);
debugC(1, kDebugLoading, "_headerFilename = %s", _headerFilename.c_str());
+ if (g_nmi->getGameGID() == GID_MDREAM)
+ return false;
+
_sceneTagList.reset(new SceneTagList());
_sceneTagList->load(file);
More information about the Scummvm-git-logs
mailing list