diff options
| author | Strangerke | 2014-03-16 22:44:53 +0100 | 
|---|---|---|
| committer | Strangerke | 2014-03-16 22:46:28 +0100 | 
| commit | 4dd057edd93bdb121cd046bfc1b2d770c5c0dbc4 (patch) | |
| tree | c31f3d5121eeed153f4b9ca6b10d2356a8338566 | |
| parent | d599c7c404729217cf4cf85ee02b2d8b3f3b9ec9 (diff) | |
| download | scummvm-rg350-4dd057edd93bdb121cd046bfc1b2d770c5c0dbc4.tar.gz scummvm-rg350-4dd057edd93bdb121cd046bfc1b2d770c5c0dbc4.tar.bz2 scummvm-rg350-4dd057edd93bdb121cd046bfc1b2d770c5c0dbc4.zip | |
MADS: First real try - Implement Scene201::enter()
| -rw-r--r-- | engines/mads/nebular/nebular_scenes2.cpp | 71 | 
1 files changed, 71 insertions, 0 deletions
| diff --git a/engines/mads/nebular/nebular_scenes2.cpp b/engines/mads/nebular/nebular_scenes2.cpp index ec8af4ca29..3eff596484 100644 --- a/engines/mads/nebular/nebular_scenes2.cpp +++ b/engines/mads/nebular/nebular_scenes2.cpp @@ -79,6 +79,77 @@ void Scene201::setup() {  }  void Scene201::enter() { +	if ((_globals._frameTime) && (_vm->getRandomNumber(5000) == 9)) { +		_globals._spriteIndexes[20] = _scene->_sequences.addSpriteCycle(_globals._spriteIndexes[5], false, 5, 1, 6, 0); +		int idx = _scene->_dynamicHotspots.add(351, 13, _globals._spriteIndexes[20], Common::Rect(0, 0, 0, 0)); +		_scene->_dynamicHotspots.setPosition(idx, 270, 80, 6); +		_scene->_sequences.setDepth(_globals._spriteIndexes[20], 8); +		_vm->_sound->command(14); +		_globals._frameTime = 0; +	} +	 +	if (_game._abortTimers == 70) { +		_globals._spriteIndexes[21] = _scene->_sequences.addSpriteCycle(_globals._spriteIndexes[6], false, 9, 1, 0, 0); +		_game._player._visible = false; +		_scene->_sequences.setAnimRange(_globals._spriteIndexes[21], 12, 16); +		_globals._spriteIndexes[22] = _scene->_sequences.addSpriteCycle(_globals._spriteIndexes[7], false, 9, 1, 0, 0); +		_vm->_sound->command(42); +		_scene->_sequences.setDepth(_globals._spriteIndexes[21], 1); +		_scene->_sequences.setDepth(_globals._spriteIndexes[22], 1); +		_scene->_sequences.addSubEntry(_globals._spriteIndexes[22], SM_FRAME_INDEX, 3, 81); +		_scene->_sequences.addSubEntry(_globals._spriteIndexes[22], SM_0, 0, 71); +		_scene->_sequences.addSubEntry(_globals._spriteIndexes[21], SM_0, 0, 73); +	} + +	if (_game._abortTimers == 81) { +		_scene->_kernelMessages.reset(); +	} + +	if (_game._abortTimers == 71) { +		_globals._spriteIndexes[22] = _scene->_sequences.addSpriteCycle(_globals._spriteIndexes[7], false, 9, 0, 0, 0); +		_scene->_sequences.setAnimRange(_globals._spriteIndexes[22], -2, -2); +		_scene->_sequences.setDepth(_globals._spriteIndexes[22], 1); +	} + +	if (_game._abortTimers == 73) { +		_globals._spriteIndexes[21] = _scene->_sequences.addSpriteCycle(_globals._spriteIndexes[6], false, 9, 1, 0, 0); +		_scene->_sequences.setAnimRange(_globals._spriteIndexes[21], 17, -2); +		_scene->_sequences.addSubEntry(_globals._spriteIndexes[21], SM_0, 0, 74); +		_scene->_sequences.setDepth(_globals._spriteIndexes[21], 1); +	} + +	if (_game._abortTimers == 74) { +		_vm->_sound->command(40); + +		_scene->_kernelMessages.add(Common::Point(125, 56), 0xFDFC, 32, 82, 180, _game.getQuote(91)); +		_globals._spriteIndexes[21] = _scene->_sequences.addSpriteCycle(_globals._spriteIndexes[6], false, 9, 0, 0, 0); +		_scene->_sequences.setDepth(_globals._spriteIndexes[21], 1); +		_scene->_sequences.setAnimRange(_globals._spriteIndexes[21], -2, -2); +		_scene->_sequences.addTimer(180, 75); +	} + +	if (_game._abortTimers == 75) { +		_globals[37] = 0; +		_scene->_nextSceneId = 202; +	} + +	if (_game._abortTimers == 76) { +		_game._player._stepEnabled = true; +		_game._player._visible = true; +		_game._player._priorTimer = _scene->_frameStartTime - _game._player._ticksAmount; +	} + +	if (_game._abortTimers == 77) { +		_globals[39] = 1; +		_scene->_nextSceneId = _globals[40]; +		_scene->_reloadSceneFlag = true; +	} + +	if (_game._abortTimers == 78) { +		_vm->_sound->command(40); +		Dialog::show(0x4E92); +		_scene->_reloadSceneFlag = true; +	}  }  void Scene201::step() { | 
