diff --git a/build.gradle.kts b/build.gradle.kts index a52dad60..0e454b76 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -10,7 +10,7 @@ plugins { allprojects { group = "org.enginehub.worldeditcui" - version = "${rootProject.libs.versions.minecraft.get()}+02-SNAPSHOT" + version = "${rootProject.libs.versions.minecraft.get()}+01-SNAPSHOT" repositories { // mirrors: diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 08206ce2..e6dec6c3 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -3,27 +3,27 @@ format = { version = "1.1" } [versions] indra = "3.1.3" -minecraft = "1.21.5" +minecraft = "1.21.7" fabricLoader = "0.16.14" -fabricApi = "0.124.0+1.21.5" -modmenu = "14.0.0-rc.2" +fabricApi = "0.128.1+1.21.7" +modmenu = "15.0.0-beta.3" viafabricplus = "3.3.0" vineflower = "1.10.1" -cuiProtocol = "4.0.0" +cuiProtocol = "4.0.1" [libraries] minecraft = { module = "com.mojang:minecraft", version.ref = "minecraft" } -parchment = { module = "org.parchmentmc.data:parchment-1.21.5", version = "2025.04.19" } +parchment = { module = "org.parchmentmc.data:parchment-1.21.5", version = "2025.06.15" } fabric-loader = { module = "net.fabricmc:fabric-loader", version.ref = "fabricLoader" } fabric-api = { module = "net.fabricmc.fabric-api:fabric-api", version.ref = "fabricApi" } fabric-api-bom = { module = "net.fabricmc.fabric-api:fabric-api-bom", version.ref = "fabricApi" } fabric-api-networking = { module = "net.fabricmc.fabric-api:fabric-networking-api-v1" } modmenu = { module = "com.terraformersmc:modmenu", version.ref = "modmenu" } -neoforge = { module = "net.neoforged:neoforge", version = "21.5.63-beta"} +neoforge = { module = "net.neoforged:neoforge", version = "21.7.1-beta"} viafabricplus-api = { module = "de.florianmichael:ViaFabricPlus", version.ref = "viafabricplus" } viaversion = { module = "com.viaversion:viaversion-common", version = "5.0.5" } vineflower = { module = "org.vineflower:vineflower", version.ref = "vineflower" } -worldedit = { module = "com.sk89q.worldedit:worldedit-fabric-mc1.21", version = "7.3.7" } +worldedit = { module = "com.sk89q.worldedit:worldedit-fabric-mc1.21", version = "7.3.14" } [plugins] architecturyPlugin = { id = "architectury-plugin", version = "3.4.160" } @@ -39,9 +39,9 @@ spotless = { id = "com.diffplug.spotless", version = "6.25.0" } versions = { id = "com.github.ben-manes.versions", version = "0.51.0" } [libraries.cuiProtocol-fabric] -module = "org.enginehub.worldeditcui-protocol:worldeditcui-protocol-fabric-mc1.21.5" +module = "org.enginehub.worldeditcui-protocol:worldeditcui-protocol-fabric-mc1.21.7" version.ref = "cuiProtocol" [libraries.cuiProtocol-neoforge] -module = "org.enginehub.worldeditcui-protocol:worldeditcui-protocol-neoforge-mc1.21.5" +module = "org.enginehub.worldeditcui-protocol:worldeditcui-protocol-neoforge-mc1.21.7" version.ref = "cuiProtocol" diff --git a/worldeditcui-fabric/build.gradle.kts b/worldeditcui-fabric/build.gradle.kts index db22e2e4..f3dfaa0c 100644 --- a/worldeditcui-fabric/build.gradle.kts +++ b/worldeditcui-fabric/build.gradle.kts @@ -31,6 +31,8 @@ loom { ) } } + + accessWidenerPath.set(project.file("src/main/resources/worldeditcui.accesswidener")) } val fabricApi by configurations.creating diff --git a/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/event/listeners/CUIListenerWorldRender.java b/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/event/listeners/CUIListenerWorldRender.java index dda7a554..3f9eb183 100644 --- a/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/event/listeners/CUIListenerWorldRender.java +++ b/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/event/listeners/CUIListenerWorldRender.java @@ -9,13 +9,14 @@ */ package org.enginehub.worldeditcui.event.listeners; +import com.mojang.blaze3d.buffers.GpuBufferSlice; import com.mojang.blaze3d.opengl.GlConst; import com.mojang.blaze3d.opengl.GlStateManager; import com.mojang.blaze3d.platform.DestFactor; import com.mojang.blaze3d.platform.SourceFactor; import com.mojang.blaze3d.systems.RenderSystem; import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.FogParameters; +import net.minecraft.client.renderer.fog.FogRenderer; import net.minecraft.util.profiling.Profiler; import net.minecraft.util.profiling.ProfilerFiller; import org.enginehub.worldeditcui.WorldEditCUI; @@ -98,8 +99,8 @@ public void onRender(final float partialTicks) { final ProfilerFiller profiler = Profiler.get(); profiler.push("worldeditcui"); this.ctx.init(new Vector3(this.minecraft.gameRenderer.getMainCamera().getPosition()), partialTicks, sink); - final FogParameters fogStart = RenderSystem.getShaderFog(); - RenderSystem.setShaderFog(FogParameters.NO_FOG); + final GpuBufferSlice fogStart = RenderSystem.getShaderFog(); + RenderSystem.setShaderFog(this.minecraft.gameRenderer.fogRenderer.getBuffer(FogRenderer.FogMode.NONE)); final Matrix4fStack poseStack = RenderSystem.getModelViewStack(); poseStack.pushMatrix(); GlStateManager._disableCull(); diff --git a/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/fabric/FabricModWorldEditCUI.java b/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/fabric/FabricModWorldEditCUI.java index d61656e8..1d80e5d8 100644 --- a/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/fabric/FabricModWorldEditCUI.java +++ b/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/fabric/FabricModWorldEditCUI.java @@ -135,7 +135,7 @@ private void onTick(final Minecraft mc) { while (this.keyBindClearSel.consumeClick()) { if (mc.player != null) { - mc.player.connection.sendUnsignedCommand("/sel"); + mc.player.connection.sendUnattendedCommand("/sel", null); } if (config.isClearAllOnKey()) { @@ -158,7 +158,7 @@ private void onTick(final Minecraft mc) { this.helo(mc.getConnection()); this.delayedHelo = FabricModWorldEditCUI.DELAYED_HELO_TICKS; if (mc.player != null && config.isPromiscuous()) { - mc.player.connection.sendUnsignedCommand("we cui"); // Tricks WE to send the current selection + mc.player.connection.sendUnattendedCommand("we cui", null); // Tricks WE to send the current selection } } diff --git a/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/render/BufferBuilderRenderSink.java b/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/render/BufferBuilderRenderSink.java index 8b9c6dda..4b908de1 100644 --- a/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/render/BufferBuilderRenderSink.java +++ b/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/render/BufferBuilderRenderSink.java @@ -87,7 +87,6 @@ public boolean apply(final LineStyle line, final RenderStyle.RenderType type) { this.flush(); if (this.active && this.activeRenderType != null) { this.canFlush = true; - RenderSystem.setShaderColor(1.0f, 1.0f, 1.0f, 1.0f); this.builder = Tesselator.getInstance().begin(this.activeRenderType.mode, this.activeRenderType.format); } LineWidth.set(this.lastLineWidth = line.lineWidth); @@ -257,7 +256,6 @@ private void transitionState(final RenderType renderType) { } if (this.activeRenderType == null || this.activeRenderType.mode != renderType.mode) { this.canFlush = true; - RenderSystem.setShaderColor(1.0f, 1.0f, 1.0f, 1.0f); this.builder = Tesselator.getInstance().begin(renderType.mode, renderType.format); } this.activeRenderType = renderType; diff --git a/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/render/VanillaPipelineProvider.java b/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/render/VanillaPipelineProvider.java index 104fba78..205ddfb0 100644 --- a/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/render/VanillaPipelineProvider.java +++ b/worldeditcui-fabric/src/main/java/org/enginehub/worldeditcui/render/VanillaPipelineProvider.java @@ -22,7 +22,7 @@ public static class DefaultTypeFactory implements BufferBuilderRenderSink.TypeFa public static final DefaultTypeFactory INSTANCE = new DefaultTypeFactory(); private static final BufferBuilderRenderSink.RenderType QUADS = new BufferBuilderRenderSink.RenderType(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_COLOR, RenderType.create("quads", 1536, false, true, - RenderPipeline.builder(RenderPipeline.builder(RenderPipelines.MATRICES_COLOR_SNIPPET) + RenderPipeline.builder(RenderPipeline.builder(RenderPipelines.MATRICES_PROJECTION_SNIPPET) .withVertexShader("core/position_color") .withFragmentShader("core/position_color") .withBlend(BlendFunction.TRANSLUCENT) diff --git a/worldeditcui-fabric/src/main/resources/fabric.mod.json b/worldeditcui-fabric/src/main/resources/fabric.mod.json index f2f0dde4..8573bacf 100644 --- a/worldeditcui-fabric/src/main/resources/fabric.mod.json +++ b/worldeditcui-fabric/src/main/resources/fabric.mod.json @@ -42,12 +42,14 @@ "fabric-lifecycle-events-v1": "^2.0.0", "fabric-screen-api-v1": ">=1.0.9", "fabric-resource-loader-v0": ">=0.4.17", + "fabric-transitive-access-wideners-v1": "*", "minecraft": ">=1.21.5" }, "suggests": { - "worldedit": ">=7.2.0" + "worldedit": ">=7.3.12" }, "breaks": { "worldedit": ["7.3.1", "7.3.2", "7.3.3", "7.3.4-beta-01", "7.3.4", "7.3.5", "7.3.6", "7.3.7", "7.3.8", "7.3.9-beta-01", "7.3.9", "7.3.10-beta-01", "7.3.10", "7.3.11", "7.3.12-beta-01", "7.3.12-beta-02"] - } + }, + "accessWidener" : "worldeditcui.accesswidener" } diff --git a/worldeditcui-fabric/src/main/resources/worldeditcui.accesswidener b/worldeditcui-fabric/src/main/resources/worldeditcui.accesswidener new file mode 100644 index 00000000..875ab35c --- /dev/null +++ b/worldeditcui-fabric/src/main/resources/worldeditcui.accesswidener @@ -0,0 +1,4 @@ +accessWidener v2 named + +# fogRenderer +accessible field net/minecraft/client/renderer/GameRenderer fogRenderer Lnet/minecraft/client/renderer/fog/FogRenderer;