mirror of
https://github.com/MinecraftForge/MinecraftForge.git
synced 2026-11-13 16:54:22 +00:00
Lex doesn't like this.
Revert "Fix up MC version compatibility checking to be a little less verbose."
This reverts commit 1927fd76e2.
This commit is contained in:
1 parent
1927fd76e2
commit
cc30c679e4
3 files changed
+17
-24
No files matched your search
@@ -31,17 +31,15 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import net.minecraftforge.fml.common.versioning.DefaultArtifactVersion;
|
||||
import net.minecraftforge.fml.common.versioning.VersionRange;
|
||||
import org.apache.logging.log4j.Level;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import com.google.common.io.ByteStreams;
|
||||
import com.google.gson.Gson;
|
||||
|
||||
import net.minecraftforge.fml.common.FMLLog;
|
||||
import net.minecraftforge.fml.common.InjectedModContainer;
|
||||
import net.minecraftforge.fml.common.Loader;
|
||||
import net.minecraftforge.fml.common.ModContainer;
|
||||
@@ -62,7 +60,6 @@ public class ForgeVersion
|
||||
//This number is incremented every time Jenkins builds Forge, and never reset. Should always be 0 in the repo code.
|
||||
public static final int buildVersion = 0;
|
||||
// This is the minecraft version we're building for - used in various places in Forge/FML code
|
||||
// Update version compatibility list below if there is SRG compatibility between this version and some previous versions
|
||||
public static final String mcVersion = "1.12.1";
|
||||
// This is the MCP data version we're using
|
||||
public static final String mcpVersion = "9.41";
|
||||
@@ -71,12 +68,6 @@ public class ForgeVersion
|
||||
@SuppressWarnings("unused")
|
||||
private static String target = null;
|
||||
|
||||
/*
|
||||
* Version compatibility. Add new version strings for each version we're SRG compatible with.
|
||||
* Reset the list to empty only when incompatible changes occur.
|
||||
*/
|
||||
private static String[] extraCompatibleVersions = { "1.12" };
|
||||
|
||||
private static final Logger log = LogManager.getLogger("ForgeVersionCheck");
|
||||
|
||||
public static int getMajorVersion()
|
||||
@@ -116,15 +107,6 @@ public class ForgeVersion
|
||||
return String.format("%d.%d.%d.%d", majorVersion, minorVersion, revisionVersion, buildVersion);
|
||||
}
|
||||
|
||||
// We add in the current version (we're compatible with it) and test additional versions for compatibility
|
||||
private static List<DefaultArtifactVersion> COMPATIBLE_VERSIONS = Stream.concat(Stream.of(mcVersion), Stream.of(extraCompatibleVersions))
|
||||
.map(s -> new DefaultArtifactVersion("dummy", s)).collect(Collectors.toList());
|
||||
|
||||
// Tests the mod supplied version range for compatibility with our version compatibility list
|
||||
public static boolean testMinecraftVersionCompatibility(VersionRange modVersion) {
|
||||
return COMPATIBLE_VERSIONS.stream().anyMatch(modVersion::containsVersion);
|
||||
}
|
||||
|
||||
public static enum Status
|
||||
{
|
||||
PENDING(),
|
||||
|
||||
@@ -67,6 +67,7 @@ import java.util.function.Function;
|
||||
import com.google.common.base.Strings;
|
||||
import com.google.common.collect.ArrayListMultimap;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.ImmutableList.Builder;
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
import com.google.common.collect.ListMultimap;
|
||||
@@ -255,7 +256,16 @@ public class FMLModContainer implements ModContainer
|
||||
}
|
||||
|
||||
String mcVersionString = (String)descriptor.get("acceptedMinecraftVersions");
|
||||
|
||||
if ("[1.8.8]".equals(mcVersionString)) mcVersionString = "[1.8.8,1.8.9]"; // MC 1.8.8 and 1.8.9 is forward SRG compatible so accept these versions by default.
|
||||
if ("[1.9.4]".equals(mcVersionString) ||
|
||||
"[1.9,1.9.4]".equals(mcVersionString) ||
|
||||
"[1.9.4,1.10)".equals(mcVersionString) ||
|
||||
"[1.10]".equals(mcVersionString))
|
||||
mcVersionString = "[1.9.4,1.10.2]";
|
||||
if ("[1.11]".equals(mcVersionString))
|
||||
mcVersionString = "[1.11,1.11.2]";
|
||||
if ("[1.12]".equals(mcVersionString))
|
||||
mcVersionString = "[1.12,1.12.1]";
|
||||
if (!Strings.isNullOrEmpty(mcVersionString))
|
||||
{
|
||||
minecraftAccepted = VersionParser.parseRange(mcVersionString);
|
||||
|
||||
@@ -26,6 +26,7 @@ import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.net.MalformedURLException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
@@ -34,7 +35,6 @@ import java.util.Properties;
|
||||
import java.util.Set;
|
||||
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.common.ForgeVersion;
|
||||
import net.minecraftforge.common.capabilities.CapabilityManager;
|
||||
import net.minecraftforge.common.config.ConfigManager;
|
||||
import net.minecraftforge.common.crafting.CraftingHelper;
|
||||
@@ -62,6 +62,7 @@ import org.apache.commons.io.IOUtils;
|
||||
import org.apache.logging.log4j.Level;
|
||||
|
||||
import com.google.common.base.CharMatcher;
|
||||
import java.util.function.Function;
|
||||
import com.google.common.base.Joiner;
|
||||
import com.google.common.base.Splitter;
|
||||
import com.google.common.collect.ArrayListMultimap;
|
||||
@@ -237,9 +238,9 @@ public class Loader
|
||||
ArrayListMultimap<String, String> reqList = ArrayListMultimap.create();
|
||||
for (ModContainer mod : getActiveModList())
|
||||
{
|
||||
if (!ForgeVersion.testMinecraftVersionCompatibility(mod.acceptableMinecraftVersionRange()))
|
||||
if (!mod.acceptableMinecraftVersionRange().containsVersion(minecraft.getProcessedVersion()))
|
||||
{
|
||||
FMLLog.log.fatal("The mod {} does not wish to run in Minecraft version {}. It is compatible with {}. You will have to remove it to play.", mod.getModId(), getMCVersionString(), mod.acceptableMinecraftVersionRange());
|
||||
FMLLog.log.fatal("The mod {} does not wish to run in Minecraft version {}. You will have to remove it to play.", mod.getModId(), getMCVersionString());
|
||||
WrongMinecraftVersionException ret = new WrongMinecraftVersionException(mod, getMCVersionString());
|
||||
FMLLog.log.fatal(ret.getMessage());
|
||||
wrongMinecraftExceptions.add(ret);
|
||||
|
||||
Reference in new issue
Block a user