Skip to content

Commit a918fa3

Browse files
committed
PARTIAL upgrade to Minecraft 26.1-snapshot-1.
Unimined 26.1 does not fully support Class Tweaker yet. This commit cannot be tested and is likely incomplete.
1 parent ffad7fa commit a918fa3

File tree

17 files changed

+64
-112
lines changed

17 files changed

+64
-112
lines changed

build.gradle

Lines changed: 5 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,28 @@
11
plugins {
22
id 'java'
3-
id 'xyz.wagyourtail.unimined' version '1.4.1' apply false
3+
id 'java-library'
4+
id 'xyz.wagyourtail.unimined' version '1.4.+' apply false
45
}
56

67
subprojects {
78
apply plugin: 'xyz.wagyourtail.unimined'
89

9-
project.archivesBaseName = "${rootProject.archives_base_name}-${project.name}"
10-
11-
configurations {
12-
modCompileOnly
13-
compileOnly.extendsFrom modCompileOnly
14-
modApi
15-
api.extendsFrom modApi
16-
}
10+
project.base.archivesName = "${rootProject.archives_base_name}-${project.name}"
1711

1812
unimined.minecraft(sourceSets.main, true) {
1913
version rootProject.minecraft_version
2014

21-
mappings {
22-
mojmap()
23-
devNamespace "mojmap"
24-
}
25-
2615
mods {
27-
remap(configurations.modCompileOnly) {
28-
catchAWNamespaceAssertion()
29-
}
30-
31-
remap(configurations.modApi)
32-
33-
// This is basically just a shortcut for `remap(configurations.modImplementation)`.
34-
modImplementation {
35-
// You can do this if mods have the wrong access widener mapping, but it may break runs.
36-
catchAWNamespaceAssertion()
37-
}
3816
}
3917
}
4018
}
4119

4220
// Ferry for publishing; this has to be after unimined plugin apply and before subproject version is set.
43-
apply from: 'https://raw.githubusercontent.com/TerraformersMC/GradleScripts/3.0/ferry-mpp.gradle'
21+
apply from: 'https://raw.githubusercontent.com/TerraformersMC/GradleScripts/3.1/ferry-mpp.gradle'
4422

4523
allprojects {
4624
apply plugin: 'java'
25+
apply plugin: 'java-library'
4726
apply plugin: 'maven-publish'
4827

4928
group = rootProject.maven_group

common/build.gradle

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,8 @@
11
unimined.minecraft {
22
fabric {
33
loader fabric_loader_version
4-
accessWidener file("src/main/resources/biolith.accesswidener")
4+
accessWidener file("src/main/resources/biolith.classtweaker")
55
}
66

77
defaultRemapJar = false
88
}
9-
10-
// Unimined hard codes injected interfaces to come from 'fabric.mod.json' in 'resources' of the 'main' source set.
11-
// This creates a frustrating situation where the main source set of :common must contain FMJ which conflicts with
12-
// the one in :fabric (and gradle's conflict resolution just arbitrarily picks "the first" version of the file)...
13-
sourceSets {
14-
withoutFMJ {
15-
java {
16-
}
17-
resources {
18-
exclude 'fabric.mod.json'
19-
}
20-
}
21-
}
22-
23-
sourcesJar {
24-
from sourceSets.withoutFMJ.allSource
25-
exclude 'fabric.mod.json'
26-
}

common/src/main/java/com/terraformersmc/biolith/impl/mixin/MixinSearchTree.java renamed to common/src/main/java/com/terraformersmc/biolith/impl/mixin/MixinClimateRTree.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
import net.minecraft.world.level.biome.Climate;
2020

2121
@Mixin(Climate.RTree.class)
22-
public class MixinSearchTree<T> implements InterfaceSearchTree<T> {
22+
public class MixinClimateRTree<T> implements InterfaceSearchTree<T> {
2323
@Shadow
2424
@Final
2525
private Climate.RTree.Node<T> root;

common/src/main/java/com/terraformersmc/biolith/impl/mixin/MixinServerWorld.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ public class MixinServerWorld {
1717
))
1818
@SuppressWarnings("unused")
1919
private ChunkGeneratorStructureState biolith$serverWorldStarting(ServerChunkCache instance, Operation<ChunkGeneratorStructureState> original) {
20+
//noinspection ConstantConditions
2021
BiomeCoordinator.handleWorldStarting((ServerLevel)(Object) this);
2122

2223
return original.call(instance);

common/src/main/resources/biolith.accesswidener renamed to common/src/main/resources/biolith.classtweaker

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
accessWidener v1 named
1+
classTweaker v1 official
22

33
accessible field net/minecraft/server/level/WorldGenRegion level Lnet/minecraft/server/level/ServerLevel;
44
accessible method net/minecraft/world/level/biome/BiomeManager getFiddledDistance (JIIIDDD)D
@@ -22,3 +22,6 @@ accessible class net/minecraft/world/level/biome/FeatureSorter$StepFeatureDat
2222
accessible method net/minecraft/world/level/biome/FeatureSorter$StepFeatureData <init> (Ljava/util/List;)V
2323
accessible class net/minecraft/world/level/levelgen/SurfaceRules$Context
2424
accessible method net/minecraft/world/level/levelgen/SurfaceRules$Context getMinSurfaceLevel ()I
25+
26+
inject-interface net/minecraft/world/level/biome/BiomeSource com/terraformersmc/biolith/impl/biome/InterfaceBiomeSource
27+
inject-interface net/minecraft/world/level/biome/Climate$RTree com/terraformersmc/biolith/impl/biome/InterfaceClimateRTree

common/src/main/resources/biolith.mixins.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"MixinMinecraftServer",
1212
"MixinMultiNoiseBiomeSource",
1313
"MixinPlacedFeatureIndexer",
14-
"MixinSearchTree",
14+
"MixinClimateRTree",
1515
"MixinServerWorld",
1616
"MixinSurfaceBuilder",
1717
"MixinTheEndBiomeSource"

common/src/main/resources/fabric.mod.json

Lines changed: 0 additions & 11 deletions
This file was deleted.

fabric/build.gradle

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,29 @@
1+
import groovy.xml.XmlSlurper
2+
13
unimined.minecraft {
24
// Combine with common, for identifying both together as one mod for dev runs
3-
combineWith(project(":common").sourceSets.withoutFMJ)
5+
combineWith(project(":common").sourceSets.main)
46

57
fabric {
68
loader project.fabric_loader_version
7-
accessWidener file("../common/src/main/resources/biolith.accesswidener")
9+
accessWidener file("../common/src/main/resources/biolith.classtweaker")
810
}
911
}
1012

1113
dependencies {
12-
modImplementation "net.fabricmc:fabric-loader:${rootProject.fabric_loader_version}"
13-
modApi "net.fabricmc.fabric-api:fabric-api:${rootProject.fabric_api_version}"
14+
implementation "net.fabricmc:fabric-loader:${rootProject.fabric_loader_version}"
15+
api "net.fabricmc.fabric-api:fabric-api:${rootProject.fabric_api_version}"
1416

1517
implementation(project(path: ":common")) { transitive = false }
1618

1719
// Terraform Surfaces API for OpenSimplexNoise
18-
//include(modImplementation("com.terraformersmc.terraform-api:terraform-surfaces-api-v1:${rootProject.terraform_surfaces_api_version}"))
20+
//include(implementation("com.terraformersmc.terraform-api:terraform-surfaces-api-v1:${rootProject.terraform_surfaces_api_version}"))
1921

2022
// TerraBlender so we can use its API
21-
modCompileOnly "com.github.glitchfiend:TerraBlender-fabric:${rootProject.terrablender_version}"
23+
compileOnly "com.github.glitchfiend:TerraBlender-fabric:${rootProject.terrablender_version}"
2224

2325
// Moderner Beta so we can target it with mixins
24-
modCompileOnly "maven.modrinth:moderner-beta:${rootProject.moderner_beta_version}-fabric"
26+
compileOnly "maven.modrinth:moderner-beta:${rootProject.moderner_beta_version}-fabric"
2527
}
2628

2729
processResources {
@@ -44,7 +46,7 @@ publish {
4446
rootProject.enabled_platforms.split(",").contains(project.projectDir)
4547
}
4648
onlyIf {
47-
checkVersion(archivesBaseName, version)
49+
checkVersion(project.base.archivesName, version)
4850
}
4951

5052
curseforge_game_versions = "${rootProject.curseforge_game_versions}, Fabric, Quilt"
@@ -56,13 +58,13 @@ publishing {
5658
mavenJava(MavenPublication) {
5759
from components.java
5860
groupId "${rootProject.maven_group}"
59-
artifactId "${project.archivesBaseName}"
61+
artifactId "${project.base.archivesName}"
6062
version "${project.version}"
6163

6264
// Exclude TerraBlender from maven deps so Loom does not load it during builds
6365
// and tests of other projects using our API (unless they configure it to).
6466
pom.withXml {
65-
asNode().dependencies.dependency.each { dep ->
67+
asNode(null).dependencies.dependency.each { dep ->
6668
if (dep.artifactId.last().value().last() in ["TerraBlender-fabric", "TerraBlender-forge", "TerraBlender-neoforge"]) {
6769
assert dep.parent().remove(dep)
6870
}
@@ -90,9 +92,9 @@ static void setupRepositories(RepositoryHandler repositories) {
9092

9193
ext.checkVersion = { archivesBaseName, version ->
9294
try {
93-
def xml = new URL("https://maven.terraformersmc.com/com/terraformersmc/$archivesBaseName/maven-metadata.xml").text
95+
def xml = new URI("https://maven.terraformersmc.com/com/terraformersmc/$archivesBaseName/maven-metadata.xml").toURL().text
9496
def metadata = new XmlSlurper().parseText(xml)
95-
def versions = metadata.versioning.versions.version*.text()
97+
versions = metadata.versioning.versions.version*.text()
9698
if (versions.contains(version)) {
9799
println "$archivesBaseName version $version will not be published; already exists"
98100
return false

fabric/src/main/resources/fabric.mod.json

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,6 @@
2626
"biolith.fabric.mixins.json"
2727
],
2828
"custom": {
29-
"loom:injected_interfaces": {
30-
"net/minecraft/class_1966": ["com/terraformersmc/biolith/impl/biome/InterfaceBiomeSource"],
31-
"net/minecraft/class_6544\u0024class_6548": ["com/terraformersmc/biolith/impl/biome/InterfaceSearchTree"]
32-
},
3329
"modmenu": {
3430
"badges": [
3531
"library"

forge/build.gradle

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
import groovy.xml.XmlSlurper
2+
13
unimined.minecraft {
24
// Combine with common, for identifying both together as one mod for dev runs
3-
combineWith(project(":common").sourceSets.withoutFMJ)
5+
combineWith(project(":common").sourceSets.main)
46

57
minecraftForge {
68
loader forge_version
@@ -12,15 +14,15 @@ unimined.minecraft {
1214
dependencies {
1315
// Forge does not provide MixinExtras
1416
compileOnly(annotationProcessor("io.github.llamalad7:mixinextras-common:${rootProject.mixinextras_version}"))
15-
implementation(include("io.github.llamalad7:mixinextras-forge:${rootProject.mixinextras_version}"))
17+
include(implementation("io.github.llamalad7:mixinextras-forge:${rootProject.mixinextras_version}"))
1618

1719
implementation(project(path: ":common")) { transitive = false }
1820

1921
// Terraform Surfaces API for OpenSimplexNoise
20-
//include(modImplementation("com.terraformersmc.terraform-api:terraform-surfaces-api-v1:${rootProject.terraform_surfaces_api_version}"))
22+
//include(implementation("com.terraformersmc.terraform-api:terraform-surfaces-api-v1:${rootProject.terraform_surfaces_api_version}"))
2123

2224
// TerraBlender so we can use its API
23-
modCompileOnly "com.github.glitchfiend:TerraBlender-forge:${rootProject.terrablender_version}"
25+
compileOnly "com.github.glitchfiend:TerraBlender-forge:${rootProject.terrablender_version}"
2426
}
2527

2628
processResources {
@@ -36,7 +38,7 @@ publish {
3638
rootProject.enabled_platforms.split(",").contains(project.projectDir)
3739
}
3840
onlyIf {
39-
checkVersion(archivesBaseName, version)
41+
checkVersion(project.base.archivesName, version)
4042
}
4143

4244
curseforge_game_versions = "${rootProject.curseforge_game_versions}, Forge"
@@ -48,13 +50,13 @@ publishing {
4850
mavenJava(MavenPublication) {
4951
from components.java
5052
groupId "${rootProject.maven_group}"
51-
artifactId "${project.archivesBaseName}"
53+
artifactId "${project.base.archivesName}"
5254
version "${project.version}"
5355

5456
// Exclude TerraBlender from maven deps so Loom does not load it during builds
5557
// and tests of other projects using our API (unless they configure it to).
5658
pom.withXml {
57-
asNode().dependencies.dependency.each { dep ->
59+
asNode(null).dependencies.dependency.each { dep ->
5860
if (dep.artifactId.last().value().last() in ["TerraBlender-fabric", "TerraBlender-forge", "TerraBlender-neoforge"]) {
5961
assert dep.parent().remove(dep)
6062
}
@@ -82,7 +84,7 @@ static void setupRepositories(RepositoryHandler repositories) {
8284

8385
ext.checkVersion = { archivesBaseName, version ->
8486
try {
85-
def xml = new URL("https://maven.terraformersmc.com/com/terraformersmc/$archivesBaseName/maven-metadata.xml").text
87+
def xml = new URI("https://maven.terraformersmc.com/com/terraformersmc/$archivesBaseName/maven-metadata.xml").toURL().text
8688
def metadata = new XmlSlurper().parseText(xml)
8789
def versions = metadata.versioning.versions.version*.text()
8890
if (versions.contains(version)) {

0 commit comments

Comments
 (0)