From 97d4652f5fe15931b980117efabdff332f9f6428 Mon Sep 17 00:00:00 2001 From: LexManos Date: Fri, 26 Jun 2020 12:52:50 -0700 Subject: [PATCH] Make installer use MCPConfig version to identify MC assets. --- build.gradle | 14 +-- .../fml/loading/LibraryFinder.java | 2 +- .../minecraftforge/registries/GameData.java | 93 +++++++------------ 3 files changed, 44 insertions(+), 65 deletions(-) diff --git a/build.gradle b/build.gradle index 21f31fd05e..43b0f81f5e 100644 --- a/build.gradle +++ b/build.gradle @@ -10,7 +10,7 @@ buildscript { } } dependencies { - classpath 'net.minecraftforge.gradle:ForgeGradle:3.0.178' + classpath 'net.minecraftforge.gradle:ForgeGradle:3.0.179' classpath 'org.ow2.asm:asm:7.2' classpath 'org.ow2.asm:asm-tree:7.2' } @@ -829,16 +829,16 @@ project(':forge') { server: '/data/server.lzma' ], MC_SLIM: [ - client: "[net.minecraft:client:${MC_VERSION}:slim]", - server: "[net.minecraft:server:${MC_VERSION}:slim]" + client: "[net.minecraft:client:${MC_VERSION}-${MCP_VERSION}:slim]", + server: "[net.minecraft:server:${MC_VERSION}-${MCP_VERSION}:slim]" ], MC_SLIM_SHA: [ client: "'${sha1(tasks.getByName('downloadClientSlim').output)}'", server: "'${sha1(tasks.getByName('downloadServerSlim').output)}'" ], MC_EXTRA: [ - client: "[net.minecraft:client:${MC_VERSION}:extra]", - server: "[net.minecraft:server:${MC_VERSION}:extra]" + client: "[net.minecraft:client:${MC_VERSION}-${MCP_VERSION}:extra]", + server: "[net.minecraft:server:${MC_VERSION}-${MCP_VERSION}:extra]" ], MC_EXTRA_SHA: [ client: "'${sha1(tasks.getByName('downloadClientExtra').output)}'", @@ -926,7 +926,7 @@ project(':forge') { ['slim', 'extra'].each { type -> def name = "download${side.capitalize()}${type.capitalize()}" task "${name}"(type: DownloadMavenArtifact) { - artifact = "net.minecraft:${side}:${MC_VERSION}:${type}" + artifact = "net.minecraft:${side}:${MC_VERSION}-${MCP_VERSION}:${type}" } installerJson.dependsOn(name) installerJson.inputs.file(tasks.getByName(name).output) @@ -979,7 +979,7 @@ project(':forge') { artifacts.each { key, lib -> classpath += "libraries/${lib.downloads.artifact.path} " } - classpath += "libraries/net/minecraft/server/${MC_VERSION}/server-${MC_VERSION}-extra.jar" + classpath += "libraries/net/minecraft/server/${MC_VERSION}-${MCP_VERSION}/server-${MC_VERSION}-${MCP_VERSION}-extra.jar" MANIFESTS.each{ pkg, values -> if (pkg == '/') { diff --git a/src/fmllauncher/java/net/minecraftforge/fml/loading/LibraryFinder.java b/src/fmllauncher/java/net/minecraftforge/fml/loading/LibraryFinder.java index a047c88d04..b743db9e4d 100644 --- a/src/fmllauncher/java/net/minecraftforge/fml/loading/LibraryFinder.java +++ b/src/fmllauncher/java/net/minecraftforge/fml/loading/LibraryFinder.java @@ -79,7 +79,7 @@ public class LibraryFinder { static Path[] getMCPaths(final String mcVersion, final String mcpVersion, final String forgeVersion, final String forgeGroup, final String type) { Path srgMcPath = findLibsPath().resolve(MavenCoordinateResolver.get("net.minecraft", type, "", "srg", mcVersion+"-"+mcpVersion)); - Path mcExtrasPath = findLibsPath().resolve(MavenCoordinateResolver.get("net.minecraft", type, "", "extra", mcVersion)); + Path mcExtrasPath = findLibsPath().resolve(MavenCoordinateResolver.get("net.minecraft", type, "", "extra", mcVersion+"-"+mcpVersion)); Path patchedBinariesPath = findLibsPath().resolve(MavenCoordinateResolver.get(forgeGroup, "forge", "", type, mcVersion+"-"+forgeVersion)); LOGGER.debug(CORE,"SRG MC at {} is {}", srgMcPath.toString(), pathStatus(srgMcPath)); LOGGER.debug(CORE,"MC Extras at {} is {}", mcExtrasPath.toString(), pathStatus(mcExtrasPath)); diff --git a/src/main/java/net/minecraftforge/registries/GameData.java b/src/main/java/net/minecraftforge/registries/GameData.java index ebcd2e48a1..bf044f4bd8 100644 --- a/src/main/java/net/minecraftforge/registries/GameData.java +++ b/src/main/java/net/minecraftforge/registries/GameData.java @@ -110,47 +110,47 @@ public class GameData // Names used here match those in net.minecraft.util.Registry // Game objects - public static final ResourceLocation BLOCKS = new ResourceLocation("block"); - public static final ResourceLocation FLUIDS = new ResourceLocation("fluid"); - public static final ResourceLocation ITEMS = new ResourceLocation("item"); - public static final ResourceLocation POTIONS = new ResourceLocation("mob_effect"); - public static final ResourceLocation BIOMES = new ResourceLocation("biome"); - public static final ResourceLocation SOUNDEVENTS = new ResourceLocation("sound_event"); - public static final ResourceLocation POTIONTYPES = new ResourceLocation("potion"); - public static final ResourceLocation ENCHANTMENTS = new ResourceLocation("enchantment"); - public static final ResourceLocation ENTITIES = new ResourceLocation("entity_type"); - public static final ResourceLocation TILEENTITIES = new ResourceLocation("block_entity_type"); - public static final ResourceLocation PARTICLE_TYPES = new ResourceLocation("particle_type"); - public static final ResourceLocation CONTAINERS = new ResourceLocation("menu"); - public static final ResourceLocation PAINTING_TYPES = new ResourceLocation("motive"); // sic - public static final ResourceLocation RECIPE_SERIALIZERS = new ResourceLocation("recipe_serializer"); - public static final ResourceLocation ATTRIBUTES = new ResourceLocation("attribute"); - public static final ResourceLocation STAT_TYPES = new ResourceLocation("stat_type"); + private static final ResourceLocation BLOCKS = new ResourceLocation("block"); + private static final ResourceLocation FLUIDS = new ResourceLocation("fluid"); + private static final ResourceLocation ITEMS = new ResourceLocation("item"); + private static final ResourceLocation POTIONS = new ResourceLocation("mob_effect"); + private static final ResourceLocation BIOMES = new ResourceLocation("biome"); + private static final ResourceLocation SOUNDEVENTS = new ResourceLocation("sound_event"); + private static final ResourceLocation POTIONTYPES = new ResourceLocation("potion"); + private static final ResourceLocation ENCHANTMENTS = new ResourceLocation("enchantment"); + private static final ResourceLocation ENTITIES = new ResourceLocation("entity_type"); + private static final ResourceLocation TILEENTITIES = new ResourceLocation("block_entity_type"); + private static final ResourceLocation PARTICLE_TYPES = new ResourceLocation("particle_type"); + private static final ResourceLocation CONTAINERS = new ResourceLocation("menu"); + private static final ResourceLocation PAINTING_TYPES = new ResourceLocation("motive"); // sic + private static final ResourceLocation RECIPE_SERIALIZERS = new ResourceLocation("recipe_serializer"); + private static final ResourceLocation ATTRIBUTES = new ResourceLocation("attribute"); + private static final ResourceLocation STAT_TYPES = new ResourceLocation("stat_type"); // Villages - public static final ResourceLocation PROFESSIONS = new ResourceLocation("villager_profession"); - public static final ResourceLocation POI_TYPES = new ResourceLocation("point_of_interest_type"); - public static final ResourceLocation MEMORY_MODULE_TYPES = new ResourceLocation("memory_module_type"); - public static final ResourceLocation SENSOR_TYPES = new ResourceLocation("sensor_type"); - public static final ResourceLocation SCHEDULES = new ResourceLocation("schedule"); - public static final ResourceLocation ACTIVITIES = new ResourceLocation("activities"); + private static final ResourceLocation PROFESSIONS = new ResourceLocation("villager_profession"); + private static final ResourceLocation POI_TYPES = new ResourceLocation("point_of_interest_type"); + private static final ResourceLocation MEMORY_MODULE_TYPES = new ResourceLocation("memory_module_type"); + private static final ResourceLocation SENSOR_TYPES = new ResourceLocation("sensor_type"); + private static final ResourceLocation SCHEDULES = new ResourceLocation("schedule"); + private static final ResourceLocation ACTIVITIES = new ResourceLocation("activities"); // Worldgen - public static final ResourceLocation WORLD_CARVERS = new ResourceLocation("carver"); - public static final ResourceLocation SURFACE_BUILDERS = new ResourceLocation("surface_builder"); - public static final ResourceLocation FEATURES = new ResourceLocation("feature"); - public static final ResourceLocation DECORATORS = new ResourceLocation("decorator"); - public static final ResourceLocation BIOME_PROVIDER_TYPES = new ResourceLocation("biome_source_type"); - public static final ResourceLocation CHUNK_STATUS = new ResourceLocation("chunk_status"); - public static final ResourceLocation STRUCTURE_FEATURES = new ResourceLocation("structure_feature"); - public static final ResourceLocation BLOCK_STATE_PROVIDER_TYPES = new ResourceLocation("block_state_provider_type"); - public static final ResourceLocation BLOCK_PLACER_TYPES = new ResourceLocation("block_placer_type"); - public static final ResourceLocation FOLIAGE_PLACER_TYPES = new ResourceLocation("foliage_placer_type"); - public static final ResourceLocation TREE_DECORATOR_TYPES = new ResourceLocation("tree_decorator_type"); + private static final ResourceLocation WORLD_CARVERS = new ResourceLocation("carver"); + private static final ResourceLocation SURFACE_BUILDERS = new ResourceLocation("surface_builder"); + private static final ResourceLocation FEATURES = new ResourceLocation("feature"); + private static final ResourceLocation DECORATORS = new ResourceLocation("decorator"); + private static final ResourceLocation BIOME_PROVIDER_TYPES = new ResourceLocation("biome_source_type"); + private static final ResourceLocation CHUNK_STATUS = new ResourceLocation("chunk_status"); + private static final ResourceLocation STRUCTURE_FEATURES = new ResourceLocation("structure_feature"); + private static final ResourceLocation BLOCK_STATE_PROVIDER_TYPES = new ResourceLocation("block_state_provider_type"); + private static final ResourceLocation BLOCK_PLACER_TYPES = new ResourceLocation("block_placer_type"); + private static final ResourceLocation FOLIAGE_PLACER_TYPES = new ResourceLocation("foliage_placer_type"); + private static final ResourceLocation TREE_DECORATOR_TYPES = new ResourceLocation("tree_decorator_type"); // Custom forge registries - public static final ResourceLocation SERIALIZERS = new ResourceLocation("minecraft:dataserializers"); - public static final ResourceLocation LOOT_MODIFIER_SERIALIZERS = new ResourceLocation("forge:loot_modifier_serializers"); + private static final ResourceLocation SERIALIZERS = new ResourceLocation("minecraft:dataserializers"); + private static final ResourceLocation LOOT_MODIFIER_SERIALIZERS = new ResourceLocation("forge:loot_modifier_serializers"); private static final int MAX_VARINT = Integer.MAX_VALUE - 1; //We were told it is their intention to have everything in a reg be unlimited, so assume that until we find cases where it isnt. @@ -369,7 +369,7 @@ public class GameData } //Lets us clear the map so we can rebuild it. - static class ClearableObjectIntIdentityMap extends ObjectIntIdentityMap + private static class ClearableObjectIntIdentityMap extends ObjectIntIdentityMap { void clear() { @@ -753,27 +753,6 @@ public class GameData .confirm(); if (!confirmed) StartupQuery.abort(); - -/* - try - { - String skip = System.getProperty("fml.doNotBackup"); - if (skip == null || !"true".equals(skip)) - { - ZipperUtil.backupWorld(); - } - else - { - for (int x = 0; x < 10; x++) - LOGGER.error(GD, "!!!!!!!!!! UPDATING WORLD WITHOUT DOING BACKUP !!!!!!!!!!!!!!!!"); - } - } - catch (IOException e) - { - StartupQuery.notify("The world backup couldn't be created.\n\n" + e); - StartupQuery.abort(); - } -*/ } if (!defaulted.isEmpty())