aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/core
diff options
context:
space:
mode:
authorPaul Gilbert2016-05-04 23:17:08 -0400
committerPaul Gilbert2016-07-10 16:38:24 -0400
commit308926ba87c76dc3151c4ae3428a71656cdbdad2 (patch)
treec88509124f3945a603e62e797b8253ddb2bf5fba /engines/titanic/core
parent07cbf78fe119058b196127827638ab0d8bc71b7e (diff)
downloadscummvm-rg350-308926ba87c76dc3151c4ae3428a71656cdbdad2.tar.gz
scummvm-rg350-308926ba87c76dc3151c4ae3428a71656cdbdad2.tar.bz2
scummvm-rg350-308926ba87c76dc3151c4ae3428a71656cdbdad2.zip
TITANIC: Implementing getting TrueTalk room scripts
Diffstat (limited to 'engines/titanic/core')
-rw-r--r--engines/titanic/core/room_item.cpp55
-rw-r--r--engines/titanic/core/room_item.h5
2 files changed, 60 insertions, 0 deletions
diff --git a/engines/titanic/core/room_item.cpp b/engines/titanic/core/room_item.cpp
index 7a6dfd968a..6dab983087 100644
--- a/engines/titanic/core/room_item.cpp
+++ b/engines/titanic/core/room_item.cpp
@@ -115,4 +115,59 @@ void CRoomItem::calcNodePosition(const Point &nodePos, double &xVal, double &yVa
}
}
+int CRoomItem::getScriptId() const {
+ CString name = getName();
+ if (name == "1stClassLobby")
+ return 130;
+ else if (name == "1stClassRestaurant")
+ return 132;
+ else if (name == "1stClassState")
+ return 131;
+ else if (name == "2ndClassLobby")
+ return 128;
+ else if (name == "Bar")
+ return 112;
+ else if (name == "BottomOfWell")
+ return 108;
+ else if (name == "Bridge")
+ return 121;
+ else if (name == "Dome")
+ return 122;
+ else if (name == "Home")
+ return 100;
+ else if (name == "Lift")
+ return 103;
+ else if (name == "MusicRoom")
+ return 117;
+ else if (name == "MusicRoomLobby")
+ return 118;
+ else if (name == "ParrotLobby")
+ return 111;
+ else if (name == "Pellerator")
+ return 104;
+ else if (name == "PromenadeDeck")
+ return 114;
+ else if (name == "SculptureChamber")
+ return 116;
+ else if (name == "secClassState")
+ return 129;
+ else if (name == "ServiceElevator")
+ return 102;
+ else if (name == "SGTLeisure")
+ return 125;
+ else if (name == "SGTLittleLift")
+ return 105;
+ else if (name == "SgtLobby")
+ return 124;
+ else if (name == "SGTState")
+ return 126;
+ else if (name == "Titania")
+ return 123;
+ else if (name == "TopOfWell")
+ return 107;
+
+ // TODO
+ return 0;
+}
+
} // End of namespace Titanic
diff --git a/engines/titanic/core/room_item.h b/engines/titanic/core/room_item.h
index f14c3ae32b..519accd79c 100644
--- a/engines/titanic/core/room_item.h
+++ b/engines/titanic/core/room_item.h
@@ -64,6 +64,11 @@ public:
* Calculates the positioning of a node within the overall room
*/
void calcNodePosition(const Point &nodePos, double &xVal, double &yVal) const;
+
+ /**
+ * Get the TrueTalk script Id associated with the room
+ */
+ int getScriptId() const;
};
} // End of namespace Titanic