From e363840c9ee5aee1c152d34195f41839ee819556 Mon Sep 17 00:00:00 2001 From: bitheaven Date: Tue, 31 Oct 2023 19:40:09 +0500 Subject: [PATCH] Make first working version (Time not work in Bad Air) --- .gitea/workflows/build.yml | 38 +++ build.gradle | 92 +++++-- gradle.properties | 24 +- gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 62076 bytes gradle/wrapper/gradle-wrapper.properties | 5 + gradlew | 245 ++++++++++++++++++ gradlew.bat | 92 +++++++ .../createairfabric/CreateAirFabric.java | 35 +++ .../mixin/DivingHelmetItemMixin.java | 26 ++ .../createairfabric/mixin/MinecraftMixin.java | 20 ++ .../resources/assets/createairfabric/icon.png | Bin 0 -> 52726 bytes .../resources/createairfabric.mixins.json | 15 ++ src/main/resources/fabric.mod.json | 23 +- 13 files changed, 578 insertions(+), 37 deletions(-) create mode 100644 .gitea/workflows/build.yml create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100755 gradlew create mode 100644 gradlew.bat create mode 100644 src/main/java/ru/bitheaven/createairfabric/CreateAirFabric.java create mode 100644 src/main/java/ru/bitheaven/createairfabric/mixin/DivingHelmetItemMixin.java create mode 100644 src/main/java/ru/bitheaven/createairfabric/mixin/MinecraftMixin.java create mode 100644 src/main/resources/assets/createairfabric/icon.png create mode 100644 src/main/resources/createairfabric.mixins.json diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml new file mode 100644 index 0000000..afdd9e0 --- /dev/null +++ b/.gitea/workflows/build.yml @@ -0,0 +1,38 @@ +name: build +on: [ pull_request, push ] + +jobs: + build: + strategy: + matrix: + java: [ 17 ] + runs-on: ubuntu-latest + steps: + - name: checkout repository + uses: actions/checkout@v2 + + - name: setup jdk ${{ matrix.java }} + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + + - uses: actions/cache@v2 + with: + path: | + ~/.gradle/caches + ~/.gradle/loom-cache + ~/.gradle/wrapper + key: ${{ runner.os }}-gradle-${{ hashFiles('**/gradle-wrapper.properties') }} + restore-keys: ${{ runner.os }}-gradle + + - name: make gradle wrapper executable + run: chmod +x ./gradlew + + - name: build + run: ./gradlew build + + - name: capture build artifacts + uses: actions/upload-artifact@v2 + with: + name: Artifacts + path: build/libs/ diff --git a/build.gradle b/build.gradle index 6d6e08b..86fe39d 100644 --- a/build.gradle +++ b/build.gradle @@ -1,63 +1,101 @@ plugins { id 'fabric-loom' version '1.2-SNAPSHOT' + id "io.github.p03w.machete" version "1.+" // automatic jar compressing on build id 'maven-publish' } -version = project.mod_version +sourceCompatibility = JavaVersion.VERSION_17 +targetCompatibility = JavaVersion.VERSION_17 + +archivesBaseName = project.archives_base_name group = project.maven_group +//String buildNumber = System.getenv("GITHUB_RUN_NUMBER") +String buildNumber = 4 +version = "${mod_version}+${minecraft_version}" + (buildNumber != null ? "-${buildNumber}" : "") + repositories { // Add repositories to retrieve artifacts from in here. // You should only use this when depending on other mods because // Loom adds the essential maven repositories to download Minecraft and libraries from automatically. // See https://docs.gradle.org/current/userguide/declaring_repositories.html // for more information about repositories. + maven { url = "https://maven.shedaniel.me/" } // Cloth Config, REI + maven { url = "https://dvs1.progwml6.com/files/maven/" } // JEI + maven { url = "https://maven.parchmentmc.org" } // Parchment mappings + maven { url = "https://maven.quiltmc.org/repository/release" } // Quilt Mappings + maven { url = "https://api.modrinth.com/maven" } // LazyDFU + maven { url = "https://maven.terraformersmc.com/releases/" } // Mod Menu + maven { url = "https://mvn.devos.one/snapshots/" } // Create, Porting Lib, Forge Tags, Milk Lib, Registrate + maven { url = "https://cursemaven.com" } // Forge Config API Port + maven { url = "https://maven.jamieswhiteshirt.com/libs-release" } // Reach Entity Attributes + maven { url = "https://jitpack.io/" } // Mixin Extras, Fabric ASM + maven { url = "https://maven.tterrag.com/" } // Flywheel + + maven { + url 'https://www.cursemaven.com' + content { + includeGroup "curse.maven" + } + } } dependencies { // To change the versions see the gradle.properties file minecraft "com.mojang:minecraft:${project.minecraft_version}" - mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2" - modImplementation "net.fabricmc:fabric-loader:${project.loader_version}" + mappings(loom.layered { + it.mappings("org.quiltmc:quilt-mappings:${minecraft_version}+build.${qm_version}:intermediary-v2") + it.parchment("org.parchmentmc.data:parchment-${minecraft_version}:${parchment_version}@zip") + it.officialMojangMappings { nameSyntheticMembers = false } + }) + modImplementation("net.fabricmc:fabric-loader:${fabric_loader_version}") // Fabric API. This is technically optional, but you probably want it anyway. - modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}" + modImplementation("net.fabricmc.fabric-api:fabric-api:${fabric_api_version}") + + // Create - dependencies are added transitively + modImplementation("com.simibubi.create:create-fabric-${minecraft_version}:${create_version}") + + // Thin Air + modImplementation("curse.maven:new-thin-air-878379:4611944") + + // Development QOL + modLocalRuntime("maven.modrinth:lazydfu:${lazydfu_version}") + modLocalRuntime("com.terraformersmc:modmenu:${modmenu_version}") + + // Recipe Viewers - Create Fabric supports JEI, REI, and EMI. + // See root gradle.properties to choose which to use at runtime. + switch (recipe_viewer.toLowerCase(Locale.ROOT)) { + case "jei": modLocalRuntime("mezz.jei:jei-${minecraft_version}-fabric:${jei_version}"); break + case "rei": modLocalRuntime("me.shedaniel:RoughlyEnoughItems-fabric:${rei_version}"); break + case "emi": modLocalRuntime("dev.emi:emi:${emi_version}"); break + case "disabled": break + default: println("Unknown recipe viewer specified: ${recipe_viewer}. Must be JEI, REI, EMI, or disabled.") + } } processResources { - inputs.property "version", project.version - inputs.property "minecraft_version", project.minecraft_version - inputs.property "loader_version", project.loader_version - filteringCharset "UTF-8" + // require dependencies to be the version compiled against or newer + Map properties = new HashMap<>() + properties.put("version", version) + properties.put("fabric_loader_version", fabric_loader_version) + properties.put("fabric_api_version", fabric_api_version) + properties.put("create_version", create_version) + properties.put("minecraft_version", minecraft_version) + + properties.forEach((k, v) -> inputs.property(k, v)) filesMatching("fabric.mod.json") { - expand "version": project.version, - "minecraft_version": project.minecraft_version, - "loader_version": project.loader_version + expand properties } } -def targetJavaVersion = 17 tasks.withType(JavaCompile).configureEach { - // ensure that the encoding is set to UTF-8, no matter what the system default is - // this fixes some edge cases with special characters not displaying correctly - // see http://yodaconditions.net/blog/fix-for-java-file-encoding-problems-with-gradle.html - // If Javadoc is generated, this must be specified in that task too. it.options.encoding = "UTF-8" - if (targetJavaVersion >= 10 || JavaVersion.current().isJava10Compatible()) { - it.options.release = targetJavaVersion - } + it.options.release = Integer.parseInt(sourceCompatibility) } java { - def javaVersion = JavaVersion.toVersion(targetJavaVersion) - if (JavaVersion.current() < javaVersion) { - toolchain.languageVersion = JavaLanguageVersion.of(targetJavaVersion) - } - archivesBaseName = project.archives_base_name - // Loom will automatically attach sourcesJar to a RemapSourcesJar task and to the "build" task - // if it is present. - // If you remove this line, sources will not be generated. withSourcesJar() } diff --git a/gradle.properties b/gradle.properties index 6137cce..e2041ec 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,13 +5,27 @@ org.gradle.jvmargs=-Xmx1G # check these on https://modmuss50.me/fabric.html minecraft_version=1.20.1 yarn_mappings=1.20.1+build.10 - loader_version=0.14.24 + fabric_loader_version=0.14.24 + # check this on https://modmuss50.me/fabric.html + fabric_api_version=0.90.0+1.20.1 + +# Mappings + # https://lambdaurora.dev/tools/import_quilt.html + qm_version = 23 + # https://parchmentmc.org/docs/getting-started + parchment_version = 2023.06.26 # Mod Properties mod_version = 1.0 - maven_group = ru.bitheaven.createairfabric - archives_base_name = CreateAirFabric + maven_group = ru.bitheaven + archives_base_name = createairfabric # Dependencies - # check this on https://modmuss50.me/fabric.html - fabric_version=0.90.0+1.20.1 + # https://modrinth.com/mod/create-fabric/versions + create_version = 0.5.1-d-build.1161+mc1.20.1 + # set to disabled to have none of them. + recipe_viewer = disabled + # Mod Menu - https://modrinth.com/mod/modmenu/versions + modmenu_version = 4.1.2 + # LazyDFU - https://modrinth.com/mod/lazydfu/versions + lazydfu_version = 0.1.3 \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..c1962a79e29d3e0ab67b14947c167a862655af9b GIT binary patch literal 62076 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 literal 0 HcmV?d00001 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 02f683e..37aef8d 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1 +1,6 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip +networkTimeout=10000 +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew new file mode 100755 index 0000000..aeb74cb --- /dev/null +++ b/gradlew @@ -0,0 +1,245 @@ +#!/bin/sh + +# +# Copyright © 2015-2021 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..6689b85 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,92 @@ +@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=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@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% equ 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. + +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. + +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% equ 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/src/main/java/ru/bitheaven/createairfabric/CreateAirFabric.java b/src/main/java/ru/bitheaven/createairfabric/CreateAirFabric.java new file mode 100644 index 0000000..493e14d --- /dev/null +++ b/src/main/java/ru/bitheaven/createairfabric/CreateAirFabric.java @@ -0,0 +1,35 @@ +package ru.bitheaven.createairfabric; + +import com.simibubi.create.Create; +import fuzs.thinair.helper.AirHelper; +import fuzs.thinair.helper.AirQualityLevel; +import io.github.fabricators_of_create.porting_lib.util.EnvExecutor; +import net.fabricmc.api.ModInitializer; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.entity.LivingEntity; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class CreateAirFabric implements ModInitializer { + public static final String ID = "createairfabric"; + public static final String NAME = "Create Air Fabric"; + public static final Logger LOGGER = LoggerFactory.getLogger(NAME); + + @Override + public void onInitialize() { + LOGGER.info("Create addon mod [{}] is loading alongside Create [{}]!", NAME, Create.VERSION); + LOGGER.info(EnvExecutor.unsafeRunForDist( + () -> () -> "{} is accessing Porting Lib from the client!", + () -> () -> "{} is accessing Porting Lib from the server!" + ), NAME); + } + + public static boolean airQualityActivatesHelmet(LivingEntity entity) { + final var air = AirHelper.getO2LevelFromLocation(entity.getEyePosition(), entity.level()).getFirst(); + return air == AirQualityLevel.RED || air == AirQualityLevel.YELLOW; + } + + public static ResourceLocation id(String path) { + return new ResourceLocation(ID, path); + } +} \ No newline at end of file diff --git a/src/main/java/ru/bitheaven/createairfabric/mixin/DivingHelmetItemMixin.java b/src/main/java/ru/bitheaven/createairfabric/mixin/DivingHelmetItemMixin.java new file mode 100644 index 0000000..e962935 --- /dev/null +++ b/src/main/java/ru/bitheaven/createairfabric/mixin/DivingHelmetItemMixin.java @@ -0,0 +1,26 @@ +package ru.bitheaven.createairfabric.mixin; + +import fuzs.thinair.helper.AirHelper; +import fuzs.thinair.helper.AirQualityLevel; +import net.minecraft.tags.TagKey; +import net.minecraft.world.level.material.Fluid; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +import ru.bitheaven.createairfabric.CreateAirFabric; +import com.simibubi.create.content.equipment.armor.DivingHelmetItem; + +import net.minecraft.world.entity.LivingEntity; + +@Mixin(DivingHelmetItem.class) +public abstract class DivingHelmetItemMixin { + /** + * Activate helmet "if in water or lava" -> "if in water or bad air or lava" + */ + @Redirect(at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;isEyeInFluid(Lnet/minecraft/tags/TagKey;)Z"), + method = "breatheUnderwater(Lnet/minecraft/world/entity/LivingEntity;)V") + private static boolean redirectBreatheUnderwater(LivingEntity entity, TagKey fluidTagKey) { + return entity.isEyeInFluid(fluidTagKey) || CreateAirFabric.airQualityActivatesHelmet(entity); + } +} \ No newline at end of file diff --git a/src/main/java/ru/bitheaven/createairfabric/mixin/MinecraftMixin.java b/src/main/java/ru/bitheaven/createairfabric/mixin/MinecraftMixin.java new file mode 100644 index 0000000..7ea766c --- /dev/null +++ b/src/main/java/ru/bitheaven/createairfabric/mixin/MinecraftMixin.java @@ -0,0 +1,20 @@ +package ru.bitheaven.createairfabric.mixin; + +import ru.bitheaven.createairfabric.CreateAirFabric; + +import net.minecraft.client.Minecraft; + +import net.minecraft.client.main.GameConfig; + +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(Minecraft.class) +public class MinecraftMixin { + @Inject(method = "", at = @At("TAIL")) + private void example$init(GameConfig gameConfig, CallbackInfo ci) { + CreateAirFabric.LOGGER.info("Hello from {}", CreateAirFabric.NAME); + } +} \ No newline at end of file diff --git a/src/main/resources/assets/createairfabric/icon.png b/src/main/resources/assets/createairfabric/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..cb8ae3246e78be7b5380ec98e89410b0e1b706e5 GIT binary patch literal 52726 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