[Scummvm-git-logs] scummvm master -> 314c795d21ce1e67f8b3a73179b8042bc2e64487

dreammaster dreammaster at scummvm.org
Fri Feb 17 03:42:55 CET 2017


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
314c795d21 TITANIC: Cleanup of movie flags


Commit: 314c795d21ce1e67f8b3a73179b8042bc2e64487
    https://github.com/scummvm/scummvm/commit/314c795d21ce1e67f8b3a73179b8042bc2e64487
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2017-02-16T21:42:42-05:00

Commit Message:
TITANIC: Cleanup of movie flags

Changed paths:
    engines/titanic/core/background.cpp
    engines/titanic/core/game_object.cpp
    engines/titanic/core/turn_on_turn_off.cpp
    engines/titanic/game/arboretum_gate.cpp
    engines/titanic/game/captains_wheel.cpp
    engines/titanic/game/chicken_dispensor.cpp
    engines/titanic/game/code_wheel.cpp
    engines/titanic/game/computer_screen.cpp
    engines/titanic/game/end_sequence_control.cpp
    engines/titanic/game/fan_control.cpp
    engines/titanic/game/games_console.cpp
    engines/titanic/game/glass_smasher.cpp
    engines/titanic/game/hammer_dispensor.cpp
    engines/titanic/game/head_slot.cpp
    engines/titanic/game/head_smash_event.cpp
    engines/titanic/game/long_stick_dispenser.cpp
    engines/titanic/game/nut_replacer.cpp
    engines/titanic/game/parrot/parrot_nut_eater.cpp
    engines/titanic/game/phonograph_lid.cpp
    engines/titanic/game/play_on_act.cpp
    engines/titanic/game/port_hole.cpp
    engines/titanic/game/replacement_ear.cpp
    engines/titanic/game/restaurant_cylinder_holder.cpp
    engines/titanic/game/season_background.cpp
    engines/titanic/game/sgt/armchair.cpp
    engines/titanic/game/sgt/basin.cpp
    engines/titanic/game/sgt/bedfoot.cpp
    engines/titanic/game/sgt/bedhead.cpp
    engines/titanic/game/sgt/chest_of_drawers.cpp
    engines/titanic/game/sgt/desk.cpp
    engines/titanic/game/sgt/deskchair.cpp
    engines/titanic/game/sgt/drawer.cpp
    engines/titanic/game/sgt/sgt_doors.cpp
    engines/titanic/game/sgt/sgt_navigation.cpp
    engines/titanic/game/sgt/sgt_tv.cpp
    engines/titanic/game/sgt/toilet.cpp
    engines/titanic/game/sgt/vase.cpp
    engines/titanic/game/sgt/washstand.cpp
    engines/titanic/game/starling_puret.cpp
    engines/titanic/game/sub_glass.cpp
    engines/titanic/game/sweet_bowl.cpp
    engines/titanic/game/throw_tv_down_well.cpp
    engines/titanic/game/transport/lift.cpp
    engines/titanic/game/transport/pellerator.cpp
    engines/titanic/moves/enter_sec_class_state.cpp
    engines/titanic/npcs/barbot.cpp
    engines/titanic/npcs/bellbot.cpp
    engines/titanic/npcs/bilge_succubus.cpp
    engines/titanic/npcs/deskbot.cpp
    engines/titanic/npcs/doorbot.cpp
    engines/titanic/npcs/succubus.cpp
    engines/titanic/sound/titania_speech.cpp
    engines/titanic/support/avi_surface.h


diff --git a/engines/titanic/core/background.cpp b/engines/titanic/core/background.cpp
index 9f22f1e..d6419f2 100644
--- a/engines/titanic/core/background.cpp
+++ b/engines/titanic/core/background.cpp
@@ -58,7 +58,7 @@ void CBackground::load(SimpleFile *file) {
 bool CBackground::StatusChangeMsg(CStatusChangeMsg *msg) {
 	setVisible(true);
 	if (_isBlocking) {
-		playMovie(_startFrame, _endFrame, MOVIE_GAMESTATE);
+		playMovie(_startFrame, _endFrame, MOVIE_WAIT_FOR_FINISH);
 	} else {
 		playMovie(_startFrame, _endFrame, 0);
 	}
diff --git a/engines/titanic/core/game_object.cpp b/engines/titanic/core/game_object.cpp
index ff5fb9b..549cadf 100644
--- a/engines/titanic/core/game_object.cpp
+++ b/engines/titanic/core/game_object.cpp
@@ -606,7 +606,7 @@ void CGameObject::playMovie(uint flags) {
 	CGameObject *obj = (flags & MOVIE_NOTIFY_OBJECT) ? this : nullptr;
 	if (_surface) {
 		_surface->playMovie(flags, obj);
-		if (flags & MOVIE_GAMESTATE)
+		if (flags & MOVIE_WAIT_FOR_FINISH)
 			getGameManager()->_gameState.addMovie(_surface->_movie);
 	}
 }
@@ -622,7 +622,7 @@ void CGameObject::playMovie(int startFrame, int endFrame, uint flags) {
 	CGameObject *obj = (flags & MOVIE_NOTIFY_OBJECT) ? this : nullptr;
 	if (_surface) {
 		_surface->playMovie(startFrame, endFrame, flags, obj);
-		if (flags & MOVIE_GAMESTATE)
+		if (flags & MOVIE_WAIT_FOR_FINISH)
 			getGameManager()->_gameState.addMovie(_surface->_movie);
 	}
 }
@@ -639,7 +639,7 @@ void CGameObject::playMovie(int startFrame, int endFrame, int initialFrame, uint
 	CGameObject *obj = (flags & MOVIE_NOTIFY_OBJECT) ? this : nullptr;
 	if (_surface) {
 		_surface->playMovie(startFrame, endFrame, initialFrame, flags, obj);
-		if (flags & MOVIE_GAMESTATE)
+		if (flags & MOVIE_WAIT_FOR_FINISH)
 			getGameManager()->_gameState.addMovie(_surface->_movie);
 	}
 }
diff --git a/engines/titanic/core/turn_on_turn_off.cpp b/engines/titanic/core/turn_on_turn_off.cpp
index a6051c7..3c1e623 100644
--- a/engines/titanic/core/turn_on_turn_off.cpp
+++ b/engines/titanic/core/turn_on_turn_off.cpp
@@ -58,7 +58,7 @@ void CTurnOnTurnOff::load(SimpleFile *file) {
 bool CTurnOnTurnOff::TurnOn(CTurnOn *msg) {
 	if (!_isOn) {
 		if (_isBlocking)
-			playMovie(_startFrameOn, _endFrameOn, MOVIE_GAMESTATE);
+			playMovie(_startFrameOn, _endFrameOn, MOVIE_WAIT_FOR_FINISH);
 		else
 			playMovie(_startFrameOn, _endFrameOn, MOVIE_NOTIFY_OBJECT);
 		_isOn = true;
@@ -70,7 +70,7 @@ bool CTurnOnTurnOff::TurnOn(CTurnOn *msg) {
 bool CTurnOnTurnOff::TurnOff(CTurnOff *msg) {
 	if (_isOn) {
 		if (_isBlocking)
-			playMovie(_startFrameOff, _endFrameOff, MOVIE_GAMESTATE);
+			playMovie(_startFrameOff, _endFrameOff, MOVIE_WAIT_FOR_FINISH);
 		else
 			playMovie(_startFrameOff, _endFrameOff, MOVIE_NOTIFY_OBJECT);
 		_isOn = false;
diff --git a/engines/titanic/game/arboretum_gate.cpp b/engines/titanic/game/arboretum_gate.cpp
index 2a79c31..1b13b1a 100644
--- a/engines/titanic/game/arboretum_gate.cpp
+++ b/engines/titanic/game/arboretum_gate.cpp
@@ -275,27 +275,27 @@ bool CArboretumGate::TurnOff(CTurnOff *msg) {
 	if (!_disabled) {
 		switch (_seasonNum) {
 		case SEASON_SUMMER:
-			playMovie(_startFrameSummerOff, _endFrameSummerOff, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+			playMovie(_startFrameSummerOff, _endFrameSummerOff, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			break;
 
 		case SEASON_AUTUMN:
 			if (_gotSpeechCentre) {
-				playMovie(_startFrameAutumnOff2, _endFrameAutumnOff2, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+				playMovie(_startFrameAutumnOff2, _endFrameAutumnOff2, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			} else {
-				playMovie(_startFrameAutumnOff1, _endFrameAutumnOff1, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+				playMovie(_startFrameAutumnOff1, _endFrameAutumnOff1, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			}
 			break;
 
 		case SEASON_WINTER:
 			if (_gotSpeechCentre) {
-				playMovie(_startFrameWinterOff2, _endFrameWinterOff2, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+				playMovie(_startFrameWinterOff2, _endFrameWinterOff2, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			} else {
-				playMovie(_startFrameWinterOff1, _endFrameWinterOff1, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+				playMovie(_startFrameWinterOff1, _endFrameWinterOff1, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			}
 			break;
 
 		case SEASON_SPRING:
-			playMovie(_startFrameSpringOff, _endFrameSpringOff, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+			playMovie(_startFrameSpringOff, _endFrameSpringOff, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			break;
 
 		default:
@@ -318,27 +318,27 @@ bool CArboretumGate::TurnOn(CTurnOn *msg) {
 
 		switch (_seasonNum) {
 		case SEASON_SUMMER:
-			playMovie(_startFrameSummerOn, _endFrameSummerOn, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+			playMovie(_startFrameSummerOn, _endFrameSummerOn, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			break;
 
 		case SEASON_AUTUMN:
 			if (_gotSpeechCentre) {
-				playMovie(_startFrameAutumnOn2, _endFrameAutumnOn2, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+				playMovie(_startFrameAutumnOn2, _endFrameAutumnOn2, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			} else {
-				playMovie(_startFrameAutumnOn1, _endFrameAutumnOn1, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+				playMovie(_startFrameAutumnOn1, _endFrameAutumnOn1, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			}
 			break;
 
 		case SEASON_WINTER:
 			if (_gotSpeechCentre) {
-				playMovie(_startFrameWinterOn2, _endFrameWinterOn2, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+				playMovie(_startFrameWinterOn2, _endFrameWinterOn2, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			} else {
-				playMovie(_startFrameWinterOn1, _endFrameWinterOn1, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+				playMovie(_startFrameWinterOn1, _endFrameWinterOn1, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			}
 			break;
 
 		case SEASON_SPRING:
-			playMovie(_startFrameSpringOn, _endFrameSpringOn, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+			playMovie(_startFrameSpringOn, _endFrameSpringOn, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			break;
 
 		default:
diff --git a/engines/titanic/game/captains_wheel.cpp b/engines/titanic/game/captains_wheel.cpp
index 72d3cf7..7a21047 100644
--- a/engines/titanic/game/captains_wheel.cpp
+++ b/engines/titanic/game/captains_wheel.cpp
@@ -80,7 +80,7 @@ bool CCaptainsWheel::LeaveViewMsg(CLeaveViewMsg *msg) {
 		_fieldE0 = false;
 		CTurnOff offMsg;
 		offMsg.execute(this);
-		playMovie(162, 168, MOVIE_GAMESTATE);
+		playMovie(162, 168, MOVIE_WAIT_FOR_FINISH);
 	}
 
 	return true;
@@ -91,11 +91,11 @@ bool CCaptainsWheel::ActMsg(CActMsg *msg) {
 		if (_fieldE0) {
 			CTurnOn onMsg;
 			onMsg.execute("RatchetySound");
-			playMovie(8, 142, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(8, 142, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		}
 	} else if (msg->_action == "Honk") {
 		if (_fieldE0) {
-			playMovie(150, 160, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(150, 160, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		}
 	} else if (msg->_action == "Go") {
 		if (!_fieldE0) {
@@ -105,7 +105,7 @@ bool CCaptainsWheel::ActMsg(CActMsg *msg) {
 
 			CTurnOff offMsg;
 			offMsg.execute(this);
-			playMovie(162, 168, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(162, 168, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		}
 	} else if (msg->_action == "Cruise") {
 		if (_fieldE0) {
@@ -115,7 +115,7 @@ bool CCaptainsWheel::ActMsg(CActMsg *msg) {
 
 			CTurnOff offMsg;
 			offMsg.execute(this);
-			playMovie(162, 168, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(162, 168, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		}
 	} else if (msg->_action == "SetDestin") {
 		playSound("a#44.wav");
diff --git a/engines/titanic/game/chicken_dispensor.cpp b/engines/titanic/game/chicken_dispensor.cpp
index 8a56f43..89873dc 100644
--- a/engines/titanic/game/chicken_dispensor.cpp
+++ b/engines/titanic/game/chicken_dispensor.cpp
@@ -89,10 +89,10 @@ bool CChickenDispensor::StatusChangeMsg(CStatusChangeMsg *msg) {
 		setVisible(true);
 
 		if (_disabled) {
-			playMovie(0, 12, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(0, 12, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			playSound("z#400.wav");
 		} else {
-			playMovie(12, 16, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(12, 16, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		}
 		break;
 
@@ -186,7 +186,7 @@ bool CChickenDispensor::MouseDragStartMsg(CMouseDragStartMsg *msg) {
 bool CChickenDispensor::TurnOff(CTurnOff *msg) {
 	if (getMovieFrame() != 16)
 		setVisible(false);
-	playMovie(16, 12, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+	playMovie(16, 12, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	_dispensed = false;
 
 	return true;
diff --git a/engines/titanic/game/code_wheel.cpp b/engines/titanic/game/code_wheel.cpp
index 441fdde..ebffd3b 100644
--- a/engines/titanic/game/code_wheel.cpp
+++ b/engines/titanic/game/code_wheel.cpp
@@ -77,13 +77,13 @@ bool CodeWheel::MouseButtonDownMsg(CMouseButtonDownMsg *msg) {
 
 		_state = (_state + 1) % 15;
 		playMovie(START_FRAMES[_state], END_FRAMES[_state],
-			MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+			MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 	} else {
 		if (_state == _field108)
 			_field110 = true;
 
 		playMovie(START_FRAMES[14 - _state] + 68, END_FRAMES[14 - _state] + 68,
-			MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+			MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 
 		_state = (_state <= 0) ? 14 : _state - 1;
 	}
diff --git a/engines/titanic/game/computer_screen.cpp b/engines/titanic/game/computer_screen.cpp
index 98bef6e..7d549d0 100644
--- a/engines/titanic/game/computer_screen.cpp
+++ b/engines/titanic/game/computer_screen.cpp
@@ -47,10 +47,10 @@ void CComputerScreen::load(SimpleFile *file) {
 
 bool CComputerScreen::ActMsg(CActMsg *msg) {
 	if (msg->_action == "newCD1" || msg->_action == "newCD2") {
-		playMovie(27, 53, MOVIE_GAMESTATE);
-		playMovie(19, 26, MOVIE_GAMESTATE);
+		playMovie(27, 53, MOVIE_WAIT_FOR_FINISH);
+		playMovie(19, 26, MOVIE_WAIT_FOR_FINISH);
 	} else if (msg->_action == "newSTCD") {
-		playMovie(0, 18, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+		playMovie(0, 18, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 	}
 
 	return true;
diff --git a/engines/titanic/game/end_sequence_control.cpp b/engines/titanic/game/end_sequence_control.cpp
index 033a775..0f3a97c 100644
--- a/engines/titanic/game/end_sequence_control.cpp
+++ b/engines/titanic/game/end_sequence_control.cpp
@@ -77,7 +77,7 @@ bool CEndSequenceControl::EnterRoomMsg(CEnterRoomMsg *msg) {
 
 bool CEndSequenceControl::EnterViewMsg(CEnterViewMsg *msg) {
 	movieSetAudioTiming(true);
-	playMovie(MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+	playMovie(MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	return true;
 }
 
diff --git a/engines/titanic/game/fan_control.cpp b/engines/titanic/game/fan_control.cpp
index ca66476..7ed22fd 100644
--- a/engines/titanic/game/fan_control.cpp
+++ b/engines/titanic/game/fan_control.cpp
@@ -121,7 +121,7 @@ bool CFanControl::StatusChangeMsg(CStatusChangeMsg *msg) {
 							// It's puret time
 							incTransitions();
 							_starlingsDying = true;
-							playMovie(12, 18, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+							playMovie(12, 18, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 						} else {
 							playMovie(12, 18, 0);
 						}
diff --git a/engines/titanic/game/games_console.cpp b/engines/titanic/game/games_console.cpp
index 40311f7..6c13f4b 100644
--- a/engines/titanic/game/games_console.cpp
+++ b/engines/titanic/game/games_console.cpp
@@ -56,7 +56,7 @@ bool CGamesConsole::MouseButtonDownMsg(CMouseButtonDownMsg *msg) {
 bool CGamesConsole::LeaveViewMsg(CLeaveViewMsg *msg) {
 	if (_active) {
 		_active = false;
-		playMovie(23, 44, MOVIE_GAMESTATE);
+		playMovie(23, 44, MOVIE_WAIT_FOR_FINISH);
 	}
 
 	return true;
diff --git a/engines/titanic/game/glass_smasher.cpp b/engines/titanic/game/glass_smasher.cpp
index 2123f2d..7de034c 100644
--- a/engines/titanic/game/glass_smasher.cpp
+++ b/engines/titanic/game/glass_smasher.cpp
@@ -42,7 +42,7 @@ void CGlassSmasher::load(SimpleFile *file) {
 bool CGlassSmasher::StatusChangeMsg(CStatusChangeMsg *msg) {
 	setVisible(true);
 	playSound("b#40.wav");
-	playMovie(MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+	playMovie(MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	return true;
 }
 
diff --git a/engines/titanic/game/hammer_dispensor.cpp b/engines/titanic/game/hammer_dispensor.cpp
index 2450868..82aeec1 100644
--- a/engines/titanic/game/hammer_dispensor.cpp
+++ b/engines/titanic/game/hammer_dispensor.cpp
@@ -77,9 +77,9 @@ bool CHammerDispensor::EnterViewMsg(CEnterViewMsg *msg) {
 
 bool CHammerDispensor::LeaveViewMsg(CLeaveViewMsg *msg) {
 	if (_isOpen)
-		playMovie(32, 50, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(32, 50, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	else
-		playMovie(0, 7, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(0, 7, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 
 	_panUp = true;
 	_isOpen = false;
diff --git a/engines/titanic/game/head_slot.cpp b/engines/titanic/game/head_slot.cpp
index 06c366a..b0b7ee1 100644
--- a/engines/titanic/game/head_slot.cpp
+++ b/engines/titanic/game/head_slot.cpp
@@ -101,13 +101,13 @@ bool CHeadSlot::EnterViewMsg(CEnterViewMsg *msg) {
 		_cursorId = CURSOR_ARROW;
 
 	if (_v1 == 1 || _string1 == "Working") {
-		playMovie(_fieldE0, _fieldE4, MOVIE_GAMESTATE);
+		playMovie(_fieldE0, _fieldE4, MOVIE_WAIT_FOR_FINISH);
 		_fieldEC = true;
 	} else if (_fieldBC) {
-		playMovie(_fieldE0, _fieldE8, MOVIE_GAMESTATE);
+		playMovie(_fieldE0, _fieldE8, MOVIE_WAIT_FOR_FINISH);
 		_fieldEC = false;
 	} else {
-		playMovie(0, _fieldDC, MOVIE_GAMESTATE);
+		playMovie(0, _fieldDC, MOVIE_WAIT_FOR_FINISH);
 	}
 
 	addTimer(5000 + getRandomNumber(3000));
@@ -120,11 +120,11 @@ bool CHeadSlot::LeaveViewMsg(CLeaveViewMsg *msg) {
 
 		if (_fieldBC) {
 			loadFrame(_fieldE0);
-			playMovie(_fieldE0, _fieldE8, MOVIE_GAMESTATE);
+			playMovie(_fieldE0, _fieldE8, MOVIE_WAIT_FOR_FINISH);
 			_fieldEC = false;
 		} else {
 			loadFrame(_fieldDC);
-			playMovie(_fieldDC, _fieldE0, MOVIE_GAMESTATE);
+			playMovie(_fieldDC, _fieldE0, MOVIE_WAIT_FOR_FINISH);
 		}
 
 		_fieldEC = false;
diff --git a/engines/titanic/game/head_smash_event.cpp b/engines/titanic/game/head_smash_event.cpp
index 5ec3d29..dd5e516 100644
--- a/engines/titanic/game/head_smash_event.cpp
+++ b/engines/titanic/game/head_smash_event.cpp
@@ -42,7 +42,7 @@ void CHeadSmashEvent::load(SimpleFile *file) {
 bool CHeadSmashEvent::ActMsg(CActMsg *msg) {
 	if (msg->_action == "PlayToEnd") {
 		setVisible(true);
-		playMovie(MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	}
 
 	return true;
diff --git a/engines/titanic/game/long_stick_dispenser.cpp b/engines/titanic/game/long_stick_dispenser.cpp
index bf2dae5..c340cae 100644
--- a/engines/titanic/game/long_stick_dispenser.cpp
+++ b/engines/titanic/game/long_stick_dispenser.cpp
@@ -109,9 +109,9 @@ bool CLongStickDispenser::MouseButtonDownMsg(CMouseButtonDownMsg *msg) {
 bool CLongStickDispenser::LeaveViewMsg(CLeaveViewMsg *msg) {
 	if (_fieldC0 == 1) {
 		if (_fieldC4) {
-			playMovie(19, 38, MOVIE_GAMESTATE);
+			playMovie(19, 38, MOVIE_WAIT_FOR_FINISH);
 		} else {
-			playMovie(0, 18, MOVIE_GAMESTATE);
+			playMovie(0, 18, MOVIE_WAIT_FOR_FINISH);
 			_fieldBC = 1;
 		}
 
diff --git a/engines/titanic/game/nut_replacer.cpp b/engines/titanic/game/nut_replacer.cpp
index 6b05d1d..3b1247f 100644
--- a/engines/titanic/game/nut_replacer.cpp
+++ b/engines/titanic/game/nut_replacer.cpp
@@ -41,7 +41,7 @@ void CNutReplacer::load(SimpleFile *file) {
 
 bool CNutReplacer::ReplaceBowlAndNutsMsg(CReplaceBowlAndNutsMsg *msg) {
 	setVisible(true);
-	playMovie(MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+	playMovie(MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 	return true;
 }
 
diff --git a/engines/titanic/game/parrot/parrot_nut_eater.cpp b/engines/titanic/game/parrot/parrot_nut_eater.cpp
index b9697d7..7196d76 100644
--- a/engines/titanic/game/parrot/parrot_nut_eater.cpp
+++ b/engines/titanic/game/parrot/parrot_nut_eater.cpp
@@ -67,7 +67,7 @@ bool CParrotNutEater::ReplaceBowlAndNutsMsg(CReplaceBowlAndNutsMsg *msg) {
 bool CParrotNutEater::NutPuzzleMsg(CNutPuzzleMsg *msg) {
 	if (msg->_value == "Jiggle") {
 		setVisible(true);
-		playMovie(MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		movieEvent(68);
 		movieEvent(132);
 		playSound("z#215.wav");
diff --git a/engines/titanic/game/phonograph_lid.cpp b/engines/titanic/game/phonograph_lid.cpp
index e4e5f48..cde9415 100644
--- a/engines/titanic/game/phonograph_lid.cpp
+++ b/engines/titanic/game/phonograph_lid.cpp
@@ -76,7 +76,7 @@ bool CPhonographLid::LockPhonographMsg(CLockPhonographMsg *msg) {
 
 bool CPhonographLid::LeaveViewMsg(CLeaveViewMsg *msg) {
 	if (_open) {
-		playMovie(27, 55, MOVIE_GAMESTATE);
+		playMovie(27, 55, MOVIE_WAIT_FOR_FINISH);
 		_open = false;
 	}
 
diff --git a/engines/titanic/game/play_on_act.cpp b/engines/titanic/game/play_on_act.cpp
index 9c368c3..ffed45c 100644
--- a/engines/titanic/game/play_on_act.cpp
+++ b/engines/titanic/game/play_on_act.cpp
@@ -45,7 +45,7 @@ bool CPlayOnAct::ActMsg(CActMsg *msg) {
 		playMovie(0);
 	} else if (msg->_action == "PlayToEnd") {
 		setVisible(true);
-		playMovie(MOVIE_GAMESTATE);
+		playMovie(MOVIE_WAIT_FOR_FINISH);
 	}
 
 	return true;
diff --git a/engines/titanic/game/port_hole.cpp b/engines/titanic/game/port_hole.cpp
index 25807b1..9111561 100644
--- a/engines/titanic/game/port_hole.cpp
+++ b/engines/titanic/game/port_hole.cpp
@@ -79,7 +79,7 @@ bool CPortHole::MovieEndMsg(CMovieEndMsg *msg) {
 bool CPortHole::LeaveViewMsg(CLeaveViewMsg *msg) {
 	if (_open) {
 		playSound(_closeSoundName);
-		playMovie(14, 26, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(14, 26, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		_open = false;
 	}
 
diff --git a/engines/titanic/game/replacement_ear.cpp b/engines/titanic/game/replacement_ear.cpp
index e8bd384..d1274e9 100644
--- a/engines/titanic/game/replacement_ear.cpp
+++ b/engines/titanic/game/replacement_ear.cpp
@@ -40,7 +40,7 @@ void CReplacementEar::load(SimpleFile *file) {
 
 bool CReplacementEar::VisibleMsg(CVisibleMsg *msg) {
 	setVisible(true);
-	playMovie(MOVIE_GAMESTATE);
+	playMovie(MOVIE_WAIT_FOR_FINISH);
 	playSound("z#64.wav");
 	return true;
 }
diff --git a/engines/titanic/game/restaurant_cylinder_holder.cpp b/engines/titanic/game/restaurant_cylinder_holder.cpp
index 8a2581b..eddd4d2 100644
--- a/engines/titanic/game/restaurant_cylinder_holder.cpp
+++ b/engines/titanic/game/restaurant_cylinder_holder.cpp
@@ -70,11 +70,11 @@ bool CRestaurantCylinderHolder::EjectCylinderMsg(CEjectCylinderMsg *msg) {
 
 	if (_isOpen) {
 		playClip(hasCylinder ? "CloseHolder_Full" : "CloseHolder_Empty",
-			MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		_dropEnabled = true;
 	} else {
 		playClip(hasCylinder ? "OpenHolder_Full" : "OpenHolder_Empty",
-			MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	}
 
 	playSound(_ejectSoundName, 50);
diff --git a/engines/titanic/game/season_background.cpp b/engines/titanic/game/season_background.cpp
index 20ad6ac..d663c40 100644
--- a/engines/titanic/game/season_background.cpp
+++ b/engines/titanic/game/season_background.cpp
@@ -65,39 +65,39 @@ bool CSeasonBackground::ChangeSeasonMsg(CChangeSeasonMsg *msg) {
 
 	switch (_seasonNum) {
 	case SEASON_SUMMER:
-		playMovie(0, 45, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(0, 45, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		_defaultFrame = 45;
 		break;
 
 	case SEASON_AUTUMN:
 		if (_flag) {
-			playMovie(232, 278, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(232, 278, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			_defaultFrame = 278;
 		} else {
-			playMovie(45, 91, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(45, 91, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			_defaultFrame = 91;
 		}
 		break;
 
 	case SEASON_WINTER:
 		if (_flag) {
-			playMovie(278, 326, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(278, 326, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			_defaultFrame = 326;
 		} else {
 			CStatusChangeMsg changeMsg;
 			changeMsg._newStatus = 0;
 			changeMsg.execute("PickUpSpeechCentre");
-			playMovie(91, 139, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(91, 139, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			_defaultFrame = 139;
 		}
 		break;
 
 	case SEASON_SPRING:
 		if (_flag) {
-			playMovie(326, 417, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(326, 417, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			_defaultFrame = 417;
 		} else {
-			playMovie(139, 228, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(139, 228, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			_defaultFrame = 228;
 		}
 		break;
diff --git a/engines/titanic/game/sgt/armchair.cpp b/engines/titanic/game/sgt/armchair.cpp
index 681b1ae..6c0e7fe 100644
--- a/engines/titanic/game/sgt/armchair.cpp
+++ b/engines/titanic/game/sgt/armchair.cpp
@@ -55,7 +55,7 @@ bool CArmchair::TurnOn(CTurnOn *msg) {
 			_endFrame = 10;
 		}
 
-		playMovie(_startFrame, _endFrame, MOVIE_GAMESTATE);
+		playMovie(_startFrame, _endFrame, MOVIE_WAIT_FOR_FINISH);
 		playSound("b#0.wav");
 		_statics->_armchair = "Open";
 		_isClosed = false;
@@ -70,7 +70,7 @@ bool CArmchair::TurnOff(CTurnOff *msg) {
 		_startFrame = 11;
 		_endFrame = 21;
 		_isClosed = true;
-		playMovie(11, 21, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+		playMovie(11, 21, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 		playSound("b#0.wav");
 	}
 
diff --git a/engines/titanic/game/sgt/basin.cpp b/engines/titanic/game/sgt/basin.cpp
index ce34a49..fe3216e 100644
--- a/engines/titanic/game/sgt/basin.cpp
+++ b/engines/titanic/game/sgt/basin.cpp
@@ -48,7 +48,7 @@ bool CBasin::TurnOn(CTurnOn *msg) {
 		_isClosed = false;
 		_startFrame = 0;
 		_endFrame = 6;
-		playMovie(0, 6, MOVIE_GAMESTATE);
+		playMovie(0, 6, MOVIE_WAIT_FOR_FINISH);
 		playSound("b#13.wav");
 	}
 
@@ -61,7 +61,7 @@ bool CBasin::TurnOff(CTurnOff *msg) {
 		_isClosed = true;
 		_startFrame = 8;
 		_endFrame = 14;
-		playMovie(8, 14, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(8, 14, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		playSound("b#13.wav");
 	}
 
diff --git a/engines/titanic/game/sgt/bedfoot.cpp b/engines/titanic/game/sgt/bedfoot.cpp
index d84a73f..8f90e0f 100644
--- a/engines/titanic/game/sgt/bedfoot.cpp
+++ b/engines/titanic/game/sgt/bedfoot.cpp
@@ -53,7 +53,7 @@ bool CBedfoot::TurnOn(CTurnOn *msg) {
 			playSound("b#4.wav");
 		}
 
-		playMovie(_startFrame, _endFrame, MOVIE_GAMESTATE);
+		playMovie(_startFrame, _endFrame, MOVIE_WAIT_FOR_FINISH);
 	} else if (_statics->_bedfoot == "RestingUnderTV") {
 		_isClosed = false;
 		_startFrame = 8;
@@ -65,7 +65,7 @@ bool CBedfoot::TurnOn(CTurnOn *msg) {
 			playSound("192_436_bed hits floor.wav");
 		}
 
-		playMovie(_startFrame, _endFrame, MOVIE_GAMESTATE);
+		playMovie(_startFrame, _endFrame, MOVIE_WAIT_FOR_FINISH);
 	}
 
 	if (_statics->_bedfoot == "Open")
@@ -94,7 +94,7 @@ bool CBedfoot::TurnOff(CTurnOff *msg) {
 			_endFrame = 25;
 		}
 
-		playMovie(_startFrame, _endFrame, MOVIE_GAMESTATE);
+		playMovie(_startFrame, _endFrame, MOVIE_WAIT_FOR_FINISH);
 		playSound("b#7.wav");
 
 	} else if (_statics->_bedfoot == "NotOnWashstand" && _statics->_bedhead == "ClosedWrong") {
@@ -109,14 +109,14 @@ bool CBedfoot::TurnOff(CTurnOff *msg) {
 			_endFrame = 25;
 		}
 
-		playMovie(_startFrame, _endFrame, MOVIE_GAMESTATE);
+		playMovie(_startFrame, _endFrame, MOVIE_WAIT_FOR_FINISH);
 		playSound("b#7.wav");
 
 	} else if (_statics->_bedfoot == "RestingUTV" && _statics->_tv == "Closed") {
 		_statics->_bedfoot = "Closed";
 		_startFrame = 25;
 		_endFrame = 30;
-		playMovie(25, 30, MOVIE_GAMESTATE);
+		playMovie(25, 30, MOVIE_WAIT_FOR_FINISH);
 		playSound("b#7.wav");
 	}
 
diff --git a/engines/titanic/game/sgt/bedhead.cpp b/engines/titanic/game/sgt/bedhead.cpp
index b42c1c1..1356afe 100644
--- a/engines/titanic/game/sgt/bedhead.cpp
+++ b/engines/titanic/game/sgt/bedhead.cpp
@@ -110,7 +110,7 @@ bool CBedhead::TurnOn(CTurnOn *msg) {
 				setVisible(true);
 
 				_statics->_bedhead = entry._name4;
-				playMovie(entry._startFrame, entry._endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+				playMovie(entry._startFrame, entry._endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 				playSound("b#6.wav");
 				_isClosed = false;
 			}
@@ -157,7 +157,7 @@ bool CBedhead::TurnOff(CTurnOff *msg) {
 			setVisible(true);
 
 			_statics->_bedhead = entry._name4;
-			playMovie(entry._startFrame, entry._endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(entry._startFrame, entry._endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			playSound("193_436_bed fold up 1.wav");
 			_isClosed = false;
 		}
diff --git a/engines/titanic/game/sgt/chest_of_drawers.cpp b/engines/titanic/game/sgt/chest_of_drawers.cpp
index 9e00d4f..648308f 100644
--- a/engines/titanic/game/sgt/chest_of_drawers.cpp
+++ b/engines/titanic/game/sgt/chest_of_drawers.cpp
@@ -46,7 +46,7 @@ bool CChestOfDrawers::TurnOn(CTurnOn *msg) {
 		_statics->_chestOfDrawers = "Open";
 		_startFrame = 1;
 		_endFrame = 14;
-		playMovie(1, 14, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(1, 14, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		playSound("b#11.wav");
 	}
 
@@ -62,7 +62,7 @@ bool CChestOfDrawers::TurnOff(CTurnOff *msg) {
 
 		_startFrame = 14;
 		_endFrame = 27;
-		playMovie(14, 27, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(14, 27, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		playSound("b#11.wav");
 	}
 
diff --git a/engines/titanic/game/sgt/desk.cpp b/engines/titanic/game/sgt/desk.cpp
index a31efe9..1aea9a8 100644
--- a/engines/titanic/game/sgt/desk.cpp
+++ b/engines/titanic/game/sgt/desk.cpp
@@ -47,7 +47,7 @@ bool CDesk::TurnOn(CTurnOn *msg) {
 		_isClosed = false;
 		_startFrame = 1;
 		_endFrame = 26;
-		playMovie(1, 26, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(1, 26, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		playSound("b#12.wav");
 	}
 
@@ -64,7 +64,7 @@ bool CDesk::TurnOff(CTurnOff *msg) {
 		_isClosed = true;
 		_startFrame = 26;
 		_endFrame = 51;
-		playMovie(26, 51, MOVIE_GAMESTATE);
+		playMovie(26, 51, MOVIE_WAIT_FOR_FINISH);
 		playSound("b#9.wav");
 	}
 
diff --git a/engines/titanic/game/sgt/deskchair.cpp b/engines/titanic/game/sgt/deskchair.cpp
index 2b25f57..23b6ad6 100644
--- a/engines/titanic/game/sgt/deskchair.cpp
+++ b/engines/titanic/game/sgt/deskchair.cpp
@@ -48,7 +48,7 @@ bool CDeskchair::TurnOn(CTurnOn *msg) {
 		_isClosed = false;
 		_startFrame = 0;
 		_endFrame = 16;
-		playMovie(0, 16, MOVIE_GAMESTATE);
+		playMovie(0, 16, MOVIE_WAIT_FOR_FINISH);
 		playSound("b#8.wav");
 	}
 
@@ -61,7 +61,7 @@ bool CDeskchair::TurnOff(CTurnOff *msg) {
 		_isClosed = true;
 		_startFrame = 16;
 		_endFrame = 32;
-		playMovie(16, 32, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(16, 32, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		playSound("b#2.wav");
 	}
 
diff --git a/engines/titanic/game/sgt/drawer.cpp b/engines/titanic/game/sgt/drawer.cpp
index 68752b3..7288bbd 100644
--- a/engines/titanic/game/sgt/drawer.cpp
+++ b/engines/titanic/game/sgt/drawer.cpp
@@ -53,7 +53,7 @@ bool CDrawer::TurnOn(CTurnOn *msg) {
 		_endFrame = 75;
 		setVisible(true);
 		_statics->_drawer = "Open";
-		playMovie(_startFrame, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(_startFrame, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		playSound("b#10.wav");
 	}
 
@@ -66,7 +66,7 @@ bool CDrawer::TurnOff(CTurnOff *msg) {
 		_startFrame = 75;
 		_endFrame = 100;
 		_isClosed = true;
-		playMovie(_startFrame, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(_startFrame, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		playSound("b#10.wav");
 	}
 
diff --git a/engines/titanic/game/sgt/sgt_doors.cpp b/engines/titanic/game/sgt/sgt_doors.cpp
index 71eae98..2dabd21 100644
--- a/engines/titanic/game/sgt/sgt_doors.cpp
+++ b/engines/titanic/game/sgt/sgt_doors.cpp
@@ -60,9 +60,9 @@ bool CSGTDoors::EnterViewMsg(CEnterViewMsg *msg) {
 
 		if (pet->getRooms1CC() == 1)
 			playMovie(START_FRAMES[roomNum], END_FRAMES[roomNum],
-				MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+				MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		else
-			playMovie(0, 12, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(0, 12, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	}
 
 	return true;
@@ -89,9 +89,9 @@ bool CSGTDoors::LeaveRoomMsg(CLeaveRoomMsg *msg) {
 
 		if (pet->getRooms1CC() == 1)
 			playMovie(START_FRAMES[roomNum], END_FRAMES[roomNum],
-				MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+				MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		else
-			playMovie(12, 25, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(12, 25, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	}
 
 	return true;
diff --git a/engines/titanic/game/sgt/sgt_navigation.cpp b/engines/titanic/game/sgt/sgt_navigation.cpp
index 0312262..d0b57ba 100644
--- a/engines/titanic/game/sgt/sgt_navigation.cpp
+++ b/engines/titanic/game/sgt/sgt_navigation.cpp
@@ -71,9 +71,9 @@ bool CSGTNavigation::StatusChangeMsg(CStatusChangeMsg *msg) {
 
 		int startVal = pet->getRooms1CC();
 		if (startVal > _statics->_changeViewNum)
-			playMovie(FRAMES[startVal], FRAMES[_statics->_changeViewNum], MOVIE_GAMESTATE);
+			playMovie(FRAMES[startVal], FRAMES[_statics->_changeViewNum], MOVIE_WAIT_FOR_FINISH);
 		else
-			playMovie(FRAMES[startVal + 3], FRAMES[_statics->_changeViewNum + 3], MOVIE_GAMESTATE);
+			playMovie(FRAMES[startVal + 3], FRAMES[_statics->_changeViewNum + 3], MOVIE_WAIT_FOR_FINISH);
 
 		_cursorId = _statics->_changeViewNum != 1 ? CURSOR_MOVE_FORWARD : CURSOR_INVALID;
 
diff --git a/engines/titanic/game/sgt/sgt_tv.cpp b/engines/titanic/game/sgt/sgt_tv.cpp
index ebec334..5ce7c5b 100644
--- a/engines/titanic/game/sgt/sgt_tv.cpp
+++ b/engines/titanic/game/sgt/sgt_tv.cpp
@@ -46,7 +46,7 @@ bool CSGTTV::TurnOff(CTurnOff *msg) {
 		_isClosed = true;
 		_startFrame = 6;
 		_endFrame = 12;
-		playMovie(6, 12, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(6, 12, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	}
 
 	return true;
@@ -60,7 +60,7 @@ bool CSGTTV::TurnOn(CTurnOn *msg) {
 		_isClosed = false;
 		_startFrame = 1;
 		_endFrame = 6;
-		playMovie(1, 6, MOVIE_GAMESTATE);
+		playMovie(1, 6, MOVIE_WAIT_FOR_FINISH);
 	}
 
 	return true;
diff --git a/engines/titanic/game/sgt/toilet.cpp b/engines/titanic/game/sgt/toilet.cpp
index 544cdda..0f796c2 100644
--- a/engines/titanic/game/sgt/toilet.cpp
+++ b/engines/titanic/game/sgt/toilet.cpp
@@ -50,7 +50,7 @@ bool CToilet::TurnOn(CTurnOn *msg) {
 		_isClosed = false;
 		_startFrame = 0;
 		_endFrame = 11;
-		playMovie(0, 11, MOVIE_GAMESTATE);
+		playMovie(0, 11, MOVIE_WAIT_FOR_FINISH);
 		playSound("b#1.wav");
 	}
 
@@ -64,7 +64,7 @@ bool CToilet::TurnOff(CTurnOff *msg) {
 		_isClosed = true;
 		_startFrame = 11;
 		_endFrame = 18;
-		playMovie(11, 18, MOVIE_GAMESTATE);
+		playMovie(11, 18, MOVIE_WAIT_FOR_FINISH);
 		playSound("b#1.wav");
 	}
 
diff --git a/engines/titanic/game/sgt/vase.cpp b/engines/titanic/game/sgt/vase.cpp
index f9ee292..e7b427c 100644
--- a/engines/titanic/game/sgt/vase.cpp
+++ b/engines/titanic/game/sgt/vase.cpp
@@ -47,7 +47,7 @@ bool CVase::TurnOn(CTurnOn *msg) {
 		_isClosed = false;
 		_startFrame = 1;
 		_endFrame = 12;
-		playMovie(1, 12, MOVIE_GAMESTATE);
+		playMovie(1, 12, MOVIE_WAIT_FOR_FINISH);
 	}
 
 	return true;
@@ -61,7 +61,7 @@ bool CVase::TurnOff(CTurnOff *msg) {
 		_isClosed = true;
 		_startFrame = 12;
 		_endFrame = 25;
-		playMovie(12, 25, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(12, 25, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	}
 
 	return true;
diff --git a/engines/titanic/game/sgt/washstand.cpp b/engines/titanic/game/sgt/washstand.cpp
index 5be722b..217e36c 100644
--- a/engines/titanic/game/sgt/washstand.cpp
+++ b/engines/titanic/game/sgt/washstand.cpp
@@ -47,7 +47,7 @@ bool CWashstand::TurnOn(CTurnOn *msg) {
 		_isClosed = false;
 		_startFrame = 0;
 		_endFrame = 14;
-		playMovie(0, 14, MOVIE_GAMESTATE);
+		playMovie(0, 14, MOVIE_WAIT_FOR_FINISH);
 		playSound("b#14.wav");
 	}
 
@@ -61,7 +61,7 @@ bool CWashstand::TurnOff(CTurnOff *msg) {
 		_isClosed = true;
 		_startFrame = 14;
 		_endFrame = 28;
-		playMovie(14, 28, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+		playMovie(14, 28, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 		playSound("b#14.wav");
 	}
 
diff --git a/engines/titanic/game/starling_puret.cpp b/engines/titanic/game/starling_puret.cpp
index 2f1909d..f598f13 100644
--- a/engines/titanic/game/starling_puret.cpp
+++ b/engines/titanic/game/starling_puret.cpp
@@ -59,7 +59,7 @@ bool CStarlingPuret::EnterViewMsg(CEnterViewMsg *msg) {
 		changeMsg._newStatus = 1;
 		changeMsg.execute("PromDeckStarlings");
 
-		playMovie(MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		CSignalObject signalMsg;
 		signalMsg._numValue = 4;
 		signalMsg.execute("PromDeckStarlings");
diff --git a/engines/titanic/game/sub_glass.cpp b/engines/titanic/game/sub_glass.cpp
index 041f490..48cc848 100644
--- a/engines/titanic/game/sub_glass.cpp
+++ b/engines/titanic/game/sub_glass.cpp
@@ -88,7 +88,7 @@ bool CSUBGlass::SignalObject(CSignalObject *msg) {
 		setVisible(true);
 
 		if (_signalStartFrame >= 0) {
-			playMovie(_signalStartFrame, _signalEndFrame, MOVIE_GAMESTATE);
+			playMovie(_signalStartFrame, _signalEndFrame, MOVIE_WAIT_FOR_FINISH);
 			playSound("z#30.wav");
 			_fieldBC = false;
 		}
diff --git a/engines/titanic/game/sweet_bowl.cpp b/engines/titanic/game/sweet_bowl.cpp
index 7a3832e..a1d0dc2 100644
--- a/engines/titanic/game/sweet_bowl.cpp
+++ b/engines/titanic/game/sweet_bowl.cpp
@@ -55,7 +55,7 @@ bool CSweetBowl::EnterViewMsg(CEnterViewMsg *msg) {
 bool CSweetBowl::ActMsg(CActMsg *msg) {
 	if (msg->_action == "Jiggle") {
 		setVisible(true);
-		playMovie(MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+		playMovie(MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 		playSound(getRandomNumber(1) == 1 ? "b#42.wav" : "b#43.wav");
 	}
 
diff --git a/engines/titanic/game/throw_tv_down_well.cpp b/engines/titanic/game/throw_tv_down_well.cpp
index be61f6e..680fc7e 100644
--- a/engines/titanic/game/throw_tv_down_well.cpp
+++ b/engines/titanic/game/throw_tv_down_well.cpp
@@ -60,7 +60,7 @@ bool CThrowTVDownWell::ActMsg(CActMsg *msg) {
 }
 
 bool CThrowTVDownWell::EnterViewMsg(CEnterViewMsg *msg) {
-	playMovie(MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+	playMovie(MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	movieEvent(49);
 	return true;
 }
diff --git a/engines/titanic/game/transport/lift.cpp b/engines/titanic/game/transport/lift.cpp
index a6f45bd..8dfc559 100644
--- a/engines/titanic/game/transport/lift.cpp
+++ b/engines/titanic/game/transport/lift.cpp
@@ -120,20 +120,20 @@ bool CLift::StatusChangeMsg(CStatusChangeMsg *msg) {
 
 		if (oldClass == newClass) {
 			debugStr = CString::format("Same (%d-%d)", _startFrame, _endFrame);
-			playMovie(_startFrame, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(_startFrame, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		} else if (oldClass == 1 && newClass == 2) {
 			debugStr = CString::format("1 to 2 (%d-108, 108-%d)", _startFrame, _endFrame);
-			playMovie(_startFrame, 108, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
-			playMovie(108, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(_startFrame, 108, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
+			playMovie(108, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		} else if (oldClass == 1 && newClass == 3) {
 			debugStr = CString::format("1 to 3 (%d-108, 108-190, 190-%d)", _startFrame, _endFrame);
-			playMovie(_startFrame, 108, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
-			playMovie(108, 190, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
-			playMovie(190, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(_startFrame, 108, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
+			playMovie(108, 190, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
+			playMovie(190, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		} else {
 			debugStr = CString::format("2 to 3 (%d-190, 190-%d)", _startFrame, _endFrame);
-			playMovie(_startFrame, 190, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
-			playMovie(190, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(_startFrame, 190, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
+			playMovie(190, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		}
 	}
 
@@ -144,20 +144,20 @@ bool CLift::StatusChangeMsg(CStatusChangeMsg *msg) {
 
 		if (oldClass == newClass) {
 			debugStr = CString::format("Same (%d-%d)", _startFrame, _endFrame);
-			playMovie(_startFrame, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(_startFrame, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		} else if (oldClass == 3 && newClass == 2) {
 			debugStr = CString::format("3 to 2 (%d-407, 407-%d)", _startFrame, _endFrame);
-			playMovie(_startFrame, 407, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
-			playMovie(407, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(_startFrame, 407, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
+			playMovie(407, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		} else if (oldClass == 3 && newClass == 1) {
 			debugStr = CString::format("3 to 1 (%d-407, 407-489, 489-%d)", _startFrame, _endFrame);
-			playMovie(_startFrame, 407, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
-			playMovie(407, 489, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
-			playMovie(489, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(_startFrame, 407, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
+			playMovie(407, 489, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
+			playMovie(489, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		} else {
 			debugStr = CString::format("2 to 1 (%d-489, 489-%d)", _startFrame, _endFrame);
-			playMovie(_startFrame, 489, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
-			playMovie(489, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(_startFrame, 489, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
+			playMovie(489, _endFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		}
 	}
 
diff --git a/engines/titanic/game/transport/pellerator.cpp b/engines/titanic/game/transport/pellerator.cpp
index 095202d..0228f9b 100644
--- a/engines/titanic/game/transport/pellerator.cpp
+++ b/engines/titanic/game/transport/pellerator.cpp
@@ -83,7 +83,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 					playMovie(315, 323, 0);
 					for (int idx = 0; idx < 3; ++idx)
 						playMovie(299, 304, 0);
-					playMovie(305, 313, MOVIE_GAMESTATE);
+					playMovie(305, 313, MOVIE_WAIT_FOR_FINISH);
 					break;
 
 				case 2:
@@ -95,7 +95,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 					playMovie(153, 197, 0);
 					for (int idx = 0; idx < 5; ++idx)
 						playMovie(253, 263, 0);
-					playMovie(290, 293, MOVIE_GAMESTATE);
+					playMovie(290, 293, MOVIE_WAIT_FOR_FINISH);
 					break;
 
 				case 4:
@@ -107,7 +107,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 						playMovie(253, 263, 0);
 					for (int idx = 0; idx < 7; ++idx)
 						playMovie(336, 341, 0);
-					playMovie(342, 348, MOVIE_GAMESTATE);
+					playMovie(342, 348, MOVIE_WAIT_FOR_FINISH);
 					break;
 
 				case 5:
@@ -130,7 +130,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 					playMovie(315, 323, 0);
 					for (int idx = 0; idx < 3; ++idx)
 						playMovie(299, 304, 0);
-					playMovie(305, 313, MOVIE_GAMESTATE);
+					playMovie(305, 313, MOVIE_WAIT_FOR_FINISH);
 					break;
 
 				case 2:
@@ -139,7 +139,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 						playMovie(299, 304, 0);
 					for (int idx = 0; idx < 15; ++idx)
 						playMovie(245, 255, 0);
-					playMovie(264, 267, MOVIE_GAMESTATE);
+					playMovie(264, 267, MOVIE_WAIT_FOR_FINISH);
 					++_destination;
 					break;
 
@@ -149,7 +149,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 						playMovie(245, 255, 0);
 					for (int idx = 0; idx < 7; ++idx)
 						playMovie(336, 341, 0);
-					playMovie(342, 348, MOVIE_GAMESTATE);
+					playMovie(342, 348, MOVIE_WAIT_FOR_FINISH);
 					break;
 
 				case 5:
@@ -160,7 +160,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 						playMovie(245, 255, 0);
 					for (int idx = 0; idx < 3; ++idx)
 						playMovie(299, 304, 0);
-					playMovie(305, 313, MOVIE_GAMESTATE);
+					playMovie(305, 313, MOVIE_WAIT_FOR_FINISH);
 					break;
 
 				default:
@@ -184,7 +184,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 					playMovie(351, 359, 0);
 					for (int idx = 0; idx < 3; ++idx)
 						playMovie(336, 341, 0);
-					playMovie(342, 348, MOVIE_GAMESTATE);
+					playMovie(342, 348, MOVIE_WAIT_FOR_FINISH);
 					break;
 
 				case 3:
@@ -196,7 +196,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 						playMovie(245, 255, 0);
 					for (int idx = 0; idx < 3; ++idx)
 						playMovie(336, 341, 0);
-					playMovie(342, 348, MOVIE_GAMESTATE);
+					playMovie(342, 348, MOVIE_WAIT_FOR_FINISH);
 					--_destination;
 					break;
 
@@ -209,7 +209,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 					playMovie(78, 149, 0);
 					for (int idx = 0; idx < 5; ++idx)
 						playMovie(245, 255, 0);
-					playMovie(264, 267, MOVIE_GAMESTATE);
+					playMovie(264, 267, MOVIE_WAIT_FOR_FINISH);
 					break;
 
 				case 5:
@@ -221,7 +221,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 					playMovie(78, 149, 0);
 					for (int idx = 0; idx < 3; ++idx)
 						playMovie(336, 341, 0);
-					playMovie(342, 348, MOVIE_GAMESTATE);
+					playMovie(342, 348, MOVIE_WAIT_FOR_FINISH);
 					break;
 
 				default:
@@ -236,7 +236,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 					playMovie(351, 359, 0);
 					for (int idx = 0; idx < 3; ++idx)
 						playMovie(336, 341, 0);
-					playMovie(342, 348, MOVIE_GAMESTATE);
+					playMovie(342, 348, MOVIE_WAIT_FOR_FINISH);
 					break;
 
 				case 3:
@@ -245,7 +245,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 						playMovie(253, 263, 0);
 					for (int idx = 0; idx < 3; ++idx)
 						playMovie(336, 341, 0);
-					playMovie(342, 348, MOVIE_GAMESTATE);
+					playMovie(342, 348, MOVIE_WAIT_FOR_FINISH);
 					--_destination;
 					break;
 
@@ -255,7 +255,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 						playMovie(299, 304, 0);
 					for (int idx = 0; idx < 15; ++idx)
 						playMovie(253, 263, 0);
-					playMovie(290, 293, MOVIE_GAMESTATE);
+					playMovie(290, 293, MOVIE_WAIT_FOR_FINISH);
 					break;
 
 				case 5:
@@ -266,7 +266,7 @@ bool CPellerator::StatusChangeMsg(CStatusChangeMsg *msg) {
 						playMovie(253, 263, 0);
 					for (int idx = 0; idx < 3; ++idx)
 						playMovie(336, 341, 0);
-					playMovie(342, 348, MOVIE_GAMESTATE);
+					playMovie(342, 348, MOVIE_WAIT_FOR_FINISH);
 					break;
 
 				default:
diff --git a/engines/titanic/moves/enter_sec_class_state.cpp b/engines/titanic/moves/enter_sec_class_state.cpp
index af2bc4a..9ea8ae7 100644
--- a/engines/titanic/moves/enter_sec_class_state.cpp
+++ b/engines/titanic/moves/enter_sec_class_state.cpp
@@ -85,9 +85,9 @@ bool CEnterSecClassState::StatusChangeMsg(CStatusChangeMsg *msg) {
 
 	if (msg->_newStatus != 3) {
 		if (msg->_newStatus == 2 && _mode == 1)
-			playMovie(0, 10, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(0, 10, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		else if (msg->_newStatus == 1)
-			playMovie(11, 21, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playMovie(11, 21, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	}
 
 	_cursorId = msg->_newStatus == 2 ? CURSOR_MOVE_FORWARD : CURSOR_INVALID;
diff --git a/engines/titanic/npcs/barbot.cpp b/engines/titanic/npcs/barbot.cpp
index 58575d1..489ed39 100644
--- a/engines/titanic/npcs/barbot.cpp
+++ b/engines/titanic/npcs/barbot.cpp
@@ -166,7 +166,7 @@ bool CBarbot::ActMsg(CActMsg *msg) {
 			playRange(_frames[7]);
 			playRange(_frames[8]);
 			playRange(_frames[13]);
-			playRange(_frames[40], MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playRange(_frames[40], MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			_frameNum = _frames[40]._endFrame;
 		}
 	} else if (msg->_action == "GiveBackVisCentre") {
@@ -316,7 +316,7 @@ bool CBarbot::TurnOn(CTurnOn *msg) {
 			playRange(_frames[38], MOVIE_NOTIFY_OBJECT);
 			playRange(_frames[58], MOVIE_NOTIFY_OBJECT);
 			playRange(_frames[57], MOVIE_NOTIFY_OBJECT);
-			playRange(_frames[56], MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playRange(_frames[56], MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			_frameNum = _frames[56]._endFrame;
 		} else {
 			playRange(_frames[38]);
@@ -363,13 +363,13 @@ bool CBarbot::TurnOff(CTurnOff *msg) {
 
 		if (_visCenterOnCounter) {
 			// Barbot will put away the vision center
-			playRange(_frames[28], MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playRange(_frames[28], MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			_frameNum = _frames[28]._endFrame;
 			_visCenterOnCounter = false;
 			_field134 = 1;
 		}
 
-		playRange(_frames[29], MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playRange(_frames[29], MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		movieEvent(_frames[29]._startFrame);
 		_frameNum = _frames[29]._endFrame;
 		_fieldC4 = 0;
@@ -560,7 +560,7 @@ bool CBarbot::TrueTalkTriggerActionMsg(CTrueTalkTriggerActionMsg *msg) {
 			_frameNum = _frames[27]._endFrame;
 		} else if (!_gottenDrunk && _drunkFlag) {
 			playRange(_frames[45], MOVIE_NOTIFY_OBJECT);
-			playRange(_frames[44], MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			playRange(_frames[44], MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			_frameNum = _frames[44]._endFrame;
 		}
 		break;
diff --git a/engines/titanic/npcs/bellbot.cpp b/engines/titanic/npcs/bellbot.cpp
index 26c9b13..3781120 100644
--- a/engines/titanic/npcs/bellbot.cpp
+++ b/engines/titanic/npcs/bellbot.cpp
@@ -89,7 +89,7 @@ bool CBellBot::OnSummonBotMsg(COnSummonBotMsg *msg) {
 		_npcFlags &= ~NPCFLAG_MOVE_LOOP;
 	}
 
-	playClip("Walk On", MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+	playClip("Walk On", MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	movieEvent();
 	_npcFlags |= NPCFLAG_MOVING;
 
@@ -141,7 +141,7 @@ bool CBellBot::Use(CUse *msg) {
 
 bool CBellBot::DismissBotMsg(CDismissBotMsg *msg) {
 	if (_npcFlags & NPCFLAG_MOVING) {
-		playClip("Walk Off", MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playClip("Walk Off", MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		if (_npcFlags & NPCFLAG_START_IDLING) {
 			_npcFlags &= ~NPCFLAG_START_IDLING;
 			performAction(true);
@@ -168,7 +168,7 @@ bool CBellBot::TrueTalkTriggerActionMsg(CTrueTalkTriggerActionMsg *msg) {
 
 	case 5:
 		_npcFlags &= ~NPCFLAG_MOVE_START;
-		playClip("Walk Off", MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playClip("Walk Off", MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		movieEvent();
 		break;
 
diff --git a/engines/titanic/npcs/bilge_succubus.cpp b/engines/titanic/npcs/bilge_succubus.cpp
index 63d0006..4db4d8d 100644
--- a/engines/titanic/npcs/bilge_succubus.cpp
+++ b/engines/titanic/npcs/bilge_succubus.cpp
@@ -75,9 +75,9 @@ bool CBilgeSuccUBus::PETReceiveMsg(CPETReceiveMsg *msg) {
 
 	if (_style) {
 		if (_receiveStartFrame >= 0)
-			playMovie(_receiveStartFrame, _receiveEndFrame, MOVIE_GAMESTATE);
+			playMovie(_receiveStartFrame, _receiveEndFrame, MOVIE_WAIT_FOR_FINISH);
 		if (_afterReceiveStartFrame >= 0)
-			playMovie(_afterReceiveStartFrame, _afterReceiveEndFrame, MOVIE_GAMESTATE);
+			playMovie(_afterReceiveStartFrame, _afterReceiveEndFrame, MOVIE_WAIT_FOR_FINISH);
 
 		playSound("z#28.wav", 70);
 	} else if (!_isOn) {
@@ -94,7 +94,7 @@ bool CBilgeSuccUBus::PETReceiveMsg(CPETReceiveMsg *msg) {
 		if (mailObject) {
 			_mailP = mailObject;
 			if (_receiveStartFrame >= 0)
-				playMovie(_receiveStartFrame, _receiveEndFrame, MOVIE_GAMESTATE);
+				playMovie(_receiveStartFrame, _receiveEndFrame, MOVIE_WAIT_FOR_FINISH);
 		} else {
 			petDisplayMessage(2, NOTHING_TO_DELIVER);
 		}
@@ -138,20 +138,20 @@ bool CBilgeSuccUBus::PETDeliverMsg(CPETDeliverMsg *msg) {
 				playMovie(_sendStartFrame, _sendEndFrame, MOVIE_NOTIFY_OBJECT);
 
 			if (_sneezing2StartFrame >= 0) {
-				playMovie(_trayOutStartFrame, _trayOutEndFrame, MOVIE_GAMESTATE);
-				playMovie(_sneezing1StartFrame, _sneezing1EndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
-				playMovie(_sneezing2StartFrame, _sneezing2EndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+				playMovie(_trayOutStartFrame, _trayOutEndFrame, MOVIE_WAIT_FOR_FINISH);
+				playMovie(_sneezing1StartFrame, _sneezing1EndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
+				playMovie(_sneezing2StartFrame, _sneezing2EndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 				incTransitions();
 			}
 		} else {
 			startTalking(this, 230012);
 			_sendAction = SA_EATEN;
 			if (_sendStartFrame >= 0)
-				playMovie(_sendStartFrame, _sendEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+				playMovie(_sendStartFrame, _sendEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			if (_receiveStartFrame >= 0)
-				playMovie(_receiveStartFrame, _receiveEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+				playMovie(_receiveStartFrame, _receiveEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			if (_afterReceiveStartFrame >= 0)
-				playMovie(_afterReceiveStartFrame, _afterReceiveEndFrame, MOVIE_GAMESTATE);
+				playMovie(_afterReceiveStartFrame, _afterReceiveEndFrame, MOVIE_WAIT_FOR_FINISH);
 		}
 	} else {
 		if (_isFeathers) {
@@ -159,17 +159,17 @@ bool CBilgeSuccUBus::PETDeliverMsg(CPETDeliverMsg *msg) {
 			_sendAction = SA_BILGE_FEATHERS;
 
 			if (_sendStartFrame >= 0)
-				playMovie(_sendStartFrame, _sendEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+				playMovie(_sendStartFrame, _sendEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			if (_receiveStartFrame >= 0)
-				playMovie(_receiveStartFrame, _receiveEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+				playMovie(_receiveStartFrame, _receiveEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			if (_afterReceiveStartFrame >= 0)
-				playMovie(_afterReceiveStartFrame, _afterReceiveEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+				playMovie(_afterReceiveStartFrame, _afterReceiveEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		} else {
 			sendMail(petRoomFlags, roomFlags);
 			startTalking(this, 230012);
 			if (_sendStartFrame >= 0) {
 				_sendAction = SA_BILGE_SENT;
-				playMovie(_sendStartFrame, _sendEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+				playMovie(_sendStartFrame, _sendEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 			}
 		}
 	}
diff --git a/engines/titanic/npcs/deskbot.cpp b/engines/titanic/npcs/deskbot.cpp
index 56f4d98..2b88160 100644
--- a/engines/titanic/npcs/deskbot.cpp
+++ b/engines/titanic/npcs/deskbot.cpp
@@ -306,7 +306,7 @@ bool CDeskbot::TurnOff(CTurnOff *msg) {
 		performAction(1, findView());
 
 		_npcFlags = (_npcFlags & ~(NPCFLAG_SPEAKING | NPCFLAG_IDLING | NPCFLAG_START_IDLING)) | NPCFLAG_MOVE_LOOP;
-		playClip("Closing", MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+		playClip("Closing", MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 	}
 
 	return true;
diff --git a/engines/titanic/npcs/doorbot.cpp b/engines/titanic/npcs/doorbot.cpp
index ff518ad..03d723a 100644
--- a/engines/titanic/npcs/doorbot.cpp
+++ b/engines/titanic/npcs/doorbot.cpp
@@ -185,7 +185,7 @@ bool CDoorbot::OnSummonBotMsg(COnSummonBotMsg *msg) {
 	}
 
 	playClip(getRandomNumber(1) ? "Whizz On Left" : "Whizz On Right",
-		MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	movieEvent();
 	_npcFlags |= NPCFLAG_MOVE_END;
 
@@ -200,7 +200,7 @@ bool CDoorbot::TrueTalkTriggerActionMsg(CTrueTalkTriggerActionMsg *msg) {
 
 	case 4:
 		_npcFlags = (_npcFlags & ~NPCFLAG_IDLING) | NPCFLAG_SUMMON_BELLBOT;
-		playClip("Whizz Off Left", MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playClip("Whizz Off Left", MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		break;
 
 	case 28: {
@@ -387,7 +387,7 @@ bool CDoorbot::PutBotBackInHisBoxMsg(CPutBotBackInHisBoxMsg *msg) {
 bool CDoorbot::DismissBotMsg(CDismissBotMsg *msg) {
 	if (_npcFlags & NPCFLAG_MOVE_END) {
 		playClip(getRandomNumber(1) ? "Whizz Off Left" : "Whizz Off Right",
-			MOVIE_STOP_PREVIOUS | MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+			MOVIE_STOP_PREVIOUS | MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 		movieEvent();
 
 		if (_npcFlags & NPCFLAG_START_IDLING) {
diff --git a/engines/titanic/npcs/succubus.cpp b/engines/titanic/npcs/succubus.cpp
index 71272fa..ef681f6 100644
--- a/engines/titanic/npcs/succubus.cpp
+++ b/engines/titanic/npcs/succubus.cpp
@@ -701,11 +701,11 @@ bool CSuccUBus::TurnOff(CTurnOff *msg) {
 
 	if (_offStartFrame >= 0) {
 		playSound("z#27.wav", 100);
-		playMovie(_offStartFrame, _offEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(_offStartFrame, _offEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 	}
 
 	if (!_signalFlag && _endingStartFrame >= 0)
-		playMovie(_endingStartFrame, _endingEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
+		playMovie(_endingStartFrame, _endingEndFrame, MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH);
 
 	_isOn = false;
 	performAction(true);
diff --git a/engines/titanic/sound/titania_speech.cpp b/engines/titanic/sound/titania_speech.cpp
index d0ff423..7d3db08 100644
--- a/engines/titanic/sound/titania_speech.cpp
+++ b/engines/titanic/sound/titania_speech.cpp
@@ -59,7 +59,7 @@ bool CTitaniaSpeech::ActMsg(CActMsg *msg) {
 			movieSetAudioTiming(true);
 			loadSound("a#12.wav");
 			sleep(1000);
-			playMovie(0, 187, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+			playMovie(0, 187, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			movieEvent(0);
 			break;
 
@@ -78,7 +78,7 @@ bool CTitaniaSpeech::ActMsg(CActMsg *msg) {
 			visibleMsg._visible = false;
 			visibleMsg.execute("TitaniaStillControl");
 			loadSound("a#10.wav");
-			playMovie(585, 706, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+			playMovie(585, 706, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			playSound("a#10.wav");
 			break;
 
@@ -86,7 +86,7 @@ bool CTitaniaSpeech::ActMsg(CActMsg *msg) {
 			visibleMsg._visible = false;
 			visibleMsg.execute("TitaniaStillControl");
 			loadSound("a#9.wav");
-			playMovie(707, 905, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+			playMovie(707, 905, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			playSound("a#9.wav");
 			break;
 
@@ -94,7 +94,7 @@ bool CTitaniaSpeech::ActMsg(CActMsg *msg) {
 			visibleMsg._visible = false;
 			visibleMsg.execute("TitaniaStillControl");
 			loadSound("a#8.wav");
-			playMovie(906, 938, MOVIE_GAMESTATE | MOVIE_NOTIFY_OBJECT);
+			playMovie(906, 938, MOVIE_WAIT_FOR_FINISH | MOVIE_NOTIFY_OBJECT);
 			playSound("a#8.wav");
 			break;
 
diff --git a/engines/titanic/support/avi_surface.h b/engines/titanic/support/avi_surface.h
index f45db35..d3442a1 100644
--- a/engines/titanic/support/avi_surface.h
+++ b/engines/titanic/support/avi_surface.h
@@ -34,8 +34,11 @@ class CSoundManager;
 class CVideoSurface;
 
 enum MovieFlag {
-	MOVIE_REPEAT = 1, MOVIE_STOP_PREVIOUS = 2, MOVIE_NOTIFY_OBJECT = 4,
-	MOVIE_REVERSE = 8, MOVIE_GAMESTATE = 0x10
+	MOVIE_REPEAT = 1,				// Repeat movie
+	MOVIE_STOP_PREVIOUS = 2,		// Stop any prior movie playing on the object
+	MOVIE_NOTIFY_OBJECT = 4,		// Notify the object when the movie finishes
+	MOVIE_REVERSE = 8,				// Play the movie in reverse
+	MOVIE_WAIT_FOR_FINISH = 0x10	// Let finish before playing next movie for object
 };
 
 class AVIDecoder : public Video::AVIDecoder {





More information about the Scummvm-git-logs mailing list