[Scummvm-git-logs] scummvm master -> a85a98b867af5808f630d14c92526fff36c5d3b8

dreammaster dreammaster at scummvm.org
Wed Feb 14 02:10:46 CET 2018


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:
a85a98b867 XEEN: Add detection for Clouds & Dark Side


Commit: a85a98b867af5808f630d14c92526fff36c5d3b8
    https://github.com/scummvm/scummvm/commit/a85a98b867af5808f630d14c92526fff36c5d3b8
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2018-02-13T20:10:43-05:00

Commit Message:
XEEN: Add detection for Clouds & Dark Side

Changed paths:
    engines/xeen/detection.cpp
    engines/xeen/detection_tables.h
    engines/xeen/files.cpp
    engines/xeen/map.cpp
    engines/xeen/worldofxeen/worldofxeen.cpp


diff --git a/engines/xeen/detection.cpp b/engines/xeen/detection.cpp
index 0916c39..b16c8d6 100644
--- a/engines/xeen/detection.cpp
+++ b/engines/xeen/detection.cpp
@@ -64,8 +64,8 @@ Common::Platform XeenEngine::getPlatform() const {
 
 static const PlainGameDescriptor XeenGames[] = {
 	{ "xeen", "Xeen" },
-	{ "clouds", "Clouds of Xeen" },
-	{ "darkside", "Dark Side of Xeen" },
+	{ "cloudsofxeen", "Clouds of Xeen" },
+	{ "darksideofxeen", "Dark Side of Xeen" },
 	{ "worldofxeen", "World of Xeen" },
 	{ "swordsofxeen", "Swords of Xeen" },
 	{0, 0}
diff --git a/engines/xeen/detection_tables.h b/engines/xeen/detection_tables.h
index 31a79f3..07aeef5 100644
--- a/engines/xeen/detection_tables.h
+++ b/engines/xeen/detection_tables.h
@@ -81,6 +81,42 @@ static const XeenGameDescription gameDescriptions[] = {
 	},
 
 	{
+		// Clouds of Xeen
+		{
+			"cloudsofxeen",
+			nullptr,
+			{
+				{ "xeen.cc", 0, "0cffbab533d9afe140e69ec93096f43e", 13435646 },
+				AD_LISTEND
+			},
+			Common::EN_ANY,
+			Common::kPlatformDOS,
+			ADGF_NO_FLAGS,
+			GUIO1(GUIO_NONE)
+		},
+		GType_Clouds,
+		0
+	},
+
+	{
+		// Dark Side of Xeen
+		{
+			"darksideofxeen",
+			nullptr,
+			{
+				{ "dark.cc", 0, "df194483ecea6abc0511637d712ced7c", 11217676 },
+				AD_LISTEND
+			},
+			Common::EN_ANY,
+			Common::kPlatformDOS,
+			ADGF_NO_FLAGS,
+			GUIO1(GUIO_NONE)
+		},
+		GType_DarkSide,
+		0
+	},
+
+	{
 		// Swords of Xeen (GOG)
 		{
 			"swordsofxeen",
diff --git a/engines/xeen/files.cpp b/engines/xeen/files.cpp
index 6380199..89cc2c0 100644
--- a/engines/xeen/files.cpp
+++ b/engines/xeen/files.cpp
@@ -249,7 +249,7 @@ FileManager::~FileManager() {
 
 void FileManager::setGameCc(int ccMode) {
 	if (g_vm->getGameID() != GType_WorldOfXeen)
-		ccMode = 1;
+		ccMode = g_vm->getGameID() == GType_Clouds ? 0 : 1;
 
 	File::setCurrentArchive(ccMode);
 	_isDarkCc = ccMode != 0;
diff --git a/engines/xeen/map.cpp b/engines/xeen/map.cpp
index 16fce58..8bb04b1 100644
--- a/engines/xeen/map.cpp
+++ b/engines/xeen/map.cpp
@@ -992,10 +992,14 @@ void Map::load(int mapId) {
 		_sideTownPortal = _loadDarkSide ? 1 : 0;
 	}
 
-	if (_vm->getGameID() == GType_Swords) {
+	if (_vm->getGameID() == GType_Swords || _vm->getGameID() == GType_DarkSide) {
 		_animationInfo.load("dark.dat");
 		_monsterData.load("dark.mon");
 		_wallPicSprites.load("darkpic.dat");
+	} else if (_vm->getGameID() == GType_Clouds) {
+		_animationInfo.load("clouds.dat");
+		_monsterData.load("xeen.mon");
+		_wallPicSprites.load("xeenpic.dat");
 	} else if (_vm->getGameID() == GType_WorldOfXeen) {
 		files.setGameCc(1);
 
diff --git a/engines/xeen/worldofxeen/worldofxeen.cpp b/engines/xeen/worldofxeen/worldofxeen.cpp
index dcb8719..dbccf46 100644
--- a/engines/xeen/worldofxeen/worldofxeen.cpp
+++ b/engines/xeen/worldofxeen/worldofxeen.cpp
@@ -44,6 +44,10 @@ void WorldOfXeenEngine::outerGameLoop() {
 		_pendingAction = WOX_PLAY_GAME;
 
 	while (!shouldQuit() && _pendingAction != WOX_QUIT) {
+		// TODO: Remove this once proper startup menus are added for Clouds & Dark Side
+		if (g_vm->getGameID() != GType_WorldOfXeen)
+			_pendingAction = WOX_PLAY_GAME;
+
 		WOXGameAction action = _pendingAction;
 		_pendingAction = WOX_MENU;
 		_quitMode = QMODE_NONE;





More information about the Scummvm-git-logs mailing list