diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 330ca91b01..7f158359cd 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -3,7 +3,7 @@ codecov = "org.enginehub.codecov:0.2.0" neogradle-userdev = "net.neoforged.gradle.userdev:7.0.142" fabric-loom = "fabric-loom:1.6.12" sponge-spongegradle = "org.spongepowered.gradle.plugin:2.2.0" -sponge-vanillagradle = "org.spongepowered.gradle.vanilla:0.2.1-20240507.024226-82" +sponge-vanillagradle = { id = "org.spongepowered.gradle.vanilla", version.ref = "sponge-vanillagradle" } [versions] kyoriText = "3.0.4" @@ -15,10 +15,18 @@ fabric-api = "0.100.3+1.21" neoforge-minecraft = "1.21" +sponge-minecraft = "1.21" +# https://repo.spongepowered.org/service/rest/repository/browse/maven-public/org/spongepowered/spongeapi/ +sponge-api = "12.0.0-20240616.151530-3" +sponge-api-major = "12" + # https://parchmentmc.org/docs/getting-started; note that we use older MC versions some times which is OK parchment-minecraft = "1.20.6" parchment-mappings = "2024.06.16" +# https://repo.spongepowered.org/service/rest/repository/browse/maven-public/org/spongepowered/vanillagradle/ +sponge-vanillagradle = "0.2.1-20240617.053350-83" + # Minimum versions we apply to make dependencies support newer Java minimumAsm = "9.7" minimumJdependency = "2.10" @@ -29,7 +37,7 @@ lang-version = "1450" [libraries] neogradle-neoform = "net.neoforged.gradle:neoform:7.0.142" -sponge-vanillagradle = "org.spongepowered:vanillagradle:0.2.1-20240507.024226-82" +sponge-vanillagradle = { module = "org.spongepowered:vanillagradle", version.ref = "sponge-vanillagradle" } licenser = "gradle.plugin.org.cadixdev.gradle:licenser:0.6.1" grgit = "org.ajoberstar.grgit:grgit-gradle:5.2.2" diff --git a/worldedit-sponge/build.gradle.kts b/worldedit-sponge/build.gradle.kts index 828644671d..33ebe5dd1c 100644 --- a/worldedit-sponge/build.gradle.kts +++ b/worldedit-sponge/build.gradle.kts @@ -23,13 +23,11 @@ repositories { } minecraft { - version("1.20.6") + version(libs.versions.sponge.minecraft.get()) } -val spongeApiVersion = "11.0.0-20240520.134918-37"; - sponge { - apiVersion(spongeApiVersion) + apiVersion(libs.versions.sponge.api.asProvider().get()) license("GPL-3.0-or-later") plugin("worldedit") { loader { @@ -69,7 +67,7 @@ dependencies { } configure { - archivesName.set("${project.name}-api$spongeApiVersion") + archivesName.set("${project.name}-api${libs.versions.sponge.api.major.get()}") } tasks.named("shadowJar") { diff --git a/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongeWorldEdit.java b/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongeWorldEdit.java index 8da64b8280..9134274ee6 100644 --- a/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongeWorldEdit.java +++ b/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongeWorldEdit.java @@ -201,6 +201,21 @@ public void serverStarted(StartedEngineEvent event) { }); } + // Disabled until https://github.com/SpongePowered/SpongeAPI/issues/2520 is resolved + // Will also need implementations in SpongeWorld to do placement + // Sponge.server().registry(RegistryTypes.FEATURE).streamEntries().forEach(feature -> { + // String id = feature.key().asString(); + // if (!ConfiguredFeatureType.REGISTRY.keySet().contains(id)) { + // ConfiguredFeatureType.REGISTRY.register(id, new ConfiguredFeatureType(id)); + // } + // }); + // Sponge.server().registry(RegistryTypes.STRUCTURE).streamEntries().forEach(structure -> { + // String id = structure.key().asString(); + // if (!StructureType.REGISTRY.keySet().contains(id)) { + // StructureType.REGISTRY.register(id, new StructureType(id)); + // } + // }); + event.game().registry(RegistryTypes.BLOCK_TYPE).tags().forEach(blockTypeTag -> { String id = blockTypeTag.key().asString(); if (!BlockCategory.REGISTRY.keySet().contains(id)) {