Skip to content

Commit c84bda3

Browse files
committed
Update to MC 1.21.11
1 parent 0dfb6a1 commit c84bda3

18 files changed

Lines changed: 83 additions & 139 deletions

File tree

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ jobs:
5353
GITHUB_USER: ${{ github.actor }}
5454
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5555
- name: 'Test'
56-
run: ./gradlew test :loader-neoforge:runGameTestServer :loader-fabric:runGameTestServer jacocoTestReport -x :loader-forge:downloadAssets
56+
run: ./gradlew test runGameTestServer jacocoTestReport
5757
- name: 'Submit coverage results'
5858
uses: coverallsapp/github-action@v2
5959
- name: 'Deploy as GitHub CI artifacts'

build.gradle

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,9 @@ plugins {
33
id 'com.diffplug.spotless' version '6.25.0' apply false
44
id 'com.modrinth.minotaur' version '2.+' apply false
55

6-
id 'fabric-loom' version '1.13-SNAPSHOT' apply false
7-
id 'net.neoforged.moddev' version '2.0.119' apply false
8-
id 'net.minecraftforge.gradle' version '[6.0.46,6.2)' apply false
6+
id 'net.fabricmc.fabric-loom-remap' version '1.14-SNAPSHOT' apply false
7+
id 'net.neoforged.moddev' version '2.0.126' apply false
8+
id 'net.minecraftforge.accesstransformers' version '5.0.3' apply false
9+
id 'net.minecraftforge.gradle' version '7.0.0-beta.55' apply false
910
}
1011

buildSrc/src/main/groovy/multiloader-common.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,7 @@ publishing {
248248
publications { PublicationContainer publicationContainer ->
249249
publicationContainer.register("maven", MavenPublication) { MavenPublication publication ->
250250
publication.artifacts = [jar, javadocJar, deobfJar, sourcesJar]
251-
publication.artifactId = project.archivesBaseName.toLowerCase() // GH can't handle uppercase...
251+
publication.artifactId = project.base.archivesName.get().toLowerCase() // GH can't handle uppercase...
252252
}
253253
}
254254
}

buildSrc/src/main/groovy/multiloader-loader-fabric.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
plugins {
44
id 'multiloader-loader'
5-
id 'fabric-loom'
5+
id 'net.fabricmc.fabric-loom-remap'
66
}
77
dependencies {
88
minecraft "com.mojang:minecraft:${minecraft_version}"
@@ -66,7 +66,7 @@ publishing {
6666
publications { PublicationContainer publicationContainer ->
6767
publicationContainer.getByName("maven") { MavenPublication publication ->
6868
publication.artifacts = [remapJar, javadocJar, deobfJar, remapSourcesJar]
69-
publication.artifactId = project.archivesBaseName.toLowerCase() // GH can't handle uppercase...
69+
publication.artifactId = project.base.archivesName.get().toLowerCase() // GH can't handle uppercase...
7070
}
7171
}
7272
}

buildSrc/src/main/groovy/multiloader-loader-forge.gradle

Lines changed: 24 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,26 @@
22

33
plugins {
44
id 'multiloader-loader'
5+
id 'net.minecraftforge.accesstransformers'
56
id 'net.minecraftforge.gradle'
67
}
78

89
// All jar files from this folder will be added automatically as runtime mod dependencies (inspired by AE2's build.gradle)
910
def extraModsDir = "extra-mods"
1011

1112
repositories {
13+
maven minecraft.mavenizer
14+
maven fg.forgeMaven
15+
maven fg.minecraftLibsMaven
1216
flatDir {
1317
name "extra-mods"
1418
dir file(extraModsDir)
1519
}
1620
}
1721

1822
dependencies {
19-
minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
20-
annotationProcessor 'net.minecraftforge:eventbus-validator:7.0-beta.7'
23+
implementation minecraft.dependency("net.minecraftforge:forge:${minecraft_version}-${forge_version}")
24+
annotationProcessor 'net.minecraftforge:eventbus-validator:7.0-beta.10'
2125

2226
testImplementation "junit:junit:4.12"
2327
testImplementation "org.mockito:mockito-core:1.+"
@@ -41,66 +45,37 @@ sourceSets.main.resources { srcDir 'src/generated/resources' }
4145
minecraft {
4246
mappings channel: 'official', version: minecraft_version
4347

44-
reobf = false
45-
46-
copyIdeResources.set(true)
47-
4848
// Automatically enable neoforge AccessTransformers if the file exists
4949
def at = project(':loader-common').file('src/main/resources/META-INF/accesstransformer.cfg')
5050
if (at.exists()) {
51-
accessTransformer = file(at.absolutePath)
51+
accessTransformers = '../../../../loader-common/src/main/resources/META-INF/accesstransformer.cfg'
5252
}
5353

5454
runs {
55-
client {
56-
property 'forge.enabledGameTestNamespaces', "cyclopscore,${mod_id}"
57-
property 'eventbus.api.strictRuntimeChecks', 'true'
58-
workingDirectory file('runs/client')
59-
ideaModule "${rootProject.name}.${project.name}.main"
60-
taskName 'Client'
61-
mods {
62-
modClientRun {
63-
source sourceSets.main
64-
}
65-
}
55+
configureEach {
56+
workingDir.convention layout.projectDirectory.dir('run')
57+
//systemProperty 'forge.logging.markers', 'REGISTRIES'
58+
systemProperty 'forge.logging.console.level', 'debug'
59+
systemProperty 'eventbus.api.strictRuntimeChecks', 'true'
60+
}
61+
62+
register('client') {
63+
systemProperty 'forge.enabledGameTestNamespaces', "cyclopscore,${mod_id}"
64+
jvmArgs "-XstartOnFirstThread" // Fixes startup error
6665
}
6766

68-
server {
69-
property 'forge.enabledGameTestNamespaces', "cyclopscore,${mod_id}"
70-
property 'eventbus.api.strictRuntimeChecks', 'true'
67+
register('server') {
68+
systemProperty 'forge.enabledGameTestNamespaces', "cyclopscore,${mod_id}"
7169
args '--nogui'
72-
workingDirectory file('runs/server')
73-
ideaModule "${rootProject.name}.${project.name}.main"
74-
taskName 'Server'
75-
mods {
76-
modServerRun {
77-
source sourceSets.main
78-
}
79-
}
8070
}
8171

82-
gameTestServer {
83-
property 'forge.enabledGameTestNamespaces', "cyclopscore,${mod_id}"
84-
workingDirectory file('runs/gametest')
85-
ideaModule "${rootProject.name}.${project.name}.main"
86-
taskName 'runGameTestServer'
87-
mods {
88-
modDataRun {
89-
source sourceSets.main
90-
}
91-
}
72+
register('gameTestServer') {
73+
systemProperty 'forge.enabledGameTestNamespaces', "cyclopscore,${mod_id}"
9274
}
9375

94-
data {
95-
workingDirectory file('runs/data')
96-
ideaModule "${rootProject.name}.${project.name}.main"
97-
args '--mod', mod_id, '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/')
98-
taskName 'Data'
99-
mods {
100-
modDataRun {
101-
source sourceSets.main
102-
}
103-
}
76+
register('data') {
77+
workingDir = layout.projectDirectory.dir('run-data')
78+
args '--mod', mod_id, '--all', '--output', layout.projectDirectory.dir('src/generated/resources'), '--existing', layout.projectDirectory.dir('src/main/resources')
10479
}
10580
}
10681
}

gradle.properties

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ group=org.cyclops.capabilityproxy
44
java_version=21
55

66
# Common
7-
minecraft_version=1.21.10
7+
minecraft_version=1.21.11
88
mod_name=CapabilityProxy
99
mod_author=rubensworks (aka kroeser)
1010
mod_id=capabilityproxy
@@ -14,29 +14,29 @@ issue_tracker_url=https://github.com/CyclopsMC/CapabilityProxy/issues
1414
display_url=https://www.curseforge.com/minecraft/mc-mods/capabilityproxy
1515
description=Access block capabilities from multiple sides.
1616
fingerprint=bd0353b3e8a2810d60dd584e256e364bc3bedd44
17-
neo_form_version=1.21.10-20251010.172816
17+
neo_form_version=1.21.11-20251209.172050
1818
parchment_version=2025.10.12
1919
parchment_minecraft_version=1.21.10
2020
curseforge_project_id=266479
2121
modrinth_project_id=3mPgwv8n
2222

2323
# Fabric
24-
fabric_version=0.138.3+1.21.10
25-
fabric_loader_version=0.18.1
24+
fabric_version=0.140.0+1.21.11
25+
fabric_loader_version=0.18.2
2626
# Dependencies
27-
fabric_forgeconfigapiport_version=21.10.1
27+
fabric_forgeconfigapiport_version=21.11.1
2828
# https://maven.fabricmc.net/teamreborn/energy/
2929
fabric_teamrebornenergy_version=4.2.0
3030
# https://maven.fabricmc.net/TechReborn/
3131
fabric_techreborn_version=TechReborn-1.21.10:5.15.0
3232

3333
# NeoForge
34-
neoforge_version=21.10.53-beta
34+
neoforge_version=21.11.10-beta
3535
neoforge_loader_version_range=[4,)
3636
neoforge_update_json_url=https://raw.githubusercontent.com/CyclopsMC/Versions/master/neoforge_update/capabilityproxy.json
3737

3838
# Forge
39-
forge_version=60.1.0
39+
forge_version=61.0.3
4040
forge_loader_version_range=[2,)
4141
forge_update_json_url=https://raw.githubusercontent.com/CyclopsMC/Versions/master/forge_update/capabilityproxy.json
4242

@@ -46,4 +46,4 @@ org.gradle.daemon=false
4646
org.gradle.caching=true
4747

4848
# Common dependencies
49-
cyclopscore_version=1.25.5-855
49+
cyclopscore_version=1.25.5-868
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.0-rc-1-bin.zip
44
networkTimeout=10000
55
zipStoreBase=GRADLE_USER_HOME
66
zipStorePath=wrapper/dists
Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package org.cyclops.capabilityproxy;
22

33
import net.minecraft.core.registries.Registries;
4-
import net.minecraft.resources.ResourceLocation;
4+
import net.minecraft.resources.Identifier;
55
import net.minecraft.world.inventory.MenuType;
66
import net.minecraft.world.item.Item;
77
import net.minecraft.world.level.block.Block;
@@ -18,21 +18,21 @@
1818
*/
1919
public class RegistryEntries {
2020

21-
public static final DeferredHolderCommon<Item, Item> ITEM_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.ITEM, ResourceLocation.parse("capabilityproxy:capability_proxy"));
22-
public static final DeferredHolderCommon<Item, Item> ITEM_ENTITY_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.ITEM, ResourceLocation.parse("capabilityproxy:entity_capability_proxy"));
23-
public static final DeferredHolderCommon<Item, Item> ITEM_ITEM_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.ITEM, ResourceLocation.parse("capabilityproxy:item_capability_proxy"));
24-
public static final DeferredHolderCommon<Item, Item> ITEM_RANGED_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.ITEM, ResourceLocation.parse("capabilityproxy:ranged_capability_proxy"));
21+
public static final DeferredHolderCommon<Item, Item> ITEM_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.ITEM, Identifier.parse("capabilityproxy:capability_proxy"));
22+
public static final DeferredHolderCommon<Item, Item> ITEM_ENTITY_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.ITEM, Identifier.parse("capabilityproxy:entity_capability_proxy"));
23+
public static final DeferredHolderCommon<Item, Item> ITEM_ITEM_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.ITEM, Identifier.parse("capabilityproxy:item_capability_proxy"));
24+
public static final DeferredHolderCommon<Item, Item> ITEM_RANGED_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.ITEM, Identifier.parse("capabilityproxy:ranged_capability_proxy"));
2525

26-
public static final DeferredHolderCommon<Block, Block> BLOCK_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK, ResourceLocation.parse("capabilityproxy:capability_proxy"));
27-
public static final DeferredHolderCommon<Block, Block> BLOCK_ENTITY_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK, ResourceLocation.parse("capabilityproxy:entity_capability_proxy"));
28-
public static final DeferredHolderCommon<Block, Block> BLOCK_ITEM_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK, ResourceLocation.parse("capabilityproxy:item_capability_proxy"));
29-
public static final DeferredHolderCommon<Block, Block> BLOCK_RANGED_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK, ResourceLocation.parse("capabilityproxy:ranged_capability_proxy"));
26+
public static final DeferredHolderCommon<Block, Block> BLOCK_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK, Identifier.parse("capabilityproxy:capability_proxy"));
27+
public static final DeferredHolderCommon<Block, Block> BLOCK_ENTITY_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK, Identifier.parse("capabilityproxy:entity_capability_proxy"));
28+
public static final DeferredHolderCommon<Block, Block> BLOCK_ITEM_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK, Identifier.parse("capabilityproxy:item_capability_proxy"));
29+
public static final DeferredHolderCommon<Block, Block> BLOCK_RANGED_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK, Identifier.parse("capabilityproxy:ranged_capability_proxy"));
3030

31-
public static final DeferredHolderCommon<BlockEntityType<?>, BlockEntityType<BlockEntityCapabilityProxyCommon>> TILE_ENTITY_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK_ENTITY_TYPE, ResourceLocation.parse("capabilityproxy:capability_proxy"));
32-
public static final DeferredHolderCommon<BlockEntityType<?>, BlockEntityType<BlockEntityEntityCapabilityProxyCommon>> TILE_ENTITY_ENTITY_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK_ENTITY_TYPE, ResourceLocation.parse("capabilityproxy:entity_capability_proxy"));
33-
public static final DeferredHolderCommon<BlockEntityType<?>, BlockEntityType<BlockEntityItemCapabilityProxyCommon>> TILE_ENTITY_ITEM_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK_ENTITY_TYPE, ResourceLocation.parse("capabilityproxy:item_capability_proxy"));
34-
public static final DeferredHolderCommon<BlockEntityType<?>, BlockEntityType<BlockEntityCapabilityProxyCommon>> TILE_ENTITY_RANGED_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK_ENTITY_TYPE, ResourceLocation.parse("capabilityproxy:ranged_capability_proxy"));
31+
public static final DeferredHolderCommon<BlockEntityType<?>, BlockEntityType<BlockEntityCapabilityProxyCommon>> TILE_ENTITY_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK_ENTITY_TYPE, Identifier.parse("capabilityproxy:capability_proxy"));
32+
public static final DeferredHolderCommon<BlockEntityType<?>, BlockEntityType<BlockEntityEntityCapabilityProxyCommon>> TILE_ENTITY_ENTITY_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK_ENTITY_TYPE, Identifier.parse("capabilityproxy:entity_capability_proxy"));
33+
public static final DeferredHolderCommon<BlockEntityType<?>, BlockEntityType<BlockEntityItemCapabilityProxyCommon>> TILE_ENTITY_ITEM_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK_ENTITY_TYPE, Identifier.parse("capabilityproxy:item_capability_proxy"));
34+
public static final DeferredHolderCommon<BlockEntityType<?>, BlockEntityType<BlockEntityCapabilityProxyCommon>> TILE_ENTITY_RANGED_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.BLOCK_ENTITY_TYPE, Identifier.parse("capabilityproxy:ranged_capability_proxy"));
3535

36-
public static final DeferredHolderCommon<MenuType<?>, MenuType<ContainerItemCapabilityProxy>> CONTAINER_ITEM_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.MENU, ResourceLocation.parse("capabilityproxy:item_capability_proxy"));
36+
public static final DeferredHolderCommon<MenuType<?>, MenuType<ContainerItemCapabilityProxy>> CONTAINER_ITEM_CAPABILITY_PROXY = DeferredHolderCommon.create(Registries.MENU, Identifier.parse("capabilityproxy:item_capability_proxy"));
3737

3838
}

loader-common/src/main/java/org/cyclops/capabilityproxy/client/gui/ContainerScreenItemCapabilityProxy.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import net.minecraft.client.gui.GuiGraphics;
44
import net.minecraft.network.chat.Component;
5-
import net.minecraft.resources.ResourceLocation;
5+
import net.minecraft.resources.Identifier;
66
import net.minecraft.world.entity.player.Inventory;
77
import org.cyclops.capabilityproxy.Reference;
88
import org.cyclops.capabilityproxy.inventory.container.ContainerItemCapabilityProxy;
@@ -19,8 +19,8 @@ public ContainerScreenItemCapabilityProxy(ContainerItemCapabilityProxy container
1919
}
2020

2121
@Override
22-
protected ResourceLocation constructGuiTexture() {
23-
return ResourceLocation.fromNamespaceAndPath(Reference.MOD_ID, "textures/gui/item_capability_proxy.png");
22+
protected Identifier constructGuiTexture() {
23+
return Identifier.fromNamespaceAndPath(Reference.MOD_ID, "textures/gui/item_capability_proxy.png");
2424
}
2525

2626
@Override

loader-common/src/main/java/org/cyclops/capabilityproxy/client/render/RenderTileRangedCapabilityProxy.java

Lines changed: 4 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,43 +2,29 @@
22

33
import com.mojang.blaze3d.vertex.PoseStack;
44
import net.minecraft.client.Minecraft;
5-
import net.minecraft.client.renderer.RenderPipelines;
6-
import net.minecraft.client.renderer.RenderStateShard;
7-
import net.minecraft.client.renderer.RenderType;
85
import net.minecraft.client.renderer.SubmitNodeCollector;
96
import net.minecraft.client.renderer.blockentity.BlockEntityRenderer;
107
import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider;
118
import net.minecraft.client.renderer.blockentity.state.BlockEntityRenderState;
129
import net.minecraft.client.renderer.feature.ModelFeatureRenderer;
10+
import net.minecraft.client.renderer.rendertype.RenderTypes;
1311
import net.minecraft.client.renderer.state.CameraRenderState;
1412
import net.minecraft.core.BlockPos;
1513
import net.minecraft.core.Direction;
1614
import net.minecraft.world.InteractionHand;
1715
import net.minecraft.world.entity.player.Player;
1816
import net.minecraft.world.phys.Vec3;
19-
import org.cyclops.capabilityproxy.Reference;
2017
import org.cyclops.capabilityproxy.RegistryEntries;
2118
import org.cyclops.capabilityproxy.block.BlockRangedCapabilityProxyConfig;
2219
import org.cyclops.capabilityproxy.blockentity.BlockEntityCapabilityProxyCommon;
2320
import org.jetbrains.annotations.Nullable;
2421

25-
import java.util.OptionalDouble;
26-
2722
/**
2823
* Renders an overlay showing the target of ranged proxies when a ranged proxy is held in hand.
2924
* @author rubensworks
3025
*/
3126
public class RenderTileRangedCapabilityProxy implements BlockEntityRenderer<BlockEntityCapabilityProxyCommon, RenderTileRangedCapabilityProxy.RenderState> {
3227

33-
public static final RenderType RENDER_TYPE_LINE = RenderType.create(Reference.MOD_ID + "line",
34-
128,
35-
RenderPipelines.SECONDARY_BLOCK_OUTLINE,
36-
RenderType.CompositeState.builder()
37-
.setLineState(new RenderStateShard.LineStateShard(OptionalDouble.of(2)))
38-
.setLayeringState(RenderStateShard.VIEW_OFFSET_Z_LAYERING)
39-
.setOutputState(RenderStateShard.ITEM_ENTITY_TARGET)
40-
.createCompositeState(false));
41-
4228
public RenderTileRangedCapabilityProxy(BlockEntityRendererProvider.Context context) {
4329

4430
}
@@ -76,9 +62,9 @@ public void submit(RenderState renderState, PoseStack poseStack, SubmitNodeColle
7662
float maxY = y + target.getY();
7763
float maxZ = z + target.getZ();
7864

79-
submitNodeCollector.submitCustomGeometry(poseStack, RENDER_TYPE_LINE, (pose, vertexConsumer) -> {
80-
vertexConsumer.addVertex(pose, minX, minY, minZ).setColor(r, g, b, a).setNormal(0.0F, 0.0F, 0.0F);
81-
vertexConsumer.addVertex(pose, maxX, maxY, maxZ).setColor(r, g, b, a).setNormal(0.0F, 0.0F, 0.0F);;
65+
submitNodeCollector.submitCustomGeometry(poseStack, RenderTypes.SECONDARY_BLOCK_OUTLINE, (pose, vertexConsumer) -> {
66+
vertexConsumer.addVertex(pose, minX, minY, minZ).setLineWidth(2).setColor(r, g, b, a).setNormal(0.0F, 0.0F, 0.0F);
67+
vertexConsumer.addVertex(pose, maxX, maxY, maxZ).setLineWidth(2).setColor(r, g, b, a).setNormal(0.0F, 0.0F, 0.0F);;
8268
});
8369
}
8470
}

0 commit comments

Comments
 (0)