Remove support for common mods
authorPilzAdam <pilzadam@minetest.net>
Thu, 6 Jun 2013 23:46:03 +0000 (23:46 +0000)
committerPilzAdam <pilzadam@minetest.net>
Mon, 15 Jul 2013 23:46:59 +0000 (01:46 +0200)
src/mods.cpp

index 75c2dd89cd636ce6cf0434ddff1741b07ca0724d..bcdda01ef72911e252cc17ca83c3b1b5023f857c 100644 (file)
@@ -114,26 +114,6 @@ std::map<std::string, ModSpec> getModsInPath(std::string path, bool part_of_modp
        return result;
 }
 
-ModSpec findCommonMod(const std::string &modname)
-{
-       // Try to find in {$user,$share}/games/common/$modname
-       std::vector<std::string> find_paths;
-       find_paths.push_back(porting::path_user + DIR_DELIM + "games" +
-                       DIR_DELIM + "common" + DIR_DELIM + "mods" + DIR_DELIM + modname);
-       find_paths.push_back(porting::path_share + DIR_DELIM + "games" +
-                       DIR_DELIM + "common" + DIR_DELIM + "mods" + DIR_DELIM + modname);
-       for(u32 i=0; i<find_paths.size(); i++){
-               const std::string &try_path = find_paths[i];
-               if(fs::PathExists(try_path)){
-                       ModSpec spec(modname, try_path);
-                       parseModContents(spec);
-                       return spec;
-               }
-       }
-       // Failed to find mod
-       return ModSpec();
-}
-
 std::map<std::string, ModSpec> flattenModTree(std::map<std::string, ModSpec> mods)
 {
        std::map<std::string, ModSpec> result;
@@ -182,36 +162,6 @@ ModConfiguration::ModConfiguration(std::string worldpath)
 {
        SubgameSpec gamespec = findWorldSubgame(worldpath);
 
-       // Add common mods
-       std::map<std::string, ModSpec> common_mods;
-       std::vector<std::string> inexistent_common_mods;
-       Settings gameconf;
-       if(getGameConfig(gamespec.path, gameconf)){
-               if(gameconf.exists("common_mods")){
-                       Strfnd f(gameconf.get("common_mods"));
-                       while(!f.atend()){
-                               std::string modname = trim(f.next(","));
-                               if(modname.empty())
-                                       continue;
-                               ModSpec spec = findCommonMod(modname);
-                               if(spec.name.empty())
-                                       inexistent_common_mods.push_back(modname);
-                               else
-                                       common_mods.insert(std::make_pair(modname, spec));
-                       }
-               }
-       }
-       if(!inexistent_common_mods.empty()){
-               std::string s = "Required common mods ";
-               for(u32 i=0; i<inexistent_common_mods.size(); i++){
-                       if(i != 0) s += ", ";
-                       s += std::string("\"") + inexistent_common_mods[i] + "\"";
-               }
-               s += " could not be found.";
-               throw ModError(s);
-       }
-       addMods(flattenMods(common_mods));
-
        // Add all game mods and all world mods
        addModsInPath(gamespec.gamemods_path);
        addModsInPath(worldpath + DIR_DELIM + "worldmods");