diff options
| author | Paul Gilbert | 2014-03-27 21:03:41 -0400 | 
|---|---|---|
| committer | Paul Gilbert | 2014-03-27 21:03:41 -0400 | 
| commit | 103e87b4049f05a5f7901110c9a685a435f60c2b (patch) | |
| tree | d6ad925c32e600aeebbc36aa6b64a34b9129468b | |
| parent | 0a4c4c8eda3500915372a6c9987e524016ec566f (diff) | |
| parent | 0e0792b37fae4f812593b6e167be5d51250a9caa (diff) | |
| download | scummvm-rg350-103e87b4049f05a5f7901110c9a685a435f60c2b.tar.gz scummvm-rg350-103e87b4049f05a5f7901110c9a685a435f60c2b.tar.bz2 scummvm-rg350-103e87b4049f05a5f7901110c9a685a435f60c2b.zip  | |
Merge branch 'mads' of github.com:/dreammaster/scummvm into mads
| -rw-r--r-- | engines/mads/nebular/nebular_scenes2.cpp | 56 | ||||
| -rw-r--r-- | engines/mads/nebular/nebular_scenes2.h | 6 | 
2 files changed, 31 insertions, 31 deletions
diff --git a/engines/mads/nebular/nebular_scenes2.cpp b/engines/mads/nebular/nebular_scenes2.cpp index dbd3ccc55f..4a1dd097ee 100644 --- a/engines/mads/nebular/nebular_scenes2.cpp +++ b/engines/mads/nebular/nebular_scenes2.cpp @@ -367,7 +367,7 @@ void Scene202::enter() {  	int idx = _scene->_dynamicHotspots.add(320, 13, _globals._spriteIndexes[17], Common::Rect(0, 0, 0, 0));  	_scene->_dynamicHotspots.setPosition(idx, 153, 97, FACING_SOUTH); -	if (_globals[kBone202Status] & 1) { +	if (!(_globals[kBone202Status] & 1)) {  		_globals._spriteIndexes[16] = _scene->_sequences.addSpriteCycle(_globals._spriteIndexes[1], false, 6, 0, 0, 0);  		_scene->_sequences.setMsgPosition(_globals._spriteIndexes[16], Common::Point(130, 108));  		_scene->_sequences.setDepth(_globals._spriteIndexes[16], 10); @@ -375,7 +375,7 @@ void Scene202::enter() {  		_scene->_dynamicHotspots.setPosition(idx, 132, 97, FACING_SOUTH);  	} -	if (_globals[kBone202Status] & 2) { +	if (!(_globals[kBone202Status] & 2)) {  		_globals._spriteIndexes[21] = _scene->_sequences.addSpriteCycle(_globals._spriteIndexes[6], false, 6, 0, 0, 0);  		_scene->_sequences.setMsgPosition(_globals._spriteIndexes[21], Common::Point(166, 110));  		_scene->_sequences.setDepth(_globals._spriteIndexes[21], 10); @@ -403,16 +403,16 @@ void Scene202::enter() {  	}  	_game.loadQuoteSet(0x5C, 0x5D, 0x5E, 0x5F, 0x60, 0x62, 0x63, 0x64, 0x65, 0x66, 0x61, 0); -	_globals._v0 = 0; +	_activeMsgFl = false; -	if (_scene->_priorSceneId == -1) { -		if (_globals._v5) { +	if (_scene->_priorSceneId == -2) { +		if (_waitingMeteorologistFl) {  			_globals._spriteIndexes[24] = _scene->_sequences.startCycle(_globals._spriteIndexes[9], false, 1);  			_game._player._visible = false;  		}  	} else { -		_globals._v5 = 0; -		_globals._v4 = 0; +		_waitingMeteorologistFl = false; +		_ladderTopFl = false;  	}  	_globals._v8425C = _globals._v7 = _scene->_frameStartTime; @@ -424,9 +424,9 @@ void Scene202::enter() {  		_game._player._visible = false;  		_game._player._stepEnabled = false;  		if (_globals[kMeteorologistWatch] == 2) -			_globals._v4 = 1; +			_ladderTopFl = true;  		else -			_globals._v4 = 0; +			_ladderTopFl = false;  		if (_globals[kMeteorologistWatch] < 1)  			_globals._spriteIndexes[25] = _scene->_sequences.startCycle(_globals._spriteIndexes[9], false, 6); @@ -434,7 +434,7 @@ void Scene202::enter() {  			_globals._spriteIndexes[25] = _scene->_sequences.startCycle(_globals._spriteIndexes[9], false, 8);  		_scene->_sequences.setDepth(_globals._spriteIndexes[25], 1); -		if (_globals._v4) { +		if (_ladderTopFl) {  			_scene->_sequences.setMsgPosition(_globals._spriteIndexes[25], Common::Point(247, 82));  			_game._player._playerPos = Common::Point(246, 124);  			_game._player._facing = FACING_NORTH; @@ -463,19 +463,19 @@ void Scene202::setRandomKernelMessage() {  	_scene->_kernelMessages.reset();  	_game._abortTimersMode2 = ABORTMODE_1;  	_scene->_kernelMessages.add(Common::Point(0, 0), 0x1110, 34, 70, 120, _game.getQuote(vocabId)); -	_globals._v0 = -1; +	_activeMsgFl = true;  }  void Scene202::step() { -	if ((_globals._v0 == 0) && (_game._player._playerPos == Common::Point(77, 105)) && (_game._player._facing == 8) && (_vm->getRandomNumber(999) == 0)) { +	if (!_activeMsgFl && (_game._player._playerPos == Common::Point(77, 105)) && (_game._player._facing == 8) && (_vm->getRandomNumber(999) == 0)) {  		_scene->_kernelMessages.reset(); -		_globals._v0 = 0; +		_activeMsgFl = false;  		if (_vm->getRandomNumber(4) == 0)  			setRandomKernelMessage();  	}  	if (_game._abortTimers == 70) -		_globals._v0 = 0; +		_activeMsgFl = false;  	if (_game._abortTimers == 71) {  		_vm->_sound->command(3); @@ -483,7 +483,7 @@ void Scene202::step() {  		_globals._v8425C = 900 + _scene->_frameStartTime;  		Common::Point msgPos;  		int msgFlag; -		if (_globals._v4 == 0) { +		if (!_ladderTopFl) {  			msgPos = Common::Point(0, 0);  			msgFlag = 2;  		} else { @@ -542,7 +542,7 @@ void Scene202::step() {  		_scene->_sequences.updateTimeout(-1, _globals._spriteIndexes[26]);  		_game._player._stepEnabled = true;  		_game._player._visible = true; -		_globals._v4 = false; +		_ladderTopFl = false;  		_scene->_kernelMessages.reset();  		_scene->_kernelMessages.add(Common::Point(0, 0), 0x1110, 34, 0, 120, _game.getQuote(99));  		} @@ -554,7 +554,7 @@ void Scene202::step() {  	if (!_scene->_activeAnimation && (_globals[kMeteorologistStatus] != 2) && (_globals._v7 <= _scene->_frameStartTime) && (_globals._v8425C <= _scene->_frameStartTime)) {  		int randVal = _vm->getRandomNumber(1, 500);  		int threshold = 1; -		if (_globals._v4) +		if (_ladderTopFl)  			threshold = 26;  		if (!_globals[kMeteorologistEverSeen])  			threshold = 25; @@ -575,7 +575,7 @@ void Scene202::step() {  	if (!_scene->_activeAnimation)  		return; -	if (_globals._v5) { +	if (_waitingMeteorologistFl) {  		if (_scene->_activeAnimation->getCurrentFrame() >= 200) {  			if ((_globals[kMeteorologistWatch] == 2) || _globals[kLadderBroken]) {  				_scene->_nextSceneId = 213; @@ -588,7 +588,7 @@ void Scene202::step() {  		if ((_scene->_activeAnimation->getCurrentFrame() == 160) && (_globals._v84260 != _scene->_activeAnimation->getCurrentFrame())) {  			Common::Point msgPos;  			int msgFlag; -			if (_globals._v4 == 0) { +			if (!_ladderTopFl) {  				msgPos = Common::Point(0, 0);  				msgFlag = 2;  			} else { @@ -716,7 +716,7 @@ void Scene202::preActions() {  	if (action->_walkFlag)  		_scene->_kernelMessages.reset(); -	if ((_globals._v4 == 0) && (action->isAction(0x4E, 0xC7, 0) || !action->_walkFlag)) { +	if (!_ladderTopFl && (action->isAction(0x4E, 0xC7, 0) || !action->_walkFlag)) {  		if (_game._abortTimers == 0) {  			_vm->_sound->command(29);  			action->_walkFlag = false; @@ -732,19 +732,17 @@ void Scene202::preActions() {  			_game._player._visible = true;  			action->_walkFlag = true;  			_game._player._stepEnabled = true; -			_globals._v4 = 0; -		} else { -			// nothing +			_ladderTopFl = false;  		}		  	}  	if (action->isAction(0x3, 0x27, 0) && action->_activeAction._indirectObjectId > 0) { -		if (!action->_walkFlag || (_globals._v4 != 0)) +		if (!action->_walkFlag || _ladderTopFl)  			action->_startWalkFlag = false;  		else  			action->_startWalkFlag = true; -		if (_globals._v4 == 0) +		if (!_ladderTopFl)  			_game._player.startWalking(Common::Point(171, 122), FACING_NORTH);  	}  } @@ -821,7 +819,7 @@ void Scene202::actions() {  				_scene->_sequences.setMsgPosition(_globals._spriteIndexes[24], Common::Point(247, 82));  				_scene->_sequences.setDepth(_globals._spriteIndexes[24], 1);  				_scene->_sequences.updateTimeout(_globals._spriteIndexes[23], _globals._spriteIndexes[24]); -				_globals._v4 = -1; +				_ladderTopFl = true;  				_game._player._stepEnabled = true;  				int msgIndex = _scene->_kernelMessages.add(Common::Point(248, 15), 0x1110, 32, 0, 60, _game.getQuote(97));  				_scene->_kernelMessages.setQuoted(msgIndex, 4, true); @@ -830,7 +828,7 @@ void Scene202::actions() {  				return;  			}  		} else if (((action->isAction(0x3, 0x27, 0x82)) || (action->isAction(0x3, 0x27, 0x1B6))) && (_globals[kSexOfRex] == SEX_MALE)) { -			if (_globals._v4 == 0) { +			if (!_ladderTopFl) {  				if (_game._abortTimers == 0) {  					_game._player._stepEnabled = false;  					_game._player._visible= false; @@ -845,7 +843,7 @@ void Scene202::actions() {  					_scene->_sequences.setDepth(_globals._spriteIndexes[25], 1);  					_scene->_sequences.setMsgPosition(_globals._spriteIndexes[25], Common::Point(172, 123));  					if (_scene->_activeAnimation) { -						_globals._v5 = -1; +						_waitingMeteorologistFl = true;  						_globals[kMeteorologistWatch] = 1;  					} else {  						_scene->_sequences.addTimer(120, 2); @@ -885,7 +883,7 @@ void Scene202::actions() {  						if (_scene->_activeAnimation->getCurrentFrame() > 200) {  							_scene->_sequences.addTimer(120, 2);  						} else { -							_globals._v5 = -1; +							_waitingMeteorologistFl = true;  							_globals[kMeteorologistWatch] = 2;  							if ((_scene->_activeAnimation->getCurrentFrame() >= 44) && (_scene->_activeAnimation->getCurrentFrame() <= 75)) {  								_scene->_kernelMessages.reset(); diff --git a/engines/mads/nebular/nebular_scenes2.h b/engines/mads/nebular/nebular_scenes2.h index fef9f3c474..7ef50e1afd 100644 --- a/engines/mads/nebular/nebular_scenes2.h +++ b/engines/mads/nebular/nebular_scenes2.h @@ -52,7 +52,7 @@ public:  class Scene201: public Scene2xx {  	bool _pterodactylFlag;  public: -	Scene201(MADSEngine *vm) : Scene2xx(vm) {} +	Scene201(MADSEngine *vm) : Scene2xx(vm), _pterodactylFlag(false) {}  	virtual void setup();  	virtual void enter();  	virtual void step(); @@ -63,13 +63,15 @@ public:  class Scene202: public Scene2xx {  private: +	bool _activeMsgFl, _ladderTopFl, _waitingMeteorologistFl; +  	int subStep1(int randVal);  	int subStep2(int randVal);  	int subStep3(int randVal);  	int subStep4(int randVal);  public: -	Scene202(MADSEngine *vm) : Scene2xx(vm) {} +	Scene202(MADSEngine *vm) : Scene2xx(vm), _activeMsgFl(false), _ladderTopFl(false), _waitingMeteorologistFl(false) {}  	virtual void setup();  	virtual void enter();  	virtual void step();  | 
