aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/mads/nebular/nebular_scenes7.cpp107
-rw-r--r--engines/mads/nebular/nebular_scenes7.h14
2 files changed, 83 insertions, 38 deletions
diff --git a/engines/mads/nebular/nebular_scenes7.cpp b/engines/mads/nebular/nebular_scenes7.cpp
index e9d8f7f4cb..585271cfda 100644
--- a/engines/mads/nebular/nebular_scenes7.cpp
+++ b/engines/mads/nebular/nebular_scenes7.cpp
@@ -89,6 +89,16 @@ void Scene7xx::sceneEntrySound() {
/*------------------------------------------------------------------------*/
+Scene701::Scene701(MADSEngine *vm) : Scene7xx(vm) {
+ _fishingLineId = -1;
+}
+
+void Scene701::synchronize(Common::Serializer &s) {
+ Scene7xx::synchronize(s);
+
+ s.syncAsSint16LE(_fishingLineId);
+}
+
void Scene701::setup() {
setPlayerSpritesPrefix();
setAAName();
@@ -99,12 +109,6 @@ void Scene701::setup() {
_scene->addActiveVocab(VERB_WALKTO);
}
-void Scene701::synchronize(Common::Serializer &s) {
- Scene7xx::synchronize(s);
-
- s.syncAsSint16LE(_fishingLineId);
-}
-
void Scene701::enter() {
_globals._spriteIndexes[1] = _scene->_sprites.addSprites(formAnimName('x', 0));
_globals._spriteIndexes[2] = _scene->_sprites.addSprites(formAnimName('b', 5));
@@ -547,9 +551,19 @@ void Scene702::actions() {
/*------------------------------------------------------------------------*/
-void Scene703::setup() {
- _game._player._spritesPrefix = "";
- setAAName();
+Scene703::Scene703(MADSEngine *vm) : Scene7xx(vm) {
+ _monsterMode = -1;
+ _boatFrame = -1;
+ _curSequence = -1;
+ _boatDir = -1;
+
+ _useBomb = false;
+ _startMonsterTimer = false;
+ _rexDeathFl = false;
+ _restartTrigger70Fl = false;
+
+ _lastFrameTime = 0;
+ _monsterTime = 0;
}
void Scene703::synchronize(Common::Serializer &s) {
@@ -569,6 +583,11 @@ void Scene703::synchronize(Common::Serializer &s) {
s.syncAsUint32LE(_monsterTime);
}
+void Scene703::setup() {
+ _game._player._spritesPrefix = "";
+ setAAName();
+}
+
void Scene703::handleBottleInterface() {
switch (_globals[kBottleStatus]) {
case 0:
@@ -1090,11 +1109,13 @@ void Scene703::actions() {
/*------------------------------------------------------------------------*/
-void Scene704::setup() {
- _game._player._spritesPrefix = "";
- setAAName();
- _scene->addActiveVocab(NOUN_BOTTLE);
- _scene->addActiveVocab(VERB_LOOK_AT);
+Scene704::Scene704(MADSEngine *vm) : Scene7xx(vm) {
+ _bottleHotspotId = -1;
+ _boatCurrentFrame = -1;
+ _animationMode = -1;
+ _boatDirection = -1;
+
+ _takeBottleFl = false;
}
void Scene704::synchronize(Common::Serializer &s) {
@@ -1108,6 +1129,13 @@ void Scene704::synchronize(Common::Serializer &s) {
s.syncAsByte(_takeBottleFl);
}
+void Scene704::setup() {
+ _game._player._spritesPrefix = "";
+ setAAName();
+ _scene->addActiveVocab(NOUN_BOTTLE);
+ _scene->addActiveVocab(VERB_LOOK_AT);
+}
+
void Scene704::handleBottleInterface() {
switch (_globals[kBottleStatus]) {
case 0:
@@ -1708,12 +1736,13 @@ void Scene705::actions() {
/*------------------------------------------------------------------------*/
-void Scene706::setup() {
- setPlayerSpritesPrefix();
- setAAName();
- _scene->addActiveVocab(NOUN_BOTTLE);
- _scene->addActiveVocab(NOUN_VASE);
- _scene->addActiveVocab(VERB_WALKTO);
+Scene706::Scene706(MADSEngine *vm) : Scene7xx(vm) {
+ _vaseHotspotId = -1;
+ _vaseMode = -1;
+ _animationMode = -1;
+ _animationFrame = -1;
+
+ _emptyPedestral = false;
}
void Scene706::synchronize(Common::Serializer &s) {
@@ -1727,6 +1756,14 @@ void Scene706::synchronize(Common::Serializer &s) {
s.syncAsByte(_emptyPedestral);
}
+void Scene706::setup() {
+ setPlayerSpritesPrefix();
+ setAAName();
+ _scene->addActiveVocab(NOUN_BOTTLE);
+ _scene->addActiveVocab(NOUN_VASE);
+ _scene->addActiveVocab(VERB_WALKTO);
+}
+
void Scene706::handleRexDeath() {
switch (_game._trigger) {
case 0:
@@ -2128,11 +2165,8 @@ void Scene711::actions() {
/*------------------------------------------------------------------------*/
-void Scene751::setup() {
- setPlayerSpritesPrefix();
- setAAName();
- _scene->addActiveVocab(NOUN_FISHING_LINE);
- _scene->addActiveVocab(VERB_WALKTO);
+Scene751::Scene751(MADSEngine *vm) : Scene7xx(vm) {
+ _rexHandingLine = false;
}
void Scene751::synchronize(Common::Serializer &s) {
@@ -2141,6 +2175,13 @@ void Scene751::synchronize(Common::Serializer &s) {
s.syncAsByte(_rexHandingLine);
}
+void Scene751::setup() {
+ setPlayerSpritesPrefix();
+ setAAName();
+ _scene->addActiveVocab(NOUN_FISHING_LINE);
+ _scene->addActiveVocab(VERB_WALKTO);
+}
+
void Scene751::enter() {
_globals._spriteIndexes[1] = _scene->_sprites.addSprites("*RM701X0");
_globals._spriteIndexes[2] = _scene->_sprites.addSprites(formAnimName('a', 0));
@@ -2459,6 +2500,16 @@ void Scene751::actions() {
/*------------------------------------------------------------------------*/
+Scene752::Scene752(MADSEngine *vm) : Scene7xx(vm) {
+ _cardId = -1;
+}
+
+void Scene752::synchronize(Common::Serializer &s) {
+ Scene7xx::synchronize(s);
+
+ s.syncAsSint16LE(_cardId);
+}
+
void Scene752::setup() {
setPlayerSpritesPrefix();
setAAName();
@@ -2469,12 +2520,6 @@ void Scene752::setup() {
_scene->addActiveVocab(NOUN_LASER_BEAM);
}
-void Scene752::synchronize(Common::Serializer &s) {
- Scene7xx::synchronize(s);
-
- s.syncAsSint16LE(_cardId);
-}
-
void Scene752::enter() {
_globals._spriteIndexes[14] = _scene->_sprites.addSprites(formAnimName('l', -1));
_globals._spriteIndexes[12] = _scene->_sprites.addSprites("*RXMBD_8");
diff --git a/engines/mads/nebular/nebular_scenes7.h b/engines/mads/nebular/nebular_scenes7.h
index 150c598b9b..454c76ebe9 100644
--- a/engines/mads/nebular/nebular_scenes7.h
+++ b/engines/mads/nebular/nebular_scenes7.h
@@ -55,7 +55,7 @@ private:
int _fishingLineId;
public:
- Scene701(MADSEngine *vm) : Scene7xx(vm), _fishingLineId(-1) {}
+ Scene701(MADSEngine *vm);
void synchronize(Common::Serializer &s);
virtual void setup();
@@ -97,7 +97,7 @@ private:
void handleFillBottle(int quote);
public:
- Scene703(MADSEngine *vm) : Scene7xx(vm) {}
+ Scene703(MADSEngine *vm);
void synchronize(Common::Serializer &s);
virtual void setup();
@@ -122,7 +122,7 @@ private:
void handleBottleInterface();
public:
- Scene704(MADSEngine *vm) : Scene7xx(vm) {}
+ Scene704(MADSEngine *vm);
void synchronize(Common::Serializer &s);
virtual void setup();
@@ -152,7 +152,7 @@ public:
class Scene706: public Scene7xx{
private:
int _vaseHotspotId;
- int _vaseMode; // CHECKME: Use?
+ int _vaseMode;
int _animationMode;
int _animationFrame;
@@ -162,7 +162,7 @@ private:
void handleRexDeath();
public:
- Scene706(MADSEngine *vm) : Scene7xx(vm) {}
+ Scene706(MADSEngine *vm);
void synchronize(Common::Serializer &s);
virtual void setup();
@@ -207,7 +207,7 @@ private:
bool _rexHandingLine;
public:
- Scene751(MADSEngine *vm) : Scene7xx(vm) {}
+ Scene751(MADSEngine *vm);
void synchronize(Common::Serializer &s);
virtual void setup();
@@ -222,7 +222,7 @@ private:
int _cardId;
public:
- Scene752(MADSEngine *vm) : Scene7xx(vm), _cardId(-1) {}
+ Scene752(MADSEngine *vm);
void synchronize(Common::Serializer &s);
virtual void setup();