commit 3d3a8ae2f21da528800316759d4a4f8fd079a9d7 Author: erdefiho Date: Tue Jun 9 22:41:47 2026 +0200 first commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0eb1822 --- /dev/null +++ b/.gitignore @@ -0,0 +1,27 @@ +.gradle +**/build/ +!**/src/**/build/ + +# Ignore Gradle GUI config +gradle-app.setting + +# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored) +!gradle-wrapper.jar + +# Avoid ignore Gradle wrapper properties +!gradle-wrapper.properties + +# Cache of project +.gradletasknamecache + +# Eclipse Gradle plugin generated files +# Eclipse Core +.project +# JDT-specific (Eclipse Java Development Tools) +.classpath + +# Minecraft specific folder +run + +# Intellij IDEA folder +.idea diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..6f13587 --- /dev/null +++ b/build.gradle @@ -0,0 +1,56 @@ +plugins { + id 'fabric-loom' version '1.7-SNAPSHOT' apply false + id 'maven-publish' +} + +subprojects { + apply plugin: 'fabric-loom' + apply plugin: 'maven-publish' + apply plugin: 'java' + + version = project.mod_version + group = project.maven_group + + repositories { + maven { url "https://maven.terraformersmc.com/releases/" } + } + + dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2" + modImplementation "net.fabricmc:fabric-loader:${project.loader_version}" + } + + processResources { + inputs.property "version", project.version + inputs.property "minecraft_version", project.minecraft_version + inputs.property "minecraft_range", project.minecraft_range + inputs.property "loader_version", project.loader_version + filteringCharset "UTF-8" + + filesMatching("fabric.mod.json") { + expand "version": project.version, + "minecraft_version": project.minecraft_version, + "minecraft_range": project.minecraft_range, + "loader_version": project.loader_version + } + } + + tasks.withType(JavaCompile).configureEach { + it.options.encoding = "UTF-8" + // Java version will be configured in individual subprojects + // if (targetJavaVersion >= 10 || JavaVersion.current().isJava10Compatible()) { + // it.options.release.set(targetJavaVersion) + // } + } + + java { + withSourcesJar() + } + + jar { + from("LICENSE") { + rename { "${it}_${project.archives_base_name}" } + } + } +} diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..2efc969 --- /dev/null +++ b/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx8G +org.gradle.parallel=true +org.gradle.caching=true diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..e644113 Binary files /dev/null and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..2617362 --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip +networkTimeout=10000 +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..849bffd --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,87 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. +echo. +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. +echo. +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 0000000..9bc57bd --- /dev/null +++ b/settings.gradle @@ -0,0 +1,14 @@ +pluginManagement { + repositories { + maven { url "https://maven.fabricmc.net/" } + gradlePluginPortal() + } +} + +rootProject.name = 'NoWallOverlay' + +include '1.16', '1.17-1.21.3', '1.21.4-1.21.x' + +project(':1.16').projectDir = file('versions/1.16') +project(':1.17-1.21.3').projectDir = file('versions/1.17-1.21.3') +project(':1.21.4-1.21.x').projectDir = file('versions/1.21.4-1.21.x') \ No newline at end of file diff --git a/versions/1.16/build.gradle b/versions/1.16/build.gradle new file mode 100644 index 0000000..d4540fe --- /dev/null +++ b/versions/1.16/build.gradle @@ -0,0 +1,8 @@ +archivesBaseName = "NoWallOverlay-1.16" + +sourceCompatibility = JavaVersion.VERSION_1_8 +targetCompatibility = JavaVersion.VERSION_1_8 + +tasks.withType(JavaCompile).configureEach { + it.options.release.set(8) +} diff --git a/versions/1.16/gradle.properties b/versions/1.16/gradle.properties new file mode 100644 index 0000000..2e14416 --- /dev/null +++ b/versions/1.16/gradle.properties @@ -0,0 +1,7 @@ +minecraft_version=1.16.5 +yarn_mappings=1.16.5+build.10 +loader_version=0.15.11 +mod_version=1.0 +maven_group=org.erdef +archives_base_name=NoWallOverlay +minecraft_range=1.16.x diff --git a/versions/1.16/src/main/java/org/erdef/nowalloverlay/mixins/InGameOverlayRendererMixin.java b/versions/1.16/src/main/java/org/erdef/nowalloverlay/mixins/InGameOverlayRendererMixin.java new file mode 100644 index 0000000..bfcd6be --- /dev/null +++ b/versions/1.16/src/main/java/org/erdef/nowalloverlay/mixins/InGameOverlayRendererMixin.java @@ -0,0 +1,19 @@ +package org.erdef.nowalloverlay.mixins; + +import net.minecraft.client.MinecraftClient; +import net.minecraft.client.gui.hud.InGameOverlayRenderer; +import net.minecraft.client.render.VertexConsumerProvider; +import net.minecraft.client.texture.Sprite; +import net.minecraft.client.util.math.MatrixStack; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(InGameOverlayRenderer.class) +public class InGameOverlayRendererMixin { + @Inject(method = "renderInWallOverlay", at = @At("HEAD"), cancellable = true) + private static void onRenderInWallOverlay(MinecraftClient minecraftClient, Sprite sprite, MatrixStack matrixStack, CallbackInfo ci) { + ci.cancel(); + } +} diff --git a/versions/1.16/src/main/resources/fabric.mod.json b/versions/1.16/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..83fa82f --- /dev/null +++ b/versions/1.16/src/main/resources/fabric.mod.json @@ -0,0 +1,17 @@ +{ + "schemaVersion": 1, + "id": "nowalloverlay", + "version": "${version}", + "name": "NoWallOverlay", + "description": "Removes the wall overlay", + "authors": [], + "contact": {}, + "license": "All-Rights-Reserved", + + "environment": "*", + "mixins": ["nowalloverlay.mixins.json"], + "depends": { + "fabricloader": ">=${loader_version}", + "minecraft": "${minecraft_range}" + } +} diff --git a/versions/1.16/src/main/resources/nowalloverlay.mixins.json b/versions/1.16/src/main/resources/nowalloverlay.mixins.json new file mode 100644 index 0000000..fd9fc39 --- /dev/null +++ b/versions/1.16/src/main/resources/nowalloverlay.mixins.json @@ -0,0 +1,17 @@ +{ + "required": true, + "minVersion": "0.8", + "package": "org.erdef.nowalloverlay.mixins", + "compatibilityLevel": "JAVA_8", + "mixins": [ + ], + "client": [ + "InGameOverlayRendererMixin" + ], + "injectors": { + "defaultRequire": 1 + }, + "overwrites": { + "requireAnnotations": true + } +} diff --git a/versions/1.17-1.21.3/build.gradle b/versions/1.17-1.21.3/build.gradle new file mode 100644 index 0000000..cb04212 --- /dev/null +++ b/versions/1.17-1.21.3/build.gradle @@ -0,0 +1,8 @@ +archivesBaseName = "NoWallOverlay-1.17-1.21.3" + +sourceCompatibility = JavaVersion.VERSION_16 +targetCompatibility = JavaVersion.VERSION_16 + +tasks.withType(JavaCompile).configureEach { + it.options.release.set(16) +} diff --git a/versions/1.17-1.21.3/gradle.properties b/versions/1.17-1.21.3/gradle.properties new file mode 100644 index 0000000..0a351c7 --- /dev/null +++ b/versions/1.17-1.21.3/gradle.properties @@ -0,0 +1,7 @@ +minecraft_version=1.17.1 +yarn_mappings=1.17.1+build.65 +loader_version=0.15.11 +mod_version=1.0 +maven_group=org.erdef +archives_base_name=NoWallOverlay +minecraft_range=>=1.17 <=1.21.3 diff --git a/versions/1.17-1.21.3/src/main/java/org/erdef/nowalloverlay/mixins/InGameOverlayRendererMixin.java b/versions/1.17-1.21.3/src/main/java/org/erdef/nowalloverlay/mixins/InGameOverlayRendererMixin.java new file mode 100644 index 0000000..586a0a8 --- /dev/null +++ b/versions/1.17-1.21.3/src/main/java/org/erdef/nowalloverlay/mixins/InGameOverlayRendererMixin.java @@ -0,0 +1,18 @@ +package org.erdef.nowalloverlay.mixins; + +import net.minecraft.client.gui.hud.InGameOverlayRenderer; +import net.minecraft.client.render.VertexConsumerProvider; +import net.minecraft.client.texture.Sprite; +import net.minecraft.client.util.math.MatrixStack; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(InGameOverlayRenderer.class) +public class InGameOverlayRendererMixin { + @Inject(method = "renderInWallOverlay", at = @At("HEAD"), cancellable = true) + private static void onRenderInWallOverlay(Sprite sprite, MatrixStack matrices, CallbackInfo ci) { + ci.cancel(); + } +} diff --git a/versions/1.17-1.21.3/src/main/resources/fabric.mod.json b/versions/1.17-1.21.3/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..83fa82f --- /dev/null +++ b/versions/1.17-1.21.3/src/main/resources/fabric.mod.json @@ -0,0 +1,17 @@ +{ + "schemaVersion": 1, + "id": "nowalloverlay", + "version": "${version}", + "name": "NoWallOverlay", + "description": "Removes the wall overlay", + "authors": [], + "contact": {}, + "license": "All-Rights-Reserved", + + "environment": "*", + "mixins": ["nowalloverlay.mixins.json"], + "depends": { + "fabricloader": ">=${loader_version}", + "minecraft": "${minecraft_range}" + } +} diff --git a/versions/1.17-1.21.3/src/main/resources/nowalloverlay.mixins.json b/versions/1.17-1.21.3/src/main/resources/nowalloverlay.mixins.json new file mode 100644 index 0000000..241bc45 --- /dev/null +++ b/versions/1.17-1.21.3/src/main/resources/nowalloverlay.mixins.json @@ -0,0 +1,14 @@ +{ + "required": true, + "minVersion": "0.8", + "package": "org.erdef.nowalloverlay.mixins", + "compatibilityLevel": "JAVA_17", + "mixins": [], + "client": ["InGameOverlayRendererMixin"], + "injectors": { + "defaultRequire": 1 + }, + "overwrites": { + "requireAnnotations": true + } +} diff --git a/versions/1.21.4-1.21.x/build.gradle b/versions/1.21.4-1.21.x/build.gradle new file mode 100644 index 0000000..61d8ba9 --- /dev/null +++ b/versions/1.21.4-1.21.x/build.gradle @@ -0,0 +1,8 @@ +archivesBaseName = "NoWallOverlay-1.21.4" + +sourceCompatibility = JavaVersion.VERSION_21 +targetCompatibility = JavaVersion.VERSION_21 + +tasks.withType(JavaCompile).configureEach { + it.options.release.set(21) +} diff --git a/versions/1.21.4-1.21.x/gradle.properties b/versions/1.21.4-1.21.x/gradle.properties new file mode 100644 index 0000000..21c253f --- /dev/null +++ b/versions/1.21.4-1.21.x/gradle.properties @@ -0,0 +1,7 @@ +minecraft_version=1.21.4 +yarn_mappings=1.21.4+build.2 +loader_version=0.18.0 +mod_version=1.0 +maven_group=org.erdef +archives_base_name=NoWallOverlay +minecraft_range=>=1.21.4 diff --git a/versions/1.21.4-1.21.x/src/main/java/org/erdef/nowalloverlay/mixins/InGameOverlayRendererMixin.java b/versions/1.21.4-1.21.x/src/main/java/org/erdef/nowalloverlay/mixins/InGameOverlayRendererMixin.java new file mode 100644 index 0000000..41c50a7 --- /dev/null +++ b/versions/1.21.4-1.21.x/src/main/java/org/erdef/nowalloverlay/mixins/InGameOverlayRendererMixin.java @@ -0,0 +1,18 @@ +package org.erdef.nowalloverlay.mixins; + +import net.minecraft.client.gui.hud.InGameOverlayRenderer; +import net.minecraft.client.render.VertexConsumerProvider; +import net.minecraft.client.texture.Sprite; +import net.minecraft.client.util.math.MatrixStack; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(InGameOverlayRenderer.class) +public class InGameOverlayRendererMixin { + @Inject(method = "renderInWallOverlay", at = @At("HEAD"), cancellable = true) + private static void onRenderInWallOverlay(Sprite sprite, MatrixStack matrices, VertexConsumerProvider vertexConsumers, CallbackInfo ci) { + ci.cancel(); + } +} diff --git a/versions/1.21.4-1.21.x/src/main/resources/fabric.mod.json b/versions/1.21.4-1.21.x/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..83fa82f --- /dev/null +++ b/versions/1.21.4-1.21.x/src/main/resources/fabric.mod.json @@ -0,0 +1,17 @@ +{ + "schemaVersion": 1, + "id": "nowalloverlay", + "version": "${version}", + "name": "NoWallOverlay", + "description": "Removes the wall overlay", + "authors": [], + "contact": {}, + "license": "All-Rights-Reserved", + + "environment": "*", + "mixins": ["nowalloverlay.mixins.json"], + "depends": { + "fabricloader": ">=${loader_version}", + "minecraft": "${minecraft_range}" + } +} diff --git a/versions/1.21.4-1.21.x/src/main/resources/nowalloverlay.mixins.json b/versions/1.21.4-1.21.x/src/main/resources/nowalloverlay.mixins.json new file mode 100644 index 0000000..3df8976 --- /dev/null +++ b/versions/1.21.4-1.21.x/src/main/resources/nowalloverlay.mixins.json @@ -0,0 +1,14 @@ +{ + "required": true, + "minVersion": "0.8", + "package": "org.erdef.nowalloverlay.mixins", + "compatibilityLevel": "JAVA_21", + "mixins": [], + "client": ["InGameOverlayRendererMixin"], + "injectors": { + "defaultRequire": 1 + }, + "overwrites": { + "requireAnnotations": true + } +}