Пример #1
0
void NoradDelta::loadAmbientLoops() {
/*
	Logic:

	loop sound 1:
		if room == kNorad79West
			if player globe game
				play kNoradGlobeLoop2SoundNum
			else
				play kNoradRedAlertLoopSoundNum
		else if room >= kNorad78 && room <= kNorad79
			play kNoradGlobeLoop2SoundNum
		else if gassed,
			if room >= kNorad41 && room <= kNorad49South
				play kNoradNewSubLoopSoundNum, kNoradWarningVolume
			else if room >= kNorad59 && room <= kNorad60West
				play kNoradSubControlLoopSoundNum, kNoradWarningVolume
			else
				play kNoradWarningLoopSoundNum, kNoradWarningVolume
		else
			play nothing
	loop sound 2:
		if gassed and not wearing air mask
			if room == kNorad54North
				play breathing unmanned loop
			else
				play breathing
		else
			if room == kNorad54North
				play unmanned loop
			else
				play nothing
*/

	if (GameState.getNoradArrivedFromSub()) {
		RoomID room = GameState.getCurrentRoom();

		if (room == kNorad79West) {
			if (_privateFlags.getFlag(kNoradPrivateFinishedGlobeGameFlag))
				loadLoopSound1("Sounds/Norad/GlobAmb2.22K.AIFF");
			else
				loadLoopSound1("Sounds/Norad/RedAlert.22K.AIFF");
		} else if (room >= kNorad78 && room <= kNorad79) {
			// clone2727 says: This looks like it should be loadLoopSound1...
			loadLoopSound2("Sounds/Norad/RedAlert.22K.AIFF");
		} else if (GameState.getNoradGassed()) {
			if (room >= kNorad41 && room <= kNorad49South)
				loadLoopSound1("Sounds/Norad/NEW SUB AMB.22K.AIFF", kNoradWarningVolume * 3);
			else if (room >= kNorad59 && room <= kNorad60West)
				loadLoopSound1("Sounds/Norad/SUB CONTRL LOOP.22K.AIFF", kNoradWarningVolume * 3);
			else
				loadLoopSound1("Sounds/Norad/WARNING LOOP.22K.AIFF", kNoradWarningVolume);
		} else {
			loadLoopSound1("");
		}

		if (GameState.getNoradGassed() && !g_airMask->isAirFilterOn()) {
			if (room == kNorad54North)
				loadLoopSound2("Sounds/Norad/Breathing Typing.22K.AIFF", 0x100 / 2);
			else
				loadLoopSound2("Sounds/Norad/SUCKING WIND.22K.AIFF", kNoradSuckWindVolume, 0, 0);
		} else {
			if (room == kNorad54North)
				loadLoopSound2("Sounds/Norad/N54NAS.22K.AIFF", 0x100 / 2);
			else
				loadLoopSound2("");
		}
	} else {
		// Start them off at zero...
		if (GameState.getNoradGassed())
			loadLoopSound1("Sounds/Norad/NEW SUB AMB.22K.AIFF", 0, 0, 0);
		if (!g_airMask->isAirFilterOn())
			loadLoopSound2("Sounds/Norad/SUCKING WIND.22K.AIFF", 0, 0, 0);
	}
}
Пример #2
0
void TinyTSA::loadAmbientLoops() {
	loadLoopSound1("Sounds/TSA/T01NAE.NEW.22K.AIFF");
}