From d82786e776629c2283c9a7e9b2b936d3513cc545 Mon Sep 17 00:00:00 2001
From: cybersphinx <chr.ohm@gmx.net>
Date: Mon, 18 Jul 2011 17:52:41 +0200
Subject: [PATCH 1/2] Revert the mapmod support.

Revert "Merge remote-tracking branch 'zarel/topic/mapmodloader'"

This reverts commit aed2474ae511c1b49c041f85e5dfd793549725f6, reversing
changes made to 8934dfd527941c52bb4d31a02f7a5d77527d0101.

Revert "Merge remote-tracking branch 'zarel/topic/mapmodloader'"

This reverts commit 460d7c005b601aaab8ccc510a12ab166c6fcb448, reversing
changes made to db46f369200365e5cc6459b0fe71c0f4b6444972.

Conflicts:

	src/main.cpp

Refs #2610.
---
 src/game.cpp   |    4 ----
 src/init.cpp   |   12 ++++++------
 src/levels.cpp |    2 --
 src/main.cpp   |   34 +---------------------------------
 src/main.h     |    2 --
 src/modding.h  |    3 +--
 6 files changed, 8 insertions(+), 49 deletions(-)

diff --git a/src/game.cpp b/src/game.cpp
index 7976c44..6a85a7b 100644
--- a/src/game.cpp
+++ b/src/game.cpp
@@ -3378,10 +3378,6 @@ bool gameLoadV(PHYSFS_file* fileHandle, unsigned int version)
 	if (version >= VERSION_38)
 	{
 		setOverrideMods(saveGameData.modList);
-		if (saveGameData.sGame.map[0])
-		{
-			setOverrideMap(saveGameData.sGame.map, saveGameData.sGame.maxPlayers);
-		}
 	}
 
 	// All savegames from version 34 or before are little endian so swap them. All
diff --git a/src/init.cpp b/src/init.cpp
index ed5b54e..0d8992e 100644
--- a/src/init.cpp
+++ b/src/init.cpp
@@ -237,7 +237,7 @@ bool rebuildSearchPath( searchPathMode mode, bool force )
 	char tmpstr[PATH_MAX] = "\0";
 
 	if (mode != current_mode || force ||
-	    (use_override_mods && strcmp(override_mod_list, getModList())) || use_override_map)
+	    (use_override_mods && strcmp(override_mod_list, getModList())))
 	{
 		if (mode != mod_clean)
 		{
@@ -364,7 +364,7 @@ bool rebuildSearchPath( searchPathMode mode, bool force )
 #endif // DEBUG
 					// Add maps and global and multiplay mods
 					PHYSFS_addToSearchPath( curSearchPath->path, PHYSFS_APPEND );
-					addSubdirs( curSearchPath->path, "maps", PHYSFS_APPEND, use_override_map?override_map:NULL, false );
+					addSubdirs( curSearchPath->path, "maps", PHYSFS_APPEND, NULL, false );
 					addSubdirs( curSearchPath->path, "mods/music", PHYSFS_APPEND, NULL, false );
 					addSubdirs( curSearchPath->path, "mods/global", PHYSFS_APPEND, use_override_mods?override_mods:global_mods, true );
 					addSubdirs( curSearchPath->path, "mods", PHYSFS_APPEND, use_override_mods?override_mods:global_mods, true );
@@ -398,13 +398,13 @@ bool rebuildSearchPath( searchPathMode mode, bool force )
 				debug(LOG_ERROR, "Can't switch to unknown mods %i", mode);
 				return false;
 		}
-		if ((use_override_mods || use_override_map) && mode != mod_clean)
+		if (use_override_mods && mode != mod_clean)
 		{
-			if (use_override_mods && strcmp(getModList(),override_mod_list))
+			if (strcmp(getModList(),override_mod_list))
 			{
 				debug(LOG_POPUP, _("The required mod could not be loaded: %s\n\nWarzone will try to load the game without it."), override_mod_list);
 			}
-			clearOverrides();
+			clearOverrideMods();
 			current_mode = mod_override;
 		}
 
@@ -419,7 +419,7 @@ bool rebuildSearchPath( searchPathMode mode, bool force )
 	else if (use_override_mods)
 	{
 		// override mods are already the same as current mods, so no need to do anything
-		clearOverrides();
+		clearOverrideMods();
 	}
 	return true;
 }
diff --git a/src/levels.cpp b/src/levels.cpp
index 5ce8747..800e810 100644
--- a/src/levels.cpp
+++ b/src/levels.cpp
@@ -47,7 +47,6 @@
 #include "research.h"
 #include "lib/framework/lexer_input.h"
 #include "effects.h"
-#include "modding.h"
 
 extern int lev_get_lineno(void);
 extern char* lev_get_text(void);
@@ -686,7 +685,6 @@ bool levLoadData(const char* name, char *pSaveName, GAME_TYPE saveType)
 		}
 	}
 
-	setOverrideMap(psNewLevel->pName, psNewLevel->players);
 	if (!rebuildSearchPath(psNewLevel->dataDir, false))
 	{
 		return false;
diff --git a/src/main.cpp b/src/main.cpp
index ab498a5..5bab4e5 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -118,8 +118,6 @@ char * multiplay_mods[MAX_MODS] = { NULL };
 char * override_mods[MAX_MODS] = { NULL };
 char * override_mod_list = NULL;
 bool use_override_mods = false;
-char * override_map[2] = { NULL };
-bool use_override_map = false;
 
 char * loaded_mods[MAX_MODS] = { NULL };
 char * mod_list = NULL;
@@ -276,30 +274,7 @@ void setOverrideMods(char * modlist)
 	use_override_mods = true;
 }
 
-void setOverrideMap(char* map, int maxPlayers)
-{
-	// Transform "Sk-Rush-T2" into "4c-Rush.wz" so it can be matched by the map loader
-	override_map[0] = (char*)malloc(strlen(map)+1+7);
-	snprintf(override_map[0], 3, "%d", maxPlayers);
-	strcat(override_map[0],"c-");
-	if (strncmp(map, "Sk-", 3) == 0)
-	{
-		strcat(override_map[0],map+3);
-	}
-	else
-	{
-		strcat(override_map[0],map);
-	}
-	if (strncmp(override_map[0]+strlen(override_map[0])-3,"-T",2) == 0)
-	{
-		override_map[0][strlen(override_map[0])-3] = '\0';
-	}
-	strcat(override_map[0],".wz");
-	override_map[1] = NULL;
-	use_override_map = true;
-}
-
-void clearOverrides(void)
+void clearOverrideMods(void)
 {
 	int i;
 	use_override_mods = false;
@@ -309,13 +284,6 @@ void clearOverrides(void)
 	}
 	override_mods[0] = NULL;
 	override_mod_list = NULL;
-
-	if (override_map[0])
-	{
-		free(override_map[0]);
-		override_map[0] = NULL;
-	}
-	use_override_map = false;
 }
 
 void addLoadedMod(const char * modname)
diff --git a/src/main.h b/src/main.h
index 61a3203..98ef70f 100644
--- a/src/main.h
+++ b/src/main.h
@@ -51,7 +51,5 @@ extern char * multiplay_mods[MAX_MODS];
 extern char * override_mods[MAX_MODS];
 extern char * override_mod_list;
 extern bool use_override_mods;
-extern char * override_map[2];
-extern bool use_override_map;
 
 #endif // __INCLUDED_SRC_MAIN_H__
diff --git a/src/modding.h b/src/modding.h
index e33a851..619bd3f 100644
--- a/src/modding.h
+++ b/src/modding.h
@@ -26,8 +26,7 @@ void removeSubdirs( const char * basedir, const char * subdir, char * checkList[
 void printSearchPath( void );
 
 void setOverrideMods(char * modlist);
-void setOverrideMap(char* map, int maxPlayers);
-void clearOverrides(void);
+void clearOverrideMods(void);
 
 void addLoadedMod(const char * modname);
 void clearLoadedMods(void);
-- 
1.7.5.4


